xref: /aosp_15_r20/external/bcc/libbpf-tools/powerpc/vmlinux_600.h (revision 387f9dfdfa2baef462e92476d413c7bc2470293e)
1 #ifndef __VMLINUX_H__
2 #define __VMLINUX_H__
3 
4 #ifndef BPF_NO_PRESERVE_ACCESS_INDEX
5 #pragma clang attribute push (__attribute__((preserve_access_index)), apply_to = record)
6 #endif
7 
8 typedef unsigned char __u8;
9 
10 typedef short int __s16;
11 
12 typedef short unsigned int __u16;
13 
14 typedef int __s32;
15 
16 typedef unsigned int __u32;
17 
18 typedef long long unsigned int __u64;
19 
20 typedef __u8 u8;
21 
22 typedef __s16 s16;
23 
24 typedef __u16 u16;
25 
26 typedef __s32 s32;
27 
28 typedef __u32 u32;
29 
30 typedef __u64 u64;
31 
32 enum {
33 	false = 0,
34 	true = 1,
35 };
36 
37 typedef __u16 __be16;
38 
39 typedef __u32 __be32;
40 
41 typedef __u64 __be64;
42 
43 typedef _Bool bool;
44 
45 typedef long unsigned int ulong;
46 
47 typedef struct {
48 	int counter;
49 } atomic_t;
50 
51 struct kernel_symbol {
52 	long unsigned int value;
53 	const char *name;
54 	const char *namespace;
55 };
56 
57 struct qspinlock {
58 	union {
59 		atomic_t val;
60 		struct {
61 			u8 locked;
62 			u8 pending;
63 		};
64 		struct {
65 			u16 locked_pending;
66 			u16 tail;
67 		};
68 	};
69 };
70 
71 typedef struct qspinlock arch_spinlock_t;
72 
73 struct raw_spinlock {
74 	arch_spinlock_t raw_lock;
75 };
76 
77 typedef struct raw_spinlock raw_spinlock_t;
78 
79 struct cpu_spec;
80 
81 typedef void (*cpu_setup_t)(long unsigned int, struct cpu_spec *);
82 
83 enum powerpc_pmc_type {
84 	PPC_PMC_DEFAULT = 0,
85 	PPC_PMC_IBM = 1,
86 	PPC_PMC_PA6T = 2,
87 	PPC_PMC_G4 = 3,
88 };
89 
90 typedef void (*cpu_restore_t)();
91 
92 struct pt_regs;
93 
94 struct cpu_spec {
95 	unsigned int pvr_mask;
96 	unsigned int pvr_value;
97 	char *cpu_name;
98 	long unsigned int cpu_features;
99 	unsigned int cpu_user_features;
100 	unsigned int cpu_user_features2;
101 	unsigned int mmu_features;
102 	unsigned int icache_bsize;
103 	unsigned int dcache_bsize;
104 	void (*cpu_down_flush)();
105 	unsigned int num_pmcs;
106 	enum powerpc_pmc_type pmc_type;
107 	cpu_setup_t cpu_setup;
108 	cpu_restore_t cpu_restore;
109 	char *platform;
110 	int (*machine_check)(struct pt_regs *);
111 	long int (*machine_check_early)(struct pt_regs *);
112 };
113 
114 struct user_pt_regs {
115 	long unsigned int gpr[32];
116 	long unsigned int nip;
117 	long unsigned int msr;
118 	long unsigned int orig_gpr3;
119 	long unsigned int ctr;
120 	long unsigned int link;
121 	long unsigned int xer;
122 	long unsigned int ccr;
123 	long unsigned int softe;
124 	long unsigned int trap;
125 	long unsigned int dar;
126 	long unsigned int dsisr;
127 	long unsigned int result;
128 };
129 
130 struct pt_regs {
131 	union {
132 		struct user_pt_regs user_regs;
133 		struct {
134 			long unsigned int gpr[32];
135 			long unsigned int nip;
136 			long unsigned int msr;
137 			long unsigned int orig_gpr3;
138 			long unsigned int ctr;
139 			long unsigned int link;
140 			long unsigned int xer;
141 			long unsigned int ccr;
142 			long unsigned int softe;
143 			long unsigned int trap;
144 			union {
145 				long unsigned int dar;
146 				long unsigned int dear;
147 			};
148 			union {
149 				long unsigned int dsisr;
150 				long unsigned int esr;
151 			};
152 			long unsigned int result;
153 		};
154 	};
155 	union {
156 		struct {
157 			long unsigned int ppr;
158 			long unsigned int exit_result;
159 			union {
160 				long unsigned int kuap;
161 				long unsigned int amr;
162 			};
163 			long unsigned int iamr;
164 		};
165 		long unsigned int __pad[4];
166 	};
167 };
168 
169 struct jump_entry {
170 	s32 code;
171 	s32 target;
172 	long int key;
173 };
174 
175 struct static_key_mod;
176 
177 struct static_key {
178 	atomic_t enabled;
179 	union {
180 		long unsigned int type;
181 		struct jump_entry *entries;
182 		struct static_key_mod *next;
183 	};
184 };
185 
186 struct static_key_false {
187 	struct static_key key;
188 };
189 
190 struct slb_entry {
191 	u64 esid;
192 	u64 vsid;
193 };
194 
195 struct lppaca {
196 	__be32 desc;
197 	__be16 size;
198 	u8 reserved1[3];
199 	u8 __old_status;
200 	u8 reserved3[14];
201 	volatile __be32 dyn_hw_node_id;
202 	volatile __be32 dyn_hw_proc_id;
203 	u8 reserved4[56];
204 	volatile u8 vphn_assoc_counts[8];
205 	u8 reserved5[32];
206 	u8 reserved6[48];
207 	u8 cede_latency_hint;
208 	u8 ebb_regs_in_use;
209 	u8 reserved7[6];
210 	u8 dtl_enable_mask;
211 	u8 donate_dedicated_cpu;
212 	u8 fpregs_in_use;
213 	u8 pmcregs_in_use;
214 	u8 reserved8[28];
215 	__be64 wait_state_cycles;
216 	u8 reserved9[28];
217 	__be16 slb_count;
218 	u8 idle;
219 	u8 vmxregs_in_use;
220 	volatile __be32 yield_count;
221 	volatile __be32 dispersion_count;
222 	volatile __be64 cmo_faults;
223 	volatile __be64 cmo_fault_time;
224 	u8 reserved10[104];
225 	__be32 page_ins;
226 	u8 reserved11[148];
227 	volatile __be64 dtl_idx;
228 	u8 reserved12[96];
229 };
230 
231 struct slb_shadow {
232 	__be32 persistent;
233 	__be32 buffer_length;
234 	__be64 reserved;
235 	struct {
236 		__be64 esid;
237 		__be64 vsid;
238 	} save_area[2];
239 	long: 64;
240 	long: 64;
241 	long: 64;
242 	long: 64;
243 	long: 64;
244 	long: 64;
245 	long: 64;
246 	long: 64;
247 	long: 64;
248 	long: 64;
249 };
250 
251 struct kvmppc_vcore;
252 
253 struct kvm_split_mode {
254 	long unsigned int rpr;
255 	long unsigned int pmmar;
256 	long unsigned int ldbar;
257 	u8 subcore_size;
258 	u8 do_nap;
259 	u8 napped[8];
260 	struct kvmppc_vcore *vc[4];
261 };
262 
263 struct kvm_vcpu;
264 
265 struct kvmppc_host_state {
266 	ulong host_r1;
267 	ulong host_r2;
268 	ulong host_msr;
269 	ulong vmhandler;
270 	ulong scratch0;
271 	ulong scratch1;
272 	ulong scratch2;
273 	u8 in_guest;
274 	u8 restore_hid5;
275 	u8 napping;
276 	u8 hwthread_req;
277 	u8 hwthread_state;
278 	u8 host_ipi;
279 	u8 ptid;
280 	u8 fake_suspend;
281 	struct kvm_vcpu *kvm_vcpu;
282 	struct kvmppc_vcore *kvm_vcore;
283 	void *xics_phys;
284 	void *xive_tima_phys;
285 	void *xive_tima_virt;
286 	u32 saved_xirr;
287 	u64 dabr;
288 	u64 host_mmcr[10];
289 	u32 host_pmc[8];
290 	u64 host_purr;
291 	u64 host_spurr;
292 	u64 host_dscr;
293 	u64 dec_expires;
294 	struct kvm_split_mode *kvm_split_mode;
295 	u64 cfar;
296 	u64 ppr;
297 	u64 host_fscr;
298 };
299 
300 struct cpu_accounting_data {
301 	long unsigned int utime;
302 	long unsigned int stime;
303 	long unsigned int utime_scaled;
304 	long unsigned int stime_scaled;
305 	long unsigned int gtime;
306 	long unsigned int hardirq_time;
307 	long unsigned int softirq_time;
308 	long unsigned int steal_time;
309 	long unsigned int idle_time;
310 	long unsigned int starttime;
311 	long unsigned int starttime_user;
312 	long unsigned int startspurr;
313 	long unsigned int utime_sspurr;
314 };
315 
316 struct sibling_subcore_state {
317 	long unsigned int flags;
318 	u8 in_guest[4];
319 };
320 
321 enum MCE_Version {
322 	MCE_V1 = 1,
323 };
324 
325 enum MCE_Severity {
326 	MCE_SEV_NO_ERROR = 0,
327 	MCE_SEV_WARNING = 1,
328 	MCE_SEV_SEVERE = 2,
329 	MCE_SEV_FATAL = 3,
330 };
331 
332 enum MCE_Disposition {
333 	MCE_DISPOSITION_RECOVERED = 0,
334 	MCE_DISPOSITION_NOT_RECOVERED = 1,
335 };
336 
337 enum MCE_Initiator {
338 	MCE_INITIATOR_UNKNOWN = 0,
339 	MCE_INITIATOR_CPU = 1,
340 	MCE_INITIATOR_PCI = 2,
341 	MCE_INITIATOR_ISA = 3,
342 	MCE_INITIATOR_MEMORY = 4,
343 	MCE_INITIATOR_POWERMGM = 5,
344 };
345 
346 enum MCE_ErrorType {
347 	MCE_ERROR_TYPE_UNKNOWN = 0,
348 	MCE_ERROR_TYPE_UE = 1,
349 	MCE_ERROR_TYPE_SLB = 2,
350 	MCE_ERROR_TYPE_ERAT = 3,
351 	MCE_ERROR_TYPE_TLB = 4,
352 	MCE_ERROR_TYPE_USER = 5,
353 	MCE_ERROR_TYPE_RA = 6,
354 	MCE_ERROR_TYPE_LINK = 7,
355 	MCE_ERROR_TYPE_DCACHE = 8,
356 	MCE_ERROR_TYPE_ICACHE = 9,
357 };
358 
359 enum MCE_ErrorClass {
360 	MCE_ECLASS_UNKNOWN = 0,
361 	MCE_ECLASS_HARDWARE = 1,
362 	MCE_ECLASS_HARD_INDETERMINATE = 2,
363 	MCE_ECLASS_SOFTWARE = 3,
364 	MCE_ECLASS_SOFT_INDETERMINATE = 4,
365 };
366 
367 enum MCE_UeErrorType {
368 	MCE_UE_ERROR_INDETERMINATE = 0,
369 	MCE_UE_ERROR_IFETCH = 1,
370 	MCE_UE_ERROR_PAGE_TABLE_WALK_IFETCH = 2,
371 	MCE_UE_ERROR_LOAD_STORE = 3,
372 	MCE_UE_ERROR_PAGE_TABLE_WALK_LOAD_STORE = 4,
373 };
374 
375 enum MCE_SlbErrorType {
376 	MCE_SLB_ERROR_INDETERMINATE = 0,
377 	MCE_SLB_ERROR_PARITY = 1,
378 	MCE_SLB_ERROR_MULTIHIT = 2,
379 };
380 
381 enum MCE_EratErrorType {
382 	MCE_ERAT_ERROR_INDETERMINATE = 0,
383 	MCE_ERAT_ERROR_PARITY = 1,
384 	MCE_ERAT_ERROR_MULTIHIT = 2,
385 };
386 
387 enum MCE_TlbErrorType {
388 	MCE_TLB_ERROR_INDETERMINATE = 0,
389 	MCE_TLB_ERROR_PARITY = 1,
390 	MCE_TLB_ERROR_MULTIHIT = 2,
391 };
392 
393 enum MCE_UserErrorType {
394 	MCE_USER_ERROR_INDETERMINATE = 0,
395 	MCE_USER_ERROR_TLBIE = 1,
396 	MCE_USER_ERROR_SCV = 2,
397 };
398 
399 enum MCE_RaErrorType {
400 	MCE_RA_ERROR_INDETERMINATE = 0,
401 	MCE_RA_ERROR_IFETCH = 1,
402 	MCE_RA_ERROR_IFETCH_FOREIGN = 2,
403 	MCE_RA_ERROR_PAGE_TABLE_WALK_IFETCH = 3,
404 	MCE_RA_ERROR_PAGE_TABLE_WALK_IFETCH_FOREIGN = 4,
405 	MCE_RA_ERROR_LOAD = 5,
406 	MCE_RA_ERROR_STORE = 6,
407 	MCE_RA_ERROR_PAGE_TABLE_WALK_LOAD_STORE = 7,
408 	MCE_RA_ERROR_PAGE_TABLE_WALK_LOAD_STORE_FOREIGN = 8,
409 	MCE_RA_ERROR_LOAD_STORE_FOREIGN = 9,
410 };
411 
412 enum MCE_LinkErrorType {
413 	MCE_LINK_ERROR_INDETERMINATE = 0,
414 	MCE_LINK_ERROR_IFETCH_TIMEOUT = 1,
415 	MCE_LINK_ERROR_PAGE_TABLE_WALK_IFETCH_TIMEOUT = 2,
416 	MCE_LINK_ERROR_LOAD_TIMEOUT = 3,
417 	MCE_LINK_ERROR_STORE_TIMEOUT = 4,
418 	MCE_LINK_ERROR_PAGE_TABLE_WALK_LOAD_STORE_TIMEOUT = 5,
419 };
420 
421 struct machine_check_event {
422 	enum MCE_Version version: 8;
423 	u8 in_use;
424 	enum MCE_Severity severity: 8;
425 	enum MCE_Initiator initiator: 8;
426 	enum MCE_ErrorType error_type: 8;
427 	enum MCE_ErrorClass error_class: 8;
428 	enum MCE_Disposition disposition: 8;
429 	bool sync_error;
430 	u16 cpu;
431 	u64 gpr3;
432 	u64 srr0;
433 	u64 srr1;
434 	union {
435 		struct {
436 			enum MCE_UeErrorType ue_error_type: 8;
437 			u8 effective_address_provided;
438 			u8 physical_address_provided;
439 			u8 ignore_event;
440 			u8 reserved_1[4];
441 			u64 effective_address;
442 			u64 physical_address;
443 			u8 reserved_2[8];
444 		} ue_error;
445 		struct {
446 			enum MCE_SlbErrorType slb_error_type: 8;
447 			u8 effective_address_provided;
448 			u8 reserved_1[6];
449 			u64 effective_address;
450 			u8 reserved_2[16];
451 		} slb_error;
452 		struct {
453 			enum MCE_EratErrorType erat_error_type: 8;
454 			u8 effective_address_provided;
455 			u8 reserved_1[6];
456 			u64 effective_address;
457 			u8 reserved_2[16];
458 		} erat_error;
459 		struct {
460 			enum MCE_TlbErrorType tlb_error_type: 8;
461 			u8 effective_address_provided;
462 			u8 reserved_1[6];
463 			u64 effective_address;
464 			u8 reserved_2[16];
465 		} tlb_error;
466 		struct {
467 			enum MCE_UserErrorType user_error_type: 8;
468 			u8 effective_address_provided;
469 			u8 reserved_1[6];
470 			u64 effective_address;
471 			u8 reserved_2[16];
472 		} user_error;
473 		struct {
474 			enum MCE_RaErrorType ra_error_type: 8;
475 			u8 effective_address_provided;
476 			u8 reserved_1[6];
477 			u64 effective_address;
478 			u8 reserved_2[16];
479 		} ra_error;
480 		struct {
481 			enum MCE_LinkErrorType link_error_type: 8;
482 			u8 effective_address_provided;
483 			u8 reserved_1[6];
484 			u64 effective_address;
485 			u8 reserved_2[16];
486 		} link_error;
487 	} u;
488 };
489 
490 struct mce_info {
491 	int mce_nest_count;
492 	struct machine_check_event mce_event[10];
493 	int mce_queue_count;
494 	struct machine_check_event mce_event_queue[10];
495 	int mce_ue_count;
496 	struct machine_check_event mce_ue_event_queue[10];
497 };
498 
499 struct mmiowb_state {
500 	u16 nesting_count;
501 	u16 mmiowb_pending;
502 };
503 
504 struct dtl_entry;
505 
506 struct task_struct;
507 
508 struct rtas_args;
509 
510 struct paca_struct {
511 	struct lppaca *lppaca_ptr;
512 	u16 paca_index;
513 	u16 lock_token;
514 	u64 kernel_toc;
515 	u64 kernelbase;
516 	u64 kernel_msr;
517 	void *emergency_sp;
518 	u64 data_offset;
519 	s16 hw_cpu_id;
520 	u8 cpu_start;
521 	u8 kexec_state;
522 	struct slb_shadow *slb_shadow_ptr;
523 	struct dtl_entry *dispatch_log;
524 	struct dtl_entry *dispatch_log_end;
525 	u64 dscr_default;
526 	long: 64;
527 	long: 64;
528 	long: 64;
529 	long: 64;
530 	u64 exgen[10];
531 	u16 vmalloc_sllp;
532 	u8 slb_cache_ptr;
533 	u8 stab_rr;
534 	u32 slb_used_bitmap;
535 	u32 slb_kern_bitmap;
536 	u32 slb_cache[8];
537 	unsigned char mm_ctx_low_slices_psize[8];
538 	unsigned char mm_ctx_high_slices_psize[2048];
539 	struct task_struct *__current;
540 	u64 kstack;
541 	u64 saved_r1;
542 	u64 saved_msr;
543 	u64 exit_save_r1;
544 	u8 hsrr_valid;
545 	u8 srr_valid;
546 	u8 irq_soft_mask;
547 	u8 irq_happened;
548 	u8 irq_work_pending;
549 	u8 pmcregs_in_use;
550 	u64 sprg_vdso;
551 	u64 tm_scratch;
552 	long unsigned int idle_state;
553 	union {
554 		struct {
555 			u8 thread_idle_state;
556 			u8 subcore_sibling_mask;
557 		};
558 		struct {
559 			u64 requested_psscr;
560 			atomic_t dont_stop;
561 		};
562 	};
563 	u64 exnmi[10];
564 	u64 exmc[10];
565 	void *nmi_emergency_sp;
566 	void *mc_emergency_sp;
567 	u16 in_nmi;
568 	u16 in_mce;
569 	u8 hmi_event_available;
570 	u8 hmi_p9_special_emu;
571 	u32 hmi_irqs;
572 	u8 ftrace_enabled;
573 	struct cpu_accounting_data accounting;
574 	u64 dtl_ridx;
575 	struct dtl_entry *dtl_curr;
576 	struct kvmppc_host_state kvm_hstate;
577 	struct sibling_subcore_state *sibling_subcore_state;
578 	long: 64;
579 	long: 64;
580 	long: 64;
581 	long: 64;
582 	long: 64;
583 	long: 64;
584 	long: 64;
585 	u64 exrfi[10];
586 	void *rfi_flush_fallback_area;
587 	u64 l1d_flush_size;
588 	struct rtas_args *rtas_args_reentrant;
589 	u8 *mce_data_buf;
590 	struct slb_entry *mce_faulty_slbs;
591 	u16 slb_save_cache_ptr;
592 	long unsigned int canary;
593 	struct mmiowb_state mmiowb_state;
594 	struct mce_info *mce_info;
595 	u8 mce_pending_irq_work;
596 	long: 64;
597 	long: 64;
598 	long: 64;
599 	long: 64;
600 	long: 64;
601 	long: 64;
602 	long: 64;
603 	long: 64;
604 	long: 64;
605 	long: 64;
606 	long: 64;
607 	long: 64;
608 };
609 
610 typedef void (*perf_irq_t)(struct pt_regs *);
611 
612 typedef signed char __s8;
613 
614 typedef long long int __s64;
615 
616 typedef __s8 s8;
617 
618 typedef __s64 s64;
619 
620 typedef struct {
621 	__u32 u[4];
622 } __vector128;
623 
624 typedef __vector128 vector128;
625 
626 typedef long int __kernel_long_t;
627 
628 typedef long unsigned int __kernel_ulong_t;
629 
630 typedef int __kernel_pid_t;
631 
632 typedef unsigned int __kernel_uid32_t;
633 
634 typedef unsigned int __kernel_gid32_t;
635 
636 typedef __kernel_ulong_t __kernel_size_t;
637 
638 typedef __kernel_long_t __kernel_ssize_t;
639 
640 typedef long long int __kernel_loff_t;
641 
642 typedef long long int __kernel_time64_t;
643 
644 typedef __kernel_long_t __kernel_clock_t;
645 
646 typedef int __kernel_timer_t;
647 
648 typedef int __kernel_clockid_t;
649 
650 typedef unsigned int __poll_t;
651 
652 typedef u32 __kernel_dev_t;
653 
654 typedef __kernel_dev_t dev_t;
655 
656 typedef short unsigned int umode_t;
657 
658 typedef __kernel_pid_t pid_t;
659 
660 typedef __kernel_clockid_t clockid_t;
661 
662 typedef __kernel_uid32_t uid_t;
663 
664 typedef __kernel_gid32_t gid_t;
665 
666 typedef __kernel_loff_t loff_t;
667 
668 typedef __kernel_size_t size_t;
669 
670 typedef __kernel_ssize_t ssize_t;
671 
672 typedef s32 int32_t;
673 
674 typedef u32 uint32_t;
675 
676 typedef u64 sector_t;
677 
678 typedef u64 blkcnt_t;
679 
680 typedef u64 dma_addr_t;
681 
682 typedef unsigned int gfp_t;
683 
684 typedef unsigned int fmode_t;
685 
686 typedef u64 phys_addr_t;
687 
688 typedef struct {
689 	s64 counter;
690 } atomic64_t;
691 
692 struct list_head {
693 	struct list_head *next;
694 	struct list_head *prev;
695 };
696 
697 struct hlist_node;
698 
699 struct hlist_head {
700 	struct hlist_node *first;
701 };
702 
703 struct hlist_node {
704 	struct hlist_node *next;
705 	struct hlist_node **pprev;
706 };
707 
708 struct callback_head {
709 	struct callback_head *next;
710 	void (*func)(struct callback_head *);
711 };
712 
713 struct ppc_cache_info {
714 	u32 size;
715 	u32 line_size;
716 	u32 block_size;
717 	u32 log_block_size;
718 	u32 blocks_per_page;
719 	u32 sets;
720 	u32 assoc;
721 };
722 
723 struct ppc64_caches {
724 	struct ppc_cache_info l1d;
725 	struct ppc_cache_info l1i;
726 	struct ppc_cache_info l2;
727 	struct ppc_cache_info l3;
728 };
729 
730 struct exception_table_entry {
731 	int insn;
732 	int fixup;
733 };
734 
735 typedef int (*initcall_t)();
736 
737 struct lock_class_key {};
738 
739 struct fs_context;
740 
741 struct fs_parameter_spec;
742 
743 struct dentry;
744 
745 struct super_block;
746 
747 struct module;
748 
749 struct file_system_type {
750 	const char *name;
751 	int fs_flags;
752 	int (*init_fs_context)(struct fs_context *);
753 	const struct fs_parameter_spec *parameters;
754 	struct dentry * (*mount)(struct file_system_type *, int, const char *, void *);
755 	void (*kill_sb)(struct super_block *);
756 	struct module *owner;
757 	struct file_system_type *next;
758 	struct hlist_head fs_supers;
759 	struct lock_class_key s_lock_key;
760 	struct lock_class_key s_umount_key;
761 	struct lock_class_key s_vfs_rename_key;
762 	struct lock_class_key s_writers_key[3];
763 	struct lock_class_key i_lock_key;
764 	struct lock_class_key i_mutex_key;
765 	struct lock_class_key invalidate_lock_key;
766 	struct lock_class_key i_mutex_dir_key;
767 };
768 
769 struct qrwlock {
770 	union {
771 		atomic_t cnts;
772 		struct {
773 			u8 wlocked;
774 			u8 __lstate[3];
775 		};
776 	};
777 	arch_spinlock_t wait_lock;
778 };
779 
780 typedef struct qrwlock arch_rwlock_t;
781 
782 struct lockdep_map {};
783 
784 struct ratelimit_state {
785 	raw_spinlock_t lock;
786 	int interval;
787 	int burst;
788 	int printed;
789 	int missed;
790 	long unsigned int begin;
791 	long unsigned int flags;
792 };
793 
794 typedef void *fl_owner_t;
795 
796 struct file;
797 
798 struct kiocb;
799 
800 struct iov_iter;
801 
802 struct io_comp_batch;
803 
804 struct dir_context;
805 
806 struct poll_table_struct;
807 
808 struct vm_area_struct;
809 
810 struct inode;
811 
812 struct file_lock;
813 
814 struct page;
815 
816 struct pipe_inode_info;
817 
818 struct seq_file;
819 
820 struct io_uring_cmd;
821 
822 struct file_operations {
823 	struct module *owner;
824 	loff_t (*llseek)(struct file *, loff_t, int);
825 	ssize_t (*read)(struct file *, char *, size_t, loff_t *);
826 	ssize_t (*write)(struct file *, const char *, size_t, loff_t *);
827 	ssize_t (*read_iter)(struct kiocb *, struct iov_iter *);
828 	ssize_t (*write_iter)(struct kiocb *, struct iov_iter *);
829 	int (*iopoll)(struct kiocb *, struct io_comp_batch *, unsigned int);
830 	int (*iterate)(struct file *, struct dir_context *);
831 	int (*iterate_shared)(struct file *, struct dir_context *);
832 	__poll_t (*poll)(struct file *, struct poll_table_struct *);
833 	long int (*unlocked_ioctl)(struct file *, unsigned int, long unsigned int);
834 	long int (*compat_ioctl)(struct file *, unsigned int, long unsigned int);
835 	int (*mmap)(struct file *, struct vm_area_struct *);
836 	long unsigned int mmap_supported_flags;
837 	int (*open)(struct inode *, struct file *);
838 	int (*flush)(struct file *, fl_owner_t);
839 	int (*release)(struct inode *, struct file *);
840 	int (*fsync)(struct file *, loff_t, loff_t, int);
841 	int (*fasync)(int, struct file *, int);
842 	int (*lock)(struct file *, int, struct file_lock *);
843 	ssize_t (*sendpage)(struct file *, struct page *, int, size_t, loff_t *, int);
844 	long unsigned int (*get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
845 	int (*check_flags)(int);
846 	int (*flock)(struct file *, int, struct file_lock *);
847 	ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
848 	ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
849 	int (*setlease)(struct file *, long int, struct file_lock **, void **);
850 	long int (*fallocate)(struct file *, int, loff_t, loff_t);
851 	void (*show_fdinfo)(struct seq_file *, struct file *);
852 	ssize_t (*copy_file_range)(struct file *, loff_t, struct file *, loff_t, size_t, unsigned int);
853 	loff_t (*remap_file_range)(struct file *, loff_t, struct file *, loff_t, loff_t, unsigned int);
854 	int (*fadvise)(struct file *, loff_t, loff_t, int);
855 	int (*uring_cmd)(struct io_uring_cmd *, unsigned int);
856 };
857 
858 struct bug_entry {
859 	int bug_addr_disp;
860 	int file_disp;
861 	short unsigned int line;
862 	short unsigned int flags;
863 };
864 
865 struct static_call_key {
866 	void *func;
867 };
868 
869 typedef struct {
870 	__be64 pte;
871 } pte_t;
872 
873 typedef struct {
874 	__be64 pmd;
875 } pmd_t;
876 
877 typedef struct {
878 	__be64 pud;
879 } pud_t;
880 
881 typedef struct {
882 	__be64 pgd;
883 } pgd_t;
884 
885 typedef struct {
886 	long unsigned int pgprot;
887 } pgprot_t;
888 
889 typedef pte_t *pgtable_t;
890 
891 typedef atomic64_t atomic_long_t;
892 
893 struct spinlock {
894 	union {
895 		struct raw_spinlock rlock;
896 	};
897 };
898 
899 typedef struct spinlock spinlock_t;
900 
901 struct address_space;
902 
903 struct page_pool;
904 
905 struct mm_struct;
906 
907 struct dev_pagemap;
908 
909 struct page {
910 	long unsigned int flags;
911 	union {
912 		struct {
913 			union {
914 				struct list_head lru;
915 				struct {
916 					void *__filler;
917 					unsigned int mlock_count;
918 				};
919 				struct list_head buddy_list;
920 				struct list_head pcp_list;
921 			};
922 			struct address_space *mapping;
923 			long unsigned int index;
924 			long unsigned int private;
925 		};
926 		struct {
927 			long unsigned int pp_magic;
928 			struct page_pool *pp;
929 			long unsigned int _pp_mapping_pad;
930 			long unsigned int dma_addr;
931 			union {
932 				long unsigned int dma_addr_upper;
933 				atomic_long_t pp_frag_count;
934 			};
935 		};
936 		struct {
937 			long unsigned int compound_head;
938 			unsigned char compound_dtor;
939 			unsigned char compound_order;
940 			atomic_t compound_mapcount;
941 			atomic_t compound_pincount;
942 			unsigned int compound_nr;
943 		};
944 		struct {
945 			long unsigned int _compound_pad_1;
946 			long unsigned int _compound_pad_2;
947 			struct list_head deferred_list;
948 		};
949 		struct {
950 			long unsigned int _pt_pad_1;
951 			pgtable_t pmd_huge_pte;
952 			long unsigned int _pt_pad_2;
953 			union {
954 				struct mm_struct *pt_mm;
955 				atomic_t pt_frag_refcount;
956 			};
957 			spinlock_t ptl;
958 		};
959 		struct {
960 			struct dev_pagemap *pgmap;
961 			void *zone_device_data;
962 		};
963 		struct callback_head callback_head;
964 	};
965 	union {
966 		atomic_t _mapcount;
967 		unsigned int page_type;
968 	};
969 	atomic_t _refcount;
970 	long unsigned int memcg_data;
971 };
972 
973 struct slice_mask {
974 	u64 low_slices;
975 	long unsigned int high_slices[64];
976 };
977 
978 struct hash_mm_context {
979 	u16 user_psize;
980 	unsigned char low_slices_psize[8];
981 	unsigned char high_slices_psize[2048];
982 	long unsigned int slb_addr_limit;
983 	struct slice_mask mask_64k;
984 	struct slice_mask mask_4k;
985 	struct slice_mask mask_16m;
986 	struct slice_mask mask_16g;
987 };
988 
989 typedef long unsigned int mm_context_id_t;
990 
991 typedef struct {
992 	union {
993 		mm_context_id_t id;
994 		mm_context_id_t extended_id[8];
995 	};
996 	atomic_t active_cpus;
997 	atomic_t copros;
998 	atomic_t vas_windows;
999 	struct hash_mm_context *hash_context;
1000 	void *vdso;
1001 	void *pte_frag;
1002 	void *pmd_frag;
1003 	struct list_head iommu_group_mem_list;
1004 	u32 pkey_allocation_map;
1005 	s16 execute_only_pkey;
1006 } mm_context_t;
1007 
1008 enum {
1009 	FW_FEATURE_PSERIES_POSSIBLE = 17591370252287ULL,
1010 	FW_FEATURE_PSERIES_ALWAYS = 0ULL,
1011 	FW_FEATURE_POWERNV_POSSIBLE = 275146342400ULL,
1012 	FW_FEATURE_POWERNV_ALWAYS = 0ULL,
1013 	FW_FEATURE_PS3_POSSIBLE = 12582912ULL,
1014 	FW_FEATURE_PS3_ALWAYS = 12582912ULL,
1015 	FW_FEATURE_NATIVE_POSSIBLE = 0ULL,
1016 	FW_FEATURE_NATIVE_ALWAYS = 0ULL,
1017 	FW_FEATURE_POSSIBLE = 17591638687743ULL,
1018 	FW_FEATURE_ALWAYS = 0ULL,
1019 };
1020 
1021 struct thread_info {
1022 	int preempt_count;
1023 	unsigned int cpu;
1024 	long unsigned int local_flags;
1025 	unsigned char slb_preload_nr;
1026 	unsigned char slb_preload_tail;
1027 	u32 slb_preload_esid[16];
1028 	long: 64;
1029 	long: 64;
1030 	long: 64;
1031 	long: 64;
1032 	long: 64;
1033 	long unsigned int flags;
1034 	long: 64;
1035 	long: 64;
1036 	long: 64;
1037 	long: 64;
1038 	long: 64;
1039 	long: 64;
1040 	long: 64;
1041 	long: 64;
1042 	long: 64;
1043 	long: 64;
1044 	long: 64;
1045 	long: 64;
1046 	long: 64;
1047 	long: 64;
1048 	long: 64;
1049 };
1050 
1051 struct refcount_struct {
1052 	atomic_t refs;
1053 };
1054 
1055 typedef struct refcount_struct refcount_t;
1056 
1057 struct llist_node {
1058 	struct llist_node *next;
1059 };
1060 
1061 struct __call_single_node {
1062 	struct llist_node llist;
1063 	union {
1064 		unsigned int u_flags;
1065 		atomic_t a_flags;
1066 	};
1067 	u16 src;
1068 	u16 dst;
1069 };
1070 
1071 struct load_weight {
1072 	long unsigned int weight;
1073 	u32 inv_weight;
1074 };
1075 
1076 struct rb_node {
1077 	long unsigned int __rb_parent_color;
1078 	struct rb_node *rb_right;
1079 	struct rb_node *rb_left;
1080 };
1081 
1082 struct util_est {
1083 	unsigned int enqueued;
1084 	unsigned int ewma;
1085 };
1086 
1087 struct sched_avg {
1088 	u64 last_update_time;
1089 	u64 load_sum;
1090 	u64 runnable_sum;
1091 	u32 util_sum;
1092 	u32 period_contrib;
1093 	long unsigned int load_avg;
1094 	long unsigned int runnable_avg;
1095 	long unsigned int util_avg;
1096 	struct util_est util_est;
1097 	long: 64;
1098 	long: 64;
1099 	long: 64;
1100 	long: 64;
1101 	long: 64;
1102 	long: 64;
1103 	long: 64;
1104 	long: 64;
1105 };
1106 
1107 struct cfs_rq;
1108 
1109 struct sched_entity {
1110 	struct load_weight load;
1111 	struct rb_node run_node;
1112 	struct list_head group_node;
1113 	unsigned int on_rq;
1114 	u64 exec_start;
1115 	u64 sum_exec_runtime;
1116 	u64 vruntime;
1117 	u64 prev_sum_exec_runtime;
1118 	u64 nr_migrations;
1119 	int depth;
1120 	struct sched_entity *parent;
1121 	struct cfs_rq *cfs_rq;
1122 	struct cfs_rq *my_q;
1123 	long unsigned int runnable_weight;
1124 	long: 64;
1125 	long: 64;
1126 	long: 64;
1127 	long: 64;
1128 	long: 64;
1129 	long: 64;
1130 	long: 64;
1131 	long: 64;
1132 	long: 64;
1133 	long: 64;
1134 	long: 64;
1135 	long: 64;
1136 	long: 64;
1137 	long: 64;
1138 	struct sched_avg avg;
1139 };
1140 
1141 struct sched_rt_entity {
1142 	struct list_head run_list;
1143 	long unsigned int timeout;
1144 	long unsigned int watchdog_stamp;
1145 	unsigned int time_slice;
1146 	short unsigned int on_rq;
1147 	short unsigned int on_list;
1148 	struct sched_rt_entity *back;
1149 };
1150 
1151 typedef s64 ktime_t;
1152 
1153 struct timerqueue_node {
1154 	struct rb_node node;
1155 	ktime_t expires;
1156 };
1157 
1158 enum hrtimer_restart {
1159 	HRTIMER_NORESTART = 0,
1160 	HRTIMER_RESTART = 1,
1161 };
1162 
1163 struct hrtimer_clock_base;
1164 
1165 struct hrtimer {
1166 	struct timerqueue_node node;
1167 	ktime_t _softexpires;
1168 	enum hrtimer_restart (*function)(struct hrtimer *);
1169 	struct hrtimer_clock_base *base;
1170 	u8 state;
1171 	u8 is_rel;
1172 	u8 is_soft;
1173 	u8 is_hard;
1174 };
1175 
1176 struct sched_dl_entity {
1177 	struct rb_node rb_node;
1178 	u64 dl_runtime;
1179 	u64 dl_deadline;
1180 	u64 dl_period;
1181 	u64 dl_bw;
1182 	u64 dl_density;
1183 	s64 runtime;
1184 	u64 deadline;
1185 	unsigned int flags;
1186 	unsigned int dl_throttled: 1;
1187 	unsigned int dl_yielded: 1;
1188 	unsigned int dl_non_contending: 1;
1189 	unsigned int dl_overrun: 1;
1190 	struct hrtimer dl_timer;
1191 	struct hrtimer inactive_timer;
1192 	struct sched_dl_entity *pi_se;
1193 };
1194 
1195 struct sched_statistics {};
1196 
1197 struct cpumask {
1198 	long unsigned int bits[32];
1199 };
1200 
1201 typedef struct cpumask cpumask_t;
1202 
1203 union rcu_special {
1204 	struct {
1205 		u8 blocked;
1206 		u8 need_qs;
1207 		u8 exp_hint;
1208 		u8 need_mb;
1209 	} b;
1210 	u32 s;
1211 };
1212 
1213 struct sched_info {
1214 	long unsigned int pcount;
1215 	long long unsigned int run_delay;
1216 	long long unsigned int last_arrival;
1217 	long long unsigned int last_queued;
1218 };
1219 
1220 struct plist_node {
1221 	int prio;
1222 	struct list_head prio_list;
1223 	struct list_head node_list;
1224 };
1225 
1226 struct vmacache {
1227 	u64 seqnum;
1228 	struct vm_area_struct *vmas[4];
1229 };
1230 
1231 struct task_rss_stat {
1232 	int events;
1233 	int count[4];
1234 };
1235 
1236 enum timespec_type {
1237 	TT_NONE = 0,
1238 	TT_NATIVE = 1,
1239 	TT_COMPAT = 2,
1240 };
1241 
1242 struct __kernel_timespec;
1243 
1244 struct old_timespec32;
1245 
1246 struct pollfd;
1247 
1248 struct restart_block {
1249 	long unsigned int arch_data;
1250 	long int (*fn)(struct restart_block *);
1251 	union {
1252 		struct {
1253 			u32 *uaddr;
1254 			u32 val;
1255 			u32 flags;
1256 			u32 bitset;
1257 			u64 time;
1258 			u32 *uaddr2;
1259 		} futex;
1260 		struct {
1261 			clockid_t clockid;
1262 			enum timespec_type type;
1263 			union {
1264 				struct __kernel_timespec *rmtp;
1265 				struct old_timespec32 *compat_rmtp;
1266 			};
1267 			u64 expires;
1268 		} nanosleep;
1269 		struct {
1270 			struct pollfd *ufds;
1271 			int nfds;
1272 			int has_timeout;
1273 			long unsigned int tv_sec;
1274 			long unsigned int tv_nsec;
1275 		} poll;
1276 	};
1277 };
1278 
1279 struct prev_cputime {};
1280 
1281 struct rb_root {
1282 	struct rb_node *rb_node;
1283 };
1284 
1285 struct rb_root_cached {
1286 	struct rb_root rb_root;
1287 	struct rb_node *rb_leftmost;
1288 };
1289 
1290 struct timerqueue_head {
1291 	struct rb_root_cached rb_root;
1292 };
1293 
1294 struct posix_cputimer_base {
1295 	u64 nextevt;
1296 	struct timerqueue_head tqhead;
1297 };
1298 
1299 struct posix_cputimers {
1300 	struct posix_cputimer_base bases[3];
1301 	unsigned int timers_active;
1302 	unsigned int expiry_active;
1303 };
1304 
1305 struct sem_undo_list;
1306 
1307 struct sysv_sem {
1308 	struct sem_undo_list *undo_list;
1309 };
1310 
1311 struct sysv_shm {
1312 	struct list_head shm_clist;
1313 };
1314 
1315 typedef struct {
1316 	long unsigned int sig[1];
1317 } sigset_t;
1318 
1319 struct sigpending {
1320 	struct list_head list;
1321 	sigset_t signal;
1322 };
1323 
1324 struct seccomp_filter;
1325 
1326 struct seccomp {
1327 	int mode;
1328 	atomic_t filter_count;
1329 	struct seccomp_filter *filter;
1330 };
1331 
1332 struct syscall_user_dispatch {};
1333 
1334 struct wake_q_node {
1335 	struct wake_q_node *next;
1336 };
1337 
1338 struct task_io_accounting {};
1339 
1340 typedef struct {
1341 	long unsigned int bits[4];
1342 } nodemask_t;
1343 
1344 struct seqcount {
1345 	unsigned int sequence;
1346 };
1347 
1348 typedef struct seqcount seqcount_t;
1349 
1350 struct seqcount_spinlock {
1351 	seqcount_t seqcount;
1352 };
1353 
1354 typedef struct seqcount_spinlock seqcount_spinlock_t;
1355 
1356 struct optimistic_spin_queue {
1357 	atomic_t tail;
1358 };
1359 
1360 struct mutex {
1361 	atomic_long_t owner;
1362 	raw_spinlock_t wait_lock;
1363 	struct optimistic_spin_queue osq;
1364 	struct list_head wait_list;
1365 	void *magic;
1366 };
1367 
1368 struct tlbflush_unmap_batch {};
1369 
1370 struct page_frag {
1371 	struct page *page;
1372 	__u32 offset;
1373 	__u32 size;
1374 };
1375 
1376 struct kmap_ctrl {};
1377 
1378 struct timer_list {
1379 	struct hlist_node entry;
1380 	long unsigned int expires;
1381 	void (*function)(struct timer_list *);
1382 	u32 flags;
1383 };
1384 
1385 struct llist_head {
1386 	struct llist_node *first;
1387 };
1388 
1389 struct debug_reg {};
1390 
1391 struct thread_fp_state {
1392 	u64 fpr[64];
1393 	u64 fpscr;
1394 	long: 64;
1395 };
1396 
1397 struct arch_hw_breakpoint {
1398 	long unsigned int address;
1399 	u16 type;
1400 	u16 len;
1401 	u16 hw_len;
1402 	u8 flags;
1403 };
1404 
1405 struct thread_vr_state {
1406 	vector128 vr[32];
1407 	vector128 vscr;
1408 };
1409 
1410 struct perf_event;
1411 
1412 struct thread_struct {
1413 	long unsigned int ksp;
1414 	long unsigned int ksp_vsid;
1415 	struct pt_regs *regs;
1416 	struct debug_reg debug;
1417 	long: 64;
1418 	struct thread_fp_state fp_state;
1419 	struct thread_fp_state *fp_save_area;
1420 	int fpexc_mode;
1421 	unsigned int align_ctl;
1422 	struct perf_event *ptrace_bps[2];
1423 	struct perf_event *last_hit_ubp[2];
1424 	struct arch_hw_breakpoint hw_brk[2];
1425 	long unsigned int trap_nr;
1426 	u8 load_slb;
1427 	u8 load_fp;
1428 	u8 load_vec;
1429 	long: 0;
1430 	struct thread_vr_state vr_state;
1431 	struct thread_vr_state *vr_save_area;
1432 	long unsigned int vrsave;
1433 	int used_vr;
1434 	int used_vsr;
1435 	u8 load_tm;
1436 	u64 tm_tfhar;
1437 	u64 tm_texasr;
1438 	u64 tm_tfiar;
1439 	struct pt_regs ckpt_regs;
1440 	long unsigned int tm_tar;
1441 	long unsigned int tm_ppr;
1442 	long unsigned int tm_dscr;
1443 	long unsigned int tm_amr;
1444 	long: 64;
1445 	struct thread_fp_state ckfp_state;
1446 	struct thread_vr_state ckvr_state;
1447 	long unsigned int ckvrsave;
1448 	long unsigned int dscr;
1449 	long unsigned int fscr;
1450 	int dscr_inherit;
1451 	long unsigned int tidr;
1452 	long unsigned int tar;
1453 	long unsigned int ebbrr;
1454 	long unsigned int ebbhr;
1455 	long unsigned int bescr;
1456 	long unsigned int siar;
1457 	long unsigned int sdar;
1458 	long unsigned int sier;
1459 	long unsigned int mmcr2;
1460 	unsigned int mmcr0;
1461 	unsigned int used_ebb;
1462 	long unsigned int mmcr3;
1463 	long unsigned int sier2;
1464 	long unsigned int sier3;
1465 	long: 64;
1466 };
1467 
1468 struct sched_class;
1469 
1470 struct task_group;
1471 
1472 struct pid;
1473 
1474 struct completion;
1475 
1476 struct cred;
1477 
1478 struct key;
1479 
1480 struct nameidata;
1481 
1482 struct fs_struct;
1483 
1484 struct files_struct;
1485 
1486 struct io_uring_task;
1487 
1488 struct nsproxy;
1489 
1490 struct signal_struct;
1491 
1492 struct sighand_struct;
1493 
1494 struct rt_mutex_waiter;
1495 
1496 struct mutex_waiter;
1497 
1498 struct bio_list;
1499 
1500 struct blk_plug;
1501 
1502 struct reclaim_state;
1503 
1504 struct backing_dev_info;
1505 
1506 struct io_context;
1507 
1508 struct capture_control;
1509 
1510 struct kernel_siginfo;
1511 
1512 typedef struct kernel_siginfo kernel_siginfo_t;
1513 
1514 struct css_set;
1515 
1516 struct robust_list_head;
1517 
1518 struct futex_pi_state;
1519 
1520 struct perf_event_context;
1521 
1522 struct mempolicy;
1523 
1524 struct numa_group;
1525 
1526 struct rseq;
1527 
1528 struct task_delay_info;
1529 
1530 struct ftrace_ret_stack;
1531 
1532 struct mem_cgroup;
1533 
1534 struct uprobe_task;
1535 
1536 struct bpf_local_storage;
1537 
1538 struct bpf_run_ctx;
1539 
1540 struct task_struct {
1541 	struct thread_info thread_info;
1542 	unsigned int __state;
1543 	void *stack;
1544 	refcount_t usage;
1545 	unsigned int flags;
1546 	unsigned int ptrace;
1547 	int on_cpu;
1548 	struct __call_single_node wake_entry;
1549 	unsigned int wakee_flips;
1550 	long unsigned int wakee_flip_decay_ts;
1551 	struct task_struct *last_wakee;
1552 	int recent_used_cpu;
1553 	int wake_cpu;
1554 	int on_rq;
1555 	int prio;
1556 	int static_prio;
1557 	int normal_prio;
1558 	unsigned int rt_priority;
1559 	long: 64;
1560 	long: 64;
1561 	long: 64;
1562 	struct sched_entity se;
1563 	struct sched_rt_entity rt;
1564 	struct sched_dl_entity dl;
1565 	const struct sched_class *sched_class;
1566 	struct task_group *sched_task_group;
1567 	long: 64;
1568 	long: 64;
1569 	long: 64;
1570 	long: 64;
1571 	long: 64;
1572 	long: 64;
1573 	long: 64;
1574 	long: 64;
1575 	long: 64;
1576 	long: 64;
1577 	long: 64;
1578 	long: 64;
1579 	struct sched_statistics stats;
1580 	struct hlist_head preempt_notifiers;
1581 	unsigned int btrace_seq;
1582 	unsigned int policy;
1583 	int nr_cpus_allowed;
1584 	const cpumask_t *cpus_ptr;
1585 	cpumask_t *user_cpus_ptr;
1586 	cpumask_t cpus_mask;
1587 	void *migration_pending;
1588 	short unsigned int migration_disabled;
1589 	short unsigned int migration_flags;
1590 	int trc_reader_nesting;
1591 	int trc_ipi_to_cpu;
1592 	union rcu_special trc_reader_special;
1593 	struct list_head trc_holdout_list;
1594 	struct list_head trc_blkd_node;
1595 	int trc_blkd_cpu;
1596 	struct sched_info sched_info;
1597 	struct list_head tasks;
1598 	struct plist_node pushable_tasks;
1599 	struct rb_node pushable_dl_tasks;
1600 	struct mm_struct *mm;
1601 	struct mm_struct *active_mm;
1602 	struct vmacache vmacache;
1603 	struct task_rss_stat rss_stat;
1604 	int exit_state;
1605 	int exit_code;
1606 	int exit_signal;
1607 	int pdeath_signal;
1608 	long unsigned int jobctl;
1609 	unsigned int personality;
1610 	unsigned int sched_reset_on_fork: 1;
1611 	unsigned int sched_contributes_to_load: 1;
1612 	unsigned int sched_migrated: 1;
1613 	long: 29;
1614 	unsigned int sched_remote_wakeup: 1;
1615 	unsigned int in_execve: 1;
1616 	unsigned int in_iowait: 1;
1617 	unsigned int restore_sigmask: 1;
1618 	unsigned int in_user_fault: 1;
1619 	unsigned int no_cgroup_migration: 1;
1620 	unsigned int frozen: 1;
1621 	unsigned int in_eventfd_signal: 1;
1622 	long unsigned int atomic_flags;
1623 	struct restart_block restart_block;
1624 	pid_t pid;
1625 	pid_t tgid;
1626 	long unsigned int stack_canary;
1627 	struct task_struct *real_parent;
1628 	struct task_struct *parent;
1629 	struct list_head children;
1630 	struct list_head sibling;
1631 	struct task_struct *group_leader;
1632 	struct list_head ptraced;
1633 	struct list_head ptrace_entry;
1634 	struct pid *thread_pid;
1635 	struct hlist_node pid_links[4];
1636 	struct list_head thread_group;
1637 	struct list_head thread_node;
1638 	struct completion *vfork_done;
1639 	int *set_child_tid;
1640 	int *clear_child_tid;
1641 	void *worker_private;
1642 	u64 utime;
1643 	u64 stime;
1644 	u64 utimescaled;
1645 	u64 stimescaled;
1646 	u64 gtime;
1647 	struct prev_cputime prev_cputime;
1648 	long unsigned int nvcsw;
1649 	long unsigned int nivcsw;
1650 	u64 start_time;
1651 	u64 start_boottime;
1652 	long unsigned int min_flt;
1653 	long unsigned int maj_flt;
1654 	struct posix_cputimers posix_cputimers;
1655 	const struct cred *ptracer_cred;
1656 	const struct cred *real_cred;
1657 	const struct cred *cred;
1658 	struct key *cached_requested_key;
1659 	char comm[16];
1660 	struct nameidata *nameidata;
1661 	struct sysv_sem sysvsem;
1662 	struct sysv_shm sysvshm;
1663 	long unsigned int last_switch_count;
1664 	long unsigned int last_switch_time;
1665 	struct fs_struct *fs;
1666 	struct files_struct *files;
1667 	struct io_uring_task *io_uring;
1668 	struct nsproxy *nsproxy;
1669 	struct signal_struct *signal;
1670 	struct sighand_struct *sighand;
1671 	sigset_t blocked;
1672 	sigset_t real_blocked;
1673 	sigset_t saved_sigmask;
1674 	struct sigpending pending;
1675 	long unsigned int sas_ss_sp;
1676 	size_t sas_ss_size;
1677 	unsigned int sas_ss_flags;
1678 	struct callback_head *task_works;
1679 	struct seccomp seccomp;
1680 	struct syscall_user_dispatch syscall_dispatch;
1681 	u64 parent_exec_id;
1682 	u64 self_exec_id;
1683 	spinlock_t alloc_lock;
1684 	raw_spinlock_t pi_lock;
1685 	struct wake_q_node wake_q;
1686 	struct rb_root_cached pi_waiters;
1687 	struct task_struct *pi_top_task;
1688 	struct rt_mutex_waiter *pi_blocked_on;
1689 	struct mutex_waiter *blocked_on;
1690 	void *journal_info;
1691 	struct bio_list *bio_list;
1692 	struct blk_plug *plug;
1693 	struct reclaim_state *reclaim_state;
1694 	struct backing_dev_info *backing_dev_info;
1695 	struct io_context *io_context;
1696 	struct capture_control *capture_control;
1697 	long unsigned int ptrace_message;
1698 	kernel_siginfo_t *last_siginfo;
1699 	struct task_io_accounting ioac;
1700 	nodemask_t mems_allowed;
1701 	seqcount_spinlock_t mems_allowed_seq;
1702 	int cpuset_mem_spread_rotor;
1703 	int cpuset_slab_spread_rotor;
1704 	struct css_set *cgroups;
1705 	struct list_head cg_list;
1706 	struct robust_list_head *robust_list;
1707 	struct list_head pi_state_list;
1708 	struct futex_pi_state *pi_state_cache;
1709 	struct mutex futex_exit_mutex;
1710 	unsigned int futex_state;
1711 	struct perf_event_context *perf_event_ctxp[2];
1712 	struct mutex perf_event_mutex;
1713 	struct list_head perf_event_list;
1714 	struct mempolicy *mempolicy;
1715 	short int il_prev;
1716 	short int pref_node_fork;
1717 	int numa_scan_seq;
1718 	unsigned int numa_scan_period;
1719 	unsigned int numa_scan_period_max;
1720 	int numa_preferred_nid;
1721 	long unsigned int numa_migrate_retry;
1722 	u64 node_stamp;
1723 	u64 last_task_numa_placement;
1724 	u64 last_sum_exec_runtime;
1725 	struct callback_head numa_work;
1726 	struct numa_group *numa_group;
1727 	long unsigned int *numa_faults;
1728 	long unsigned int total_numa_faults;
1729 	long unsigned int numa_faults_locality[3];
1730 	long unsigned int numa_pages_migrated;
1731 	struct rseq *rseq;
1732 	u32 rseq_sig;
1733 	long unsigned int rseq_event_mask;
1734 	struct tlbflush_unmap_batch tlb_ubc;
1735 	union {
1736 		refcount_t rcu_users;
1737 		struct callback_head rcu;
1738 	};
1739 	struct pipe_inode_info *splice_pipe;
1740 	struct page_frag task_frag;
1741 	struct task_delay_info *delays;
1742 	int nr_dirtied;
1743 	int nr_dirtied_pause;
1744 	long unsigned int dirty_paused_when;
1745 	u64 timer_slack_ns;
1746 	u64 default_timer_slack_ns;
1747 	int curr_ret_stack;
1748 	int curr_ret_depth;
1749 	struct ftrace_ret_stack *ret_stack;
1750 	long long unsigned int ftrace_timestamp;
1751 	atomic_t trace_overrun;
1752 	atomic_t tracing_graph_pause;
1753 	long unsigned int trace;
1754 	long unsigned int trace_recursion;
1755 	struct mem_cgroup *memcg_in_oom;
1756 	gfp_t memcg_oom_gfp_mask;
1757 	int memcg_oom_order;
1758 	unsigned int memcg_nr_pages_over_high;
1759 	struct mem_cgroup *active_memcg;
1760 	struct uprobe_task *utask;
1761 	struct kmap_ctrl kmap_ctrl;
1762 	int pagefault_disabled;
1763 	struct task_struct *oom_reaper_list;
1764 	struct timer_list oom_reaper_timer;
1765 	refcount_t stack_refcount;
1766 	struct bpf_local_storage *bpf_storage;
1767 	struct bpf_run_ctx *bpf_ctx;
1768 	struct llist_head kretprobe_instances;
1769 	long: 64;
1770 	struct thread_struct thread;
1771 	long: 64;
1772 	long: 64;
1773 	long: 64;
1774 	long: 64;
1775 };
1776 
1777 typedef __s64 time64_t;
1778 
1779 struct __kernel_timespec {
1780 	__kernel_time64_t tv_sec;
1781 	long long int tv_nsec;
1782 };
1783 
1784 struct timespec64 {
1785 	time64_t tv_sec;
1786 	long int tv_nsec;
1787 };
1788 
1789 typedef s32 old_time32_t;
1790 
1791 struct old_timespec32 {
1792 	old_time32_t tv_sec;
1793 	s32 tv_nsec;
1794 };
1795 
1796 struct pollfd {
1797 	int fd;
1798 	short int events;
1799 	short int revents;
1800 };
1801 
1802 struct device;
1803 
1804 struct attribute_group;
1805 
1806 struct perf_cpu_context;
1807 
1808 struct kmem_cache;
1809 
1810 struct perf_output_handle;
1811 
1812 struct pmu {
1813 	struct list_head entry;
1814 	struct module *module;
1815 	struct device *dev;
1816 	const struct attribute_group **attr_groups;
1817 	const struct attribute_group **attr_update;
1818 	const char *name;
1819 	int type;
1820 	int capabilities;
1821 	int *pmu_disable_count;
1822 	struct perf_cpu_context *pmu_cpu_context;
1823 	atomic_t exclusive_cnt;
1824 	int task_ctx_nr;
1825 	int hrtimer_interval_ms;
1826 	unsigned int nr_addr_filters;
1827 	void (*pmu_enable)(struct pmu *);
1828 	void (*pmu_disable)(struct pmu *);
1829 	int (*event_init)(struct perf_event *);
1830 	void (*event_mapped)(struct perf_event *, struct mm_struct *);
1831 	void (*event_unmapped)(struct perf_event *, struct mm_struct *);
1832 	int (*add)(struct perf_event *, int);
1833 	void (*del)(struct perf_event *, int);
1834 	void (*start)(struct perf_event *, int);
1835 	void (*stop)(struct perf_event *, int);
1836 	void (*read)(struct perf_event *);
1837 	void (*start_txn)(struct pmu *, unsigned int);
1838 	int (*commit_txn)(struct pmu *);
1839 	void (*cancel_txn)(struct pmu *);
1840 	int (*event_idx)(struct perf_event *);
1841 	void (*sched_task)(struct perf_event_context *, bool);
1842 	struct kmem_cache *task_ctx_cache;
1843 	void (*swap_task_ctx)(struct perf_event_context *, struct perf_event_context *);
1844 	void * (*setup_aux)(struct perf_event *, void **, int, bool);
1845 	void (*free_aux)(void *);
1846 	long int (*snapshot_aux)(struct perf_event *, struct perf_output_handle *, long unsigned int);
1847 	int (*addr_filters_validate)(struct list_head *);
1848 	void (*addr_filters_sync)(struct perf_event *);
1849 	int (*aux_output_match)(struct perf_event *);
1850 	int (*filter_match)(struct perf_event *);
1851 	int (*check_period)(struct perf_event *, u64);
1852 };
1853 
1854 enum perf_event_state {
1855 	PERF_EVENT_STATE_DEAD = -4,
1856 	PERF_EVENT_STATE_EXIT = -3,
1857 	PERF_EVENT_STATE_ERROR = -2,
1858 	PERF_EVENT_STATE_OFF = -1,
1859 	PERF_EVENT_STATE_INACTIVE = 0,
1860 	PERF_EVENT_STATE_ACTIVE = 1,
1861 };
1862 
1863 typedef struct {
1864 	long int v;
1865 } local_t;
1866 
1867 typedef struct {
1868 	local_t a;
1869 } local64_t;
1870 
1871 struct perf_event_attr {
1872 	__u32 type;
1873 	__u32 size;
1874 	__u64 config;
1875 	union {
1876 		__u64 sample_period;
1877 		__u64 sample_freq;
1878 	};
1879 	__u64 sample_type;
1880 	__u64 read_format;
1881 	__u64 disabled: 1;
1882 	__u64 inherit: 1;
1883 	__u64 pinned: 1;
1884 	__u64 exclusive: 1;
1885 	__u64 exclude_user: 1;
1886 	__u64 exclude_kernel: 1;
1887 	__u64 exclude_hv: 1;
1888 	__u64 exclude_idle: 1;
1889 	__u64 mmap: 1;
1890 	__u64 comm: 1;
1891 	__u64 freq: 1;
1892 	__u64 inherit_stat: 1;
1893 	__u64 enable_on_exec: 1;
1894 	__u64 task: 1;
1895 	__u64 watermark: 1;
1896 	__u64 precise_ip: 2;
1897 	__u64 mmap_data: 1;
1898 	__u64 sample_id_all: 1;
1899 	__u64 exclude_host: 1;
1900 	__u64 exclude_guest: 1;
1901 	__u64 exclude_callchain_kernel: 1;
1902 	__u64 exclude_callchain_user: 1;
1903 	__u64 mmap2: 1;
1904 	__u64 comm_exec: 1;
1905 	__u64 use_clockid: 1;
1906 	__u64 context_switch: 1;
1907 	__u64 write_backward: 1;
1908 	__u64 namespaces: 1;
1909 	__u64 ksymbol: 1;
1910 	__u64 bpf_event: 1;
1911 	__u64 aux_output: 1;
1912 	__u64 cgroup: 1;
1913 	__u64 text_poke: 1;
1914 	__u64 build_id: 1;
1915 	__u64 inherit_thread: 1;
1916 	__u64 remove_on_exec: 1;
1917 	__u64 sigtrap: 1;
1918 	__u64 __reserved_1: 26;
1919 	union {
1920 		__u32 wakeup_events;
1921 		__u32 wakeup_watermark;
1922 	};
1923 	__u32 bp_type;
1924 	union {
1925 		__u64 bp_addr;
1926 		__u64 kprobe_func;
1927 		__u64 uprobe_path;
1928 		__u64 config1;
1929 	};
1930 	union {
1931 		__u64 bp_len;
1932 		__u64 kprobe_addr;
1933 		__u64 probe_offset;
1934 		__u64 config2;
1935 	};
1936 	__u64 branch_sample_type;
1937 	__u64 sample_regs_user;
1938 	__u32 sample_stack_user;
1939 	__s32 clockid;
1940 	__u64 sample_regs_intr;
1941 	__u32 aux_watermark;
1942 	__u16 sample_max_stack;
1943 	__u16 __reserved_2;
1944 	__u32 aux_sample_size;
1945 	__u32 __reserved_3;
1946 	__u64 sig_data;
1947 };
1948 
1949 struct hw_perf_event_extra {
1950 	u64 config;
1951 	unsigned int reg;
1952 	int alloc;
1953 	int idx;
1954 };
1955 
1956 struct hw_perf_event {
1957 	union {
1958 		struct {
1959 			u64 config;
1960 			u64 last_tag;
1961 			long unsigned int config_base;
1962 			long unsigned int event_base;
1963 			int event_base_rdpmc;
1964 			int idx;
1965 			int last_cpu;
1966 			int flags;
1967 			struct hw_perf_event_extra extra_reg;
1968 			struct hw_perf_event_extra branch_reg;
1969 		};
1970 		struct {
1971 			struct hrtimer hrtimer;
1972 		};
1973 		struct {
1974 			struct list_head tp_list;
1975 		};
1976 		struct {
1977 			u64 pwr_acc;
1978 			u64 ptsc;
1979 		};
1980 		struct {
1981 			struct arch_hw_breakpoint info;
1982 			struct list_head bp_list;
1983 		};
1984 		struct {
1985 			u8 iommu_bank;
1986 			u8 iommu_cntr;
1987 			u16 padding;
1988 			u64 conf;
1989 			u64 conf1;
1990 		};
1991 	};
1992 	struct task_struct *target;
1993 	void *addr_filters;
1994 	long unsigned int addr_filters_gen;
1995 	int state;
1996 	local64_t prev_count;
1997 	u64 sample_period;
1998 	union {
1999 		struct {
2000 			u64 last_period;
2001 			local64_t period_left;
2002 		};
2003 		struct {
2004 			u64 saved_metric;
2005 			u64 saved_slots;
2006 		};
2007 	};
2008 	u64 interrupts_seq;
2009 	u64 interrupts;
2010 	u64 freq_time_stamp;
2011 	u64 freq_count_stamp;
2012 };
2013 
2014 struct wait_queue_head {
2015 	spinlock_t lock;
2016 	struct list_head head;
2017 };
2018 
2019 typedef struct wait_queue_head wait_queue_head_t;
2020 
2021 struct rcuwait {
2022 	struct task_struct *task;
2023 };
2024 
2025 struct irq_work {
2026 	struct __call_single_node node;
2027 	void (*func)(struct irq_work *);
2028 	struct rcuwait irqwait;
2029 };
2030 
2031 struct perf_addr_filters_head {
2032 	struct list_head list;
2033 	raw_spinlock_t lock;
2034 	unsigned int nr_file_filters;
2035 };
2036 
2037 struct perf_sample_data;
2038 
2039 typedef void (*perf_overflow_handler_t)(struct perf_event *, struct perf_sample_data *, struct pt_regs *);
2040 
2041 struct ftrace_ops;
2042 
2043 struct ftrace_regs;
2044 
2045 typedef void (*ftrace_func_t)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *);
2046 
2047 struct ftrace_hash;
2048 
2049 struct ftrace_ops_hash {
2050 	struct ftrace_hash *notrace_hash;
2051 	struct ftrace_hash *filter_hash;
2052 	struct mutex regex_lock;
2053 };
2054 
2055 enum ftrace_ops_cmd {
2056 	FTRACE_OPS_CMD_ENABLE_SHARE_IPMODIFY_SELF = 0,
2057 	FTRACE_OPS_CMD_ENABLE_SHARE_IPMODIFY_PEER = 1,
2058 	FTRACE_OPS_CMD_DISABLE_SHARE_IPMODIFY_PEER = 2,
2059 };
2060 
2061 typedef int (*ftrace_ops_func_t)(struct ftrace_ops *, enum ftrace_ops_cmd);
2062 
2063 struct ftrace_ops {
2064 	ftrace_func_t func;
2065 	struct ftrace_ops *next;
2066 	long unsigned int flags;
2067 	void *private;
2068 	ftrace_func_t saved_func;
2069 	struct ftrace_ops_hash local_hash;
2070 	struct ftrace_ops_hash *func_hash;
2071 	struct ftrace_ops_hash old_hash;
2072 	long unsigned int trampoline;
2073 	long unsigned int trampoline_size;
2074 	struct list_head list;
2075 	ftrace_ops_func_t ops_func;
2076 };
2077 
2078 struct perf_buffer;
2079 
2080 struct fasync_struct;
2081 
2082 struct perf_addr_filter_range;
2083 
2084 struct pid_namespace;
2085 
2086 struct bpf_prog;
2087 
2088 struct trace_event_call;
2089 
2090 struct event_filter;
2091 
2092 struct perf_cgroup;
2093 
2094 struct perf_event {
2095 	struct list_head event_entry;
2096 	struct list_head sibling_list;
2097 	struct list_head active_list;
2098 	struct rb_node group_node;
2099 	u64 group_index;
2100 	struct list_head migrate_entry;
2101 	struct hlist_node hlist_entry;
2102 	struct list_head active_entry;
2103 	int nr_siblings;
2104 	int event_caps;
2105 	int group_caps;
2106 	struct perf_event *group_leader;
2107 	struct pmu *pmu;
2108 	void *pmu_private;
2109 	enum perf_event_state state;
2110 	unsigned int attach_state;
2111 	local64_t count;
2112 	atomic64_t child_count;
2113 	u64 total_time_enabled;
2114 	u64 total_time_running;
2115 	u64 tstamp;
2116 	struct perf_event_attr attr;
2117 	u16 header_size;
2118 	u16 id_header_size;
2119 	u16 read_size;
2120 	struct hw_perf_event hw;
2121 	struct perf_event_context *ctx;
2122 	atomic_long_t refcount;
2123 	atomic64_t child_total_time_enabled;
2124 	atomic64_t child_total_time_running;
2125 	struct mutex child_mutex;
2126 	struct list_head child_list;
2127 	struct perf_event *parent;
2128 	int oncpu;
2129 	int cpu;
2130 	struct list_head owner_entry;
2131 	struct task_struct *owner;
2132 	struct mutex mmap_mutex;
2133 	atomic_t mmap_count;
2134 	struct perf_buffer *rb;
2135 	struct list_head rb_entry;
2136 	long unsigned int rcu_batches;
2137 	int rcu_pending;
2138 	wait_queue_head_t waitq;
2139 	struct fasync_struct *fasync;
2140 	int pending_wakeup;
2141 	int pending_kill;
2142 	int pending_disable;
2143 	long unsigned int pending_addr;
2144 	struct irq_work pending;
2145 	atomic_t event_limit;
2146 	struct perf_addr_filters_head addr_filters;
2147 	struct perf_addr_filter_range *addr_filter_ranges;
2148 	long unsigned int addr_filters_gen;
2149 	struct perf_event *aux_event;
2150 	void (*destroy)(struct perf_event *);
2151 	struct callback_head callback_head;
2152 	struct pid_namespace *ns;
2153 	u64 id;
2154 	atomic64_t lost_samples;
2155 	u64 (*clock)();
2156 	perf_overflow_handler_t overflow_handler;
2157 	void *overflow_handler_context;
2158 	perf_overflow_handler_t orig_overflow_handler;
2159 	struct bpf_prog *prog;
2160 	u64 bpf_cookie;
2161 	struct trace_event_call *tp_event;
2162 	struct event_filter *filter;
2163 	struct ftrace_ops ftrace_ops;
2164 	struct perf_cgroup *cgrp;
2165 	struct list_head sb_list;
2166 };
2167 
2168 typedef struct cpumask cpumask_var_t[1];
2169 
2170 typedef struct {
2171 	arch_rwlock_t raw_lock;
2172 } rwlock_t;
2173 
2174 enum pid_type {
2175 	PIDTYPE_PID = 0,
2176 	PIDTYPE_TGID = 1,
2177 	PIDTYPE_PGID = 2,
2178 	PIDTYPE_SID = 3,
2179 	PIDTYPE_MAX = 4,
2180 };
2181 
2182 struct upid {
2183 	int nr;
2184 	struct pid_namespace *ns;
2185 };
2186 
2187 struct xarray {
2188 	spinlock_t xa_lock;
2189 	gfp_t xa_flags;
2190 	void *xa_head;
2191 };
2192 
2193 struct idr {
2194 	struct xarray idr_rt;
2195 	unsigned int idr_base;
2196 	unsigned int idr_next;
2197 };
2198 
2199 struct proc_ns_operations;
2200 
2201 struct ns_common {
2202 	atomic_long_t stashed;
2203 	const struct proc_ns_operations *ops;
2204 	unsigned int inum;
2205 	refcount_t count;
2206 };
2207 
2208 struct user_namespace;
2209 
2210 struct ucounts;
2211 
2212 struct pid_namespace {
2213 	struct idr idr;
2214 	struct callback_head rcu;
2215 	unsigned int pid_allocated;
2216 	struct task_struct *child_reaper;
2217 	struct kmem_cache *pid_cachep;
2218 	unsigned int level;
2219 	struct pid_namespace *parent;
2220 	struct user_namespace *user_ns;
2221 	struct ucounts *ucounts;
2222 	int reboot;
2223 	struct ns_common ns;
2224 };
2225 
2226 struct pid {
2227 	refcount_t count;
2228 	unsigned int level;
2229 	spinlock_t lock;
2230 	struct hlist_head tasks[4];
2231 	struct hlist_head inodes;
2232 	wait_queue_head_t wait_pidfd;
2233 	struct callback_head rcu;
2234 	struct upid numbers[1];
2235 };
2236 
2237 struct uid_gid_extent {
2238 	u32 first;
2239 	u32 lower_first;
2240 	u32 count;
2241 };
2242 
2243 struct uid_gid_map {
2244 	u32 nr_extents;
2245 	union {
2246 		struct uid_gid_extent extent[5];
2247 		struct {
2248 			struct uid_gid_extent *forward;
2249 			struct uid_gid_extent *reverse;
2250 		};
2251 	};
2252 };
2253 
2254 typedef struct {
2255 	uid_t val;
2256 } kuid_t;
2257 
2258 typedef struct {
2259 	gid_t val;
2260 } kgid_t;
2261 
2262 struct rw_semaphore {
2263 	atomic_long_t count;
2264 	atomic_long_t owner;
2265 	struct optimistic_spin_queue osq;
2266 	raw_spinlock_t wait_lock;
2267 	struct list_head wait_list;
2268 };
2269 
2270 struct work_struct;
2271 
2272 typedef void (*work_func_t)(struct work_struct *);
2273 
2274 struct work_struct {
2275 	atomic_long_t data;
2276 	struct list_head entry;
2277 	work_func_t func;
2278 };
2279 
2280 struct ctl_table;
2281 
2282 struct ctl_table_root;
2283 
2284 struct ctl_table_set;
2285 
2286 struct ctl_dir;
2287 
2288 struct ctl_node;
2289 
2290 struct ctl_table_header {
2291 	union {
2292 		struct {
2293 			struct ctl_table *ctl_table;
2294 			int used;
2295 			int count;
2296 			int nreg;
2297 		};
2298 		struct callback_head rcu;
2299 	};
2300 	struct completion *unregistering;
2301 	struct ctl_table *ctl_table_arg;
2302 	struct ctl_table_root *root;
2303 	struct ctl_table_set *set;
2304 	struct ctl_dir *parent;
2305 	struct ctl_node *node;
2306 	struct hlist_head inodes;
2307 };
2308 
2309 struct ctl_dir {
2310 	struct ctl_table_header header;
2311 	struct rb_root root;
2312 };
2313 
2314 struct ctl_table_set {
2315 	int (*is_seen)(struct ctl_table_set *);
2316 	struct ctl_dir dir;
2317 };
2318 
2319 struct user_namespace {
2320 	struct uid_gid_map uid_map;
2321 	struct uid_gid_map gid_map;
2322 	struct uid_gid_map projid_map;
2323 	struct user_namespace *parent;
2324 	int level;
2325 	kuid_t owner;
2326 	kgid_t group;
2327 	struct ns_common ns;
2328 	long unsigned int flags;
2329 	bool parent_could_setfcap;
2330 	struct list_head keyring_name_list;
2331 	struct key *user_keyring_register;
2332 	struct rw_semaphore keyring_sem;
2333 	struct work_struct work;
2334 	struct ctl_table_set set;
2335 	struct ctl_table_header *sysctls;
2336 	struct ucounts *ucounts;
2337 	long int ucount_max[14];
2338 };
2339 
2340 struct timens_offset {
2341 	s64 sec;
2342 	u64 nsec;
2343 };
2344 
2345 struct workqueue_struct;
2346 
2347 struct delayed_work {
2348 	struct work_struct work;
2349 	struct timer_list timer;
2350 	struct workqueue_struct *wq;
2351 	int cpu;
2352 };
2353 
2354 struct rcu_work {
2355 	struct work_struct work;
2356 	struct callback_head rcu;
2357 	struct workqueue_struct *wq;
2358 };
2359 
2360 struct seqcount_raw_spinlock {
2361 	seqcount_t seqcount;
2362 };
2363 
2364 typedef struct seqcount_raw_spinlock seqcount_raw_spinlock_t;
2365 
2366 typedef struct {
2367 	seqcount_spinlock_t seqcount;
2368 	spinlock_t lock;
2369 } seqlock_t;
2370 
2371 struct hrtimer_cpu_base;
2372 
2373 struct hrtimer_clock_base {
2374 	struct hrtimer_cpu_base *cpu_base;
2375 	unsigned int index;
2376 	clockid_t clockid;
2377 	seqcount_raw_spinlock_t seq;
2378 	struct hrtimer *running;
2379 	struct timerqueue_head active;
2380 	ktime_t (*get_time)();
2381 	ktime_t offset;
2382 	long: 64;
2383 	long: 64;
2384 	long: 64;
2385 	long: 64;
2386 	long: 64;
2387 	long: 64;
2388 	long: 64;
2389 	long: 64;
2390 };
2391 
2392 struct hrtimer_cpu_base {
2393 	raw_spinlock_t lock;
2394 	unsigned int cpu;
2395 	unsigned int active_bases;
2396 	unsigned int clock_was_set_seq;
2397 	unsigned int hres_active: 1;
2398 	unsigned int in_hrtirq: 1;
2399 	unsigned int hang_detected: 1;
2400 	unsigned int softirq_activated: 1;
2401 	unsigned int nr_events;
2402 	short unsigned int nr_retries;
2403 	short unsigned int nr_hangs;
2404 	unsigned int max_hang_time;
2405 	ktime_t expires_next;
2406 	struct hrtimer *next_timer;
2407 	ktime_t softirq_expires_next;
2408 	struct hrtimer *softirq_next_timer;
2409 	long: 64;
2410 	long: 64;
2411 	long: 64;
2412 	long: 64;
2413 	long: 64;
2414 	long: 64;
2415 	long: 64;
2416 	long: 64;
2417 	struct hrtimer_clock_base clock_base[8];
2418 };
2419 
2420 struct rlimit {
2421 	__kernel_ulong_t rlim_cur;
2422 	__kernel_ulong_t rlim_max;
2423 };
2424 
2425 struct task_cputime {
2426 	u64 stime;
2427 	u64 utime;
2428 	long long unsigned int sum_exec_runtime;
2429 };
2430 
2431 typedef void __signalfn_t(int);
2432 
2433 typedef __signalfn_t *__sighandler_t;
2434 
2435 typedef void __restorefn_t();
2436 
2437 typedef __restorefn_t *__sigrestore_t;
2438 
2439 union sigval {
2440 	int sival_int;
2441 	void *sival_ptr;
2442 };
2443 
2444 typedef union sigval sigval_t;
2445 
2446 union __sifields {
2447 	struct {
2448 		__kernel_pid_t _pid;
2449 		__kernel_uid32_t _uid;
2450 	} _kill;
2451 	struct {
2452 		__kernel_timer_t _tid;
2453 		int _overrun;
2454 		sigval_t _sigval;
2455 		int _sys_private;
2456 	} _timer;
2457 	struct {
2458 		__kernel_pid_t _pid;
2459 		__kernel_uid32_t _uid;
2460 		sigval_t _sigval;
2461 	} _rt;
2462 	struct {
2463 		__kernel_pid_t _pid;
2464 		__kernel_uid32_t _uid;
2465 		int _status;
2466 		__kernel_clock_t _utime;
2467 		__kernel_clock_t _stime;
2468 	} _sigchld;
2469 	struct {
2470 		void *_addr;
2471 		union {
2472 			int _trapno;
2473 			short int _addr_lsb;
2474 			struct {
2475 				char _dummy_bnd[8];
2476 				void *_lower;
2477 				void *_upper;
2478 			} _addr_bnd;
2479 			struct {
2480 				char _dummy_pkey[8];
2481 				__u32 _pkey;
2482 			} _addr_pkey;
2483 			struct {
2484 				long unsigned int _data;
2485 				__u32 _type;
2486 				__u32 _flags;
2487 			} _perf;
2488 		};
2489 	} _sigfault;
2490 	struct {
2491 		long int _band;
2492 		int _fd;
2493 	} _sigpoll;
2494 	struct {
2495 		void *_call_addr;
2496 		int _syscall;
2497 		unsigned int _arch;
2498 	} _sigsys;
2499 };
2500 
2501 struct kernel_siginfo {
2502 	struct {
2503 		int si_signo;
2504 		int si_errno;
2505 		int si_code;
2506 		union __sifields _sifields;
2507 	};
2508 };
2509 
2510 struct ucounts {
2511 	struct hlist_node node;
2512 	struct user_namespace *ns;
2513 	kuid_t uid;
2514 	atomic_t count;
2515 	atomic_long_t ucount[14];
2516 };
2517 
2518 struct sigaction {
2519 	__sighandler_t sa_handler;
2520 	long unsigned int sa_flags;
2521 	__sigrestore_t sa_restorer;
2522 	sigset_t sa_mask;
2523 };
2524 
2525 struct k_sigaction {
2526 	struct sigaction sa;
2527 };
2528 
2529 struct vm_userfaultfd_ctx {};
2530 
2531 struct anon_vma_name;
2532 
2533 struct anon_vma;
2534 
2535 struct vm_operations_struct;
2536 
2537 struct vm_area_struct {
2538 	long unsigned int vm_start;
2539 	long unsigned int vm_end;
2540 	struct vm_area_struct *vm_next;
2541 	struct vm_area_struct *vm_prev;
2542 	struct rb_node vm_rb;
2543 	long unsigned int rb_subtree_gap;
2544 	struct mm_struct *vm_mm;
2545 	pgprot_t vm_page_prot;
2546 	long unsigned int vm_flags;
2547 	union {
2548 		struct {
2549 			struct rb_node rb;
2550 			long unsigned int rb_subtree_last;
2551 		} shared;
2552 		struct anon_vma_name *anon_name;
2553 	};
2554 	struct list_head anon_vma_chain;
2555 	struct anon_vma *anon_vma;
2556 	const struct vm_operations_struct *vm_ops;
2557 	long unsigned int vm_pgoff;
2558 	struct file *vm_file;
2559 	void *vm_private_data;
2560 	atomic_long_t swap_readahead_info;
2561 	struct mempolicy *vm_policy;
2562 	struct vm_userfaultfd_ctx vm_userfaultfd_ctx;
2563 };
2564 
2565 struct mm_rss_stat {
2566 	atomic_long_t count[4];
2567 };
2568 
2569 struct cpu_itimer {
2570 	u64 expires;
2571 	u64 incr;
2572 };
2573 
2574 struct task_cputime_atomic {
2575 	atomic64_t utime;
2576 	atomic64_t stime;
2577 	atomic64_t sum_exec_runtime;
2578 };
2579 
2580 struct thread_group_cputimer {
2581 	struct task_cputime_atomic cputime_atomic;
2582 };
2583 
2584 struct core_state;
2585 
2586 struct tty_struct;
2587 
2588 struct taskstats;
2589 
2590 struct signal_struct {
2591 	refcount_t sigcnt;
2592 	atomic_t live;
2593 	int nr_threads;
2594 	struct list_head thread_head;
2595 	wait_queue_head_t wait_chldexit;
2596 	struct task_struct *curr_target;
2597 	struct sigpending shared_pending;
2598 	struct hlist_head multiprocess;
2599 	int group_exit_code;
2600 	int notify_count;
2601 	struct task_struct *group_exec_task;
2602 	int group_stop_count;
2603 	unsigned int flags;
2604 	struct core_state *core_state;
2605 	unsigned int is_child_subreaper: 1;
2606 	unsigned int has_child_subreaper: 1;
2607 	int posix_timer_id;
2608 	struct list_head posix_timers;
2609 	struct hrtimer real_timer;
2610 	ktime_t it_real_incr;
2611 	struct cpu_itimer it[2];
2612 	struct thread_group_cputimer cputimer;
2613 	struct posix_cputimers posix_cputimers;
2614 	struct pid *pids[4];
2615 	struct pid *tty_old_pgrp;
2616 	int leader;
2617 	struct tty_struct *tty;
2618 	seqlock_t stats_lock;
2619 	u64 utime;
2620 	u64 stime;
2621 	u64 cutime;
2622 	u64 cstime;
2623 	u64 gtime;
2624 	u64 cgtime;
2625 	struct prev_cputime prev_cputime;
2626 	long unsigned int nvcsw;
2627 	long unsigned int nivcsw;
2628 	long unsigned int cnvcsw;
2629 	long unsigned int cnivcsw;
2630 	long unsigned int min_flt;
2631 	long unsigned int maj_flt;
2632 	long unsigned int cmin_flt;
2633 	long unsigned int cmaj_flt;
2634 	long unsigned int inblock;
2635 	long unsigned int oublock;
2636 	long unsigned int cinblock;
2637 	long unsigned int coublock;
2638 	long unsigned int maxrss;
2639 	long unsigned int cmaxrss;
2640 	struct task_io_accounting ioac;
2641 	long long unsigned int sum_sched_runtime;
2642 	struct rlimit rlim[16];
2643 	struct taskstats *stats;
2644 	bool oom_flag_origin;
2645 	short int oom_score_adj;
2646 	short int oom_score_adj_min;
2647 	struct mm_struct *oom_mm;
2648 	struct mutex cred_guard_mutex;
2649 	struct rw_semaphore exec_update_lock;
2650 };
2651 
2652 struct rseq {
2653 	__u32 cpu_id_start;
2654 	__u32 cpu_id;
2655 	__u64 rseq_cs;
2656 	__u32 flags;
2657 	long: 64;
2658 };
2659 
2660 struct rq;
2661 
2662 struct rq_flags;
2663 
2664 struct sched_class {
2665 	void (*enqueue_task)(struct rq *, struct task_struct *, int);
2666 	void (*dequeue_task)(struct rq *, struct task_struct *, int);
2667 	void (*yield_task)(struct rq *);
2668 	bool (*yield_to_task)(struct rq *, struct task_struct *);
2669 	void (*check_preempt_curr)(struct rq *, struct task_struct *, int);
2670 	struct task_struct * (*pick_next_task)(struct rq *);
2671 	void (*put_prev_task)(struct rq *, struct task_struct *);
2672 	void (*set_next_task)(struct rq *, struct task_struct *, bool);
2673 	int (*balance)(struct rq *, struct task_struct *, struct rq_flags *);
2674 	int (*select_task_rq)(struct task_struct *, int, int);
2675 	struct task_struct * (*pick_task)(struct rq *);
2676 	void (*migrate_task_rq)(struct task_struct *, int);
2677 	void (*task_woken)(struct rq *, struct task_struct *);
2678 	void (*set_cpus_allowed)(struct task_struct *, const struct cpumask *, u32);
2679 	void (*rq_online)(struct rq *);
2680 	void (*rq_offline)(struct rq *);
2681 	struct rq * (*find_lock_rq)(struct task_struct *, struct rq *);
2682 	void (*task_tick)(struct rq *, struct task_struct *, int);
2683 	void (*task_fork)(struct task_struct *);
2684 	void (*task_dead)(struct task_struct *);
2685 	void (*switched_from)(struct rq *, struct task_struct *);
2686 	void (*switched_to)(struct rq *, struct task_struct *);
2687 	void (*prio_changed)(struct rq *, struct task_struct *, int);
2688 	unsigned int (*get_rr_interval)(struct rq *, struct task_struct *);
2689 	void (*update_curr)(struct rq *);
2690 	void (*task_change_group)(struct task_struct *, int);
2691 };
2692 
2693 struct xol_area;
2694 
2695 struct uprobes_state {
2696 	struct xol_area *xol_area;
2697 };
2698 
2699 struct linux_binfmt;
2700 
2701 struct kioctx_table;
2702 
2703 struct mmu_notifier_subscriptions;
2704 
2705 struct mm_struct {
2706 	struct {
2707 		struct vm_area_struct *mmap;
2708 		struct rb_root mm_rb;
2709 		u64 vmacache_seqnum;
2710 		long unsigned int (*get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
2711 		long unsigned int mmap_base;
2712 		long unsigned int mmap_legacy_base;
2713 		long unsigned int task_size;
2714 		long unsigned int highest_vm_end;
2715 		pgd_t *pgd;
2716 		atomic_t membarrier_state;
2717 		atomic_t mm_users;
2718 		atomic_t mm_count;
2719 		atomic_long_t pgtables_bytes;
2720 		int map_count;
2721 		spinlock_t page_table_lock;
2722 		struct rw_semaphore mmap_lock;
2723 		struct list_head mmlist;
2724 		long unsigned int hiwater_rss;
2725 		long unsigned int hiwater_vm;
2726 		long unsigned int total_vm;
2727 		long unsigned int locked_vm;
2728 		atomic64_t pinned_vm;
2729 		long unsigned int data_vm;
2730 		long unsigned int exec_vm;
2731 		long unsigned int stack_vm;
2732 		long unsigned int def_flags;
2733 		seqcount_t write_protect_seq;
2734 		spinlock_t arg_lock;
2735 		long unsigned int start_code;
2736 		long unsigned int end_code;
2737 		long unsigned int start_data;
2738 		long unsigned int end_data;
2739 		long unsigned int start_brk;
2740 		long unsigned int brk;
2741 		long unsigned int start_stack;
2742 		long unsigned int arg_start;
2743 		long unsigned int arg_end;
2744 		long unsigned int env_start;
2745 		long unsigned int env_end;
2746 		long unsigned int saved_auxv[72];
2747 		struct mm_rss_stat rss_stat;
2748 		struct linux_binfmt *binfmt;
2749 		mm_context_t context;
2750 		long unsigned int flags;
2751 		spinlock_t ioctx_lock;
2752 		struct kioctx_table *ioctx_table;
2753 		struct task_struct *owner;
2754 		struct user_namespace *user_ns;
2755 		struct file *exe_file;
2756 		struct mmu_notifier_subscriptions *notifier_subscriptions;
2757 		long unsigned int numa_next_scan;
2758 		long unsigned int numa_scan_offset;
2759 		int numa_scan_seq;
2760 		atomic_t tlb_flush_pending;
2761 		struct uprobes_state uprobes_state;
2762 		atomic_long_t hugetlb_usage;
2763 		struct work_struct async_put_work;
2764 		long unsigned int ksm_merging_pages;
2765 	};
2766 	long unsigned int cpu_bitmap[0];
2767 };
2768 
2769 struct swait_queue_head {
2770 	raw_spinlock_t lock;
2771 	struct list_head task_list;
2772 };
2773 
2774 struct completion {
2775 	unsigned int done;
2776 	struct swait_queue_head wait;
2777 };
2778 
2779 struct kernel_cap_struct {
2780 	__u32 cap[2];
2781 };
2782 
2783 typedef struct kernel_cap_struct kernel_cap_t;
2784 
2785 struct user_struct;
2786 
2787 struct group_info;
2788 
2789 struct cred {
2790 	atomic_t usage;
2791 	kuid_t uid;
2792 	kgid_t gid;
2793 	kuid_t suid;
2794 	kgid_t sgid;
2795 	kuid_t euid;
2796 	kgid_t egid;
2797 	kuid_t fsuid;
2798 	kgid_t fsgid;
2799 	unsigned int securebits;
2800 	kernel_cap_t cap_inheritable;
2801 	kernel_cap_t cap_permitted;
2802 	kernel_cap_t cap_effective;
2803 	kernel_cap_t cap_bset;
2804 	kernel_cap_t cap_ambient;
2805 	unsigned char jit_keyring;
2806 	struct key *session_keyring;
2807 	struct key *process_keyring;
2808 	struct key *thread_keyring;
2809 	struct key *request_key_auth;
2810 	struct user_struct *user;
2811 	struct user_namespace *user_ns;
2812 	struct ucounts *ucounts;
2813 	struct group_info *group_info;
2814 	union {
2815 		int non_rcu;
2816 		struct callback_head rcu;
2817 	};
2818 };
2819 
2820 typedef int32_t key_serial_t;
2821 
2822 typedef uint32_t key_perm_t;
2823 
2824 struct key_type;
2825 
2826 struct key_tag;
2827 
2828 struct keyring_index_key {
2829 	long unsigned int hash;
2830 	union {
2831 		struct {
2832 			u16 desc_len;
2833 			char desc[6];
2834 		};
2835 		long unsigned int x;
2836 	};
2837 	struct key_type *type;
2838 	struct key_tag *domain_tag;
2839 	const char *description;
2840 };
2841 
2842 union key_payload {
2843 	void *rcu_data0;
2844 	void *data[4];
2845 };
2846 
2847 struct assoc_array_ptr;
2848 
2849 struct assoc_array {
2850 	struct assoc_array_ptr *root;
2851 	long unsigned int nr_leaves_on_tree;
2852 };
2853 
2854 struct key_user;
2855 
2856 struct key_restriction;
2857 
2858 struct key {
2859 	refcount_t usage;
2860 	key_serial_t serial;
2861 	union {
2862 		struct list_head graveyard_link;
2863 		struct rb_node serial_node;
2864 	};
2865 	struct rw_semaphore sem;
2866 	struct key_user *user;
2867 	void *security;
2868 	union {
2869 		time64_t expiry;
2870 		time64_t revoked_at;
2871 	};
2872 	time64_t last_used_at;
2873 	kuid_t uid;
2874 	kgid_t gid;
2875 	key_perm_t perm;
2876 	short unsigned int quotalen;
2877 	short unsigned int datalen;
2878 	short int state;
2879 	long unsigned int flags;
2880 	union {
2881 		struct keyring_index_key index_key;
2882 		struct {
2883 			long unsigned int hash;
2884 			long unsigned int len_desc;
2885 			struct key_type *type;
2886 			struct key_tag *domain_tag;
2887 			char *description;
2888 		};
2889 	};
2890 	union {
2891 		union key_payload payload;
2892 		struct {
2893 			struct list_head name_link;
2894 			struct assoc_array keys;
2895 		};
2896 	};
2897 	struct key_restriction *restrict_link;
2898 };
2899 
2900 struct uts_namespace;
2901 
2902 struct ipc_namespace;
2903 
2904 struct mnt_namespace;
2905 
2906 struct net;
2907 
2908 struct time_namespace;
2909 
2910 struct cgroup_namespace;
2911 
2912 struct nsproxy {
2913 	atomic_t count;
2914 	struct uts_namespace *uts_ns;
2915 	struct ipc_namespace *ipc_ns;
2916 	struct mnt_namespace *mnt_ns;
2917 	struct pid_namespace *pid_ns_for_children;
2918 	struct net *net_ns;
2919 	struct time_namespace *time_ns;
2920 	struct time_namespace *time_ns_for_children;
2921 	struct cgroup_namespace *cgroup_ns;
2922 };
2923 
2924 struct sighand_struct {
2925 	spinlock_t siglock;
2926 	refcount_t count;
2927 	wait_queue_head_t signalfd_wqh;
2928 	struct k_sigaction action[64];
2929 };
2930 
2931 struct io_context {
2932 	atomic_long_t refcount;
2933 	atomic_t active_ref;
2934 	short unsigned int ioprio;
2935 };
2936 
2937 struct cgroup_subsys_state;
2938 
2939 struct cgroup;
2940 
2941 struct css_set {
2942 	struct cgroup_subsys_state *subsys[7];
2943 	refcount_t refcount;
2944 	struct css_set *dom_cset;
2945 	struct cgroup *dfl_cgrp;
2946 	int nr_tasks;
2947 	struct list_head tasks;
2948 	struct list_head mg_tasks;
2949 	struct list_head dying_tasks;
2950 	struct list_head task_iters;
2951 	struct list_head e_cset_node[7];
2952 	struct list_head threaded_csets;
2953 	struct list_head threaded_csets_node;
2954 	struct hlist_node hlist;
2955 	struct list_head cgrp_links;
2956 	struct list_head mg_src_preload_node;
2957 	struct list_head mg_dst_preload_node;
2958 	struct list_head mg_node;
2959 	struct cgroup *mg_src_cgrp;
2960 	struct cgroup *mg_dst_cgrp;
2961 	struct css_set *mg_dst_cset;
2962 	bool dead;
2963 	struct callback_head callback_head;
2964 };
2965 
2966 struct perf_event_groups {
2967 	struct rb_root tree;
2968 	u64 index;
2969 };
2970 
2971 struct perf_event_context {
2972 	struct pmu *pmu;
2973 	raw_spinlock_t lock;
2974 	struct mutex mutex;
2975 	struct list_head active_ctx_list;
2976 	struct perf_event_groups pinned_groups;
2977 	struct perf_event_groups flexible_groups;
2978 	struct list_head event_list;
2979 	struct list_head pinned_active;
2980 	struct list_head flexible_active;
2981 	int nr_events;
2982 	int nr_active;
2983 	int nr_user;
2984 	int is_active;
2985 	int nr_stat;
2986 	int nr_freq;
2987 	int rotate_disable;
2988 	int rotate_necessary;
2989 	refcount_t refcount;
2990 	struct task_struct *task;
2991 	u64 time;
2992 	u64 timestamp;
2993 	u64 timeoffset;
2994 	struct perf_event_context *parent_ctx;
2995 	u64 parent_gen;
2996 	u64 generation;
2997 	int pin_count;
2998 	int nr_cgroups;
2999 	void *task_ctx_data;
3000 	struct callback_head callback_head;
3001 };
3002 
3003 struct ftrace_ret_stack {
3004 	long unsigned int ret;
3005 	long unsigned int func;
3006 	long long unsigned int calltime;
3007 	long unsigned int *retp;
3008 };
3009 
3010 enum uprobe_task_state {
3011 	UTASK_RUNNING = 0,
3012 	UTASK_SSTEP = 1,
3013 	UTASK_SSTEP_ACK = 2,
3014 	UTASK_SSTEP_TRAPPED = 3,
3015 };
3016 
3017 struct arch_uprobe_task {
3018 	long unsigned int saved_trap_nr;
3019 };
3020 
3021 struct uprobe;
3022 
3023 struct return_instance;
3024 
3025 struct uprobe_task {
3026 	enum uprobe_task_state state;
3027 	union {
3028 		struct {
3029 			struct arch_uprobe_task autask;
3030 			long unsigned int vaddr;
3031 		};
3032 		struct {
3033 			struct callback_head dup_xol_work;
3034 			long unsigned int dup_xol_addr;
3035 		};
3036 	};
3037 	struct uprobe *active_uprobe;
3038 	long unsigned int xol_vaddr;
3039 	struct return_instance *return_instances;
3040 	unsigned int depth;
3041 };
3042 
3043 struct kref {
3044 	refcount_t refcount;
3045 };
3046 
3047 struct rcu_segcblist {
3048 	struct callback_head *head;
3049 	struct callback_head **tails[4];
3050 	long unsigned int gp_seq[4];
3051 	long int len;
3052 	long int seglen[4];
3053 	u8 flags;
3054 };
3055 
3056 struct srcu_node;
3057 
3058 struct srcu_struct;
3059 
3060 struct srcu_data {
3061 	long unsigned int srcu_lock_count[2];
3062 	long unsigned int srcu_unlock_count[2];
3063 	long: 64;
3064 	long: 64;
3065 	long: 64;
3066 	long: 64;
3067 	long: 64;
3068 	long: 64;
3069 	long: 64;
3070 	long: 64;
3071 	long: 64;
3072 	long: 64;
3073 	long: 64;
3074 	long: 64;
3075 	spinlock_t lock;
3076 	struct rcu_segcblist srcu_cblist;
3077 	long unsigned int srcu_gp_seq_needed;
3078 	long unsigned int srcu_gp_seq_needed_exp;
3079 	bool srcu_cblist_invoking;
3080 	struct timer_list delay_work;
3081 	struct work_struct work;
3082 	struct callback_head srcu_barrier_head;
3083 	struct srcu_node *mynode;
3084 	long unsigned int grpmask;
3085 	int cpu;
3086 	struct srcu_struct *ssp;
3087 	long: 64;
3088 	long: 64;
3089 	long: 64;
3090 	long: 64;
3091 	long: 64;
3092 	long: 64;
3093 	long: 64;
3094 	long: 64;
3095 	long: 64;
3096 	long: 64;
3097 	long: 64;
3098 	long: 64;
3099 	long: 64;
3100 	long: 64;
3101 };
3102 
3103 struct srcu_node {
3104 	spinlock_t lock;
3105 	long unsigned int srcu_have_cbs[4];
3106 	long unsigned int srcu_data_have_cbs[4];
3107 	long unsigned int srcu_gp_seq_needed_exp;
3108 	struct srcu_node *srcu_parent;
3109 	int grplo;
3110 	int grphi;
3111 };
3112 
3113 struct srcu_struct {
3114 	struct srcu_node *node;
3115 	struct srcu_node *level[4];
3116 	int srcu_size_state;
3117 	struct mutex srcu_cb_mutex;
3118 	spinlock_t lock;
3119 	struct mutex srcu_gp_mutex;
3120 	unsigned int srcu_idx;
3121 	long unsigned int srcu_gp_seq;
3122 	long unsigned int srcu_gp_seq_needed;
3123 	long unsigned int srcu_gp_seq_needed_exp;
3124 	long unsigned int srcu_gp_start;
3125 	long unsigned int srcu_last_gp_end;
3126 	long unsigned int srcu_size_jiffies;
3127 	long unsigned int srcu_n_lock_retries;
3128 	long unsigned int srcu_n_exp_nodelay;
3129 	struct srcu_data *sda;
3130 	bool sda_is_static;
3131 	long unsigned int srcu_barrier_seq;
3132 	struct mutex srcu_barrier_mutex;
3133 	struct completion srcu_barrier_completion;
3134 	atomic_t srcu_barrier_cpu_cnt;
3135 	long unsigned int reschedule_jiffies;
3136 	long unsigned int reschedule_count;
3137 	struct delayed_work work;
3138 	struct lockdep_map dep_map;
3139 };
3140 
3141 struct return_instance {
3142 	struct uprobe *uprobe;
3143 	long unsigned int func;
3144 	long unsigned int stack;
3145 	long unsigned int orig_ret_vaddr;
3146 	bool chained;
3147 	struct return_instance *next;
3148 };
3149 
3150 typedef u32 errseq_t;
3151 
3152 struct address_space_operations;
3153 
3154 struct address_space {
3155 	struct inode *host;
3156 	struct xarray i_pages;
3157 	struct rw_semaphore invalidate_lock;
3158 	gfp_t gfp_mask;
3159 	atomic_t i_mmap_writable;
3160 	struct rb_root_cached i_mmap;
3161 	struct rw_semaphore i_mmap_rwsem;
3162 	long unsigned int nrpages;
3163 	long unsigned int writeback_index;
3164 	const struct address_space_operations *a_ops;
3165 	long unsigned int flags;
3166 	errseq_t wb_err;
3167 	spinlock_t private_lock;
3168 	struct list_head private_list;
3169 	void *private_data;
3170 };
3171 
3172 struct vmem_altmap {
3173 	long unsigned int base_pfn;
3174 	const long unsigned int end_pfn;
3175 	const long unsigned int reserve;
3176 	long unsigned int free;
3177 	long unsigned int align;
3178 	long unsigned int alloc;
3179 };
3180 
3181 struct percpu_ref_data;
3182 
3183 struct percpu_ref {
3184 	long unsigned int percpu_count_ptr;
3185 	struct percpu_ref_data *data;
3186 };
3187 
3188 enum memory_type {
3189 	MEMORY_DEVICE_PRIVATE = 1,
3190 	MEMORY_DEVICE_COHERENT = 2,
3191 	MEMORY_DEVICE_FS_DAX = 3,
3192 	MEMORY_DEVICE_GENERIC = 4,
3193 	MEMORY_DEVICE_PCI_P2PDMA = 5,
3194 };
3195 
3196 struct range {
3197 	u64 start;
3198 	u64 end;
3199 };
3200 
3201 struct dev_pagemap_ops;
3202 
3203 struct dev_pagemap {
3204 	struct vmem_altmap altmap;
3205 	struct percpu_ref ref;
3206 	struct completion done;
3207 	enum memory_type type;
3208 	unsigned int flags;
3209 	long unsigned int vmemmap_shift;
3210 	const struct dev_pagemap_ops *ops;
3211 	void *owner;
3212 	int nr_range;
3213 	union {
3214 		struct range range;
3215 		struct range ranges[0];
3216 	};
3217 };
3218 
3219 struct folio {
3220 	union {
3221 		struct {
3222 			long unsigned int flags;
3223 			union {
3224 				struct list_head lru;
3225 				struct {
3226 					void *__filler;
3227 					unsigned int mlock_count;
3228 				};
3229 			};
3230 			struct address_space *mapping;
3231 			long unsigned int index;
3232 			void *private;
3233 			atomic_t _mapcount;
3234 			atomic_t _refcount;
3235 			long unsigned int memcg_data;
3236 		};
3237 		struct page page;
3238 	};
3239 };
3240 
3241 struct vfsmount;
3242 
3243 struct path {
3244 	struct vfsmount *mnt;
3245 	struct dentry *dentry;
3246 };
3247 
3248 struct fown_struct {
3249 	rwlock_t lock;
3250 	struct pid *pid;
3251 	enum pid_type pid_type;
3252 	kuid_t uid;
3253 	kuid_t euid;
3254 	int signum;
3255 };
3256 
3257 struct file_ra_state {
3258 	long unsigned int start;
3259 	unsigned int size;
3260 	unsigned int async_size;
3261 	unsigned int ra_pages;
3262 	unsigned int mmap_miss;
3263 	loff_t prev_pos;
3264 };
3265 
3266 struct file {
3267 	union {
3268 		struct llist_node f_llist;
3269 		struct callback_head f_rcuhead;
3270 		unsigned int f_iocb_flags;
3271 	};
3272 	struct path f_path;
3273 	struct inode *f_inode;
3274 	const struct file_operations *f_op;
3275 	spinlock_t f_lock;
3276 	atomic_long_t f_count;
3277 	unsigned int f_flags;
3278 	fmode_t f_mode;
3279 	struct mutex f_pos_lock;
3280 	loff_t f_pos;
3281 	struct fown_struct f_owner;
3282 	const struct cred *f_cred;
3283 	struct file_ra_state f_ra;
3284 	u64 f_version;
3285 	void *private_data;
3286 	struct hlist_head *f_ep;
3287 	struct address_space *f_mapping;
3288 	errseq_t f_wb_err;
3289 	errseq_t f_sb_err;
3290 };
3291 
3292 struct anon_vma_name {
3293 	struct kref kref;
3294 	char name[0];
3295 };
3296 
3297 typedef unsigned int vm_fault_t;
3298 
3299 enum page_entry_size {
3300 	PE_SIZE_PTE = 0,
3301 	PE_SIZE_PMD = 1,
3302 	PE_SIZE_PUD = 2,
3303 };
3304 
3305 struct vm_fault;
3306 
3307 struct vm_operations_struct {
3308 	void (*open)(struct vm_area_struct *);
3309 	void (*close)(struct vm_area_struct *);
3310 	int (*may_split)(struct vm_area_struct *, long unsigned int);
3311 	int (*mremap)(struct vm_area_struct *);
3312 	int (*mprotect)(struct vm_area_struct *, long unsigned int, long unsigned int, long unsigned int);
3313 	vm_fault_t (*fault)(struct vm_fault *);
3314 	vm_fault_t (*huge_fault)(struct vm_fault *, enum page_entry_size);
3315 	vm_fault_t (*map_pages)(struct vm_fault *, long unsigned int, long unsigned int);
3316 	long unsigned int (*pagesize)(struct vm_area_struct *);
3317 	vm_fault_t (*page_mkwrite)(struct vm_fault *);
3318 	vm_fault_t (*pfn_mkwrite)(struct vm_fault *);
3319 	int (*access)(struct vm_area_struct *, long unsigned int, void *, int, int);
3320 	const char * (*name)(struct vm_area_struct *);
3321 	int (*set_policy)(struct vm_area_struct *, struct mempolicy *);
3322 	struct mempolicy * (*get_policy)(struct vm_area_struct *, long unsigned int);
3323 	struct page * (*find_special_page)(struct vm_area_struct *, long unsigned int);
3324 };
3325 
3326 enum vm_fault_reason {
3327 	VM_FAULT_OOM = 1,
3328 	VM_FAULT_SIGBUS = 2,
3329 	VM_FAULT_MAJOR = 4,
3330 	VM_FAULT_WRITE = 8,
3331 	VM_FAULT_HWPOISON = 16,
3332 	VM_FAULT_HWPOISON_LARGE = 32,
3333 	VM_FAULT_SIGSEGV = 64,
3334 	VM_FAULT_NOPAGE = 256,
3335 	VM_FAULT_LOCKED = 512,
3336 	VM_FAULT_RETRY = 1024,
3337 	VM_FAULT_FALLBACK = 2048,
3338 	VM_FAULT_DONE_COW = 4096,
3339 	VM_FAULT_NEEDDSYNC = 8192,
3340 	VM_FAULT_COMPLETED = 16384,
3341 	VM_FAULT_HINDEX_MASK = 983040,
3342 };
3343 
3344 struct vm_special_mapping {
3345 	const char *name;
3346 	struct page **pages;
3347 	vm_fault_t (*fault)(const struct vm_special_mapping *, struct vm_area_struct *, struct vm_fault *);
3348 	int (*mremap)(const struct vm_special_mapping *, struct vm_area_struct *);
3349 };
3350 
3351 enum fault_flag {
3352 	FAULT_FLAG_WRITE = 1,
3353 	FAULT_FLAG_MKWRITE = 2,
3354 	FAULT_FLAG_ALLOW_RETRY = 4,
3355 	FAULT_FLAG_RETRY_NOWAIT = 8,
3356 	FAULT_FLAG_KILLABLE = 16,
3357 	FAULT_FLAG_TRIED = 32,
3358 	FAULT_FLAG_USER = 64,
3359 	FAULT_FLAG_REMOTE = 128,
3360 	FAULT_FLAG_INSTRUCTION = 256,
3361 	FAULT_FLAG_INTERRUPTIBLE = 512,
3362 	FAULT_FLAG_UNSHARE = 1024,
3363 	FAULT_FLAG_ORIG_PTE_VALID = 2048,
3364 };
3365 
3366 struct vm_fault {
3367 	const struct {
3368 		struct vm_area_struct *vma;
3369 		gfp_t gfp_mask;
3370 		long unsigned int pgoff;
3371 		long unsigned int address;
3372 		long unsigned int real_address;
3373 	};
3374 	enum fault_flag flags;
3375 	pmd_t *pmd;
3376 	pud_t *pud;
3377 	union {
3378 		pte_t orig_pte;
3379 		pmd_t orig_pmd;
3380 	};
3381 	struct page *cow_page;
3382 	struct page *page;
3383 	pte_t *pte;
3384 	spinlock_t *ptl;
3385 	pgtable_t prealloc_pte;
3386 };
3387 
3388 struct tracepoint_func {
3389 	void *func;
3390 	void *data;
3391 	int prio;
3392 };
3393 
3394 struct tracepoint {
3395 	const char *name;
3396 	struct static_key key;
3397 	struct static_call_key *static_call_key;
3398 	void *static_call_tramp;
3399 	void *iterator;
3400 	int (*regfunc)();
3401 	void (*unregfunc)();
3402 	struct tracepoint_func *funcs;
3403 };
3404 
3405 typedef struct tracepoint * const tracepoint_ptr_t;
3406 
3407 struct bpf_raw_event_map {
3408 	struct tracepoint *tp;
3409 	void *bpf_func;
3410 	u32 num_args;
3411 	u32 writable_size;
3412 	long: 64;
3413 };
3414 
3415 typedef void percpu_ref_func_t(struct percpu_ref *);
3416 
3417 struct percpu_ref_data {
3418 	atomic_long_t count;
3419 	percpu_ref_func_t *release;
3420 	percpu_ref_func_t *confirm_switch;
3421 	bool force_atomic: 1;
3422 	bool allow_reinit: 1;
3423 	struct callback_head rcu;
3424 	struct percpu_ref *ref;
3425 };
3426 
3427 struct shrink_control {
3428 	gfp_t gfp_mask;
3429 	int nid;
3430 	long unsigned int nr_to_scan;
3431 	long unsigned int nr_scanned;
3432 	struct mem_cgroup *memcg;
3433 };
3434 
3435 struct shrinker {
3436 	long unsigned int (*count_objects)(struct shrinker *, struct shrink_control *);
3437 	long unsigned int (*scan_objects)(struct shrinker *, struct shrink_control *);
3438 	long int batch;
3439 	int seeks;
3440 	unsigned int flags;
3441 	struct list_head list;
3442 	int id;
3443 	atomic_long_t *nr_deferred;
3444 };
3445 
3446 struct dev_pagemap_ops {
3447 	void (*page_free)(struct page *);
3448 	vm_fault_t (*migrate_to_ram)(struct vm_fault *);
3449 	int (*memory_failure)(struct dev_pagemap *, long unsigned int, long unsigned int, int);
3450 };
3451 
3452 struct hlist_bl_node;
3453 
3454 struct hlist_bl_head {
3455 	struct hlist_bl_node *first;
3456 };
3457 
3458 struct hlist_bl_node {
3459 	struct hlist_bl_node *next;
3460 	struct hlist_bl_node **pprev;
3461 };
3462 
3463 struct lockref {
3464 	union {
3465 		__u64 lock_count;
3466 		struct {
3467 			spinlock_t lock;
3468 			int count;
3469 		};
3470 	};
3471 };
3472 
3473 struct qstr {
3474 	union {
3475 		struct {
3476 			u32 hash;
3477 			u32 len;
3478 		};
3479 		u64 hash_len;
3480 	};
3481 	const unsigned char *name;
3482 };
3483 
3484 struct dentry_operations;
3485 
3486 struct dentry {
3487 	unsigned int d_flags;
3488 	seqcount_spinlock_t d_seq;
3489 	struct hlist_bl_node d_hash;
3490 	struct dentry *d_parent;
3491 	struct qstr d_name;
3492 	struct inode *d_inode;
3493 	unsigned char d_iname[32];
3494 	struct lockref d_lockref;
3495 	const struct dentry_operations *d_op;
3496 	struct super_block *d_sb;
3497 	long unsigned int d_time;
3498 	void *d_fsdata;
3499 	union {
3500 		struct list_head d_lru;
3501 		wait_queue_head_t *d_wait;
3502 	};
3503 	struct list_head d_child;
3504 	struct list_head d_subdirs;
3505 	union {
3506 		struct hlist_node d_alias;
3507 		struct hlist_bl_node d_in_lookup_hash;
3508 		struct callback_head d_rcu;
3509 	} d_u;
3510 };
3511 
3512 struct posix_acl;
3513 
3514 struct inode_operations;
3515 
3516 struct file_lock_context;
3517 
3518 struct cdev;
3519 
3520 struct fsnotify_mark_connector;
3521 
3522 struct inode {
3523 	umode_t i_mode;
3524 	short unsigned int i_opflags;
3525 	kuid_t i_uid;
3526 	kgid_t i_gid;
3527 	unsigned int i_flags;
3528 	struct posix_acl *i_acl;
3529 	struct posix_acl *i_default_acl;
3530 	const struct inode_operations *i_op;
3531 	struct super_block *i_sb;
3532 	struct address_space *i_mapping;
3533 	long unsigned int i_ino;
3534 	union {
3535 		const unsigned int i_nlink;
3536 		unsigned int __i_nlink;
3537 	};
3538 	dev_t i_rdev;
3539 	loff_t i_size;
3540 	struct timespec64 i_atime;
3541 	struct timespec64 i_mtime;
3542 	struct timespec64 i_ctime;
3543 	spinlock_t i_lock;
3544 	short unsigned int i_bytes;
3545 	u8 i_blkbits;
3546 	u8 i_write_hint;
3547 	blkcnt_t i_blocks;
3548 	long unsigned int i_state;
3549 	struct rw_semaphore i_rwsem;
3550 	long unsigned int dirtied_when;
3551 	long unsigned int dirtied_time_when;
3552 	struct hlist_node i_hash;
3553 	struct list_head i_io_list;
3554 	struct list_head i_lru;
3555 	struct list_head i_sb_list;
3556 	struct list_head i_wb_list;
3557 	union {
3558 		struct hlist_head i_dentry;
3559 		struct callback_head i_rcu;
3560 	};
3561 	atomic64_t i_version;
3562 	atomic64_t i_sequence;
3563 	atomic_t i_count;
3564 	atomic_t i_dio_count;
3565 	atomic_t i_writecount;
3566 	atomic_t i_readcount;
3567 	union {
3568 		const struct file_operations *i_fop;
3569 		void (*free_inode)(struct inode *);
3570 	};
3571 	struct file_lock_context *i_flctx;
3572 	struct address_space i_data;
3573 	struct list_head i_devices;
3574 	union {
3575 		struct pipe_inode_info *i_pipe;
3576 		struct cdev *i_cdev;
3577 		char *i_link;
3578 		unsigned int i_dir_seq;
3579 	};
3580 	__u32 i_generation;
3581 	__u32 i_fsnotify_mask;
3582 	struct fsnotify_mark_connector *i_fsnotify_marks;
3583 	void *i_private;
3584 };
3585 
3586 struct dentry_operations {
3587 	int (*d_revalidate)(struct dentry *, unsigned int);
3588 	int (*d_weak_revalidate)(struct dentry *, unsigned int);
3589 	int (*d_hash)(const struct dentry *, struct qstr *);
3590 	int (*d_compare)(const struct dentry *, unsigned int, const char *, const struct qstr *);
3591 	int (*d_delete)(const struct dentry *);
3592 	int (*d_init)(struct dentry *);
3593 	void (*d_release)(struct dentry *);
3594 	void (*d_prune)(struct dentry *);
3595 	void (*d_iput)(struct dentry *, struct inode *);
3596 	char * (*d_dname)(struct dentry *, char *, int);
3597 	struct vfsmount * (*d_automount)(struct path *);
3598 	int (*d_manage)(const struct path *, bool);
3599 	struct dentry * (*d_real)(struct dentry *, const struct inode *);
3600 	long: 64;
3601 	long: 64;
3602 	long: 64;
3603 };
3604 
3605 struct mtd_info;
3606 
3607 typedef long long int qsize_t;
3608 
3609 struct quota_format_type;
3610 
3611 struct mem_dqinfo {
3612 	struct quota_format_type *dqi_format;
3613 	int dqi_fmt_id;
3614 	struct list_head dqi_dirty_list;
3615 	long unsigned int dqi_flags;
3616 	unsigned int dqi_bgrace;
3617 	unsigned int dqi_igrace;
3618 	qsize_t dqi_max_spc_limit;
3619 	qsize_t dqi_max_ino_limit;
3620 	void *dqi_priv;
3621 };
3622 
3623 struct quota_format_ops;
3624 
3625 struct quota_info {
3626 	unsigned int flags;
3627 	struct rw_semaphore dqio_sem;
3628 	struct inode *files[3];
3629 	struct mem_dqinfo info[3];
3630 	const struct quota_format_ops *ops[3];
3631 };
3632 
3633 struct rcu_sync {
3634 	int gp_state;
3635 	int gp_count;
3636 	wait_queue_head_t gp_wait;
3637 	struct callback_head cb_head;
3638 };
3639 
3640 struct percpu_rw_semaphore {
3641 	struct rcu_sync rss;
3642 	unsigned int *read_count;
3643 	struct rcuwait writer;
3644 	wait_queue_head_t waiters;
3645 	atomic_t block;
3646 };
3647 
3648 struct sb_writers {
3649 	int frozen;
3650 	wait_queue_head_t wait_unfrozen;
3651 	struct percpu_rw_semaphore rw_sem[3];
3652 };
3653 
3654 typedef struct {
3655 	__u8 b[16];
3656 } uuid_t;
3657 
3658 struct list_lru_node;
3659 
3660 struct list_lru {
3661 	struct list_lru_node *node;
3662 	struct list_head list;
3663 	int shrinker_id;
3664 	bool memcg_aware;
3665 	struct xarray xa;
3666 };
3667 
3668 struct super_operations;
3669 
3670 struct dquot_operations;
3671 
3672 struct quotactl_ops;
3673 
3674 struct export_operations;
3675 
3676 struct xattr_handler;
3677 
3678 struct block_device;
3679 
3680 struct super_block {
3681 	struct list_head s_list;
3682 	dev_t s_dev;
3683 	unsigned char s_blocksize_bits;
3684 	long unsigned int s_blocksize;
3685 	loff_t s_maxbytes;
3686 	struct file_system_type *s_type;
3687 	const struct super_operations *s_op;
3688 	const struct dquot_operations *dq_op;
3689 	const struct quotactl_ops *s_qcop;
3690 	const struct export_operations *s_export_op;
3691 	long unsigned int s_flags;
3692 	long unsigned int s_iflags;
3693 	long unsigned int s_magic;
3694 	struct dentry *s_root;
3695 	struct rw_semaphore s_umount;
3696 	int s_count;
3697 	atomic_t s_active;
3698 	const struct xattr_handler **s_xattr;
3699 	struct hlist_bl_head s_roots;
3700 	struct list_head s_mounts;
3701 	struct block_device *s_bdev;
3702 	struct backing_dev_info *s_bdi;
3703 	struct mtd_info *s_mtd;
3704 	struct hlist_node s_instances;
3705 	unsigned int s_quota_types;
3706 	struct quota_info s_dquot;
3707 	struct sb_writers s_writers;
3708 	void *s_fs_info;
3709 	u32 s_time_gran;
3710 	time64_t s_time_min;
3711 	time64_t s_time_max;
3712 	__u32 s_fsnotify_mask;
3713 	struct fsnotify_mark_connector *s_fsnotify_marks;
3714 	char s_id[32];
3715 	uuid_t s_uuid;
3716 	unsigned int s_max_links;
3717 	fmode_t s_mode;
3718 	struct mutex s_vfs_rename_mutex;
3719 	const char *s_subtype;
3720 	const struct dentry_operations *s_d_op;
3721 	struct shrinker s_shrink;
3722 	atomic_long_t s_remove_count;
3723 	atomic_long_t s_fsnotify_connectors;
3724 	int s_readonly_remount;
3725 	errseq_t s_wb_err;
3726 	struct workqueue_struct *s_dio_done_wq;
3727 	struct hlist_head s_pins;
3728 	struct user_namespace *s_user_ns;
3729 	struct list_lru s_dentry_lru;
3730 	struct list_lru s_inode_lru;
3731 	struct callback_head rcu;
3732 	struct work_struct destroy_work;
3733 	struct mutex s_sync_lock;
3734 	int s_stack_depth;
3735 	long: 64;
3736 	long: 64;
3737 	long: 64;
3738 	long: 64;
3739 	long: 64;
3740 	long: 64;
3741 	long: 64;
3742 	long: 64;
3743 	long: 64;
3744 	spinlock_t s_inode_list_lock;
3745 	struct list_head s_inodes;
3746 	spinlock_t s_inode_wblist_lock;
3747 	struct list_head s_inodes_wb;
3748 	long: 64;
3749 	long: 64;
3750 	long: 64;
3751 	long: 64;
3752 	long: 64;
3753 	long: 64;
3754 	long: 64;
3755 	long: 64;
3756 	long: 64;
3757 	long: 64;
3758 };
3759 
3760 struct vfsmount {
3761 	struct dentry *mnt_root;
3762 	struct super_block *mnt_sb;
3763 	int mnt_flags;
3764 	struct user_namespace *mnt_userns;
3765 };
3766 
3767 struct kstat {
3768 	u32 result_mask;
3769 	umode_t mode;
3770 	unsigned int nlink;
3771 	uint32_t blksize;
3772 	u64 attributes;
3773 	u64 attributes_mask;
3774 	u64 ino;
3775 	dev_t dev;
3776 	dev_t rdev;
3777 	kuid_t uid;
3778 	kgid_t gid;
3779 	loff_t size;
3780 	struct timespec64 atime;
3781 	struct timespec64 mtime;
3782 	struct timespec64 ctime;
3783 	struct timespec64 btime;
3784 	u64 blocks;
3785 	u64 mnt_id;
3786 };
3787 
3788 struct list_lru_one {
3789 	struct list_head list;
3790 	long int nr_items;
3791 };
3792 
3793 struct list_lru_node {
3794 	spinlock_t lock;
3795 	struct list_lru_one lru;
3796 	long int nr_items;
3797 	long: 64;
3798 	long: 64;
3799 	long: 64;
3800 	long: 64;
3801 	long: 64;
3802 	long: 64;
3803 	long: 64;
3804 	long: 64;
3805 	long: 64;
3806 	long: 64;
3807 	long: 64;
3808 };
3809 
3810 enum migrate_mode {
3811 	MIGRATE_ASYNC = 0,
3812 	MIGRATE_SYNC_LIGHT = 1,
3813 	MIGRATE_SYNC = 2,
3814 	MIGRATE_SYNC_NO_COPY = 3,
3815 };
3816 
3817 struct cgroup_subsys;
3818 
3819 struct cgroup_subsys_state {
3820 	struct cgroup *cgroup;
3821 	struct cgroup_subsys *ss;
3822 	struct percpu_ref refcnt;
3823 	struct list_head sibling;
3824 	struct list_head children;
3825 	struct list_head rstat_css_node;
3826 	int id;
3827 	unsigned int flags;
3828 	u64 serial_nr;
3829 	atomic_t online_cnt;
3830 	struct work_struct destroy_work;
3831 	struct rcu_work destroy_rwork;
3832 	struct cgroup_subsys_state *parent;
3833 };
3834 
3835 struct kernfs_node;
3836 
3837 struct cgroup_file {
3838 	struct kernfs_node *kn;
3839 	long unsigned int notified_at;
3840 	struct timer_list notify_timer;
3841 };
3842 
3843 struct cgroup_base_stat {
3844 	struct task_cputime cputime;
3845 };
3846 
3847 struct bpf_prog_array;
3848 
3849 struct cgroup_bpf {
3850 	struct bpf_prog_array *effective[23];
3851 	struct hlist_head progs[23];
3852 	u8 flags[23];
3853 	struct list_head storages;
3854 	struct bpf_prog_array *inactive;
3855 	struct percpu_ref refcnt;
3856 	struct work_struct release_work;
3857 };
3858 
3859 struct cgroup_freezer_state {
3860 	bool freeze;
3861 	int e_freeze;
3862 	int nr_frozen_descendants;
3863 	int nr_frozen_tasks;
3864 };
3865 
3866 struct cgroup_root;
3867 
3868 struct cgroup_rstat_cpu;
3869 
3870 struct psi_group;
3871 
3872 struct cgroup {
3873 	struct cgroup_subsys_state self;
3874 	long unsigned int flags;
3875 	int level;
3876 	int max_depth;
3877 	int nr_descendants;
3878 	int nr_dying_descendants;
3879 	int max_descendants;
3880 	int nr_populated_csets;
3881 	int nr_populated_domain_children;
3882 	int nr_populated_threaded_children;
3883 	int nr_threaded_children;
3884 	struct kernfs_node *kn;
3885 	struct cgroup_file procs_file;
3886 	struct cgroup_file events_file;
3887 	u16 subtree_control;
3888 	u16 subtree_ss_mask;
3889 	u16 old_subtree_control;
3890 	u16 old_subtree_ss_mask;
3891 	struct cgroup_subsys_state *subsys[7];
3892 	struct cgroup_root *root;
3893 	struct list_head cset_links;
3894 	struct list_head e_csets[7];
3895 	struct cgroup *dom_cgrp;
3896 	struct cgroup *old_dom_cgrp;
3897 	struct cgroup_rstat_cpu *rstat_cpu;
3898 	struct list_head rstat_css_list;
3899 	struct cgroup_base_stat last_bstat;
3900 	struct cgroup_base_stat bstat;
3901 	struct prev_cputime prev_cputime;
3902 	struct list_head pidlists;
3903 	struct mutex pidlist_mutex;
3904 	wait_queue_head_t offline_waitq;
3905 	struct work_struct release_agent_work;
3906 	struct psi_group *psi;
3907 	struct cgroup_bpf bpf;
3908 	atomic_t congestion_count;
3909 	struct cgroup_freezer_state freezer;
3910 	u64 ancestor_ids[0];
3911 };
3912 
3913 typedef int proc_handler(struct ctl_table *, int, void *, size_t *, loff_t *);
3914 
3915 struct ctl_table_poll;
3916 
3917 struct ctl_table {
3918 	const char *procname;
3919 	void *data;
3920 	int maxlen;
3921 	umode_t mode;
3922 	struct ctl_table *child;
3923 	proc_handler *proc_handler;
3924 	struct ctl_table_poll *poll;
3925 	void *extra1;
3926 	void *extra2;
3927 };
3928 
3929 struct ctl_table_poll {
3930 	atomic_t event;
3931 	wait_queue_head_t wait;
3932 };
3933 
3934 struct ctl_node {
3935 	struct rb_node node;
3936 	struct ctl_table_header *header;
3937 };
3938 
3939 struct ctl_table_root {
3940 	struct ctl_table_set default_set;
3941 	struct ctl_table_set * (*lookup)(struct ctl_table_root *);
3942 	void (*set_ownership)(struct ctl_table_header *, struct ctl_table *, kuid_t *, kgid_t *);
3943 	int (*permissions)(struct ctl_table_header *, struct ctl_table *);
3944 };
3945 
3946 struct key_tag {
3947 	struct callback_head rcu;
3948 	refcount_t usage;
3949 	bool removed;
3950 };
3951 
3952 typedef int (*request_key_actor_t)(struct key *, void *);
3953 
3954 struct key_preparsed_payload;
3955 
3956 struct key_match_data;
3957 
3958 struct kernel_pkey_params;
3959 
3960 struct kernel_pkey_query;
3961 
3962 struct key_type {
3963 	const char *name;
3964 	size_t def_datalen;
3965 	unsigned int flags;
3966 	int (*vet_description)(const char *);
3967 	int (*preparse)(struct key_preparsed_payload *);
3968 	void (*free_preparse)(struct key_preparsed_payload *);
3969 	int (*instantiate)(struct key *, struct key_preparsed_payload *);
3970 	int (*update)(struct key *, struct key_preparsed_payload *);
3971 	int (*match_preparse)(struct key_match_data *);
3972 	void (*match_free)(struct key_match_data *);
3973 	void (*revoke)(struct key *);
3974 	void (*destroy)(struct key *);
3975 	void (*describe)(const struct key *, struct seq_file *);
3976 	long int (*read)(const struct key *, char *, size_t);
3977 	request_key_actor_t request_key;
3978 	struct key_restriction * (*lookup_restriction)(const char *);
3979 	int (*asym_query)(const struct kernel_pkey_params *, struct kernel_pkey_query *);
3980 	int (*asym_eds_op)(struct kernel_pkey_params *, const void *, void *);
3981 	int (*asym_verify_signature)(struct kernel_pkey_params *, const void *, const void *);
3982 	struct list_head link;
3983 	struct lock_class_key lock_class;
3984 };
3985 
3986 typedef int (*key_restrict_link_func_t)(struct key *, const struct key_type *, const union key_payload *, struct key *);
3987 
3988 struct key_restriction {
3989 	key_restrict_link_func_t check;
3990 	struct key *key;
3991 	struct key_type *keytype;
3992 };
3993 
3994 struct percpu_counter {
3995 	raw_spinlock_t lock;
3996 	s64 count;
3997 	struct list_head list;
3998 	s32 *counters;
3999 };
4000 
4001 struct user_struct {
4002 	refcount_t __count;
4003 	struct percpu_counter epoll_watches;
4004 	long unsigned int unix_inflight;
4005 	atomic_long_t pipe_bufs;
4006 	struct hlist_node uidhash_node;
4007 	kuid_t uid;
4008 	atomic_long_t locked_vm;
4009 	struct ratelimit_state ratelimit;
4010 };
4011 
4012 struct group_info {
4013 	atomic_t usage;
4014 	int ngroups;
4015 	kgid_t gid[0];
4016 };
4017 
4018 struct core_thread {
4019 	struct task_struct *task;
4020 	struct core_thread *next;
4021 };
4022 
4023 struct core_state {
4024 	atomic_t nr_threads;
4025 	struct core_thread dumper;
4026 	struct completion startup;
4027 };
4028 
4029 struct taskstats {
4030 	__u16 version;
4031 	__u32 ac_exitcode;
4032 	__u8 ac_flag;
4033 	__u8 ac_nice;
4034 	__u64 cpu_count;
4035 	__u64 cpu_delay_total;
4036 	__u64 blkio_count;
4037 	__u64 blkio_delay_total;
4038 	__u64 swapin_count;
4039 	__u64 swapin_delay_total;
4040 	__u64 cpu_run_real_total;
4041 	__u64 cpu_run_virtual_total;
4042 	char ac_comm[32];
4043 	__u8 ac_sched;
4044 	__u8 ac_pad[3];
4045 	long: 0;
4046 	__u32 ac_uid;
4047 	__u32 ac_gid;
4048 	__u32 ac_pid;
4049 	__u32 ac_ppid;
4050 	__u32 ac_btime;
4051 	__u64 ac_etime;
4052 	__u64 ac_utime;
4053 	__u64 ac_stime;
4054 	__u64 ac_minflt;
4055 	__u64 ac_majflt;
4056 	__u64 coremem;
4057 	__u64 virtmem;
4058 	__u64 hiwater_rss;
4059 	__u64 hiwater_vm;
4060 	__u64 read_char;
4061 	__u64 write_char;
4062 	__u64 read_syscalls;
4063 	__u64 write_syscalls;
4064 	__u64 read_bytes;
4065 	__u64 write_bytes;
4066 	__u64 cancelled_write_bytes;
4067 	__u64 nvcsw;
4068 	__u64 nivcsw;
4069 	__u64 ac_utimescaled;
4070 	__u64 ac_stimescaled;
4071 	__u64 cpu_scaled_run_real_total;
4072 	__u64 freepages_count;
4073 	__u64 freepages_delay_total;
4074 	__u64 thrashing_count;
4075 	__u64 thrashing_delay_total;
4076 	__u64 ac_btime64;
4077 	__u64 compact_count;
4078 	__u64 compact_delay_total;
4079 	__u32 ac_tgid;
4080 	__u64 ac_tgetime;
4081 	__u64 ac_exe_dev;
4082 	__u64 ac_exe_inode;
4083 	__u64 wpcopy_count;
4084 	__u64 wpcopy_delay_total;
4085 };
4086 
4087 struct delayed_call {
4088 	void (*fn)(void *);
4089 	void *arg;
4090 };
4091 
4092 typedef struct {
4093 	uid_t val;
4094 } vfsuid_t;
4095 
4096 typedef struct {
4097 	gid_t val;
4098 } vfsgid_t;
4099 
4100 enum kmalloc_cache_type {
4101 	KMALLOC_NORMAL = 0,
4102 	KMALLOC_DMA = 0,
4103 	KMALLOC_CGROUP = 1,
4104 	KMALLOC_RECLAIM = 2,
4105 	NR_KMALLOC_TYPES = 3,
4106 };
4107 
4108 struct wait_page_queue;
4109 
4110 struct kiocb {
4111 	struct file *ki_filp;
4112 	loff_t ki_pos;
4113 	void (*ki_complete)(struct kiocb *, long int);
4114 	void *private;
4115 	int ki_flags;
4116 	u16 ki_ioprio;
4117 	struct wait_page_queue *ki_waitq;
4118 };
4119 
4120 struct iattr {
4121 	unsigned int ia_valid;
4122 	umode_t ia_mode;
4123 	union {
4124 		kuid_t ia_uid;
4125 		vfsuid_t ia_vfsuid;
4126 	};
4127 	union {
4128 		kgid_t ia_gid;
4129 		vfsgid_t ia_vfsgid;
4130 	};
4131 	loff_t ia_size;
4132 	struct timespec64 ia_atime;
4133 	struct timespec64 ia_mtime;
4134 	struct timespec64 ia_ctime;
4135 	struct file *ia_file;
4136 };
4137 
4138 typedef __kernel_uid32_t projid_t;
4139 
4140 typedef struct {
4141 	projid_t val;
4142 } kprojid_t;
4143 
4144 enum quota_type {
4145 	USRQUOTA = 0,
4146 	GRPQUOTA = 1,
4147 	PRJQUOTA = 2,
4148 };
4149 
4150 struct kqid {
4151 	union {
4152 		kuid_t uid;
4153 		kgid_t gid;
4154 		kprojid_t projid;
4155 	};
4156 	enum quota_type type;
4157 };
4158 
4159 struct mem_dqblk {
4160 	qsize_t dqb_bhardlimit;
4161 	qsize_t dqb_bsoftlimit;
4162 	qsize_t dqb_curspace;
4163 	qsize_t dqb_rsvspace;
4164 	qsize_t dqb_ihardlimit;
4165 	qsize_t dqb_isoftlimit;
4166 	qsize_t dqb_curinodes;
4167 	time64_t dqb_btime;
4168 	time64_t dqb_itime;
4169 };
4170 
4171 struct dquot {
4172 	struct hlist_node dq_hash;
4173 	struct list_head dq_inuse;
4174 	struct list_head dq_free;
4175 	struct list_head dq_dirty;
4176 	struct mutex dq_lock;
4177 	spinlock_t dq_dqb_lock;
4178 	atomic_t dq_count;
4179 	struct super_block *dq_sb;
4180 	struct kqid dq_id;
4181 	loff_t dq_off;
4182 	long unsigned int dq_flags;
4183 	struct mem_dqblk dq_dqb;
4184 };
4185 
4186 struct quota_format_type {
4187 	int qf_fmt_id;
4188 	const struct quota_format_ops *qf_ops;
4189 	struct module *qf_owner;
4190 	struct quota_format_type *qf_next;
4191 };
4192 
4193 struct quota_format_ops {
4194 	int (*check_quota_file)(struct super_block *, int);
4195 	int (*read_file_info)(struct super_block *, int);
4196 	int (*write_file_info)(struct super_block *, int);
4197 	int (*free_file_info)(struct super_block *, int);
4198 	int (*read_dqblk)(struct dquot *);
4199 	int (*commit_dqblk)(struct dquot *);
4200 	int (*release_dqblk)(struct dquot *);
4201 	int (*get_next_id)(struct super_block *, struct kqid *);
4202 };
4203 
4204 struct dquot_operations {
4205 	int (*write_dquot)(struct dquot *);
4206 	struct dquot * (*alloc_dquot)(struct super_block *, int);
4207 	void (*destroy_dquot)(struct dquot *);
4208 	int (*acquire_dquot)(struct dquot *);
4209 	int (*release_dquot)(struct dquot *);
4210 	int (*mark_dirty)(struct dquot *);
4211 	int (*write_info)(struct super_block *, int);
4212 	qsize_t * (*get_reserved_space)(struct inode *);
4213 	int (*get_projid)(struct inode *, kprojid_t *);
4214 	int (*get_inode_usage)(struct inode *, qsize_t *);
4215 	int (*get_next_id)(struct super_block *, struct kqid *);
4216 };
4217 
4218 struct qc_dqblk {
4219 	int d_fieldmask;
4220 	u64 d_spc_hardlimit;
4221 	u64 d_spc_softlimit;
4222 	u64 d_ino_hardlimit;
4223 	u64 d_ino_softlimit;
4224 	u64 d_space;
4225 	u64 d_ino_count;
4226 	s64 d_ino_timer;
4227 	s64 d_spc_timer;
4228 	int d_ino_warns;
4229 	int d_spc_warns;
4230 	u64 d_rt_spc_hardlimit;
4231 	u64 d_rt_spc_softlimit;
4232 	u64 d_rt_space;
4233 	s64 d_rt_spc_timer;
4234 	int d_rt_spc_warns;
4235 };
4236 
4237 struct qc_type_state {
4238 	unsigned int flags;
4239 	unsigned int spc_timelimit;
4240 	unsigned int ino_timelimit;
4241 	unsigned int rt_spc_timelimit;
4242 	unsigned int spc_warnlimit;
4243 	unsigned int ino_warnlimit;
4244 	unsigned int rt_spc_warnlimit;
4245 	long long unsigned int ino;
4246 	blkcnt_t blocks;
4247 	blkcnt_t nextents;
4248 };
4249 
4250 struct qc_state {
4251 	unsigned int s_incoredqs;
4252 	struct qc_type_state s_state[3];
4253 };
4254 
4255 struct qc_info {
4256 	int i_fieldmask;
4257 	unsigned int i_flags;
4258 	unsigned int i_spc_timelimit;
4259 	unsigned int i_ino_timelimit;
4260 	unsigned int i_rt_spc_timelimit;
4261 	unsigned int i_spc_warnlimit;
4262 	unsigned int i_ino_warnlimit;
4263 	unsigned int i_rt_spc_warnlimit;
4264 };
4265 
4266 struct quotactl_ops {
4267 	int (*quota_on)(struct super_block *, int, int, const struct path *);
4268 	int (*quota_off)(struct super_block *, int);
4269 	int (*quota_enable)(struct super_block *, unsigned int);
4270 	int (*quota_disable)(struct super_block *, unsigned int);
4271 	int (*quota_sync)(struct super_block *, int);
4272 	int (*set_info)(struct super_block *, int, struct qc_info *);
4273 	int (*get_dqblk)(struct super_block *, struct kqid, struct qc_dqblk *);
4274 	int (*get_nextdqblk)(struct super_block *, struct kqid *, struct qc_dqblk *);
4275 	int (*set_dqblk)(struct super_block *, struct kqid, struct qc_dqblk *);
4276 	int (*get_state)(struct super_block *, struct qc_state *);
4277 	int (*rm_xquota)(struct super_block *, unsigned int);
4278 };
4279 
4280 enum module_state {
4281 	MODULE_STATE_LIVE = 0,
4282 	MODULE_STATE_COMING = 1,
4283 	MODULE_STATE_GOING = 2,
4284 	MODULE_STATE_UNFORMED = 3,
4285 };
4286 
4287 struct kset;
4288 
4289 struct kobj_type;
4290 
4291 struct kobject {
4292 	const char *name;
4293 	struct list_head entry;
4294 	struct kobject *parent;
4295 	struct kset *kset;
4296 	const struct kobj_type *ktype;
4297 	struct kernfs_node *sd;
4298 	struct kref kref;
4299 	unsigned int state_initialized: 1;
4300 	unsigned int state_in_sysfs: 1;
4301 	unsigned int state_add_uevent_sent: 1;
4302 	unsigned int state_remove_uevent_sent: 1;
4303 	unsigned int uevent_suppress: 1;
4304 };
4305 
4306 struct module_param_attrs;
4307 
4308 struct module_kobject {
4309 	struct kobject kobj;
4310 	struct module *mod;
4311 	struct kobject *drivers_dir;
4312 	struct module_param_attrs *mp;
4313 	struct completion *kobj_completion;
4314 };
4315 
4316 struct latch_tree_node {
4317 	struct rb_node node[2];
4318 };
4319 
4320 struct mod_tree_node {
4321 	struct module *mod;
4322 	struct latch_tree_node node;
4323 };
4324 
4325 struct module_layout {
4326 	void *base;
4327 	unsigned int size;
4328 	unsigned int text_size;
4329 	unsigned int ro_size;
4330 	unsigned int ro_after_init_size;
4331 	struct mod_tree_node mtn;
4332 };
4333 
4334 struct mod_arch_specific {
4335 	unsigned int stubs_section;
4336 	unsigned int toc_section;
4337 	bool toc_fixed;
4338 	long unsigned int start_opd;
4339 	long unsigned int end_opd;
4340 	long unsigned int tramp;
4341 	long unsigned int tramp_regs;
4342 	struct list_head bug_list;
4343 	struct bug_entry *bug_table;
4344 	unsigned int num_bugs;
4345 };
4346 
4347 struct elf64_sym;
4348 
4349 typedef struct elf64_sym Elf64_Sym;
4350 
4351 struct mod_kallsyms {
4352 	Elf64_Sym *symtab;
4353 	unsigned int num_symtab;
4354 	char *strtab;
4355 	char *typetab;
4356 };
4357 
4358 struct module_attribute;
4359 
4360 struct kernel_param;
4361 
4362 struct module_sect_attrs;
4363 
4364 struct module_notes_attrs;
4365 
4366 struct trace_eval_map;
4367 
4368 struct error_injection_entry;
4369 
4370 struct module {
4371 	enum module_state state;
4372 	struct list_head list;
4373 	char name[56];
4374 	struct module_kobject mkobj;
4375 	struct module_attribute *modinfo_attrs;
4376 	const char *version;
4377 	const char *srcversion;
4378 	struct kobject *holders_dir;
4379 	const struct kernel_symbol *syms;
4380 	const s32 *crcs;
4381 	unsigned int num_syms;
4382 	struct mutex param_lock;
4383 	struct kernel_param *kp;
4384 	unsigned int num_kp;
4385 	unsigned int num_gpl_syms;
4386 	const struct kernel_symbol *gpl_syms;
4387 	const s32 *gpl_crcs;
4388 	bool using_gplonly_symbols;
4389 	bool async_probe_requested;
4390 	unsigned int num_exentries;
4391 	struct exception_table_entry *extable;
4392 	int (*init)();
4393 	long: 64;
4394 	long: 64;
4395 	long: 64;
4396 	long: 64;
4397 	long: 64;
4398 	long: 64;
4399 	long: 64;
4400 	struct module_layout core_layout;
4401 	struct module_layout init_layout;
4402 	struct mod_arch_specific arch;
4403 	long unsigned int taints;
4404 	unsigned int num_bugs;
4405 	struct list_head bug_list;
4406 	struct bug_entry *bug_table;
4407 	struct mod_kallsyms *kallsyms;
4408 	struct mod_kallsyms core_kallsyms;
4409 	struct module_sect_attrs *sect_attrs;
4410 	struct module_notes_attrs *notes_attrs;
4411 	char *args;
4412 	void *percpu;
4413 	unsigned int percpu_size;
4414 	void *noinstr_text_start;
4415 	unsigned int noinstr_text_size;
4416 	unsigned int num_tracepoints;
4417 	tracepoint_ptr_t *tracepoints_ptrs;
4418 	unsigned int num_srcu_structs;
4419 	struct srcu_struct **srcu_struct_ptrs;
4420 	unsigned int num_bpf_raw_events;
4421 	struct bpf_raw_event_map *bpf_raw_events;
4422 	unsigned int btf_data_size;
4423 	void *btf_data;
4424 	struct jump_entry *jump_entries;
4425 	unsigned int num_jump_entries;
4426 	unsigned int num_trace_bprintk_fmt;
4427 	const char **trace_bprintk_fmt_start;
4428 	struct trace_event_call **trace_events;
4429 	unsigned int num_trace_events;
4430 	struct trace_eval_map **trace_evals;
4431 	unsigned int num_trace_evals;
4432 	unsigned int num_ftrace_callsites;
4433 	long unsigned int *ftrace_callsites;
4434 	void *kprobes_text_start;
4435 	unsigned int kprobes_text_size;
4436 	long unsigned int *kprobe_blacklist;
4437 	unsigned int num_kprobe_blacklist;
4438 	struct list_head source_list;
4439 	struct list_head target_list;
4440 	void (*exit)();
4441 	atomic_t refcnt;
4442 	struct error_injection_entry *ei_funcs;
4443 	unsigned int num_ei_funcs;
4444 	long: 64;
4445 	long: 64;
4446 	long: 64;
4447 	long: 64;
4448 	long: 64;
4449 	long: 64;
4450 };
4451 
4452 struct writeback_control;
4453 
4454 struct readahead_control;
4455 
4456 struct swap_info_struct;
4457 
4458 struct address_space_operations {
4459 	int (*writepage)(struct page *, struct writeback_control *);
4460 	int (*read_folio)(struct file *, struct folio *);
4461 	int (*writepages)(struct address_space *, struct writeback_control *);
4462 	bool (*dirty_folio)(struct address_space *, struct folio *);
4463 	void (*readahead)(struct readahead_control *);
4464 	int (*write_begin)(struct file *, struct address_space *, loff_t, unsigned int, struct page **, void **);
4465 	int (*write_end)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct page *, void *);
4466 	sector_t (*bmap)(struct address_space *, sector_t);
4467 	void (*invalidate_folio)(struct folio *, size_t, size_t);
4468 	bool (*release_folio)(struct folio *, gfp_t);
4469 	void (*free_folio)(struct folio *);
4470 	ssize_t (*direct_IO)(struct kiocb *, struct iov_iter *);
4471 	int (*migrate_folio)(struct address_space *, struct folio *, struct folio *, enum migrate_mode);
4472 	int (*launder_folio)(struct folio *);
4473 	bool (*is_partially_uptodate)(struct folio *, size_t, size_t);
4474 	void (*is_dirty_writeback)(struct folio *, bool *, bool *);
4475 	int (*error_remove_page)(struct address_space *, struct page *);
4476 	int (*swap_activate)(struct swap_info_struct *, struct file *, sector_t *);
4477 	void (*swap_deactivate)(struct file *);
4478 	int (*swap_rw)(struct kiocb *, struct iov_iter *);
4479 };
4480 
4481 struct fiemap_extent_info;
4482 
4483 struct fileattr;
4484 
4485 struct inode_operations {
4486 	struct dentry * (*lookup)(struct inode *, struct dentry *, unsigned int);
4487 	const char * (*get_link)(struct dentry *, struct inode *, struct delayed_call *);
4488 	int (*permission)(struct user_namespace *, struct inode *, int);
4489 	struct posix_acl * (*get_acl)(struct inode *, int, bool);
4490 	int (*readlink)(struct dentry *, char *, int);
4491 	int (*create)(struct user_namespace *, struct inode *, struct dentry *, umode_t, bool);
4492 	int (*link)(struct dentry *, struct inode *, struct dentry *);
4493 	int (*unlink)(struct inode *, struct dentry *);
4494 	int (*symlink)(struct user_namespace *, struct inode *, struct dentry *, const char *);
4495 	int (*mkdir)(struct user_namespace *, struct inode *, struct dentry *, umode_t);
4496 	int (*rmdir)(struct inode *, struct dentry *);
4497 	int (*mknod)(struct user_namespace *, struct inode *, struct dentry *, umode_t, dev_t);
4498 	int (*rename)(struct user_namespace *, struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int);
4499 	int (*setattr)(struct user_namespace *, struct dentry *, struct iattr *);
4500 	int (*getattr)(struct user_namespace *, const struct path *, struct kstat *, u32, unsigned int);
4501 	ssize_t (*listxattr)(struct dentry *, char *, size_t);
4502 	int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64, u64);
4503 	int (*update_time)(struct inode *, struct timespec64 *, int);
4504 	int (*atomic_open)(struct inode *, struct dentry *, struct file *, unsigned int, umode_t);
4505 	int (*tmpfile)(struct user_namespace *, struct inode *, struct dentry *, umode_t);
4506 	int (*set_acl)(struct user_namespace *, struct inode *, struct posix_acl *, int);
4507 	int (*fileattr_set)(struct user_namespace *, struct dentry *, struct fileattr *);
4508 	int (*fileattr_get)(struct dentry *, struct fileattr *);
4509 	long: 64;
4510 	long: 64;
4511 	long: 64;
4512 	long: 64;
4513 	long: 64;
4514 	long: 64;
4515 	long: 64;
4516 	long: 64;
4517 	long: 64;
4518 };
4519 
4520 struct file_lock_context {
4521 	spinlock_t flc_lock;
4522 	struct list_head flc_flock;
4523 	struct list_head flc_posix;
4524 	struct list_head flc_lease;
4525 };
4526 
4527 struct file_lock_operations {
4528 	void (*fl_copy_lock)(struct file_lock *, struct file_lock *);
4529 	void (*fl_release_private)(struct file_lock *);
4530 };
4531 
4532 struct nlm_lockowner;
4533 
4534 struct nfs_lock_info {
4535 	u32 state;
4536 	struct nlm_lockowner *owner;
4537 	struct list_head list;
4538 };
4539 
4540 struct nfs4_lock_state;
4541 
4542 struct nfs4_lock_info {
4543 	struct nfs4_lock_state *owner;
4544 };
4545 
4546 struct lock_manager_operations;
4547 
4548 struct file_lock {
4549 	struct file_lock *fl_blocker;
4550 	struct list_head fl_list;
4551 	struct hlist_node fl_link;
4552 	struct list_head fl_blocked_requests;
4553 	struct list_head fl_blocked_member;
4554 	fl_owner_t fl_owner;
4555 	unsigned int fl_flags;
4556 	unsigned char fl_type;
4557 	unsigned int fl_pid;
4558 	int fl_link_cpu;
4559 	wait_queue_head_t fl_wait;
4560 	struct file *fl_file;
4561 	loff_t fl_start;
4562 	loff_t fl_end;
4563 	struct fasync_struct *fl_fasync;
4564 	long unsigned int fl_break_time;
4565 	long unsigned int fl_downgrade_time;
4566 	const struct file_lock_operations *fl_ops;
4567 	const struct lock_manager_operations *fl_lmops;
4568 	union {
4569 		struct nfs_lock_info nfs_fl;
4570 		struct nfs4_lock_info nfs4_fl;
4571 		struct {
4572 			struct list_head link;
4573 			int state;
4574 			unsigned int debug_id;
4575 		} afs;
4576 	} fl_u;
4577 };
4578 
4579 struct lock_manager_operations {
4580 	void *lm_mod_owner;
4581 	fl_owner_t (*lm_get_owner)(fl_owner_t);
4582 	void (*lm_put_owner)(fl_owner_t);
4583 	void (*lm_notify)(struct file_lock *);
4584 	int (*lm_grant)(struct file_lock *, int);
4585 	bool (*lm_break)(struct file_lock *);
4586 	int (*lm_change)(struct file_lock *, int, struct list_head *);
4587 	void (*lm_setup)(struct file_lock *, void **);
4588 	bool (*lm_breaker_owns_lease)(struct file_lock *);
4589 	bool (*lm_lock_expirable)(struct file_lock *);
4590 	void (*lm_expire_lock)();
4591 };
4592 
4593 struct fasync_struct {
4594 	rwlock_t fa_lock;
4595 	int magic;
4596 	int fa_fd;
4597 	struct fasync_struct *fa_next;
4598 	struct file *fa_file;
4599 	struct callback_head fa_rcu;
4600 };
4601 
4602 struct kstatfs;
4603 
4604 struct super_operations {
4605 	struct inode * (*alloc_inode)(struct super_block *);
4606 	void (*destroy_inode)(struct inode *);
4607 	void (*free_inode)(struct inode *);
4608 	void (*dirty_inode)(struct inode *, int);
4609 	int (*write_inode)(struct inode *, struct writeback_control *);
4610 	int (*drop_inode)(struct inode *);
4611 	void (*evict_inode)(struct inode *);
4612 	void (*put_super)(struct super_block *);
4613 	int (*sync_fs)(struct super_block *, int);
4614 	int (*freeze_super)(struct super_block *);
4615 	int (*freeze_fs)(struct super_block *);
4616 	int (*thaw_super)(struct super_block *);
4617 	int (*unfreeze_fs)(struct super_block *);
4618 	int (*statfs)(struct dentry *, struct kstatfs *);
4619 	int (*remount_fs)(struct super_block *, int *, char *);
4620 	void (*umount_begin)(struct super_block *);
4621 	int (*show_options)(struct seq_file *, struct dentry *);
4622 	int (*show_devname)(struct seq_file *, struct dentry *);
4623 	int (*show_path)(struct seq_file *, struct dentry *);
4624 	int (*show_stats)(struct seq_file *, struct dentry *);
4625 	long int (*nr_cached_objects)(struct super_block *, struct shrink_control *);
4626 	long int (*free_cached_objects)(struct super_block *, struct shrink_control *);
4627 };
4628 
4629 struct fid;
4630 
4631 struct iomap;
4632 
4633 struct export_operations {
4634 	int (*encode_fh)(struct inode *, __u32 *, int *, struct inode *);
4635 	struct dentry * (*fh_to_dentry)(struct super_block *, struct fid *, int, int);
4636 	struct dentry * (*fh_to_parent)(struct super_block *, struct fid *, int, int);
4637 	int (*get_name)(struct dentry *, char *, struct dentry *);
4638 	struct dentry * (*get_parent)(struct dentry *);
4639 	int (*commit_metadata)(struct inode *);
4640 	int (*get_uuid)(struct super_block *, u8 *, u32 *, u64 *);
4641 	int (*map_blocks)(struct inode *, loff_t, u64, struct iomap *, bool, u32 *);
4642 	int (*commit_blocks)(struct inode *, struct iomap *, int, struct iattr *);
4643 	u64 (*fetch_iversion)(struct inode *);
4644 	long unsigned int flags;
4645 };
4646 
4647 struct xattr_handler {
4648 	const char *name;
4649 	const char *prefix;
4650 	int flags;
4651 	bool (*list)(struct dentry *);
4652 	int (*get)(const struct xattr_handler *, struct dentry *, struct inode *, const char *, void *, size_t);
4653 	int (*set)(const struct xattr_handler *, struct user_namespace *, struct dentry *, struct inode *, const char *, const void *, size_t, int);
4654 };
4655 
4656 typedef int (*filldir_t)(struct dir_context *, const char *, int, loff_t, u64, unsigned int);
4657 
4658 struct dir_context {
4659 	filldir_t actor;
4660 	loff_t pos;
4661 };
4662 
4663 typedef void (*poll_queue_proc)(struct file *, wait_queue_head_t *, struct poll_table_struct *);
4664 
4665 struct poll_table_struct {
4666 	poll_queue_proc _qproc;
4667 	__poll_t _key;
4668 };
4669 
4670 struct seq_operations;
4671 
4672 struct seq_file {
4673 	char *buf;
4674 	size_t size;
4675 	size_t from;
4676 	size_t count;
4677 	size_t pad_until;
4678 	loff_t index;
4679 	loff_t read_pos;
4680 	struct mutex lock;
4681 	const struct seq_operations *op;
4682 	int poll_event;
4683 	const struct file *file;
4684 	void *private;
4685 };
4686 
4687 struct p_log;
4688 
4689 struct fs_parameter;
4690 
4691 struct fs_parse_result;
4692 
4693 typedef int fs_param_type(struct p_log *, const struct fs_parameter_spec *, struct fs_parameter *, struct fs_parse_result *);
4694 
4695 struct fs_parameter_spec {
4696 	const char *name;
4697 	fs_param_type *type;
4698 	u8 opt;
4699 	short unsigned int flags;
4700 	const void *data;
4701 };
4702 
4703 typedef __u64 Elf64_Addr;
4704 
4705 typedef __u16 Elf64_Half;
4706 
4707 typedef __u32 Elf64_Word;
4708 
4709 typedef __u64 Elf64_Xword;
4710 
4711 struct elf64_sym {
4712 	Elf64_Word st_name;
4713 	unsigned char st_info;
4714 	unsigned char st_other;
4715 	Elf64_Half st_shndx;
4716 	Elf64_Addr st_value;
4717 	Elf64_Xword st_size;
4718 };
4719 
4720 struct kernfs_root;
4721 
4722 struct kernfs_elem_dir {
4723 	long unsigned int subdirs;
4724 	struct rb_root children;
4725 	struct kernfs_root *root;
4726 	long unsigned int rev;
4727 };
4728 
4729 struct kernfs_elem_symlink {
4730 	struct kernfs_node *target_kn;
4731 };
4732 
4733 struct kernfs_ops;
4734 
4735 struct kernfs_open_node;
4736 
4737 struct kernfs_elem_attr {
4738 	const struct kernfs_ops *ops;
4739 	struct kernfs_open_node *open;
4740 	loff_t size;
4741 	struct kernfs_node *notify_next;
4742 };
4743 
4744 struct kernfs_iattrs;
4745 
4746 struct kernfs_node {
4747 	atomic_t count;
4748 	atomic_t active;
4749 	struct kernfs_node *parent;
4750 	const char *name;
4751 	struct rb_node rb;
4752 	const void *ns;
4753 	unsigned int hash;
4754 	union {
4755 		struct kernfs_elem_dir dir;
4756 		struct kernfs_elem_symlink symlink;
4757 		struct kernfs_elem_attr attr;
4758 	};
4759 	void *priv;
4760 	u64 id;
4761 	short unsigned int flags;
4762 	umode_t mode;
4763 	struct kernfs_iattrs *iattr;
4764 };
4765 
4766 struct kernfs_open_file;
4767 
4768 struct kernfs_ops {
4769 	int (*open)(struct kernfs_open_file *);
4770 	void (*release)(struct kernfs_open_file *);
4771 	int (*seq_show)(struct seq_file *, void *);
4772 	void * (*seq_start)(struct seq_file *, loff_t *);
4773 	void * (*seq_next)(struct seq_file *, void *, loff_t *);
4774 	void (*seq_stop)(struct seq_file *, void *);
4775 	ssize_t (*read)(struct kernfs_open_file *, char *, size_t, loff_t);
4776 	size_t atomic_write_len;
4777 	bool prealloc;
4778 	ssize_t (*write)(struct kernfs_open_file *, char *, size_t, loff_t);
4779 	__poll_t (*poll)(struct kernfs_open_file *, struct poll_table_struct *);
4780 	int (*mmap)(struct kernfs_open_file *, struct vm_area_struct *);
4781 };
4782 
4783 struct kernfs_open_file {
4784 	struct kernfs_node *kn;
4785 	struct file *file;
4786 	struct seq_file *seq_file;
4787 	void *priv;
4788 	struct mutex mutex;
4789 	struct mutex prealloc_mutex;
4790 	int event;
4791 	struct list_head list;
4792 	char *prealloc_buf;
4793 	size_t atomic_write_len;
4794 	bool mmapped: 1;
4795 	bool released: 1;
4796 	const struct vm_operations_struct *vm_ops;
4797 };
4798 
4799 enum kobj_ns_type {
4800 	KOBJ_NS_TYPE_NONE = 0,
4801 	KOBJ_NS_TYPE_NET = 1,
4802 	KOBJ_NS_TYPES = 2,
4803 };
4804 
4805 struct sock;
4806 
4807 struct kobj_ns_type_operations {
4808 	enum kobj_ns_type type;
4809 	bool (*current_may_mount)();
4810 	void * (*grab_current_ns)();
4811 	const void * (*netlink_ns)(struct sock *);
4812 	const void * (*initial_ns)();
4813 	void (*drop_ns)(void *);
4814 };
4815 
4816 struct attribute {
4817 	const char *name;
4818 	umode_t mode;
4819 };
4820 
4821 struct bin_attribute;
4822 
4823 struct attribute_group {
4824 	const char *name;
4825 	umode_t (*is_visible)(struct kobject *, struct attribute *, int);
4826 	umode_t (*is_bin_visible)(struct kobject *, struct bin_attribute *, int);
4827 	struct attribute **attrs;
4828 	struct bin_attribute **bin_attrs;
4829 };
4830 
4831 struct bin_attribute {
4832 	struct attribute attr;
4833 	size_t size;
4834 	void *private;
4835 	struct address_space * (*f_mapping)();
4836 	ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
4837 	ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
4838 	int (*mmap)(struct file *, struct kobject *, struct bin_attribute *, struct vm_area_struct *);
4839 };
4840 
4841 struct sysfs_ops {
4842 	ssize_t (*show)(struct kobject *, struct attribute *, char *);
4843 	ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t);
4844 };
4845 
4846 struct kset_uevent_ops;
4847 
4848 struct kset {
4849 	struct list_head list;
4850 	spinlock_t list_lock;
4851 	struct kobject kobj;
4852 	const struct kset_uevent_ops *uevent_ops;
4853 };
4854 
4855 struct kobj_type {
4856 	void (*release)(struct kobject *);
4857 	const struct sysfs_ops *sysfs_ops;
4858 	const struct attribute_group **default_groups;
4859 	const struct kobj_ns_type_operations * (*child_ns_type)(struct kobject *);
4860 	const void * (*namespace)(struct kobject *);
4861 	void (*get_ownership)(struct kobject *, kuid_t *, kgid_t *);
4862 };
4863 
4864 struct kobj_uevent_env {
4865 	char *argv[3];
4866 	char *envp[64];
4867 	int envp_idx;
4868 	char buf[2048];
4869 	int buflen;
4870 };
4871 
4872 struct kset_uevent_ops {
4873 	int (* const filter)(struct kobject *);
4874 	const char * (* const name)(struct kobject *);
4875 	int (* const uevent)(struct kobject *, struct kobj_uevent_env *);
4876 };
4877 
4878 enum {
4879 	__SD_BALANCE_NEWIDLE = 0,
4880 	__SD_BALANCE_EXEC = 1,
4881 	__SD_BALANCE_FORK = 2,
4882 	__SD_BALANCE_WAKE = 3,
4883 	__SD_WAKE_AFFINE = 4,
4884 	__SD_ASYM_CPUCAPACITY = 5,
4885 	__SD_ASYM_CPUCAPACITY_FULL = 6,
4886 	__SD_SHARE_CPUCAPACITY = 7,
4887 	__SD_SHARE_PKG_RESOURCES = 8,
4888 	__SD_SERIALIZE = 9,
4889 	__SD_ASYM_PACKING = 10,
4890 	__SD_PREFER_SIBLING = 11,
4891 	__SD_OVERLAP = 12,
4892 	__SD_NUMA = 13,
4893 	__SD_FLAG_CNT = 14,
4894 };
4895 
4896 struct pm_message {
4897 	int event;
4898 };
4899 
4900 typedef struct pm_message pm_message_t;
4901 
4902 struct dev_pm_ops {
4903 	int (*prepare)(struct device *);
4904 	void (*complete)(struct device *);
4905 	int (*suspend)(struct device *);
4906 	int (*resume)(struct device *);
4907 	int (*freeze)(struct device *);
4908 	int (*thaw)(struct device *);
4909 	int (*poweroff)(struct device *);
4910 	int (*restore)(struct device *);
4911 	int (*suspend_late)(struct device *);
4912 	int (*resume_early)(struct device *);
4913 	int (*freeze_late)(struct device *);
4914 	int (*thaw_early)(struct device *);
4915 	int (*poweroff_late)(struct device *);
4916 	int (*restore_early)(struct device *);
4917 	int (*suspend_noirq)(struct device *);
4918 	int (*resume_noirq)(struct device *);
4919 	int (*freeze_noirq)(struct device *);
4920 	int (*thaw_noirq)(struct device *);
4921 	int (*poweroff_noirq)(struct device *);
4922 	int (*restore_noirq)(struct device *);
4923 	int (*runtime_suspend)(struct device *);
4924 	int (*runtime_resume)(struct device *);
4925 	int (*runtime_idle)(struct device *);
4926 };
4927 
4928 enum dl_dev_state {
4929 	DL_DEV_NO_DRIVER = 0,
4930 	DL_DEV_PROBING = 1,
4931 	DL_DEV_DRIVER_BOUND = 2,
4932 	DL_DEV_UNBINDING = 3,
4933 };
4934 
4935 struct dev_links_info {
4936 	struct list_head suppliers;
4937 	struct list_head consumers;
4938 	struct list_head defer_sync;
4939 	enum dl_dev_state status;
4940 };
4941 
4942 enum rpm_request {
4943 	RPM_REQ_NONE = 0,
4944 	RPM_REQ_IDLE = 1,
4945 	RPM_REQ_SUSPEND = 2,
4946 	RPM_REQ_AUTOSUSPEND = 3,
4947 	RPM_REQ_RESUME = 4,
4948 };
4949 
4950 enum rpm_status {
4951 	RPM_INVALID = -1,
4952 	RPM_ACTIVE = 0,
4953 	RPM_RESUMING = 1,
4954 	RPM_SUSPENDED = 2,
4955 	RPM_SUSPENDING = 3,
4956 };
4957 
4958 struct wakeup_source;
4959 
4960 struct wake_irq;
4961 
4962 struct pm_subsys_data;
4963 
4964 struct dev_pm_qos;
4965 
4966 struct dev_pm_info {
4967 	pm_message_t power_state;
4968 	unsigned int can_wakeup: 1;
4969 	unsigned int async_suspend: 1;
4970 	bool in_dpm_list: 1;
4971 	bool is_prepared: 1;
4972 	bool is_suspended: 1;
4973 	bool is_noirq_suspended: 1;
4974 	bool is_late_suspended: 1;
4975 	bool no_pm: 1;
4976 	bool early_init: 1;
4977 	bool direct_complete: 1;
4978 	u32 driver_flags;
4979 	spinlock_t lock;
4980 	struct list_head entry;
4981 	struct completion completion;
4982 	struct wakeup_source *wakeup;
4983 	bool wakeup_path: 1;
4984 	bool syscore: 1;
4985 	bool no_pm_callbacks: 1;
4986 	unsigned int must_resume: 1;
4987 	unsigned int may_skip_resume: 1;
4988 	struct hrtimer suspend_timer;
4989 	u64 timer_expires;
4990 	struct work_struct work;
4991 	wait_queue_head_t wait_queue;
4992 	struct wake_irq *wakeirq;
4993 	atomic_t usage_count;
4994 	atomic_t child_count;
4995 	unsigned int disable_depth: 3;
4996 	unsigned int idle_notification: 1;
4997 	unsigned int request_pending: 1;
4998 	unsigned int deferred_resume: 1;
4999 	unsigned int needs_force_resume: 1;
5000 	unsigned int runtime_auto: 1;
5001 	bool ignore_children: 1;
5002 	unsigned int no_callbacks: 1;
5003 	unsigned int irq_safe: 1;
5004 	unsigned int use_autosuspend: 1;
5005 	unsigned int timer_autosuspends: 1;
5006 	unsigned int memalloc_noio: 1;
5007 	unsigned int links_count;
5008 	enum rpm_request request;
5009 	enum rpm_status runtime_status;
5010 	enum rpm_status last_status;
5011 	int runtime_error;
5012 	int autosuspend_delay;
5013 	u64 last_busy;
5014 	u64 active_time;
5015 	u64 suspended_time;
5016 	u64 accounting_timestamp;
5017 	struct pm_subsys_data *subsys_data;
5018 	void (*set_latency_tolerance)(struct device *, s32);
5019 	struct dev_pm_qos *qos;
5020 };
5021 
5022 struct irq_domain;
5023 
5024 struct msi_device_data;
5025 
5026 struct dev_msi_info {
5027 	struct irq_domain *domain;
5028 	struct msi_device_data *data;
5029 };
5030 
5031 struct iommu_table;
5032 
5033 struct pci_dn;
5034 
5035 struct eeh_dev;
5036 
5037 struct cxl_context;
5038 
5039 struct dev_archdata {
5040 	dma_addr_t dma_offset;
5041 	struct iommu_table *iommu_table_base;
5042 	struct pci_dn *pci_data;
5043 	struct eeh_dev *edev;
5044 	struct cxl_context *cxl_ctx;
5045 };
5046 
5047 enum device_removable {
5048 	DEVICE_REMOVABLE_NOT_SUPPORTED = 0,
5049 	DEVICE_REMOVABLE_UNKNOWN = 1,
5050 	DEVICE_FIXED = 2,
5051 	DEVICE_REMOVABLE = 3,
5052 };
5053 
5054 struct device_private;
5055 
5056 struct device_type;
5057 
5058 struct bus_type;
5059 
5060 struct device_driver;
5061 
5062 struct dev_pm_domain;
5063 
5064 struct dma_map_ops;
5065 
5066 struct bus_dma_region;
5067 
5068 struct device_dma_parameters;
5069 
5070 struct dma_coherent_mem;
5071 
5072 struct io_tlb_mem;
5073 
5074 struct device_node;
5075 
5076 struct fwnode_handle;
5077 
5078 struct class;
5079 
5080 struct iommu_group;
5081 
5082 struct dev_iommu;
5083 
5084 struct device_physical_location;
5085 
5086 struct device {
5087 	struct kobject kobj;
5088 	struct device *parent;
5089 	struct device_private *p;
5090 	const char *init_name;
5091 	const struct device_type *type;
5092 	struct bus_type *bus;
5093 	struct device_driver *driver;
5094 	void *platform_data;
5095 	void *driver_data;
5096 	struct mutex mutex;
5097 	struct dev_links_info links;
5098 	struct dev_pm_info power;
5099 	struct dev_pm_domain *pm_domain;
5100 	struct dev_msi_info msi;
5101 	const struct dma_map_ops *dma_ops;
5102 	u64 *dma_mask;
5103 	u64 coherent_dma_mask;
5104 	u64 bus_dma_limit;
5105 	const struct bus_dma_region *dma_range_map;
5106 	struct device_dma_parameters *dma_parms;
5107 	struct list_head dma_pools;
5108 	struct dma_coherent_mem *dma_mem;
5109 	struct io_tlb_mem *dma_io_tlb_mem;
5110 	struct dev_archdata archdata;
5111 	struct device_node *of_node;
5112 	struct fwnode_handle *fwnode;
5113 	int numa_node;
5114 	dev_t devt;
5115 	u32 id;
5116 	spinlock_t devres_lock;
5117 	struct list_head devres_head;
5118 	struct class *class;
5119 	const struct attribute_group **groups;
5120 	void (*release)(struct device *);
5121 	struct iommu_group *iommu_group;
5122 	struct dev_iommu *iommu;
5123 	struct device_physical_location *physical_location;
5124 	enum device_removable removable;
5125 	bool offline_disabled: 1;
5126 	bool offline: 1;
5127 	bool of_node_reused: 1;
5128 	bool state_synced: 1;
5129 	bool can_match: 1;
5130 	bool dma_ops_bypass: 1;
5131 };
5132 
5133 struct pm_subsys_data {
5134 	spinlock_t lock;
5135 	unsigned int refcount;
5136 };
5137 
5138 struct wakeup_source {
5139 	const char *name;
5140 	int id;
5141 	struct list_head entry;
5142 	spinlock_t lock;
5143 	struct wake_irq *wakeirq;
5144 	struct timer_list timer;
5145 	long unsigned int timer_expires;
5146 	ktime_t total_time;
5147 	ktime_t max_time;
5148 	ktime_t last_time;
5149 	ktime_t start_prevent_time;
5150 	ktime_t prevent_sleep_time;
5151 	long unsigned int event_count;
5152 	long unsigned int active_count;
5153 	long unsigned int relax_count;
5154 	long unsigned int expire_count;
5155 	long unsigned int wakeup_count;
5156 	struct device *dev;
5157 	bool active: 1;
5158 	bool autosleep_enabled: 1;
5159 };
5160 
5161 struct dev_pm_domain {
5162 	struct dev_pm_ops ops;
5163 	int (*start)(struct device *);
5164 	void (*detach)(struct device *, bool);
5165 	int (*activate)(struct device *);
5166 	void (*sync)(struct device *);
5167 	void (*dismiss)(struct device *);
5168 };
5169 
5170 struct iommu_ops;
5171 
5172 struct subsys_private;
5173 
5174 struct bus_type {
5175 	const char *name;
5176 	const char *dev_name;
5177 	struct device *dev_root;
5178 	const struct attribute_group **bus_groups;
5179 	const struct attribute_group **dev_groups;
5180 	const struct attribute_group **drv_groups;
5181 	int (*match)(struct device *, struct device_driver *);
5182 	int (*uevent)(struct device *, struct kobj_uevent_env *);
5183 	int (*probe)(struct device *);
5184 	void (*sync_state)(struct device *);
5185 	void (*remove)(struct device *);
5186 	void (*shutdown)(struct device *);
5187 	int (*online)(struct device *);
5188 	int (*offline)(struct device *);
5189 	int (*suspend)(struct device *, pm_message_t);
5190 	int (*resume)(struct device *);
5191 	int (*num_vf)(struct device *);
5192 	int (*dma_configure)(struct device *);
5193 	void (*dma_cleanup)(struct device *);
5194 	const struct dev_pm_ops *pm;
5195 	const struct iommu_ops *iommu_ops;
5196 	struct subsys_private *p;
5197 	struct lock_class_key lock_key;
5198 	bool need_parent_lock;
5199 };
5200 
5201 enum probe_type {
5202 	PROBE_DEFAULT_STRATEGY = 0,
5203 	PROBE_PREFER_ASYNCHRONOUS = 1,
5204 	PROBE_FORCE_SYNCHRONOUS = 2,
5205 };
5206 
5207 struct of_device_id;
5208 
5209 struct acpi_device_id;
5210 
5211 struct driver_private;
5212 
5213 struct device_driver {
5214 	const char *name;
5215 	struct bus_type *bus;
5216 	struct module *owner;
5217 	const char *mod_name;
5218 	bool suppress_bind_attrs;
5219 	enum probe_type probe_type;
5220 	const struct of_device_id *of_match_table;
5221 	const struct acpi_device_id *acpi_match_table;
5222 	int (*probe)(struct device *);
5223 	void (*sync_state)(struct device *);
5224 	int (*remove)(struct device *);
5225 	void (*shutdown)(struct device *);
5226 	int (*suspend)(struct device *, pm_message_t);
5227 	int (*resume)(struct device *);
5228 	const struct attribute_group **groups;
5229 	const struct attribute_group **dev_groups;
5230 	const struct dev_pm_ops *pm;
5231 	void (*coredump)(struct device *);
5232 	struct driver_private *p;
5233 };
5234 
5235 enum iommu_cap {
5236 	IOMMU_CAP_CACHE_COHERENCY = 0,
5237 	IOMMU_CAP_INTR_REMAP = 1,
5238 	IOMMU_CAP_NOEXEC = 2,
5239 	IOMMU_CAP_PRE_BOOT_PROTECTION = 3,
5240 };
5241 
5242 enum iommu_dev_features {
5243 	IOMMU_DEV_FEAT_SVA = 0,
5244 	IOMMU_DEV_FEAT_IOPF = 1,
5245 };
5246 
5247 struct iommu_domain;
5248 
5249 struct iommu_device;
5250 
5251 struct of_phandle_args;
5252 
5253 struct iommu_sva;
5254 
5255 struct iommu_fault_event;
5256 
5257 struct iommu_page_response;
5258 
5259 struct iommu_domain_ops;
5260 
5261 struct iommu_ops {
5262 	bool (*capable)(enum iommu_cap);
5263 	struct iommu_domain * (*domain_alloc)(unsigned int);
5264 	struct iommu_device * (*probe_device)(struct device *);
5265 	void (*release_device)(struct device *);
5266 	void (*probe_finalize)(struct device *);
5267 	struct iommu_group * (*device_group)(struct device *);
5268 	void (*get_resv_regions)(struct device *, struct list_head *);
5269 	int (*of_xlate)(struct device *, struct of_phandle_args *);
5270 	bool (*is_attach_deferred)(struct device *);
5271 	int (*dev_enable_feat)(struct device *, enum iommu_dev_features);
5272 	int (*dev_disable_feat)(struct device *, enum iommu_dev_features);
5273 	struct iommu_sva * (*sva_bind)(struct device *, struct mm_struct *, void *);
5274 	void (*sva_unbind)(struct iommu_sva *);
5275 	u32 (*sva_get_pasid)(struct iommu_sva *);
5276 	int (*page_response)(struct device *, struct iommu_fault_event *, struct iommu_page_response *);
5277 	int (*def_domain_type)(struct device *);
5278 	const struct iommu_domain_ops *default_domain_ops;
5279 	long unsigned int pgsize_bitmap;
5280 	struct module *owner;
5281 };
5282 
5283 struct device_type {
5284 	const char *name;
5285 	const struct attribute_group **groups;
5286 	int (*uevent)(struct device *, struct kobj_uevent_env *);
5287 	char * (*devnode)(struct device *, umode_t *, kuid_t *, kgid_t *);
5288 	void (*release)(struct device *);
5289 	const struct dev_pm_ops *pm;
5290 };
5291 
5292 struct class {
5293 	const char *name;
5294 	struct module *owner;
5295 	const struct attribute_group **class_groups;
5296 	const struct attribute_group **dev_groups;
5297 	struct kobject *dev_kobj;
5298 	int (*dev_uevent)(struct device *, struct kobj_uevent_env *);
5299 	char * (*devnode)(struct device *, umode_t *);
5300 	void (*class_release)(struct class *);
5301 	void (*dev_release)(struct device *);
5302 	int (*shutdown_pre)(struct device *);
5303 	const struct kobj_ns_type_operations *ns_type;
5304 	const void * (*namespace)(struct device *);
5305 	void (*get_ownership)(struct device *, kuid_t *, kgid_t *);
5306 	const struct dev_pm_ops *pm;
5307 	struct subsys_private *p;
5308 };
5309 
5310 struct kernel_param_ops {
5311 	unsigned int flags;
5312 	int (*set)(const char *, const struct kernel_param *);
5313 	int (*get)(char *, const struct kernel_param *);
5314 	void (*free)(void *);
5315 };
5316 
5317 struct kparam_string;
5318 
5319 struct kparam_array;
5320 
5321 struct kernel_param {
5322 	const char *name;
5323 	struct module *mod;
5324 	const struct kernel_param_ops *ops;
5325 	const u16 perm;
5326 	s8 level;
5327 	u8 flags;
5328 	union {
5329 		void *arg;
5330 		const struct kparam_string *str;
5331 		const struct kparam_array *arr;
5332 	};
5333 };
5334 
5335 struct kparam_string {
5336 	unsigned int maxlen;
5337 	char *string;
5338 };
5339 
5340 struct kparam_array {
5341 	unsigned int max;
5342 	unsigned int elemsize;
5343 	unsigned int *num;
5344 	const struct kernel_param_ops *ops;
5345 	void *elem;
5346 };
5347 
5348 struct error_injection_entry {
5349 	long unsigned int addr;
5350 	int etype;
5351 };
5352 
5353 struct module_attribute {
5354 	struct attribute attr;
5355 	ssize_t (*show)(struct module_attribute *, struct module_kobject *, char *);
5356 	ssize_t (*store)(struct module_attribute *, struct module_kobject *, const char *, size_t);
5357 	void (*setup)(struct module *, const char *);
5358 	int (*test)(struct module *);
5359 	void (*free)(struct module *);
5360 };
5361 
5362 struct trace_event_functions;
5363 
5364 struct trace_event {
5365 	struct hlist_node node;
5366 	struct list_head list;
5367 	int type;
5368 	struct trace_event_functions *funcs;
5369 };
5370 
5371 struct trace_event_class;
5372 
5373 struct trace_event_call {
5374 	struct list_head list;
5375 	struct trace_event_class *class;
5376 	union {
5377 		char *name;
5378 		struct tracepoint *tp;
5379 	};
5380 	struct trace_event event;
5381 	char *print_fmt;
5382 	struct event_filter *filter;
5383 	union {
5384 		void *module;
5385 		atomic_t refcnt;
5386 	};
5387 	void *data;
5388 	int flags;
5389 	int perf_refcount;
5390 	struct hlist_head *perf_events;
5391 	struct bpf_prog_array *prog_array;
5392 	int (*perf_perm)(struct trace_event_call *, struct perf_event *);
5393 };
5394 
5395 struct trace_eval_map {
5396 	const char *system;
5397 	const char *eval_string;
5398 	long unsigned int eval_value;
5399 };
5400 
5401 struct of_device_id {
5402 	char name[32];
5403 	char type[32];
5404 	char compatible[128];
5405 	const void *data;
5406 };
5407 
5408 typedef long unsigned int kernel_ulong_t;
5409 
5410 struct acpi_device_id {
5411 	__u8 id[16];
5412 	kernel_ulong_t driver_data;
5413 	__u32 cls;
5414 	__u32 cls_msk;
5415 };
5416 
5417 struct pci_controller;
5418 
5419 struct eeh_pe;
5420 
5421 struct pci_dev;
5422 
5423 struct eeh_dev {
5424 	int mode;
5425 	int bdfn;
5426 	struct pci_controller *controller;
5427 	int pe_config_addr;
5428 	u32 config_space[16];
5429 	int pcix_cap;
5430 	int pcie_cap;
5431 	int aer_cap;
5432 	int af_cap;
5433 	struct eeh_pe *pe;
5434 	struct list_head entry;
5435 	struct list_head rmv_entry;
5436 	struct pci_dn *pdn;
5437 	struct pci_dev *pdev;
5438 	bool in_error;
5439 	struct pci_dev *physfn;
5440 	int vf_index;
5441 };
5442 
5443 struct device_dma_parameters {
5444 	unsigned int max_segment_size;
5445 	unsigned int min_align_mask;
5446 	long unsigned int segment_boundary_mask;
5447 };
5448 
5449 enum device_physical_location_panel {
5450 	DEVICE_PANEL_TOP = 0,
5451 	DEVICE_PANEL_BOTTOM = 1,
5452 	DEVICE_PANEL_LEFT = 2,
5453 	DEVICE_PANEL_RIGHT = 3,
5454 	DEVICE_PANEL_FRONT = 4,
5455 	DEVICE_PANEL_BACK = 5,
5456 	DEVICE_PANEL_UNKNOWN = 6,
5457 };
5458 
5459 enum device_physical_location_vertical_position {
5460 	DEVICE_VERT_POS_UPPER = 0,
5461 	DEVICE_VERT_POS_CENTER = 1,
5462 	DEVICE_VERT_POS_LOWER = 2,
5463 };
5464 
5465 enum device_physical_location_horizontal_position {
5466 	DEVICE_HORI_POS_LEFT = 0,
5467 	DEVICE_HORI_POS_CENTER = 1,
5468 	DEVICE_HORI_POS_RIGHT = 2,
5469 };
5470 
5471 struct device_physical_location {
5472 	enum device_physical_location_panel panel;
5473 	enum device_physical_location_vertical_position vertical_position;
5474 	enum device_physical_location_horizontal_position horizontal_position;
5475 	bool dock;
5476 	bool lid;
5477 };
5478 
5479 enum dma_data_direction {
5480 	DMA_BIDIRECTIONAL = 0,
5481 	DMA_TO_DEVICE = 1,
5482 	DMA_FROM_DEVICE = 2,
5483 	DMA_NONE = 3,
5484 };
5485 
5486 struct sg_table;
5487 
5488 struct scatterlist;
5489 
5490 struct dma_map_ops {
5491 	unsigned int flags;
5492 	void * (*alloc)(struct device *, size_t, dma_addr_t *, gfp_t, long unsigned int);
5493 	void (*free)(struct device *, size_t, void *, dma_addr_t, long unsigned int);
5494 	struct page * (*alloc_pages)(struct device *, size_t, dma_addr_t *, enum dma_data_direction, gfp_t);
5495 	void (*free_pages)(struct device *, size_t, struct page *, dma_addr_t, enum dma_data_direction);
5496 	struct sg_table * (*alloc_noncontiguous)(struct device *, size_t, enum dma_data_direction, gfp_t, long unsigned int);
5497 	void (*free_noncontiguous)(struct device *, size_t, struct sg_table *, enum dma_data_direction);
5498 	int (*mmap)(struct device *, struct vm_area_struct *, void *, dma_addr_t, size_t, long unsigned int);
5499 	int (*get_sgtable)(struct device *, struct sg_table *, void *, dma_addr_t, size_t, long unsigned int);
5500 	dma_addr_t (*map_page)(struct device *, struct page *, long unsigned int, size_t, enum dma_data_direction, long unsigned int);
5501 	void (*unmap_page)(struct device *, dma_addr_t, size_t, enum dma_data_direction, long unsigned int);
5502 	int (*map_sg)(struct device *, struct scatterlist *, int, enum dma_data_direction, long unsigned int);
5503 	void (*unmap_sg)(struct device *, struct scatterlist *, int, enum dma_data_direction, long unsigned int);
5504 	dma_addr_t (*map_resource)(struct device *, phys_addr_t, size_t, enum dma_data_direction, long unsigned int);
5505 	void (*unmap_resource)(struct device *, dma_addr_t, size_t, enum dma_data_direction, long unsigned int);
5506 	void (*sync_single_for_cpu)(struct device *, dma_addr_t, size_t, enum dma_data_direction);
5507 	void (*sync_single_for_device)(struct device *, dma_addr_t, size_t, enum dma_data_direction);
5508 	void (*sync_sg_for_cpu)(struct device *, struct scatterlist *, int, enum dma_data_direction);
5509 	void (*sync_sg_for_device)(struct device *, struct scatterlist *, int, enum dma_data_direction);
5510 	void (*cache_sync)(struct device *, void *, size_t, enum dma_data_direction);
5511 	int (*dma_supported)(struct device *, u64);
5512 	u64 (*get_required_mask)(struct device *);
5513 	size_t (*max_mapping_size)(struct device *);
5514 	size_t (*opt_mapping_size)();
5515 	long unsigned int (*get_merge_boundary)(struct device *);
5516 };
5517 
5518 struct bus_dma_region {
5519 	phys_addr_t cpu_start;
5520 	dma_addr_t dma_start;
5521 	u64 size;
5522 	u64 offset;
5523 };
5524 
5525 struct fwnode_operations;
5526 
5527 struct fwnode_handle {
5528 	struct fwnode_handle *secondary;
5529 	const struct fwnode_operations *ops;
5530 	struct device *dev;
5531 	struct list_head suppliers;
5532 	struct list_head consumers;
5533 	u8 flags;
5534 };
5535 
5536 struct pci_bus;
5537 
5538 struct eeh_pe {
5539 	int type;
5540 	int state;
5541 	int addr;
5542 	struct pci_controller *phb;
5543 	struct pci_bus *bus;
5544 	int check_count;
5545 	int freeze_count;
5546 	time64_t tstamp;
5547 	int false_positives;
5548 	atomic_t pass_dev_cnt;
5549 	struct eeh_pe *parent;
5550 	void *data;
5551 	struct list_head child_list;
5552 	struct list_head child;
5553 	struct list_head edevs;
5554 	long unsigned int stack_trace[64];
5555 	int trace_entries;
5556 };
5557 
5558 enum dev_dma_attr {
5559 	DEV_DMA_NOT_SUPPORTED = 0,
5560 	DEV_DMA_NON_COHERENT = 1,
5561 	DEV_DMA_COHERENT = 2,
5562 };
5563 
5564 struct fwnode_reference_args;
5565 
5566 struct fwnode_endpoint;
5567 
5568 struct fwnode_operations {
5569 	struct fwnode_handle * (*get)(struct fwnode_handle *);
5570 	void (*put)(struct fwnode_handle *);
5571 	bool (*device_is_available)(const struct fwnode_handle *);
5572 	const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
5573 	bool (*device_dma_supported)(const struct fwnode_handle *);
5574 	enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *);
5575 	bool (*property_present)(const struct fwnode_handle *, const char *);
5576 	int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
5577 	int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
5578 	const char * (*get_name)(const struct fwnode_handle *);
5579 	const char * (*get_name_prefix)(const struct fwnode_handle *);
5580 	struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
5581 	struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
5582 	struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
5583 	int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
5584 	struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
5585 	struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
5586 	struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
5587 	int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
5588 	void * (*iomap)(struct fwnode_handle *, int);
5589 	int (*irq_get)(const struct fwnode_handle *, unsigned int);
5590 	int (*add_links)(struct fwnode_handle *);
5591 };
5592 
5593 struct fwnode_endpoint {
5594 	unsigned int port;
5595 	unsigned int id;
5596 	const struct fwnode_handle *local_fwnode;
5597 };
5598 
5599 struct fwnode_reference_args {
5600 	struct fwnode_handle *fwnode;
5601 	unsigned int nargs;
5602 	u64 args[8];
5603 };
5604 
5605 enum {
5606 	UNAME26 = 131072,
5607 	ADDR_NO_RANDOMIZE = 262144,
5608 	FDPIC_FUNCPTRS = 524288,
5609 	MMAP_PAGE_ZERO = 1048576,
5610 	ADDR_COMPAT_LAYOUT = 2097152,
5611 	READ_IMPLIES_EXEC = 4194304,
5612 	ADDR_LIMIT_32BIT = 8388608,
5613 	SHORT_INODE = 16777216,
5614 	WHOLE_SECONDS = 33554432,
5615 	STICKY_TIMEOUTS = 67108864,
5616 	ADDR_LIMIT_3GB = 134217728,
5617 };
5618 
5619 struct seq_operations {
5620 	void * (*start)(struct seq_file *, loff_t *);
5621 	void (*stop)(struct seq_file *, void *);
5622 	void * (*next)(struct seq_file *, void *, loff_t *);
5623 	int (*show)(struct seq_file *, void *);
5624 };
5625 
5626 struct seq_buf {
5627 	char *buffer;
5628 	size_t size;
5629 	size_t len;
5630 	loff_t readpos;
5631 };
5632 
5633 struct trace_seq {
5634 	char buffer[65536];
5635 	struct seq_buf seq;
5636 	int full;
5637 };
5638 
5639 enum perf_hw_cache_id {
5640 	PERF_COUNT_HW_CACHE_L1D = 0,
5641 	PERF_COUNT_HW_CACHE_L1I = 1,
5642 	PERF_COUNT_HW_CACHE_LL = 2,
5643 	PERF_COUNT_HW_CACHE_DTLB = 3,
5644 	PERF_COUNT_HW_CACHE_ITLB = 4,
5645 	PERF_COUNT_HW_CACHE_BPU = 5,
5646 	PERF_COUNT_HW_CACHE_NODE = 6,
5647 	PERF_COUNT_HW_CACHE_MAX = 7,
5648 };
5649 
5650 enum perf_hw_cache_op_id {
5651 	PERF_COUNT_HW_CACHE_OP_READ = 0,
5652 	PERF_COUNT_HW_CACHE_OP_WRITE = 1,
5653 	PERF_COUNT_HW_CACHE_OP_PREFETCH = 2,
5654 	PERF_COUNT_HW_CACHE_OP_MAX = 3,
5655 };
5656 
5657 enum perf_hw_cache_op_result_id {
5658 	PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0,
5659 	PERF_COUNT_HW_CACHE_RESULT_MISS = 1,
5660 	PERF_COUNT_HW_CACHE_RESULT_MAX = 2,
5661 };
5662 
5663 enum perf_sw_ids {
5664 	PERF_COUNT_SW_CPU_CLOCK = 0,
5665 	PERF_COUNT_SW_TASK_CLOCK = 1,
5666 	PERF_COUNT_SW_PAGE_FAULTS = 2,
5667 	PERF_COUNT_SW_CONTEXT_SWITCHES = 3,
5668 	PERF_COUNT_SW_CPU_MIGRATIONS = 4,
5669 	PERF_COUNT_SW_PAGE_FAULTS_MIN = 5,
5670 	PERF_COUNT_SW_PAGE_FAULTS_MAJ = 6,
5671 	PERF_COUNT_SW_ALIGNMENT_FAULTS = 7,
5672 	PERF_COUNT_SW_EMULATION_FAULTS = 8,
5673 	PERF_COUNT_SW_DUMMY = 9,
5674 	PERF_COUNT_SW_BPF_OUTPUT = 10,
5675 	PERF_COUNT_SW_CGROUP_SWITCHES = 11,
5676 	PERF_COUNT_SW_MAX = 12,
5677 };
5678 
5679 enum perf_branch_sample_type_shift {
5680 	PERF_SAMPLE_BRANCH_USER_SHIFT = 0,
5681 	PERF_SAMPLE_BRANCH_KERNEL_SHIFT = 1,
5682 	PERF_SAMPLE_BRANCH_HV_SHIFT = 2,
5683 	PERF_SAMPLE_BRANCH_ANY_SHIFT = 3,
5684 	PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT = 4,
5685 	PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT = 5,
5686 	PERF_SAMPLE_BRANCH_IND_CALL_SHIFT = 6,
5687 	PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT = 7,
5688 	PERF_SAMPLE_BRANCH_IN_TX_SHIFT = 8,
5689 	PERF_SAMPLE_BRANCH_NO_TX_SHIFT = 9,
5690 	PERF_SAMPLE_BRANCH_COND_SHIFT = 10,
5691 	PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 11,
5692 	PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT = 12,
5693 	PERF_SAMPLE_BRANCH_CALL_SHIFT = 13,
5694 	PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT = 14,
5695 	PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT = 15,
5696 	PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT = 16,
5697 	PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT = 17,
5698 	PERF_SAMPLE_BRANCH_MAX_SHIFT = 18,
5699 };
5700 
5701 union perf_mem_data_src {
5702 	__u64 val;
5703 	struct {
5704 		__u64 mem_op: 5;
5705 		__u64 mem_lvl: 14;
5706 		__u64 mem_snoop: 5;
5707 		__u64 mem_lock: 2;
5708 		__u64 mem_dtlb: 7;
5709 		__u64 mem_lvl_num: 4;
5710 		__u64 mem_remote: 1;
5711 		__u64 mem_snoopx: 2;
5712 		__u64 mem_blk: 3;
5713 		__u64 mem_hops: 3;
5714 		__u64 mem_rsvd: 18;
5715 	};
5716 };
5717 
5718 struct perf_branch_entry {
5719 	__u64 from;
5720 	__u64 to;
5721 	__u64 mispred: 1;
5722 	__u64 predicted: 1;
5723 	__u64 in_tx: 1;
5724 	__u64 abort: 1;
5725 	__u64 cycles: 16;
5726 	__u64 type: 4;
5727 	__u64 reserved: 40;
5728 };
5729 
5730 union perf_sample_weight {
5731 	__u64 full;
5732 	struct {
5733 		__u32 var1_dw;
5734 		__u16 var2_w;
5735 		__u16 var3_w;
5736 	};
5737 };
5738 
5739 struct timens_offsets {
5740 	struct timespec64 monotonic;
5741 	struct timespec64 boottime;
5742 };
5743 
5744 struct time_namespace {
5745 	struct user_namespace *user_ns;
5746 	struct ucounts *ucounts;
5747 	struct ns_common ns;
5748 	struct timens_offsets offsets;
5749 	struct page *vvar_page;
5750 	bool frozen_offsets;
5751 };
5752 
5753 struct cgroup_namespace {
5754 	struct ns_common ns;
5755 	struct user_namespace *user_ns;
5756 	struct ucounts *ucounts;
5757 	struct css_set *root_cset;
5758 };
5759 
5760 struct nsset;
5761 
5762 struct proc_ns_operations {
5763 	const char *name;
5764 	const char *real_ns_name;
5765 	int type;
5766 	struct ns_common * (*get)(struct task_struct *);
5767 	void (*put)(struct ns_common *);
5768 	int (*install)(struct nsset *, struct ns_common *);
5769 	struct user_namespace * (*owner)(struct ns_common *);
5770 	struct ns_common * (*get_parent)(struct ns_common *);
5771 };
5772 
5773 enum {
5774 	HI_SOFTIRQ = 0,
5775 	TIMER_SOFTIRQ = 1,
5776 	NET_TX_SOFTIRQ = 2,
5777 	NET_RX_SOFTIRQ = 3,
5778 	BLOCK_SOFTIRQ = 4,
5779 	IRQ_POLL_SOFTIRQ = 5,
5780 	TASKLET_SOFTIRQ = 6,
5781 	SCHED_SOFTIRQ = 7,
5782 	HRTIMER_SOFTIRQ = 8,
5783 	RCU_SOFTIRQ = 9,
5784 	NR_SOFTIRQS = 10,
5785 };
5786 
5787 struct ftrace_regs {
5788 	struct pt_regs regs;
5789 };
5790 
5791 enum {
5792 	TSK_TRACE_FL_TRACE_BIT = 0,
5793 	TSK_TRACE_FL_GRAPH_BIT = 1,
5794 };
5795 
5796 struct perf_regs {
5797 	__u64 abi;
5798 	struct pt_regs *regs;
5799 };
5800 
5801 enum {
5802 	TASKSTATS_CMD_UNSPEC = 0,
5803 	TASKSTATS_CMD_GET = 1,
5804 	TASKSTATS_CMD_NEW = 2,
5805 	__TASKSTATS_CMD_MAX = 3,
5806 };
5807 
5808 enum ucount_type {
5809 	UCOUNT_USER_NAMESPACES = 0,
5810 	UCOUNT_PID_NAMESPACES = 1,
5811 	UCOUNT_UTS_NAMESPACES = 2,
5812 	UCOUNT_IPC_NAMESPACES = 3,
5813 	UCOUNT_NET_NAMESPACES = 4,
5814 	UCOUNT_MNT_NAMESPACES = 5,
5815 	UCOUNT_CGROUP_NAMESPACES = 6,
5816 	UCOUNT_TIME_NAMESPACES = 7,
5817 	UCOUNT_INOTIFY_INSTANCES = 8,
5818 	UCOUNT_INOTIFY_WATCHES = 9,
5819 	UCOUNT_RLIMIT_NPROC = 10,
5820 	UCOUNT_RLIMIT_MSGQUEUE = 11,
5821 	UCOUNT_RLIMIT_SIGPENDING = 12,
5822 	UCOUNT_RLIMIT_MEMLOCK = 13,
5823 	UCOUNT_COUNTS = 14,
5824 };
5825 
5826 enum cpu_usage_stat {
5827 	CPUTIME_USER = 0,
5828 	CPUTIME_NICE = 1,
5829 	CPUTIME_SYSTEM = 2,
5830 	CPUTIME_SOFTIRQ = 3,
5831 	CPUTIME_IRQ = 4,
5832 	CPUTIME_IDLE = 5,
5833 	CPUTIME_IOWAIT = 6,
5834 	CPUTIME_STEAL = 7,
5835 	CPUTIME_GUEST = 8,
5836 	CPUTIME_GUEST_NICE = 9,
5837 	NR_STATS = 10,
5838 };
5839 
5840 struct u64_stats_sync {};
5841 
5842 enum cgroup_bpf_attach_type {
5843 	CGROUP_BPF_ATTACH_TYPE_INVALID = -1,
5844 	CGROUP_INET_INGRESS = 0,
5845 	CGROUP_INET_EGRESS = 1,
5846 	CGROUP_INET_SOCK_CREATE = 2,
5847 	CGROUP_SOCK_OPS = 3,
5848 	CGROUP_DEVICE = 4,
5849 	CGROUP_INET4_BIND = 5,
5850 	CGROUP_INET6_BIND = 6,
5851 	CGROUP_INET4_CONNECT = 7,
5852 	CGROUP_INET6_CONNECT = 8,
5853 	CGROUP_INET4_POST_BIND = 9,
5854 	CGROUP_INET6_POST_BIND = 10,
5855 	CGROUP_UDP4_SENDMSG = 11,
5856 	CGROUP_UDP6_SENDMSG = 12,
5857 	CGROUP_SYSCTL = 13,
5858 	CGROUP_UDP4_RECVMSG = 14,
5859 	CGROUP_UDP6_RECVMSG = 15,
5860 	CGROUP_GETSOCKOPT = 16,
5861 	CGROUP_SETSOCKOPT = 17,
5862 	CGROUP_INET4_GETPEERNAME = 18,
5863 	CGROUP_INET6_GETPEERNAME = 19,
5864 	CGROUP_INET4_GETSOCKNAME = 20,
5865 	CGROUP_INET6_GETSOCKNAME = 21,
5866 	CGROUP_INET_SOCK_RELEASE = 22,
5867 	CGROUP_LSM_START = 23,
5868 	CGROUP_LSM_END = 22,
5869 	MAX_CGROUP_BPF_ATTACH_TYPE = 23,
5870 };
5871 
5872 struct psi_group {};
5873 
5874 enum cgroup_subsys_id {
5875 	cpuset_cgrp_id = 0,
5876 	cpu_cgrp_id = 1,
5877 	cpuacct_cgrp_id = 2,
5878 	memory_cgrp_id = 3,
5879 	devices_cgrp_id = 4,
5880 	freezer_cgrp_id = 5,
5881 	perf_event_cgrp_id = 6,
5882 	CGROUP_SUBSYS_COUNT = 7,
5883 };
5884 
5885 struct cgroup_taskset;
5886 
5887 struct cftype;
5888 
5889 struct cgroup_subsys {
5890 	struct cgroup_subsys_state * (*css_alloc)(struct cgroup_subsys_state *);
5891 	int (*css_online)(struct cgroup_subsys_state *);
5892 	void (*css_offline)(struct cgroup_subsys_state *);
5893 	void (*css_released)(struct cgroup_subsys_state *);
5894 	void (*css_free)(struct cgroup_subsys_state *);
5895 	void (*css_reset)(struct cgroup_subsys_state *);
5896 	void (*css_rstat_flush)(struct cgroup_subsys_state *, int);
5897 	int (*css_extra_stat_show)(struct seq_file *, struct cgroup_subsys_state *);
5898 	int (*can_attach)(struct cgroup_taskset *);
5899 	void (*cancel_attach)(struct cgroup_taskset *);
5900 	void (*attach)(struct cgroup_taskset *);
5901 	void (*post_attach)();
5902 	int (*can_fork)(struct task_struct *, struct css_set *);
5903 	void (*cancel_fork)(struct task_struct *, struct css_set *);
5904 	void (*fork)(struct task_struct *);
5905 	void (*exit)(struct task_struct *);
5906 	void (*release)(struct task_struct *);
5907 	void (*bind)(struct cgroup_subsys_state *);
5908 	bool early_init: 1;
5909 	bool implicit_on_dfl: 1;
5910 	bool threaded: 1;
5911 	int id;
5912 	const char *name;
5913 	const char *legacy_name;
5914 	struct cgroup_root *root;
5915 	struct idr css_idr;
5916 	struct list_head cfts;
5917 	struct cftype *dfl_cftypes;
5918 	struct cftype *legacy_cftypes;
5919 	unsigned int depends_on;
5920 };
5921 
5922 struct cgroup_rstat_cpu {
5923 	struct u64_stats_sync bsync;
5924 	struct cgroup_base_stat bstat;
5925 	struct cgroup_base_stat last_bstat;
5926 	struct cgroup *updated_children;
5927 	struct cgroup *updated_next;
5928 };
5929 
5930 struct cgroup_root {
5931 	struct kernfs_root *kf_root;
5932 	unsigned int subsys_mask;
5933 	int hierarchy_id;
5934 	struct cgroup cgrp;
5935 	u64 cgrp_ancestor_id_storage;
5936 	atomic_t nr_cgrps;
5937 	struct list_head root_list;
5938 	unsigned int flags;
5939 	char release_agent_path[4096];
5940 	char name[64];
5941 };
5942 
5943 struct cftype {
5944 	char name[64];
5945 	long unsigned int private;
5946 	size_t max_write_len;
5947 	unsigned int flags;
5948 	unsigned int file_offset;
5949 	struct cgroup_subsys *ss;
5950 	struct list_head node;
5951 	struct kernfs_ops *kf_ops;
5952 	int (*open)(struct kernfs_open_file *);
5953 	void (*release)(struct kernfs_open_file *);
5954 	u64 (*read_u64)(struct cgroup_subsys_state *, struct cftype *);
5955 	s64 (*read_s64)(struct cgroup_subsys_state *, struct cftype *);
5956 	int (*seq_show)(struct seq_file *, void *);
5957 	void * (*seq_start)(struct seq_file *, loff_t *);
5958 	void * (*seq_next)(struct seq_file *, void *, loff_t *);
5959 	void (*seq_stop)(struct seq_file *, void *);
5960 	int (*write_u64)(struct cgroup_subsys_state *, struct cftype *, u64);
5961 	int (*write_s64)(struct cgroup_subsys_state *, struct cftype *, s64);
5962 	ssize_t (*write)(struct kernfs_open_file *, char *, size_t, loff_t);
5963 	__poll_t (*poll)(struct kernfs_open_file *, struct poll_table_struct *);
5964 };
5965 
5966 struct perf_callchain_entry {
5967 	__u64 nr;
5968 	__u64 ip[0];
5969 };
5970 
5971 typedef long unsigned int (*perf_copy_f)(void *, const void *, long unsigned int, long unsigned int);
5972 
5973 struct perf_raw_frag {
5974 	union {
5975 		struct perf_raw_frag *next;
5976 		long unsigned int pad;
5977 	};
5978 	perf_copy_f copy;
5979 	void *data;
5980 	u32 size;
5981 } __attribute__((packed));
5982 
5983 struct perf_raw_record {
5984 	struct perf_raw_frag frag;
5985 	u32 size;
5986 };
5987 
5988 struct perf_branch_stack {
5989 	__u64 nr;
5990 	__u64 hw_idx;
5991 	struct perf_branch_entry entries[0];
5992 };
5993 
5994 struct perf_cpu_context {
5995 	struct perf_event_context ctx;
5996 	struct perf_event_context *task_ctx;
5997 	int active_oncpu;
5998 	int exclusive;
5999 	raw_spinlock_t hrtimer_lock;
6000 	struct hrtimer hrtimer;
6001 	ktime_t hrtimer_interval;
6002 	unsigned int hrtimer_active;
6003 	struct perf_cgroup *cgrp;
6004 	struct list_head cgrp_cpuctx_entry;
6005 	struct list_head sched_cb_entry;
6006 	int sched_cb_usage;
6007 	int online;
6008 	int heap_size;
6009 	struct perf_event **heap;
6010 	struct perf_event *heap_default[2];
6011 };
6012 
6013 struct perf_output_handle {
6014 	struct perf_event *event;
6015 	struct perf_buffer *rb;
6016 	long unsigned int wakeup;
6017 	long unsigned int size;
6018 	u64 aux_flags;
6019 	union {
6020 		void *addr;
6021 		long unsigned int head;
6022 	};
6023 	int page;
6024 };
6025 
6026 struct perf_addr_filter_range {
6027 	long unsigned int start;
6028 	long unsigned int size;
6029 };
6030 
6031 struct perf_sample_data {
6032 	u64 addr;
6033 	struct perf_raw_record *raw;
6034 	struct perf_branch_stack *br_stack;
6035 	u64 period;
6036 	union perf_sample_weight weight;
6037 	u64 txn;
6038 	union perf_mem_data_src data_src;
6039 	u64 type;
6040 	u64 ip;
6041 	struct {
6042 		u32 pid;
6043 		u32 tid;
6044 	} tid_entry;
6045 	u64 time;
6046 	u64 id;
6047 	u64 stream_id;
6048 	struct {
6049 		u32 cpu;
6050 		u32 reserved;
6051 	} cpu_entry;
6052 	struct perf_callchain_entry *callchain;
6053 	u64 aux_size;
6054 	struct perf_regs regs_user;
6055 	struct perf_regs regs_intr;
6056 	u64 stack_user_size;
6057 	u64 phys_addr;
6058 	u64 cgroup;
6059 	u64 data_page_size;
6060 	u64 code_page_size;
6061 	long: 64;
6062 	long: 64;
6063 	long: 64;
6064 	long: 64;
6065 	long: 64;
6066 	long: 64;
6067 	long: 64;
6068 };
6069 
6070 struct perf_cgroup_info;
6071 
6072 struct perf_cgroup {
6073 	struct cgroup_subsys_state css;
6074 	struct perf_cgroup_info *info;
6075 };
6076 
6077 struct perf_cgroup_info {
6078 	u64 time;
6079 	u64 timestamp;
6080 	u64 timeoffset;
6081 	int active;
6082 };
6083 
6084 struct trace_entry {
6085 	short unsigned int type;
6086 	unsigned char flags;
6087 	unsigned char preempt_count;
6088 	int pid;
6089 };
6090 
6091 struct trace_array;
6092 
6093 struct tracer;
6094 
6095 struct array_buffer;
6096 
6097 struct ring_buffer_iter;
6098 
6099 struct trace_iterator {
6100 	struct trace_array *tr;
6101 	struct tracer *trace;
6102 	struct array_buffer *array_buffer;
6103 	void *private;
6104 	int cpu_file;
6105 	struct mutex mutex;
6106 	struct ring_buffer_iter **buffer_iter;
6107 	long unsigned int iter_flags;
6108 	void *temp;
6109 	unsigned int temp_size;
6110 	char *fmt;
6111 	unsigned int fmt_size;
6112 	struct trace_seq tmp_seq;
6113 	cpumask_var_t started;
6114 	bool snapshot;
6115 	struct trace_seq seq;
6116 	struct trace_entry *ent;
6117 	long unsigned int lost_events;
6118 	int leftover;
6119 	int ent_size;
6120 	int cpu;
6121 	u64 ts;
6122 	loff_t pos;
6123 	long int idx;
6124 };
6125 
6126 enum print_line_t {
6127 	TRACE_TYPE_PARTIAL_LINE = 0,
6128 	TRACE_TYPE_HANDLED = 1,
6129 	TRACE_TYPE_UNHANDLED = 2,
6130 	TRACE_TYPE_NO_CONSUME = 3,
6131 };
6132 
6133 typedef enum print_line_t (*trace_print_func)(struct trace_iterator *, int, struct trace_event *);
6134 
6135 struct trace_event_functions {
6136 	trace_print_func trace;
6137 	trace_print_func raw;
6138 	trace_print_func hex;
6139 	trace_print_func binary;
6140 };
6141 
6142 enum trace_reg {
6143 	TRACE_REG_REGISTER = 0,
6144 	TRACE_REG_UNREGISTER = 1,
6145 	TRACE_REG_PERF_REGISTER = 2,
6146 	TRACE_REG_PERF_UNREGISTER = 3,
6147 	TRACE_REG_PERF_OPEN = 4,
6148 	TRACE_REG_PERF_CLOSE = 5,
6149 	TRACE_REG_PERF_ADD = 6,
6150 	TRACE_REG_PERF_DEL = 7,
6151 };
6152 
6153 struct trace_event_fields {
6154 	const char *type;
6155 	union {
6156 		struct {
6157 			const char *name;
6158 			const int size;
6159 			const int align;
6160 			const int is_signed;
6161 			const int filter_type;
6162 		};
6163 		int (*define_fields)(struct trace_event_call *);
6164 	};
6165 };
6166 
6167 struct trace_event_class {
6168 	const char *system;
6169 	void *probe;
6170 	void *perf_probe;
6171 	int (*reg)(struct trace_event_call *, enum trace_reg, void *);
6172 	struct trace_event_fields *fields_array;
6173 	struct list_head * (*get_fields)(struct trace_event_call *);
6174 	struct list_head fields;
6175 	int (*raw_init)(struct trace_event_call *);
6176 };
6177 
6178 enum {
6179 	TRACE_EVENT_FL_FILTERED_BIT = 0,
6180 	TRACE_EVENT_FL_CAP_ANY_BIT = 1,
6181 	TRACE_EVENT_FL_NO_SET_FILTER_BIT = 2,
6182 	TRACE_EVENT_FL_IGNORE_ENABLE_BIT = 3,
6183 	TRACE_EVENT_FL_TRACEPOINT_BIT = 4,
6184 	TRACE_EVENT_FL_DYNAMIC_BIT = 5,
6185 	TRACE_EVENT_FL_KPROBE_BIT = 6,
6186 	TRACE_EVENT_FL_UPROBE_BIT = 7,
6187 	TRACE_EVENT_FL_EPROBE_BIT = 8,
6188 	TRACE_EVENT_FL_CUSTOM_BIT = 9,
6189 };
6190 
6191 enum {
6192 	EVENT_FILE_FL_ENABLED_BIT = 0,
6193 	EVENT_FILE_FL_RECORDED_CMD_BIT = 1,
6194 	EVENT_FILE_FL_RECORDED_TGID_BIT = 2,
6195 	EVENT_FILE_FL_FILTERED_BIT = 3,
6196 	EVENT_FILE_FL_NO_SET_FILTER_BIT = 4,
6197 	EVENT_FILE_FL_SOFT_MODE_BIT = 5,
6198 	EVENT_FILE_FL_SOFT_DISABLED_BIT = 6,
6199 	EVENT_FILE_FL_TRIGGER_MODE_BIT = 7,
6200 	EVENT_FILE_FL_TRIGGER_COND_BIT = 8,
6201 	EVENT_FILE_FL_PID_FILTER_BIT = 9,
6202 	EVENT_FILE_FL_WAS_ENABLED_BIT = 10,
6203 };
6204 
6205 struct arch_vdso_data {};
6206 
6207 struct vdso_timestamp {
6208 	u64 sec;
6209 	u64 nsec;
6210 };
6211 
6212 struct vdso_data {
6213 	u32 seq;
6214 	s32 clock_mode;
6215 	u64 cycle_last;
6216 	u64 mask;
6217 	u32 mult;
6218 	u32 shift;
6219 	union {
6220 		struct vdso_timestamp basetime[12];
6221 		struct timens_offset offset[12];
6222 	};
6223 	s32 tz_minuteswest;
6224 	s32 tz_dsttime;
6225 	u32 hrtimer_res;
6226 	u32 __unused;
6227 	struct arch_vdso_data arch_data;
6228 };
6229 
6230 struct vdso_arch_data {
6231 	__u8 eye_catcher[16];
6232 	struct {
6233 		__u32 major;
6234 		__u32 minor;
6235 	} version;
6236 	__u32 platform;
6237 	__u32 processor;
6238 	__u64 processorCount;
6239 	__u64 physicalMemorySize;
6240 	__u64 tb_orig_stamp;
6241 	__u64 tb_ticks_per_sec;
6242 	__u64 tb_to_xs;
6243 	__u64 stamp_xsec;
6244 	__u64 tb_update_count;
6245 	__u32 tz_minuteswest;
6246 	__u32 tz_dsttime;
6247 	__u32 dcache_size;
6248 	__u32 dcache_line_size;
6249 	__u32 icache_size;
6250 	__u32 icache_line_size;
6251 	__u32 dcache_block_size;
6252 	__u32 icache_block_size;
6253 	__u32 dcache_log_block_size;
6254 	__u32 icache_log_block_size;
6255 	__u32 syscall_map[15];
6256 	__u32 compat_syscall_map[15];
6257 	struct vdso_data data[2];
6258 };
6259 
6260 enum vvar_pages {
6261 	VVAR_DATA_PAGE_OFFSET = 0,
6262 	VVAR_TIMENS_PAGE_OFFSET = 1,
6263 	VVAR_NR_PAGES = 2,
6264 };
6265 
6266 struct linux_binprm;
6267 
6268 typedef u8 uint8_t;
6269 
6270 typedef phys_addr_t resource_size_t;
6271 
6272 struct obs_kernel_param {
6273 	const char *str;
6274 	int (*setup_func)(char *);
6275 	int early;
6276 };
6277 
6278 enum {
6279 	MMU_FTRS_POSSIBLE = 2113994305,
6280 };
6281 
6282 typedef __be32 rtas_arg_t;
6283 
6284 struct rtas_args {
6285 	__be32 token;
6286 	__be32 nargs;
6287 	__be32 nret;
6288 	rtas_arg_t args[16];
6289 	rtas_arg_t *rets;
6290 };
6291 
6292 struct pci_device_id {
6293 	__u32 vendor;
6294 	__u32 device;
6295 	__u32 subvendor;
6296 	__u32 subdevice;
6297 	__u32 class;
6298 	__u32 class_mask;
6299 	kernel_ulong_t driver_data;
6300 	__u32 override_only;
6301 };
6302 
6303 struct resource {
6304 	resource_size_t start;
6305 	resource_size_t end;
6306 	const char *name;
6307 	long unsigned int flags;
6308 	long unsigned int desc;
6309 	struct resource *parent;
6310 	struct resource *sibling;
6311 	struct resource *child;
6312 };
6313 
6314 enum pcpu_fc {
6315 	PCPU_FC_AUTO = 0,
6316 	PCPU_FC_EMBED = 1,
6317 	PCPU_FC_PAGE = 2,
6318 	PCPU_FC_NR = 3,
6319 };
6320 
6321 enum node_states {
6322 	N_POSSIBLE = 0,
6323 	N_ONLINE = 1,
6324 	N_NORMAL_MEMORY = 2,
6325 	N_HIGH_MEMORY = 2,
6326 	N_MEMORY = 3,
6327 	N_CPU = 4,
6328 	N_GENERIC_INITIATOR = 5,
6329 	NR_NODE_STATES = 6,
6330 };
6331 
6332 enum {
6333 	MM_FILEPAGES = 0,
6334 	MM_ANONPAGES = 1,
6335 	MM_SWAPENTS = 2,
6336 	MM_SHMEMPAGES = 3,
6337 	NR_MM_COUNTERS = 4,
6338 };
6339 
6340 enum migratetype {
6341 	MIGRATE_UNMOVABLE = 0,
6342 	MIGRATE_MOVABLE = 1,
6343 	MIGRATE_RECLAIMABLE = 2,
6344 	MIGRATE_PCPTYPES = 3,
6345 	MIGRATE_HIGHATOMIC = 3,
6346 	MIGRATE_CMA = 4,
6347 	MIGRATE_ISOLATE = 5,
6348 	MIGRATE_TYPES = 6,
6349 };
6350 
6351 enum numa_stat_item {
6352 	NUMA_HIT = 0,
6353 	NUMA_MISS = 1,
6354 	NUMA_FOREIGN = 2,
6355 	NUMA_INTERLEAVE_HIT = 3,
6356 	NUMA_LOCAL = 4,
6357 	NUMA_OTHER = 5,
6358 	NR_VM_NUMA_EVENT_ITEMS = 6,
6359 };
6360 
6361 enum zone_stat_item {
6362 	NR_FREE_PAGES = 0,
6363 	NR_ZONE_LRU_BASE = 1,
6364 	NR_ZONE_INACTIVE_ANON = 1,
6365 	NR_ZONE_ACTIVE_ANON = 2,
6366 	NR_ZONE_INACTIVE_FILE = 3,
6367 	NR_ZONE_ACTIVE_FILE = 4,
6368 	NR_ZONE_UNEVICTABLE = 5,
6369 	NR_ZONE_WRITE_PENDING = 6,
6370 	NR_MLOCK = 7,
6371 	NR_BOUNCE = 8,
6372 	NR_FREE_CMA_PAGES = 9,
6373 	NR_VM_ZONE_STAT_ITEMS = 10,
6374 };
6375 
6376 enum node_stat_item {
6377 	NR_LRU_BASE = 0,
6378 	NR_INACTIVE_ANON = 0,
6379 	NR_ACTIVE_ANON = 1,
6380 	NR_INACTIVE_FILE = 2,
6381 	NR_ACTIVE_FILE = 3,
6382 	NR_UNEVICTABLE = 4,
6383 	NR_SLAB_RECLAIMABLE_B = 5,
6384 	NR_SLAB_UNRECLAIMABLE_B = 6,
6385 	NR_ISOLATED_ANON = 7,
6386 	NR_ISOLATED_FILE = 8,
6387 	WORKINGSET_NODES = 9,
6388 	WORKINGSET_REFAULT_BASE = 10,
6389 	WORKINGSET_REFAULT_ANON = 10,
6390 	WORKINGSET_REFAULT_FILE = 11,
6391 	WORKINGSET_ACTIVATE_BASE = 12,
6392 	WORKINGSET_ACTIVATE_ANON = 12,
6393 	WORKINGSET_ACTIVATE_FILE = 13,
6394 	WORKINGSET_RESTORE_BASE = 14,
6395 	WORKINGSET_RESTORE_ANON = 14,
6396 	WORKINGSET_RESTORE_FILE = 15,
6397 	WORKINGSET_NODERECLAIM = 16,
6398 	NR_ANON_MAPPED = 17,
6399 	NR_FILE_MAPPED = 18,
6400 	NR_FILE_PAGES = 19,
6401 	NR_FILE_DIRTY = 20,
6402 	NR_WRITEBACK = 21,
6403 	NR_WRITEBACK_TEMP = 22,
6404 	NR_SHMEM = 23,
6405 	NR_SHMEM_THPS = 24,
6406 	NR_SHMEM_PMDMAPPED = 25,
6407 	NR_FILE_THPS = 26,
6408 	NR_FILE_PMDMAPPED = 27,
6409 	NR_ANON_THPS = 28,
6410 	NR_VMSCAN_WRITE = 29,
6411 	NR_VMSCAN_IMMEDIATE = 30,
6412 	NR_DIRTIED = 31,
6413 	NR_WRITTEN = 32,
6414 	NR_THROTTLED_WRITTEN = 33,
6415 	NR_KERNEL_MISC_RECLAIMABLE = 34,
6416 	NR_FOLL_PIN_ACQUIRED = 35,
6417 	NR_FOLL_PIN_RELEASED = 36,
6418 	NR_KERNEL_STACK_KB = 37,
6419 	NR_PAGETABLE = 38,
6420 	NR_SWAPCACHE = 39,
6421 	PGPROMOTE_SUCCESS = 40,
6422 	NR_VM_NODE_STAT_ITEMS = 41,
6423 };
6424 
6425 enum lru_list {
6426 	LRU_INACTIVE_ANON = 0,
6427 	LRU_ACTIVE_ANON = 1,
6428 	LRU_INACTIVE_FILE = 2,
6429 	LRU_ACTIVE_FILE = 3,
6430 	LRU_UNEVICTABLE = 4,
6431 	NR_LRU_LISTS = 5,
6432 };
6433 
6434 enum vmscan_throttle_state {
6435 	VMSCAN_THROTTLE_WRITEBACK = 0,
6436 	VMSCAN_THROTTLE_ISOLATED = 1,
6437 	VMSCAN_THROTTLE_NOPROGRESS = 2,
6438 	VMSCAN_THROTTLE_CONGESTED = 3,
6439 	NR_VMSCAN_THROTTLE = 4,
6440 };
6441 
6442 enum zone_watermarks {
6443 	WMARK_MIN = 0,
6444 	WMARK_LOW = 1,
6445 	WMARK_HIGH = 2,
6446 	WMARK_PROMO = 3,
6447 	NR_WMARK = 4,
6448 };
6449 
6450 enum {
6451 	ZONELIST_FALLBACK = 0,
6452 	ZONELIST_NOFALLBACK = 1,
6453 	MAX_ZONELISTS = 2,
6454 };
6455 
6456 enum hrtimer_base_type {
6457 	HRTIMER_BASE_MONOTONIC = 0,
6458 	HRTIMER_BASE_REALTIME = 1,
6459 	HRTIMER_BASE_BOOTTIME = 2,
6460 	HRTIMER_BASE_TAI = 3,
6461 	HRTIMER_BASE_MONOTONIC_SOFT = 4,
6462 	HRTIMER_BASE_REALTIME_SOFT = 5,
6463 	HRTIMER_BASE_BOOTTIME_SOFT = 6,
6464 	HRTIMER_BASE_TAI_SOFT = 7,
6465 	HRTIMER_MAX_CLOCK_BASES = 8,
6466 };
6467 
6468 enum rseq_cs_flags_bit {
6469 	RSEQ_CS_FLAG_NO_RESTART_ON_PREEMPT_BIT = 0,
6470 	RSEQ_CS_FLAG_NO_RESTART_ON_SIGNAL_BIT = 1,
6471 	RSEQ_CS_FLAG_NO_RESTART_ON_MIGRATE_BIT = 2,
6472 };
6473 
6474 enum {
6475 	TASK_COMM_LEN = 16,
6476 };
6477 
6478 enum perf_event_task_context {
6479 	perf_invalid_context = -1,
6480 	perf_hw_context = 0,
6481 	perf_sw_context = 1,
6482 	perf_nr_task_contexts = 2,
6483 };
6484 
6485 enum rseq_event_mask_bits {
6486 	RSEQ_EVENT_PREEMPT_BIT = 0,
6487 	RSEQ_EVENT_SIGNAL_BIT = 1,
6488 	RSEQ_EVENT_MIGRATE_BIT = 2,
6489 };
6490 
6491 struct iommu_pool {
6492 	long unsigned int start;
6493 	long unsigned int end;
6494 	long unsigned int hint;
6495 	spinlock_t lock;
6496 	long: 64;
6497 	long: 64;
6498 	long: 64;
6499 	long: 64;
6500 	long: 64;
6501 	long: 64;
6502 	long: 64;
6503 	long: 64;
6504 	long: 64;
6505 	long: 64;
6506 	long: 64;
6507 	long: 64;
6508 };
6509 
6510 struct iommu_table_ops;
6511 
6512 struct iommu_table {
6513 	long unsigned int it_busno;
6514 	long unsigned int it_size;
6515 	long unsigned int it_indirect_levels;
6516 	long unsigned int it_level_size;
6517 	long unsigned int it_allocated_size;
6518 	long unsigned int it_offset;
6519 	long unsigned int it_base;
6520 	long unsigned int it_index;
6521 	long unsigned int it_type;
6522 	long unsigned int it_blocksize;
6523 	long unsigned int poolsize;
6524 	long unsigned int nr_pools;
6525 	long: 64;
6526 	long: 64;
6527 	long: 64;
6528 	long: 64;
6529 	struct iommu_pool large_pool;
6530 	struct iommu_pool pools[4];
6531 	long unsigned int *it_map;
6532 	long unsigned int it_page_shift;
6533 	struct list_head it_group_list;
6534 	__be64 *it_userspace;
6535 	struct iommu_table_ops *it_ops;
6536 	struct kref it_kref;
6537 	int it_nid;
6538 	long unsigned int it_reserved_start;
6539 	long unsigned int it_reserved_end;
6540 	long: 64;
6541 	long: 64;
6542 	long: 64;
6543 	long: 64;
6544 	long: 64;
6545 	long: 64;
6546 	long: 64;
6547 };
6548 
6549 struct iommu_table_group;
6550 
6551 struct pci_dn {
6552 	int flags;
6553 	int busno;
6554 	int devfn;
6555 	int vendor_id;
6556 	int device_id;
6557 	int class_code;
6558 	struct pci_dn *parent;
6559 	struct pci_controller *phb;
6560 	struct iommu_table_group *table_group;
6561 	int pci_ext_config_space;
6562 	struct eeh_dev *edev;
6563 	unsigned int pe_number;
6564 	int mps;
6565 	struct list_head child_list;
6566 	struct list_head list;
6567 	struct resource holes[6];
6568 };
6569 
6570 typedef u32 phandle;
6571 
6572 struct property;
6573 
6574 struct device_node {
6575 	const char *name;
6576 	phandle phandle;
6577 	const char *full_name;
6578 	struct fwnode_handle fwnode;
6579 	struct property *properties;
6580 	struct property *deadprops;
6581 	struct device_node *parent;
6582 	struct device_node *child;
6583 	struct device_node *sibling;
6584 	struct kobject kobj;
6585 	long unsigned int _flags;
6586 	void *data;
6587 };
6588 
6589 typedef int pci_power_t;
6590 
6591 typedef unsigned int pci_channel_state_t;
6592 
6593 typedef short unsigned int pci_dev_flags_t;
6594 
6595 struct pci_vpd {
6596 	struct mutex lock;
6597 	unsigned int len;
6598 	u8 cap;
6599 };
6600 
6601 struct proc_dir_entry;
6602 
6603 struct pci_slot;
6604 
6605 struct pci_driver;
6606 
6607 struct pcie_link_state;
6608 
6609 struct pci_dev {
6610 	struct list_head bus_list;
6611 	struct pci_bus *bus;
6612 	struct pci_bus *subordinate;
6613 	void *sysdata;
6614 	struct proc_dir_entry *procent;
6615 	struct pci_slot *slot;
6616 	unsigned int devfn;
6617 	short unsigned int vendor;
6618 	short unsigned int device;
6619 	short unsigned int subsystem_vendor;
6620 	short unsigned int subsystem_device;
6621 	unsigned int class;
6622 	u8 revision;
6623 	u8 hdr_type;
6624 	u32 devcap;
6625 	u8 pcie_cap;
6626 	u8 msi_cap;
6627 	u8 msix_cap;
6628 	u8 pcie_mpss: 3;
6629 	u8 rom_base_reg;
6630 	u8 pin;
6631 	u16 pcie_flags_reg;
6632 	long unsigned int *dma_alias_mask;
6633 	struct pci_driver *driver;
6634 	u64 dma_mask;
6635 	struct device_dma_parameters dma_parms;
6636 	pci_power_t current_state;
6637 	unsigned int imm_ready: 1;
6638 	u8 pm_cap;
6639 	unsigned int pme_support: 5;
6640 	unsigned int pme_poll: 1;
6641 	unsigned int d1_support: 1;
6642 	unsigned int d2_support: 1;
6643 	unsigned int no_d1d2: 1;
6644 	unsigned int no_d3cold: 1;
6645 	unsigned int bridge_d3: 1;
6646 	unsigned int d3cold_allowed: 1;
6647 	unsigned int mmio_always_on: 1;
6648 	unsigned int wakeup_prepared: 1;
6649 	unsigned int skip_bus_pm: 1;
6650 	unsigned int ignore_hotplug: 1;
6651 	unsigned int hotplug_user_indicators: 1;
6652 	unsigned int clear_retrain_link: 1;
6653 	unsigned int d3hot_delay;
6654 	unsigned int d3cold_delay;
6655 	struct pcie_link_state *link_state;
6656 	unsigned int ltr_path: 1;
6657 	u16 l1ss;
6658 	unsigned int pasid_no_tlp: 1;
6659 	unsigned int eetlp_prefix_path: 1;
6660 	pci_channel_state_t error_state;
6661 	struct device dev;
6662 	int cfg_size;
6663 	unsigned int irq;
6664 	struct resource resource[11];
6665 	bool match_driver;
6666 	unsigned int transparent: 1;
6667 	unsigned int io_window: 1;
6668 	unsigned int pref_window: 1;
6669 	unsigned int pref_64_window: 1;
6670 	unsigned int multifunction: 1;
6671 	unsigned int is_busmaster: 1;
6672 	unsigned int no_msi: 1;
6673 	unsigned int no_64bit_msi: 1;
6674 	unsigned int block_cfg_access: 1;
6675 	unsigned int broken_parity_status: 1;
6676 	unsigned int irq_reroute_variant: 2;
6677 	unsigned int msi_enabled: 1;
6678 	unsigned int msix_enabled: 1;
6679 	unsigned int ari_enabled: 1;
6680 	unsigned int ats_enabled: 1;
6681 	unsigned int pasid_enabled: 1;
6682 	unsigned int pri_enabled: 1;
6683 	unsigned int is_managed: 1;
6684 	unsigned int is_msi_managed: 1;
6685 	unsigned int needs_freset: 1;
6686 	unsigned int state_saved: 1;
6687 	unsigned int is_physfn: 1;
6688 	unsigned int is_virtfn: 1;
6689 	unsigned int is_hotplug_bridge: 1;
6690 	unsigned int shpc_managed: 1;
6691 	unsigned int is_thunderbolt: 1;
6692 	unsigned int untrusted: 1;
6693 	unsigned int external_facing: 1;
6694 	unsigned int broken_intx_masking: 1;
6695 	unsigned int io_window_1k: 1;
6696 	unsigned int irq_managed: 1;
6697 	unsigned int non_compliant_bars: 1;
6698 	unsigned int is_probed: 1;
6699 	unsigned int link_active_reporting: 1;
6700 	unsigned int no_vf_scan: 1;
6701 	unsigned int no_command_memory: 1;
6702 	unsigned int rom_bar_overlap: 1;
6703 	pci_dev_flags_t dev_flags;
6704 	atomic_t enable_cnt;
6705 	u32 saved_config_space[16];
6706 	struct hlist_head saved_cap_space;
6707 	int rom_attr_enabled;
6708 	struct bin_attribute *res_attr[11];
6709 	struct bin_attribute *res_attr_wc[11];
6710 	void *msix_base;
6711 	raw_spinlock_t msi_lock;
6712 	struct pci_vpd vpd;
6713 	u16 acs_cap;
6714 	phys_addr_t rom;
6715 	size_t romlen;
6716 	const char *driver_override;
6717 	long unsigned int priv_flags;
6718 	u8 reset_methods[7];
6719 };
6720 
6721 enum {
6722 	DQF_ROOT_SQUASH_B = 0,
6723 	DQF_SYS_FILE_B = 16,
6724 	DQF_PRIVATE = 17,
6725 };
6726 
6727 enum {
6728 	DQST_LOOKUPS = 0,
6729 	DQST_DROPS = 1,
6730 	DQST_READS = 2,
6731 	DQST_WRITES = 3,
6732 	DQST_CACHE_HITS = 4,
6733 	DQST_ALLOC_DQUOTS = 5,
6734 	DQST_FREE_DQUOTS = 6,
6735 	DQST_SYNCS = 7,
6736 	_DQST_DQSTAT_LAST = 8,
6737 };
6738 
6739 struct iovec;
6740 
6741 struct kvec;
6742 
6743 struct bio_vec;
6744 
6745 struct iov_iter {
6746 	u8 iter_type;
6747 	bool nofault;
6748 	bool data_source;
6749 	bool user_backed;
6750 	union {
6751 		size_t iov_offset;
6752 		int last_offset;
6753 	};
6754 	size_t count;
6755 	union {
6756 		const struct iovec *iov;
6757 		const struct kvec *kvec;
6758 		const struct bio_vec *bvec;
6759 		struct xarray *xarray;
6760 		struct pipe_inode_info *pipe;
6761 		void *ubuf;
6762 	};
6763 	union {
6764 		long unsigned int nr_segs;
6765 		struct {
6766 			unsigned int head;
6767 			unsigned int start_head;
6768 		};
6769 		loff_t xarray_start;
6770 	};
6771 };
6772 
6773 enum {
6774 	SB_UNFROZEN = 0,
6775 	SB_FREEZE_WRITE = 1,
6776 	SB_FREEZE_PAGEFAULT = 2,
6777 	SB_FREEZE_FS = 3,
6778 	SB_FREEZE_COMPLETE = 4,
6779 };
6780 
6781 enum compound_dtor_id {
6782 	NULL_COMPOUND_DTOR = 0,
6783 	COMPOUND_PAGE_DTOR = 1,
6784 	HUGETLB_PAGE_DTOR = 2,
6785 	TRANSHUGE_PAGE_DTOR = 3,
6786 	NR_COMPOUND_DTORS = 4,
6787 };
6788 
6789 enum vm_event_item {
6790 	PGPGIN = 0,
6791 	PGPGOUT = 1,
6792 	PSWPIN = 2,
6793 	PSWPOUT = 3,
6794 	PGALLOC_NORMAL = 4,
6795 	PGALLOC_MOVABLE = 5,
6796 	ALLOCSTALL_NORMAL = 6,
6797 	ALLOCSTALL_MOVABLE = 7,
6798 	PGSCAN_SKIP_NORMAL = 8,
6799 	PGSCAN_SKIP_MOVABLE = 9,
6800 	PGFREE = 10,
6801 	PGACTIVATE = 11,
6802 	PGDEACTIVATE = 12,
6803 	PGLAZYFREE = 13,
6804 	PGFAULT = 14,
6805 	PGMAJFAULT = 15,
6806 	PGLAZYFREED = 16,
6807 	PGREFILL = 17,
6808 	PGREUSE = 18,
6809 	PGSTEAL_KSWAPD = 19,
6810 	PGSTEAL_DIRECT = 20,
6811 	PGDEMOTE_KSWAPD = 21,
6812 	PGDEMOTE_DIRECT = 22,
6813 	PGSCAN_KSWAPD = 23,
6814 	PGSCAN_DIRECT = 24,
6815 	PGSCAN_DIRECT_THROTTLE = 25,
6816 	PGSCAN_ANON = 26,
6817 	PGSCAN_FILE = 27,
6818 	PGSTEAL_ANON = 28,
6819 	PGSTEAL_FILE = 29,
6820 	PGSCAN_ZONE_RECLAIM_FAILED = 30,
6821 	PGINODESTEAL = 31,
6822 	SLABS_SCANNED = 32,
6823 	KSWAPD_INODESTEAL = 33,
6824 	KSWAPD_LOW_WMARK_HIT_QUICKLY = 34,
6825 	KSWAPD_HIGH_WMARK_HIT_QUICKLY = 35,
6826 	PAGEOUTRUN = 36,
6827 	PGROTATED = 37,
6828 	DROP_PAGECACHE = 38,
6829 	DROP_SLAB = 39,
6830 	OOM_KILL = 40,
6831 	NUMA_PTE_UPDATES = 41,
6832 	NUMA_HUGE_PTE_UPDATES = 42,
6833 	NUMA_HINT_FAULTS = 43,
6834 	NUMA_HINT_FAULTS_LOCAL = 44,
6835 	NUMA_PAGE_MIGRATE = 45,
6836 	PGMIGRATE_SUCCESS = 46,
6837 	PGMIGRATE_FAIL = 47,
6838 	THP_MIGRATION_SUCCESS = 48,
6839 	THP_MIGRATION_FAIL = 49,
6840 	THP_MIGRATION_SPLIT = 50,
6841 	COMPACTMIGRATE_SCANNED = 51,
6842 	COMPACTFREE_SCANNED = 52,
6843 	COMPACTISOLATED = 53,
6844 	COMPACTSTALL = 54,
6845 	COMPACTFAIL = 55,
6846 	COMPACTSUCCESS = 56,
6847 	KCOMPACTD_WAKE = 57,
6848 	KCOMPACTD_MIGRATE_SCANNED = 58,
6849 	KCOMPACTD_FREE_SCANNED = 59,
6850 	HTLB_BUDDY_PGALLOC = 60,
6851 	HTLB_BUDDY_PGALLOC_FAIL = 61,
6852 	CMA_ALLOC_SUCCESS = 62,
6853 	CMA_ALLOC_FAIL = 63,
6854 	UNEVICTABLE_PGCULLED = 64,
6855 	UNEVICTABLE_PGSCANNED = 65,
6856 	UNEVICTABLE_PGRESCUED = 66,
6857 	UNEVICTABLE_PGMLOCKED = 67,
6858 	UNEVICTABLE_PGMUNLOCKED = 68,
6859 	UNEVICTABLE_PGCLEARED = 69,
6860 	UNEVICTABLE_PGSTRANDED = 70,
6861 	THP_FAULT_ALLOC = 71,
6862 	THP_FAULT_FALLBACK = 72,
6863 	THP_FAULT_FALLBACK_CHARGE = 73,
6864 	THP_COLLAPSE_ALLOC = 74,
6865 	THP_COLLAPSE_ALLOC_FAILED = 75,
6866 	THP_FILE_ALLOC = 76,
6867 	THP_FILE_FALLBACK = 77,
6868 	THP_FILE_FALLBACK_CHARGE = 78,
6869 	THP_FILE_MAPPED = 79,
6870 	THP_SPLIT_PAGE = 80,
6871 	THP_SPLIT_PAGE_FAILED = 81,
6872 	THP_DEFERRED_SPLIT_PAGE = 82,
6873 	THP_SPLIT_PMD = 83,
6874 	THP_SCAN_EXCEED_NONE_PTE = 84,
6875 	THP_SCAN_EXCEED_SWAP_PTE = 85,
6876 	THP_SCAN_EXCEED_SHARED_PTE = 86,
6877 	THP_ZERO_PAGE_ALLOC = 87,
6878 	THP_ZERO_PAGE_ALLOC_FAILED = 88,
6879 	THP_SWPOUT = 89,
6880 	THP_SWPOUT_FALLBACK = 90,
6881 	BALLOON_INFLATE = 91,
6882 	BALLOON_DEFLATE = 92,
6883 	BALLOON_MIGRATE = 93,
6884 	SWAP_RA = 94,
6885 	SWAP_RA_HIT = 95,
6886 	KSM_SWPIN_COPY = 96,
6887 	COW_KSM = 97,
6888 	NR_VM_EVENT_ITEMS = 98,
6889 };
6890 
6891 struct pci_controller_ops {
6892 	void (*dma_dev_setup)(struct pci_dev *);
6893 	void (*dma_bus_setup)(struct pci_bus *);
6894 	bool (*iommu_bypass_supported)(struct pci_dev *, u64);
6895 	int (*probe_mode)(struct pci_bus *);
6896 	bool (*enable_device_hook)(struct pci_dev *);
6897 	void (*disable_device)(struct pci_dev *);
6898 	void (*release_device)(struct pci_dev *);
6899 	resource_size_t (*window_alignment)(struct pci_bus *, long unsigned int);
6900 	void (*setup_bridge)(struct pci_bus *, long unsigned int);
6901 	void (*reset_secondary_bus)(struct pci_dev *);
6902 	int (*setup_msi_irqs)(struct pci_dev *, int, int);
6903 	void (*teardown_msi_irqs)(struct pci_dev *);
6904 	void (*shutdown)(struct pci_controller *);
6905 };
6906 
6907 struct pci_ops;
6908 
6909 struct pci_controller {
6910 	struct pci_bus *bus;
6911 	char is_dynamic;
6912 	int node;
6913 	struct device_node *dn;
6914 	struct list_head list_node;
6915 	struct device *parent;
6916 	int first_busno;
6917 	int last_busno;
6918 	int self_busno;
6919 	struct resource busn;
6920 	void *io_base_virt;
6921 	void *io_base_alloc;
6922 	resource_size_t io_base_phys;
6923 	resource_size_t pci_io_size;
6924 	resource_size_t isa_mem_phys;
6925 	resource_size_t isa_mem_size;
6926 	struct pci_controller_ops controller_ops;
6927 	struct pci_ops *ops;
6928 	unsigned int *cfg_addr;
6929 	void *cfg_data;
6930 	u32 indirect_type;
6931 	struct resource io_resource;
6932 	struct resource mem_resources[3];
6933 	resource_size_t mem_offset[3];
6934 	int global_number;
6935 	resource_size_t dma_window_base_cur;
6936 	resource_size_t dma_window_size;
6937 	long unsigned int buid;
6938 	struct pci_dn *pci_data;
6939 	void *private_data;
6940 	struct irq_domain *dev_domain;
6941 	struct irq_domain *msi_domain;
6942 	struct fwnode_handle *fwnode;
6943 };
6944 
6945 typedef short unsigned int pci_bus_flags_t;
6946 
6947 struct pci_bus {
6948 	struct list_head node;
6949 	struct pci_bus *parent;
6950 	struct list_head children;
6951 	struct list_head devices;
6952 	struct pci_dev *self;
6953 	struct list_head slots;
6954 	struct resource *resource[4];
6955 	struct list_head resources;
6956 	struct resource busn_res;
6957 	struct pci_ops *ops;
6958 	void *sysdata;
6959 	struct proc_dir_entry *procdir;
6960 	unsigned char number;
6961 	unsigned char primary;
6962 	unsigned char max_bus_speed;
6963 	unsigned char cur_bus_speed;
6964 	char name[48];
6965 	short unsigned int bridge_ctl;
6966 	pci_bus_flags_t bus_flags;
6967 	struct device *bridge;
6968 	struct device dev;
6969 	struct bin_attribute *legacy_io;
6970 	struct bin_attribute *legacy_mem;
6971 	unsigned int is_added: 1;
6972 	unsigned int unsafe_warn: 1;
6973 };
6974 
6975 struct hotplug_slot;
6976 
6977 struct pci_slot {
6978 	struct pci_bus *bus;
6979 	struct list_head list;
6980 	struct hotplug_slot *hotplug;
6981 	unsigned char number;
6982 	struct kobject kobj;
6983 };
6984 
6985 enum {
6986 	PCI_STD_RESOURCES = 0,
6987 	PCI_STD_RESOURCE_END = 5,
6988 	PCI_ROM_RESOURCE = 6,
6989 	PCI_BRIDGE_RESOURCES = 7,
6990 	PCI_BRIDGE_RESOURCE_END = 10,
6991 	PCI_NUM_RESOURCES = 11,
6992 	DEVICE_COUNT_RESOURCE = 11,
6993 };
6994 
6995 typedef unsigned int pcie_reset_state_t;
6996 
6997 struct pci_dynids {
6998 	spinlock_t lock;
6999 	struct list_head list;
7000 };
7001 
7002 struct pci_error_handlers;
7003 
7004 struct pci_driver {
7005 	struct list_head node;
7006 	const char *name;
7007 	const struct pci_device_id *id_table;
7008 	int (*probe)(struct pci_dev *, const struct pci_device_id *);
7009 	void (*remove)(struct pci_dev *);
7010 	int (*suspend)(struct pci_dev *, pm_message_t);
7011 	int (*resume)(struct pci_dev *);
7012 	void (*shutdown)(struct pci_dev *);
7013 	int (*sriov_configure)(struct pci_dev *, int);
7014 	int (*sriov_set_msix_vec_count)(struct pci_dev *, int);
7015 	u32 (*sriov_get_vf_total_msix)(struct pci_dev *);
7016 	const struct pci_error_handlers *err_handler;
7017 	const struct attribute_group **groups;
7018 	const struct attribute_group **dev_groups;
7019 	struct device_driver driver;
7020 	struct pci_dynids dynids;
7021 	bool driver_managed_dma;
7022 };
7023 
7024 struct pci_ops {
7025 	int (*add_bus)(struct pci_bus *);
7026 	void (*remove_bus)(struct pci_bus *);
7027 	void * (*map_bus)(struct pci_bus *, unsigned int, int);
7028 	int (*read)(struct pci_bus *, unsigned int, int, int, u32 *);
7029 	int (*write)(struct pci_bus *, unsigned int, int, int, u32);
7030 };
7031 
7032 typedef unsigned int pci_ers_result_t;
7033 
7034 struct pci_error_handlers {
7035 	pci_ers_result_t (*error_detected)(struct pci_dev *, pci_channel_state_t);
7036 	pci_ers_result_t (*mmio_enabled)(struct pci_dev *);
7037 	pci_ers_result_t (*slot_reset)(struct pci_dev *);
7038 	void (*reset_prepare)(struct pci_dev *);
7039 	void (*reset_done)(struct pci_dev *);
7040 	void (*resume)(struct pci_dev *);
7041 };
7042 
7043 struct scatterlist {
7044 	long unsigned int page_link;
7045 	unsigned int offset;
7046 	unsigned int length;
7047 	dma_addr_t dma_address;
7048 	unsigned int dma_length;
7049 };
7050 
7051 struct sg_table {
7052 	struct scatterlist *sgl;
7053 	unsigned int nents;
7054 	unsigned int orig_nents;
7055 };
7056 
7057 struct iommu_table_group_ops;
7058 
7059 struct iommu_table_group {
7060 	__u32 tce32_start;
7061 	__u32 tce32_size;
7062 	__u64 pgsizes;
7063 	__u32 max_dynamic_windows_supported;
7064 	__u32 max_levels;
7065 	struct iommu_group *group;
7066 	struct iommu_table *tables[2];
7067 	struct iommu_table_group_ops *ops;
7068 };
7069 
7070 enum key_being_used_for {
7071 	VERIFYING_MODULE_SIGNATURE = 0,
7072 	VERIFYING_FIRMWARE_SIGNATURE = 1,
7073 	VERIFYING_KEXEC_PE_SIGNATURE = 2,
7074 	VERIFYING_KEY_SIGNATURE = 3,
7075 	VERIFYING_KEY_SELF_SIGNATURE = 4,
7076 	VERIFYING_UNSPECIFIED_SIGNATURE = 5,
7077 	NR__KEY_BEING_USED_FOR = 6,
7078 };
7079 
7080 struct iovec {
7081 	void *iov_base;
7082 	__kernel_size_t iov_len;
7083 };
7084 
7085 struct kvec {
7086 	void *iov_base;
7087 	size_t iov_len;
7088 };
7089 
7090 struct bio_vec {
7091 	struct page *bv_page;
7092 	unsigned int bv_len;
7093 	unsigned int bv_offset;
7094 };
7095 
7096 struct property {
7097 	char *name;
7098 	int length;
7099 	void *value;
7100 	struct property *next;
7101 	long unsigned int _flags;
7102 	struct bin_attribute attr;
7103 };
7104 
7105 typedef __be32 fdt32_t;
7106 
7107 struct fdt_header {
7108 	fdt32_t magic;
7109 	fdt32_t totalsize;
7110 	fdt32_t off_dt_struct;
7111 	fdt32_t off_dt_strings;
7112 	fdt32_t off_mem_rsvmap;
7113 	fdt32_t version;
7114 	fdt32_t last_comp_version;
7115 	fdt32_t boot_cpuid_phys;
7116 	fdt32_t size_dt_strings;
7117 	fdt32_t size_dt_struct;
7118 };
7119 
7120 struct iommu_table_ops {
7121 	int (*set)(struct iommu_table *, long int, long int, long unsigned int, enum dma_data_direction, long unsigned int);
7122 	int (*xchg_no_kill)(struct iommu_table *, long int, long unsigned int *, enum dma_data_direction *);
7123 	void (*tce_kill)(struct iommu_table *, long unsigned int, long unsigned int);
7124 	__be64 * (*useraddrptr)(struct iommu_table *, long int, bool);
7125 	void (*clear)(struct iommu_table *, long int, long int);
7126 	long unsigned int (*get)(struct iommu_table *, long int);
7127 	void (*flush)(struct iommu_table *);
7128 	void (*free)(struct iommu_table *);
7129 };
7130 
7131 struct iommu_table_group_ops {
7132 	long unsigned int (*get_table_size)(__u32, __u64, __u32);
7133 	long int (*create_table)(struct iommu_table_group *, int, __u32, __u64, __u32, struct iommu_table **);
7134 	long int (*set_window)(struct iommu_table_group *, int, struct iommu_table *);
7135 	long int (*unset_window)(struct iommu_table_group *, int);
7136 	void (*take_ownership)(struct iommu_table_group *);
7137 	void (*release_ownership)(struct iommu_table_group *);
7138 };
7139 
7140 enum {
7141 	OPAL_P7IOC_NUM_PEST_REGS = 128,
7142 	OPAL_PHB3_NUM_PEST_REGS = 256,
7143 	OPAL_PHB4_NUM_PEST_REGS = 512,
7144 };
7145 
7146 struct drmem_lmb {
7147 	u64 base_addr;
7148 	u32 drc_index;
7149 	u32 aa_index;
7150 	u32 flags;
7151 };
7152 
7153 struct drmem_lmb_info {
7154 	struct drmem_lmb *lmbs;
7155 	int n_lmbs;
7156 	u64 lmb_size;
7157 };
7158 
7159 struct ibm_pa_feature {
7160 	long unsigned int cpu_features;
7161 	long unsigned int mmu_features;
7162 	unsigned int cpu_user_ftrs;
7163 	unsigned int cpu_user_ftrs2;
7164 	unsigned char pabyte;
7165 	unsigned char pabit;
7166 	unsigned char invert;
7167 };
7168 
7169 struct feature_property {
7170 	const char *name;
7171 	u32 min_value;
7172 	long unsigned int cpu_feature;
7173 	long unsigned int cpu_user_ftr;
7174 };
7175 
7176 enum memblock_flags {
7177 	MEMBLOCK_NONE = 0,
7178 	MEMBLOCK_HOTPLUG = 1,
7179 	MEMBLOCK_MIRROR = 2,
7180 	MEMBLOCK_NOMAP = 4,
7181 	MEMBLOCK_DRIVER_MANAGED = 8,
7182 };
7183 
7184 struct memblock_region {
7185 	phys_addr_t base;
7186 	phys_addr_t size;
7187 	enum memblock_flags flags;
7188 	int nid;
7189 };
7190 
7191 struct memblock_type {
7192 	long unsigned int cnt;
7193 	long unsigned int max;
7194 	phys_addr_t total_size;
7195 	struct memblock_region *regions;
7196 	char *name;
7197 };
7198 
7199 struct memblock {
7200 	bool bottom_up;
7201 	phys_addr_t current_limit;
7202 	struct memblock_type memory;
7203 	struct memblock_type reserved;
7204 };
7205 
7206 typedef char *va_list;
7207 
7208 typedef u16 uint16_t;
7209 
7210 enum {
7211 	EI_ETYPE_NONE = 0,
7212 	EI_ETYPE_NULL = 1,
7213 	EI_ETYPE_ERRNO = 2,
7214 	EI_ETYPE_ERRNO_NULL = 3,
7215 	EI_ETYPE_TRUE = 4,
7216 };
7217 
7218 enum {
7219 	TRACE_EVENT_FL_FILTERED = 1,
7220 	TRACE_EVENT_FL_CAP_ANY = 2,
7221 	TRACE_EVENT_FL_NO_SET_FILTER = 4,
7222 	TRACE_EVENT_FL_IGNORE_ENABLE = 8,
7223 	TRACE_EVENT_FL_TRACEPOINT = 16,
7224 	TRACE_EVENT_FL_DYNAMIC = 32,
7225 	TRACE_EVENT_FL_KPROBE = 64,
7226 	TRACE_EVENT_FL_UPROBE = 128,
7227 	TRACE_EVENT_FL_EPROBE = 256,
7228 	TRACE_EVENT_FL_CUSTOM = 512,
7229 };
7230 
7231 struct syscall_metadata {
7232 	const char *name;
7233 	int syscall_nr;
7234 	int nb_args;
7235 	const char **types;
7236 	const char **args;
7237 	struct list_head enter_fields;
7238 	struct trace_event_call *enter_event;
7239 	struct trace_event_call *exit_event;
7240 };
7241 
7242 struct rtas_t {
7243 	long unsigned int entry;
7244 	long unsigned int base;
7245 	long unsigned int size;
7246 	arch_spinlock_t lock;
7247 	struct rtas_args args;
7248 	struct device_node *dev;
7249 };
7250 
7251 struct rtas_error_log {
7252 	u8 byte0;
7253 	u8 byte1;
7254 	u8 byte2;
7255 	u8 byte3;
7256 	__be32 extended_log_length;
7257 	unsigned char buffer[1];
7258 };
7259 
7260 struct rtas_ext_event_log_v6 {
7261 	u8 byte0;
7262 	u8 byte1;
7263 	u8 byte2;
7264 	u8 byte3;
7265 	u8 reserved[8];
7266 	__be32 company_id;
7267 	u8 vendor_log[1];
7268 };
7269 
7270 struct pseries_errorlog {
7271 	__be16 id;
7272 	__be16 length;
7273 	u8 version;
7274 	u8 subtype;
7275 	__be16 creator_component;
7276 	u8 data[0];
7277 };
7278 
7279 struct pci_host_bridge;
7280 
7281 struct rtc_time;
7282 
7283 struct kimage;
7284 
7285 struct machdep_calls {
7286 	char *name;
7287 	void (*iommu_restore)();
7288 	long unsigned int (*memory_block_size)();
7289 	void (*dma_set_mask)(struct device *, u64);
7290 	int (*probe)();
7291 	void (*setup_arch)();
7292 	void (*show_cpuinfo)(struct seq_file *);
7293 	long unsigned int (*get_proc_freq)(unsigned int);
7294 	void (*init_IRQ)();
7295 	unsigned int (*get_irq)();
7296 	void (*pcibios_fixup)();
7297 	void (*pci_irq_fixup)(struct pci_dev *);
7298 	int (*pcibios_root_bridge_prepare)(struct pci_host_bridge *);
7299 	void (*discover_phbs)();
7300 	int (*pci_setup_phb)(struct pci_controller *);
7301 	void (*restart)(char *);
7302 	void (*halt)();
7303 	void (*panic)(char *);
7304 	long int (*time_init)();
7305 	int (*set_rtc_time)(struct rtc_time *);
7306 	void (*get_rtc_time)(struct rtc_time *);
7307 	time64_t (*get_boot_time)();
7308 	void (*calibrate_decr)();
7309 	void (*progress)(char *, short unsigned int);
7310 	void (*log_error)(char *, unsigned int, int);
7311 	unsigned char (*nvram_read_val)(int);
7312 	void (*nvram_write_val)(int, unsigned char);
7313 	ssize_t (*nvram_write)(char *, size_t, loff_t *);
7314 	ssize_t (*nvram_read)(char *, size_t, loff_t *);
7315 	ssize_t (*nvram_size)();
7316 	void (*nvram_sync)();
7317 	int (*system_reset_exception)(struct pt_regs *);
7318 	int (*machine_check_exception)(struct pt_regs *);
7319 	int (*handle_hmi_exception)(struct pt_regs *);
7320 	int (*hmi_exception_early)(struct pt_regs *);
7321 	long int (*machine_check_early)(struct pt_regs *);
7322 	bool (*mce_check_early_recovery)(struct pt_regs *);
7323 	void (*machine_check_log_err)();
7324 	long int (*feature_call)(unsigned int, ...);
7325 	int (*pci_get_legacy_ide_irq)(struct pci_dev *, int);
7326 	pgprot_t (*phys_mem_access_prot)(struct file *, long unsigned int, long unsigned int, pgprot_t);
7327 	void (*power_save)();
7328 	void (*enable_pmcs)();
7329 	int (*set_dabr)(long unsigned int, long unsigned int);
7330 	int (*set_dawr)(int, long unsigned int, long unsigned int);
7331 	int (*pci_exclude_device)(struct pci_controller *, unsigned char, unsigned char);
7332 	void (*pcibios_fixup_resources)(struct pci_dev *);
7333 	void (*pcibios_fixup_bus)(struct pci_bus *);
7334 	void (*pcibios_fixup_phb)(struct pci_controller *);
7335 	void (*pcibios_bus_add_device)(struct pci_dev *);
7336 	resource_size_t (*pcibios_default_alignment)();
7337 	void (*machine_shutdown)();
7338 	void (*kexec_cpu_down)(int, int);
7339 	void (*machine_kexec)(struct kimage *);
7340 	void (*suspend_disable_irqs)();
7341 	void (*suspend_enable_irqs)();
7342 	ssize_t (*cpu_probe)(const char *, size_t);
7343 	ssize_t (*cpu_release)(const char *, size_t);
7344 	int (*get_random_seed)(long unsigned int *);
7345 };
7346 
7347 struct rtas_filter {
7348 	const char *name;
7349 	int token;
7350 	int buf_idx1;
7351 	int size_idx1;
7352 	int buf_idx2;
7353 	int size_idx2;
7354 	int fixed_size;
7355 };
7356 
7357 struct indicator_elem {
7358 	__be32 token;
7359 	__be32 maxindex;
7360 };
7361 
7362 struct wait_queue_entry;
7363 
7364 typedef int (*wait_queue_func_t)(struct wait_queue_entry *, unsigned int, int, void *);
7365 
7366 struct wait_queue_entry {
7367 	unsigned int flags;
7368 	void *private;
7369 	wait_queue_func_t func;
7370 	struct list_head entry;
7371 };
7372 
7373 typedef struct wait_queue_entry wait_queue_entry_t;
7374 
7375 struct free_area {
7376 	struct list_head free_list[6];
7377 	long unsigned int nr_free;
7378 };
7379 
7380 struct zone_padding {
7381 	char x[0];
7382 };
7383 
7384 struct pglist_data;
7385 
7386 struct lruvec {
7387 	struct list_head lists[5];
7388 	spinlock_t lru_lock;
7389 	long unsigned int anon_cost;
7390 	long unsigned int file_cost;
7391 	atomic_long_t nonresident_age;
7392 	long unsigned int refaults[2];
7393 	long unsigned int flags;
7394 	struct pglist_data *pgdat;
7395 };
7396 
7397 struct per_cpu_pages;
7398 
7399 struct per_cpu_zonestat;
7400 
7401 struct zone {
7402 	long unsigned int _watermark[4];
7403 	long unsigned int watermark_boost;
7404 	long unsigned int nr_reserved_highatomic;
7405 	long int lowmem_reserve[2];
7406 	int node;
7407 	struct pglist_data *zone_pgdat;
7408 	struct per_cpu_pages *per_cpu_pageset;
7409 	struct per_cpu_zonestat *per_cpu_zonestats;
7410 	int pageset_high;
7411 	int pageset_batch;
7412 	long unsigned int zone_start_pfn;
7413 	atomic_long_t managed_pages;
7414 	long unsigned int spanned_pages;
7415 	long unsigned int present_pages;
7416 	long unsigned int present_early_pages;
7417 	long unsigned int cma_pages;
7418 	const char *name;
7419 	long unsigned int nr_isolate_pageblock;
7420 	seqlock_t span_seqlock;
7421 	int initialized;
7422 	long: 64;
7423 	long: 64;
7424 	long: 64;
7425 	long: 64;
7426 	long: 64;
7427 	long: 64;
7428 	long: 64;
7429 	long: 64;
7430 	long: 64;
7431 	struct zone_padding _pad1_;
7432 	struct free_area free_area[9];
7433 	long unsigned int flags;
7434 	spinlock_t lock;
7435 	long: 64;
7436 	long: 64;
7437 	long: 64;
7438 	long: 64;
7439 	long: 64;
7440 	long: 64;
7441 	long: 64;
7442 	long: 64;
7443 	long: 64;
7444 	struct zone_padding _pad2_;
7445 	long unsigned int percpu_drift_mark;
7446 	long unsigned int compact_cached_free_pfn;
7447 	long unsigned int compact_cached_migrate_pfn[2];
7448 	long unsigned int compact_init_migrate_pfn;
7449 	long unsigned int compact_init_free_pfn;
7450 	unsigned int compact_considered;
7451 	unsigned int compact_defer_shift;
7452 	int compact_order_failed;
7453 	bool compact_blockskip_flush;
7454 	bool contiguous;
7455 	long: 64;
7456 	long: 64;
7457 	long: 64;
7458 	long: 64;
7459 	long: 64;
7460 	long: 64;
7461 	long: 64;
7462 	long: 64;
7463 	struct zone_padding _pad3_;
7464 	atomic_long_t vm_stat[10];
7465 	atomic_long_t vm_numa_event[6];
7466 };
7467 
7468 struct zoneref {
7469 	struct zone *zone;
7470 	int zone_idx;
7471 };
7472 
7473 struct zonelist {
7474 	struct zoneref _zonerefs[513];
7475 };
7476 
7477 enum zone_type {
7478 	ZONE_NORMAL = 0,
7479 	ZONE_MOVABLE = 1,
7480 	__MAX_NR_ZONES = 2,
7481 };
7482 
7483 struct deferred_split {
7484 	spinlock_t split_queue_lock;
7485 	struct list_head split_queue;
7486 	long unsigned int split_queue_len;
7487 };
7488 
7489 struct per_cpu_nodestat;
7490 
7491 struct pglist_data {
7492 	struct zone node_zones[2];
7493 	struct zonelist node_zonelists[2];
7494 	int nr_zones;
7495 	spinlock_t node_size_lock;
7496 	long unsigned int node_start_pfn;
7497 	long unsigned int node_present_pages;
7498 	long unsigned int node_spanned_pages;
7499 	int node_id;
7500 	wait_queue_head_t kswapd_wait;
7501 	wait_queue_head_t pfmemalloc_wait;
7502 	wait_queue_head_t reclaim_wait[4];
7503 	atomic_t nr_writeback_throttled;
7504 	long unsigned int nr_reclaim_start;
7505 	struct task_struct *kswapd;
7506 	int kswapd_order;
7507 	enum zone_type kswapd_highest_zoneidx;
7508 	int kswapd_failures;
7509 	int kcompactd_max_order;
7510 	enum zone_type kcompactd_highest_zoneidx;
7511 	wait_queue_head_t kcompactd_wait;
7512 	struct task_struct *kcompactd;
7513 	bool proactive_compact_trigger;
7514 	long unsigned int totalreserve_pages;
7515 	long unsigned int min_unmapped_pages;
7516 	long unsigned int min_slab_pages;
7517 	long: 64;
7518 	long: 64;
7519 	long: 64;
7520 	long: 64;
7521 	long: 64;
7522 	long: 64;
7523 	long: 64;
7524 	struct zone_padding _pad1_;
7525 	struct deferred_split deferred_split_queue;
7526 	struct lruvec __lruvec;
7527 	long unsigned int flags;
7528 	long: 64;
7529 	long: 64;
7530 	long: 64;
7531 	long: 64;
7532 	long: 64;
7533 	long: 64;
7534 	long: 64;
7535 	long: 64;
7536 	long: 64;
7537 	struct zone_padding _pad2_;
7538 	struct per_cpu_nodestat *per_cpu_nodestats;
7539 	atomic_long_t vm_stat[41];
7540 	long: 64;
7541 	long: 64;
7542 	long: 64;
7543 	long: 64;
7544 	long: 64;
7545 	long: 64;
7546 };
7547 
7548 struct per_cpu_pages {
7549 	spinlock_t lock;
7550 	int count;
7551 	int high;
7552 	int batch;
7553 	short int free_factor;
7554 	short int expire;
7555 	struct list_head lists[13];
7556 	long: 64;
7557 	long: 64;
7558 	long: 64;
7559 };
7560 
7561 struct per_cpu_zonestat {
7562 	s8 vm_stat_diff[10];
7563 	s8 stat_threshold;
7564 	long unsigned int vm_numa_event[6];
7565 };
7566 
7567 struct per_cpu_nodestat {
7568 	s8 stat_threshold;
7569 	s8 vm_node_stat_diff[41];
7570 };
7571 
7572 struct mhp_params {
7573 	struct vmem_altmap *altmap;
7574 	pgprot_t pgprot;
7575 	struct dev_pagemap *pgmap;
7576 };
7577 
7578 struct mem_cgroup_id {
7579 	int id;
7580 	refcount_t ref;
7581 };
7582 
7583 struct page_counter {
7584 	atomic_long_t usage;
7585 	long unsigned int min;
7586 	long unsigned int low;
7587 	long unsigned int high;
7588 	long unsigned int max;
7589 	long unsigned int emin;
7590 	atomic_long_t min_usage;
7591 	atomic_long_t children_min_usage;
7592 	long unsigned int elow;
7593 	atomic_long_t low_usage;
7594 	atomic_long_t children_low_usage;
7595 	long unsigned int watermark;
7596 	long unsigned int failcnt;
7597 	struct page_counter *parent;
7598 };
7599 
7600 struct vmpressure {
7601 	long unsigned int scanned;
7602 	long unsigned int reclaimed;
7603 	long unsigned int tree_scanned;
7604 	long unsigned int tree_reclaimed;
7605 	spinlock_t sr_lock;
7606 	struct list_head events;
7607 	struct mutex events_lock;
7608 	struct work_struct work;
7609 };
7610 
7611 struct mem_cgroup_threshold_ary;
7612 
7613 struct mem_cgroup_thresholds {
7614 	struct mem_cgroup_threshold_ary *primary;
7615 	struct mem_cgroup_threshold_ary *spare;
7616 };
7617 
7618 struct memcg_padding {
7619 	char x[0];
7620 };
7621 
7622 struct memcg_vmstats {
7623 	long int state[48];
7624 	long unsigned int events[98];
7625 	long int state_pending[48];
7626 	long unsigned int events_pending[98];
7627 };
7628 
7629 struct obj_cgroup;
7630 
7631 struct memcg_vmstats_percpu;
7632 
7633 struct mem_cgroup_per_node;
7634 
7635 struct mem_cgroup {
7636 	struct cgroup_subsys_state css;
7637 	struct mem_cgroup_id id;
7638 	struct page_counter memory;
7639 	union {
7640 		struct page_counter swap;
7641 		struct page_counter memsw;
7642 	};
7643 	struct page_counter kmem;
7644 	struct page_counter tcpmem;
7645 	struct work_struct high_work;
7646 	long unsigned int soft_limit;
7647 	struct vmpressure vmpressure;
7648 	bool oom_group;
7649 	bool oom_lock;
7650 	int under_oom;
7651 	int swappiness;
7652 	int oom_kill_disable;
7653 	struct cgroup_file events_file;
7654 	struct cgroup_file events_local_file;
7655 	struct cgroup_file swap_events_file;
7656 	struct mutex thresholds_lock;
7657 	struct mem_cgroup_thresholds thresholds;
7658 	struct mem_cgroup_thresholds memsw_thresholds;
7659 	struct list_head oom_notify;
7660 	long unsigned int move_charge_at_immigrate;
7661 	spinlock_t move_lock;
7662 	long unsigned int move_lock_flags;
7663 	long: 64;
7664 	long: 64;
7665 	long: 64;
7666 	long: 64;
7667 	struct memcg_padding _pad1_;
7668 	struct memcg_vmstats vmstats;
7669 	atomic_long_t memory_events[9];
7670 	atomic_long_t memory_events_local[9];
7671 	long unsigned int socket_pressure;
7672 	bool tcpmem_active;
7673 	int tcpmem_pressure;
7674 	int kmemcg_id;
7675 	struct obj_cgroup *objcg;
7676 	struct list_head objcg_list;
7677 	long: 64;
7678 	long: 64;
7679 	long: 64;
7680 	long: 64;
7681 	struct memcg_padding _pad2_;
7682 	atomic_t moving_account;
7683 	struct task_struct *move_lock_task;
7684 	struct memcg_vmstats_percpu *vmstats_percpu;
7685 	struct list_head event_list;
7686 	spinlock_t event_list_lock;
7687 	struct deferred_split deferred_split_queue;
7688 	struct mem_cgroup_per_node *nodeinfo[0];
7689 	long: 64;
7690 	long: 64;
7691 	long: 64;
7692 	long: 64;
7693 	long: 64;
7694 	long: 64;
7695 };
7696 
7697 struct reclaim_state {
7698 	long unsigned int reclaimed_slab;
7699 };
7700 
7701 struct fprop_local_percpu {
7702 	struct percpu_counter events;
7703 	unsigned int period;
7704 	raw_spinlock_t lock;
7705 };
7706 
7707 enum wb_reason {
7708 	WB_REASON_BACKGROUND = 0,
7709 	WB_REASON_VMSCAN = 1,
7710 	WB_REASON_SYNC = 2,
7711 	WB_REASON_PERIODIC = 3,
7712 	WB_REASON_LAPTOP_TIMER = 4,
7713 	WB_REASON_FS_FREE_SPACE = 5,
7714 	WB_REASON_FORKER_THREAD = 6,
7715 	WB_REASON_FOREIGN_FLUSH = 7,
7716 	WB_REASON_MAX = 8,
7717 };
7718 
7719 struct bdi_writeback {
7720 	struct backing_dev_info *bdi;
7721 	long unsigned int state;
7722 	long unsigned int last_old_flush;
7723 	struct list_head b_dirty;
7724 	struct list_head b_io;
7725 	struct list_head b_more_io;
7726 	struct list_head b_dirty_time;
7727 	spinlock_t list_lock;
7728 	atomic_t writeback_inodes;
7729 	struct percpu_counter stat[4];
7730 	long unsigned int bw_time_stamp;
7731 	long unsigned int dirtied_stamp;
7732 	long unsigned int written_stamp;
7733 	long unsigned int write_bandwidth;
7734 	long unsigned int avg_write_bandwidth;
7735 	long unsigned int dirty_ratelimit;
7736 	long unsigned int balanced_dirty_ratelimit;
7737 	struct fprop_local_percpu completions;
7738 	int dirty_exceeded;
7739 	enum wb_reason start_all_reason;
7740 	spinlock_t work_lock;
7741 	struct list_head work_list;
7742 	struct delayed_work dwork;
7743 	struct delayed_work bw_dwork;
7744 	long unsigned int dirty_sleep;
7745 	struct list_head bdi_node;
7746 };
7747 
7748 struct backing_dev_info {
7749 	u64 id;
7750 	struct rb_node rb_node;
7751 	struct list_head bdi_list;
7752 	long unsigned int ra_pages;
7753 	long unsigned int io_pages;
7754 	struct kref refcnt;
7755 	unsigned int capabilities;
7756 	unsigned int min_ratio;
7757 	unsigned int max_ratio;
7758 	unsigned int max_prop_frac;
7759 	atomic_long_t tot_write_bandwidth;
7760 	struct bdi_writeback wb;
7761 	struct list_head wb_list;
7762 	wait_queue_head_t wb_waitq;
7763 	struct device *dev;
7764 	char dev_name[64];
7765 	struct device *owner;
7766 	struct timer_list laptop_mode_wb_timer;
7767 	struct dentry *debug_dir;
7768 };
7769 
7770 struct wait_page_queue {
7771 	struct folio *folio;
7772 	int bit_nr;
7773 	wait_queue_entry_t wait;
7774 };
7775 
7776 enum writeback_sync_modes {
7777 	WB_SYNC_NONE = 0,
7778 	WB_SYNC_ALL = 1,
7779 };
7780 
7781 struct swap_iocb;
7782 
7783 struct writeback_control {
7784 	long int nr_to_write;
7785 	long int pages_skipped;
7786 	loff_t range_start;
7787 	loff_t range_end;
7788 	enum writeback_sync_modes sync_mode;
7789 	unsigned int for_kupdate: 1;
7790 	unsigned int for_background: 1;
7791 	unsigned int tagged_writepages: 1;
7792 	unsigned int for_reclaim: 1;
7793 	unsigned int range_cyclic: 1;
7794 	unsigned int for_sync: 1;
7795 	unsigned int unpinned_fscache_wb: 1;
7796 	unsigned int no_cgroup_owner: 1;
7797 	unsigned int punt_to_cgroup: 1;
7798 	struct swap_iocb **swap_plug;
7799 };
7800 
7801 struct readahead_control {
7802 	struct file *file;
7803 	struct address_space *mapping;
7804 	struct file_ra_state *ra;
7805 	long unsigned int _index;
7806 	unsigned int _nr_pages;
7807 	unsigned int _batch_count;
7808 };
7809 
7810 struct swap_cluster_info {
7811 	spinlock_t lock;
7812 	unsigned int data: 24;
7813 	unsigned int flags: 8;
7814 };
7815 
7816 struct swap_cluster_list {
7817 	struct swap_cluster_info head;
7818 	struct swap_cluster_info tail;
7819 };
7820 
7821 struct percpu_cluster;
7822 
7823 struct swap_info_struct {
7824 	struct percpu_ref users;
7825 	long unsigned int flags;
7826 	short int prio;
7827 	struct plist_node list;
7828 	signed char type;
7829 	unsigned int max;
7830 	unsigned char *swap_map;
7831 	struct swap_cluster_info *cluster_info;
7832 	struct swap_cluster_list free_clusters;
7833 	unsigned int lowest_bit;
7834 	unsigned int highest_bit;
7835 	unsigned int pages;
7836 	unsigned int inuse_pages;
7837 	unsigned int cluster_next;
7838 	unsigned int cluster_nr;
7839 	unsigned int *cluster_next_cpu;
7840 	struct percpu_cluster *percpu_cluster;
7841 	struct rb_root swap_extent_root;
7842 	struct block_device *bdev;
7843 	struct file *swap_file;
7844 	unsigned int old_block_size;
7845 	struct completion comp;
7846 	spinlock_t lock;
7847 	spinlock_t cont_lock;
7848 	struct work_struct discard_work;
7849 	struct swap_cluster_list discard_clusters;
7850 	struct plist_node avail_lists[0];
7851 };
7852 
7853 struct disk_stats;
7854 
7855 struct gendisk;
7856 
7857 struct request_queue;
7858 
7859 struct partition_meta_info;
7860 
7861 struct block_device {
7862 	sector_t bd_start_sect;
7863 	sector_t bd_nr_sectors;
7864 	struct disk_stats *bd_stats;
7865 	long unsigned int bd_stamp;
7866 	bool bd_read_only;
7867 	dev_t bd_dev;
7868 	atomic_t bd_openers;
7869 	struct inode *bd_inode;
7870 	struct super_block *bd_super;
7871 	void *bd_claiming;
7872 	struct device bd_device;
7873 	void *bd_holder;
7874 	int bd_holders;
7875 	bool bd_write_holder;
7876 	struct kobject *bd_holder_dir;
7877 	u8 bd_partno;
7878 	spinlock_t bd_size_lock;
7879 	struct gendisk *bd_disk;
7880 	struct request_queue *bd_queue;
7881 	int bd_fsfreeze_count;
7882 	struct mutex bd_fsfreeze_mutex;
7883 	struct super_block *bd_fsfreeze_sb;
7884 	struct partition_meta_info *bd_meta_info;
7885 };
7886 
7887 struct io_tlb_area;
7888 
7889 struct io_tlb_slot;
7890 
7891 struct io_tlb_mem {
7892 	phys_addr_t start;
7893 	phys_addr_t end;
7894 	void *vaddr;
7895 	long unsigned int nslabs;
7896 	long unsigned int used;
7897 	struct dentry *debugfs;
7898 	bool late_alloc;
7899 	bool force_bounce;
7900 	bool for_alloc;
7901 	unsigned int nareas;
7902 	unsigned int area_nslabs;
7903 	struct io_tlb_area *areas;
7904 	struct io_tlb_slot *slots;
7905 };
7906 
7907 enum wb_stat_item {
7908 	WB_RECLAIMABLE = 0,
7909 	WB_WRITEBACK = 1,
7910 	WB_DIRTIED = 2,
7911 	WB_WRITTEN = 3,
7912 	NR_WB_STAT_ITEMS = 4,
7913 };
7914 
7915 typedef __u32 blk_opf_t;
7916 
7917 enum memcg_stat_item {
7918 	MEMCG_SWAP = 41,
7919 	MEMCG_SOCK = 42,
7920 	MEMCG_PERCPU_B = 43,
7921 	MEMCG_VMALLOC = 44,
7922 	MEMCG_KMEM = 45,
7923 	MEMCG_ZSWAP_B = 46,
7924 	MEMCG_ZSWAPPED = 47,
7925 	MEMCG_NR_STAT = 48,
7926 };
7927 
7928 enum memcg_memory_event {
7929 	MEMCG_LOW = 0,
7930 	MEMCG_HIGH = 1,
7931 	MEMCG_MAX = 2,
7932 	MEMCG_OOM = 3,
7933 	MEMCG_OOM_KILL = 4,
7934 	MEMCG_OOM_GROUP_KILL = 5,
7935 	MEMCG_SWAP_HIGH = 6,
7936 	MEMCG_SWAP_MAX = 7,
7937 	MEMCG_SWAP_FAIL = 8,
7938 	MEMCG_NR_MEMORY_EVENTS = 9,
7939 };
7940 
7941 enum mem_cgroup_events_target {
7942 	MEM_CGROUP_TARGET_THRESH = 0,
7943 	MEM_CGROUP_TARGET_SOFTLIMIT = 1,
7944 	MEM_CGROUP_NTARGETS = 2,
7945 };
7946 
7947 struct memcg_vmstats_percpu {
7948 	long int state[48];
7949 	long unsigned int events[98];
7950 	long int state_prev[48];
7951 	long unsigned int events_prev[98];
7952 	long unsigned int nr_page_events;
7953 	long unsigned int targets[2];
7954 };
7955 
7956 struct mem_cgroup_reclaim_iter {
7957 	struct mem_cgroup *position;
7958 	unsigned int generation;
7959 };
7960 
7961 struct shrinker_info {
7962 	struct callback_head rcu;
7963 	atomic_long_t *nr_deferred;
7964 	long unsigned int *map;
7965 };
7966 
7967 struct lruvec_stats_percpu {
7968 	long int state[41];
7969 	long int state_prev[41];
7970 };
7971 
7972 struct lruvec_stats {
7973 	long int state[41];
7974 	long int state_pending[41];
7975 };
7976 
7977 struct mem_cgroup_per_node {
7978 	struct lruvec lruvec;
7979 	struct lruvec_stats_percpu *lruvec_stats_percpu;
7980 	struct lruvec_stats lruvec_stats;
7981 	long unsigned int lru_zone_size[10];
7982 	struct mem_cgroup_reclaim_iter iter;
7983 	struct shrinker_info *shrinker_info;
7984 	struct rb_node tree_node;
7985 	long unsigned int usage_in_excess;
7986 	bool on_tree;
7987 	struct mem_cgroup *memcg;
7988 };
7989 
7990 struct eventfd_ctx;
7991 
7992 struct mem_cgroup_threshold {
7993 	struct eventfd_ctx *eventfd;
7994 	long unsigned int threshold;
7995 };
7996 
7997 struct mem_cgroup_threshold_ary {
7998 	int current_threshold;
7999 	unsigned int size;
8000 	struct mem_cgroup_threshold entries[0];
8001 };
8002 
8003 struct obj_cgroup {
8004 	struct percpu_ref refcnt;
8005 	struct mem_cgroup *memcg;
8006 	atomic_t nr_charged_bytes;
8007 	union {
8008 		struct list_head list;
8009 		struct callback_head rcu;
8010 	};
8011 };
8012 
8013 struct percpu_cluster {
8014 	struct swap_cluster_info index;
8015 	unsigned int next;
8016 };
8017 
8018 typedef long unsigned int uintptr_t;
8019 
8020 typedef struct {
8021 	pte_t pte;
8022 	long unsigned int hidx;
8023 } real_pte_t;
8024 
8025 struct static_key_true {
8026 	struct static_key key;
8027 };
8028 
8029 struct mmu_psize_def {
8030 	unsigned int shift;
8031 	int penc[16];
8032 	unsigned int tlbiel;
8033 	long unsigned int avpnm;
8034 	long unsigned int h_rpt_pgsize;
8035 	union {
8036 		long unsigned int sllp;
8037 		long unsigned int ap;
8038 	};
8039 };
8040 
8041 struct ppc64_tlb_batch {
8042 	int active;
8043 	long unsigned int index;
8044 	struct mm_struct *mm;
8045 	real_pte_t pte[192];
8046 	long unsigned int vpn[192];
8047 	unsigned int psize;
8048 	int ssize;
8049 };
8050 
8051 struct mmu_table_batch {
8052 	struct callback_head rcu;
8053 	unsigned int nr;
8054 	void *tables[0];
8055 };
8056 
8057 struct mmu_gather_batch {
8058 	struct mmu_gather_batch *next;
8059 	unsigned int nr;
8060 	unsigned int max;
8061 	struct page *pages[0];
8062 };
8063 
8064 struct mmu_gather {
8065 	struct mm_struct *mm;
8066 	struct mmu_table_batch *batch;
8067 	long unsigned int start;
8068 	long unsigned int end;
8069 	unsigned int fullmm: 1;
8070 	unsigned int need_flush_all: 1;
8071 	unsigned int freed_tables: 1;
8072 	unsigned int cleared_ptes: 1;
8073 	unsigned int cleared_pmds: 1;
8074 	unsigned int cleared_puds: 1;
8075 	unsigned int cleared_p4ds: 1;
8076 	unsigned int vma_exec: 1;
8077 	unsigned int vma_huge: 1;
8078 	unsigned int vma_pfn: 1;
8079 	unsigned int batch_count;
8080 	struct mmu_gather_batch *active;
8081 	struct mmu_gather_batch local;
8082 	struct page *__pages[8];
8083 	unsigned int page_size;
8084 };
8085 
8086 struct bio;
8087 
8088 struct bio_list {
8089 	struct bio *head;
8090 	struct bio *tail;
8091 };
8092 
8093 typedef void *mempool_alloc_t(gfp_t, void *);
8094 
8095 typedef void mempool_free_t(void *, void *);
8096 
8097 struct mempool_s {
8098 	spinlock_t lock;
8099 	int min_nr;
8100 	int curr_nr;
8101 	void **elements;
8102 	void *pool_data;
8103 	mempool_alloc_t *alloc;
8104 	mempool_free_t *free;
8105 	wait_queue_head_t wait;
8106 };
8107 
8108 typedef struct mempool_s mempool_t;
8109 
8110 typedef u8 blk_status_t;
8111 
8112 struct bvec_iter {
8113 	sector_t bi_sector;
8114 	unsigned int bi_size;
8115 	unsigned int bi_idx;
8116 	unsigned int bi_bvec_done;
8117 } __attribute__((packed));
8118 
8119 typedef unsigned int blk_qc_t;
8120 
8121 typedef void bio_end_io_t(struct bio *);
8122 
8123 struct bio_set;
8124 
8125 struct bio {
8126 	struct bio *bi_next;
8127 	struct block_device *bi_bdev;
8128 	blk_opf_t bi_opf;
8129 	short unsigned int bi_flags;
8130 	short unsigned int bi_ioprio;
8131 	blk_status_t bi_status;
8132 	atomic_t __bi_remaining;
8133 	struct bvec_iter bi_iter;
8134 	blk_qc_t bi_cookie;
8135 	bio_end_io_t *bi_end_io;
8136 	void *bi_private;
8137 	union {};
8138 	short unsigned int bi_vcnt;
8139 	short unsigned int bi_max_vecs;
8140 	atomic_t __bi_cnt;
8141 	struct bio_vec *bi_io_vec;
8142 	struct bio_set *bi_pool;
8143 	struct bio_vec bi_inline_vecs[0];
8144 };
8145 
8146 struct bio_alloc_cache;
8147 
8148 struct bio_set {
8149 	struct kmem_cache *bio_slab;
8150 	unsigned int front_pad;
8151 	struct bio_alloc_cache *cache;
8152 	mempool_t bio_pool;
8153 	mempool_t bvec_pool;
8154 	unsigned int back_pad;
8155 	spinlock_t rescue_lock;
8156 	struct bio_list rescue_list;
8157 	struct work_struct rescue_work;
8158 	struct workqueue_struct *rescue_workqueue;
8159 	struct hlist_node cpuhp_dead;
8160 };
8161 
8162 enum {
8163 	NDD_UNARMED = 1,
8164 	NDD_LOCKED = 2,
8165 	NDD_SECURITY_OVERWRITE = 3,
8166 	NDD_WORK_PENDING = 4,
8167 	NDD_LABELING = 6,
8168 	ND_IOCTL_MAX_BUFLEN = 4194304,
8169 	ND_CMD_MAX_ELEM = 5,
8170 	ND_CMD_MAX_ENVELOPE = 256,
8171 	ND_MAX_MAPPINGS = 32,
8172 	ND_REGION_PAGEMAP = 0,
8173 	ND_REGION_PERSIST_CACHE = 1,
8174 	ND_REGION_PERSIST_MEMCTRL = 2,
8175 	ND_REGION_ASYNC = 3,
8176 	ND_REGION_CXL = 4,
8177 	DPA_RESOURCE_ADJUSTED = 1,
8178 };
8179 
8180 typedef s64 int64_t;
8181 
8182 typedef long unsigned int irq_hw_number_t;
8183 
8184 struct kvm;
8185 
8186 struct kvmppc_vcore {
8187 	int n_runnable;
8188 	int num_threads;
8189 	int entry_exit_map;
8190 	int napping_threads;
8191 	int first_vcpuid;
8192 	u16 pcpu;
8193 	u16 last_cpu;
8194 	u8 vcore_state;
8195 	u8 in_guest;
8196 	struct kvm_vcpu *runnable_threads[8];
8197 	struct list_head preempt_list;
8198 	spinlock_t lock;
8199 	struct rcuwait wait;
8200 	spinlock_t stoltb_lock;
8201 	u64 stolen_tb;
8202 	u64 preempt_tb;
8203 	struct kvm_vcpu *runner;
8204 	struct kvm *kvm;
8205 	u64 tb_offset;
8206 	u64 tb_offset_applied;
8207 	ulong lpcr;
8208 	u32 arch_compat;
8209 	ulong pcr;
8210 	ulong dpdes;
8211 	ulong vtb;
8212 	ulong conferring_threads;
8213 	unsigned int halt_poll_ns;
8214 	atomic_t online_count;
8215 };
8216 
8217 struct preempt_ops;
8218 
8219 struct preempt_notifier {
8220 	struct hlist_node link;
8221 	struct preempt_ops *ops;
8222 };
8223 
8224 typedef u64 gpa_t;
8225 
8226 struct kvm_mmio_fragment {
8227 	gpa_t gpa;
8228 	void *data;
8229 	unsigned int len;
8230 };
8231 
8232 struct kvmppc_slb {
8233 	u64 esid;
8234 	u64 vsid;
8235 	u64 orige;
8236 	u64 origv;
8237 	bool valid: 1;
8238 	bool Ks: 1;
8239 	bool Kp: 1;
8240 	bool nx: 1;
8241 	bool large: 1;
8242 	bool tb: 1;
8243 	bool class: 1;
8244 	u8 base_page_size;
8245 };
8246 
8247 typedef long unsigned int gva_t;
8248 
8249 struct kvmppc_pte;
8250 
8251 struct kvmppc_mmu {
8252 	void (*slbmte)(struct kvm_vcpu *, u64, u64);
8253 	u64 (*slbmfee)(struct kvm_vcpu *, u64);
8254 	u64 (*slbmfev)(struct kvm_vcpu *, u64);
8255 	int (*slbfee)(struct kvm_vcpu *, gva_t, ulong *);
8256 	void (*slbie)(struct kvm_vcpu *, u64);
8257 	void (*slbia)(struct kvm_vcpu *);
8258 	void (*mtsrin)(struct kvm_vcpu *, u32, ulong);
8259 	u32 (*mfsrin)(struct kvm_vcpu *, u32);
8260 	int (*xlate)(struct kvm_vcpu *, gva_t, struct kvmppc_pte *, bool, bool);
8261 	void (*tlbie)(struct kvm_vcpu *, ulong, bool);
8262 	int (*esid_to_vsid)(struct kvm_vcpu *, ulong, u64 *);
8263 	u64 (*ea_to_vp)(struct kvm_vcpu *, gva_t, bool);
8264 	bool (*is_dcbz32)(struct kvm_vcpu *);
8265 };
8266 
8267 struct openpic;
8268 
8269 union xive_tma_w01 {
8270 	struct {
8271 		u8 nsr;
8272 		u8 cppr;
8273 		u8 ipb;
8274 		u8 lsmfb;
8275 		u8 ack;
8276 		u8 inc;
8277 		u8 age;
8278 		u8 pipr;
8279 	};
8280 	__be64 w01;
8281 };
8282 
8283 struct kvm_vcpu_arch_shared {
8284 	__u64 scratch1;
8285 	__u64 scratch2;
8286 	__u64 scratch3;
8287 	__u64 critical;
8288 	__u64 sprg0;
8289 	__u64 sprg1;
8290 	__u64 sprg2;
8291 	__u64 sprg3;
8292 	__u64 srr0;
8293 	__u64 srr1;
8294 	__u64 dar;
8295 	__u64 msr;
8296 	__u32 dsisr;
8297 	__u32 int_pending;
8298 	__u32 sr[16];
8299 	__u32 mas0;
8300 	__u32 mas1;
8301 	__u64 mas7_3;
8302 	__u64 mas2;
8303 	__u32 mas4;
8304 	__u32 mas6;
8305 	__u32 esr;
8306 	__u32 pir;
8307 	__u64 sprg4;
8308 	__u64 sprg5;
8309 	__u64 sprg6;
8310 	__u64 sprg7;
8311 };
8312 
8313 struct mmio_hpte_cache_entry {
8314 	long unsigned int hpte_v;
8315 	long unsigned int hpte_r;
8316 	long unsigned int rpte;
8317 	long unsigned int pte_index;
8318 	long unsigned int eaddr;
8319 	long unsigned int slb_v;
8320 	long int mmio_update;
8321 	unsigned int slb_base_pshift;
8322 };
8323 
8324 struct mmio_hpte_cache {
8325 	struct mmio_hpte_cache_entry entry[4];
8326 	unsigned int index;
8327 };
8328 
8329 struct kvmppc_vpa {
8330 	long unsigned int gpa;
8331 	void *pinned_addr;
8332 	void *pinned_end;
8333 	long unsigned int next_gpa;
8334 	long unsigned int len;
8335 	u8 update_pending;
8336 	bool dirty;
8337 };
8338 
8339 struct kvmppc_vcpu_book3s;
8340 
8341 struct kvmppc_icp;
8342 
8343 struct kvmppc_xive_vcpu;
8344 
8345 struct kvm_nested_guest;
8346 
8347 struct kvm_vcpu_arch {
8348 	ulong host_stack;
8349 	u32 host_pid;
8350 	struct kvmppc_slb slb[64];
8351 	int slb_max;
8352 	int slb_nr;
8353 	struct kvmppc_mmu mmu;
8354 	struct kvmppc_vcpu_book3s *book3s;
8355 	long: 64;
8356 	long: 64;
8357 	long: 64;
8358 	long: 64;
8359 	long: 64;
8360 	long: 64;
8361 	long: 64;
8362 	long: 64;
8363 	long: 64;
8364 	long: 64;
8365 	long: 64;
8366 	long: 64;
8367 	long: 64;
8368 	long: 64;
8369 	long: 64;
8370 	long: 64;
8371 	long: 64;
8372 	long: 64;
8373 	long: 64;
8374 	long: 64;
8375 	long: 64;
8376 	long: 64;
8377 	long: 64;
8378 	long: 64;
8379 	long: 64;
8380 	long: 64;
8381 	long: 64;
8382 	long: 64;
8383 	long: 64;
8384 	long: 64;
8385 	long: 64;
8386 	long: 64;
8387 	long: 64;
8388 	long: 64;
8389 	long: 64;
8390 	long: 64;
8391 	long: 64;
8392 	long: 64;
8393 	long: 64;
8394 	long: 64;
8395 	long: 64;
8396 	long: 64;
8397 	long: 64;
8398 	long: 64;
8399 	long: 64;
8400 	long: 64;
8401 	long: 64;
8402 	struct pt_regs regs;
8403 	struct thread_fp_state fp;
8404 	struct thread_vr_state vr;
8405 	u32 qpr[32];
8406 	ulong tar;
8407 	ulong hflags;
8408 	ulong guest_owned_ext;
8409 	ulong purr;
8410 	ulong spurr;
8411 	ulong ic;
8412 	ulong dscr;
8413 	ulong amr;
8414 	ulong uamor;
8415 	ulong iamr;
8416 	u32 ctrl;
8417 	u32 dabrx;
8418 	ulong dabr;
8419 	ulong dawr0;
8420 	ulong dawrx0;
8421 	ulong dawr1;
8422 	ulong dawrx1;
8423 	ulong ciabr;
8424 	ulong cfar;
8425 	ulong ppr;
8426 	u32 pspb;
8427 	u8 load_ebb;
8428 	u8 load_tm;
8429 	ulong fscr;
8430 	ulong shadow_fscr;
8431 	ulong ebbhr;
8432 	ulong ebbrr;
8433 	ulong bescr;
8434 	ulong csigr;
8435 	ulong tacr;
8436 	ulong tcscr;
8437 	ulong acop;
8438 	ulong wort;
8439 	ulong tid;
8440 	ulong psscr;
8441 	ulong hfscr;
8442 	ulong shadow_srr1;
8443 	u32 vrsave;
8444 	u32 mmucr;
8445 	ulong shadow_msr;
8446 	ulong csrr0;
8447 	ulong csrr1;
8448 	ulong dsrr0;
8449 	ulong dsrr1;
8450 	ulong mcsrr0;
8451 	ulong mcsrr1;
8452 	ulong mcsr;
8453 	ulong dec;
8454 	u64 entry_tb;
8455 	u64 entry_vtb;
8456 	u64 entry_ic;
8457 	u32 tcr;
8458 	ulong tsr;
8459 	u32 ivor[64];
8460 	ulong ivpr;
8461 	u32 pvr;
8462 	u32 shadow_pid;
8463 	u32 shadow_pid1;
8464 	u32 pid;
8465 	u32 swap_pid;
8466 	u32 ccr0;
8467 	u32 ccr1;
8468 	u32 dbsr;
8469 	u64 mmcr[4];
8470 	u64 mmcra;
8471 	u64 mmcrs;
8472 	u32 pmc[8];
8473 	u32 spmc[2];
8474 	u64 siar;
8475 	u64 sdar;
8476 	u64 sier[3];
8477 	u64 tfhar;
8478 	u64 texasr;
8479 	u64 tfiar;
8480 	u64 orig_texasr;
8481 	u32 cr_tm;
8482 	u64 xer_tm;
8483 	u64 lr_tm;
8484 	u64 ctr_tm;
8485 	u64 amr_tm;
8486 	u64 ppr_tm;
8487 	u64 dscr_tm;
8488 	u64 tar_tm;
8489 	ulong gpr_tm[32];
8490 	struct thread_fp_state fp_tm;
8491 	struct thread_vr_state vr_tm;
8492 	u32 vrsave_tm;
8493 	ulong fault_dar;
8494 	u32 fault_dsisr;
8495 	long unsigned int intr_msr;
8496 	ulong fault_gpa;
8497 	gpa_t paddr_accessed;
8498 	gva_t vaddr_accessed;
8499 	pgd_t *pgdir;
8500 	u16 io_gpr;
8501 	u8 mmio_host_swabbed;
8502 	u8 mmio_sign_extend;
8503 	u8 mmio_sp64_extend;
8504 	u8 mmio_vsx_copy_nums;
8505 	u8 mmio_vsx_offset;
8506 	u8 mmio_vmx_copy_nums;
8507 	u8 mmio_vmx_offset;
8508 	u8 mmio_copy_type;
8509 	u8 osi_needed;
8510 	u8 osi_enabled;
8511 	u8 papr_enabled;
8512 	u8 watchdog_enabled;
8513 	u8 sane;
8514 	u8 cpu_type;
8515 	u8 hcall_needed;
8516 	u8 epr_flags;
8517 	u8 epr_needed;
8518 	u8 external_oneshot;
8519 	u32 cpr0_cfgaddr;
8520 	struct hrtimer dec_timer;
8521 	u64 dec_jiffies;
8522 	u64 dec_expires;
8523 	long unsigned int pending_exceptions;
8524 	u8 ceded;
8525 	u8 prodded;
8526 	u8 doorbell_request;
8527 	u8 irq_pending;
8528 	u32 last_inst;
8529 	struct rcuwait wait;
8530 	struct rcuwait *waitp;
8531 	struct kvmppc_vcore *vcore;
8532 	int ret;
8533 	int trap;
8534 	int state;
8535 	int ptid;
8536 	int thread_cpu;
8537 	int prev_cpu;
8538 	bool timer_running;
8539 	wait_queue_head_t cpu_run;
8540 	struct machine_check_event mce_evt;
8541 	struct kvm_vcpu_arch_shared *shared;
8542 	long unsigned int magic_page_pa;
8543 	long unsigned int magic_page_ea;
8544 	bool disable_kernel_nx;
8545 	int irq_type;
8546 	int irq_cpu_id;
8547 	struct openpic *mpic;
8548 	struct kvmppc_icp *icp;
8549 	struct kvmppc_xive_vcpu *xive_vcpu;
8550 	__be32 xive_cam_word;
8551 	u8 xive_pushed;
8552 	u8 xive_esc_on;
8553 	union xive_tma_w01 xive_saved_state;
8554 	u64 xive_esc_raddr;
8555 	u64 xive_esc_vaddr;
8556 	struct kvm_vcpu_arch_shared shregs;
8557 	struct mmio_hpte_cache mmio_cache;
8558 	long unsigned int pgfault_addr;
8559 	long int pgfault_index;
8560 	long unsigned int pgfault_hpte[2];
8561 	struct mmio_hpte_cache_entry *pgfault_cache;
8562 	struct task_struct *run_task;
8563 	spinlock_t vpa_update_lock;
8564 	struct kvmppc_vpa vpa;
8565 	struct kvmppc_vpa dtl;
8566 	struct dtl_entry *dtl_ptr;
8567 	long unsigned int dtl_index;
8568 	u64 stolen_logged;
8569 	struct kvmppc_vpa slb_shadow;
8570 	spinlock_t tbacct_lock;
8571 	u64 busy_stolen;
8572 	u64 busy_preempt;
8573 	u32 emul_inst;
8574 	u32 online;
8575 	u64 hfscr_permitted;
8576 	struct kvm_nested_guest *nested;
8577 	u64 nested_hfscr;
8578 	u32 nested_vcpu_id;
8579 	gpa_t nested_io_gpr;
8580 	long: 64;
8581 	long: 64;
8582 	long: 64;
8583 	long: 64;
8584 	long: 64;
8585 	long: 64;
8586 	long: 64;
8587 	long: 64;
8588 	long: 64;
8589 	long: 64;
8590 	long: 64;
8591 	long: 64;
8592 };
8593 
8594 struct kvm_vcpu_stat_generic {
8595 	u64 halt_successful_poll;
8596 	u64 halt_attempted_poll;
8597 	u64 halt_poll_invalid;
8598 	u64 halt_wakeup;
8599 	u64 halt_poll_success_ns;
8600 	u64 halt_poll_fail_ns;
8601 	u64 halt_wait_ns;
8602 	u64 halt_poll_success_hist[32];
8603 	u64 halt_poll_fail_hist[32];
8604 	u64 halt_wait_hist[32];
8605 	u64 blocking;
8606 };
8607 
8608 struct kvm_vcpu_stat {
8609 	struct kvm_vcpu_stat_generic generic;
8610 	u64 sum_exits;
8611 	u64 mmio_exits;
8612 	u64 signal_exits;
8613 	u64 light_exits;
8614 	u64 itlb_real_miss_exits;
8615 	u64 itlb_virt_miss_exits;
8616 	u64 dtlb_real_miss_exits;
8617 	u64 dtlb_virt_miss_exits;
8618 	u64 syscall_exits;
8619 	u64 isi_exits;
8620 	u64 dsi_exits;
8621 	u64 emulated_inst_exits;
8622 	u64 dec_exits;
8623 	u64 ext_intr_exits;
8624 	u64 halt_successful_wait;
8625 	u64 dbell_exits;
8626 	u64 gdbell_exits;
8627 	u64 ld;
8628 	u64 st;
8629 	u64 pf_storage;
8630 	u64 pf_instruc;
8631 	u64 sp_storage;
8632 	u64 sp_instruc;
8633 	u64 queue_intr;
8634 	u64 ld_slow;
8635 	u64 st_slow;
8636 	u64 pthru_all;
8637 	u64 pthru_host;
8638 	u64 pthru_bad_aff;
8639 };
8640 
8641 struct kvm_dirty_gfn;
8642 
8643 struct kvm_dirty_ring {
8644 	u32 dirty_index;
8645 	u32 reset_index;
8646 	u32 size;
8647 	u32 soft_limit;
8648 	struct kvm_dirty_gfn *dirty_gfns;
8649 	int index;
8650 };
8651 
8652 struct kvm_run;
8653 
8654 struct kvm_memory_slot;
8655 
8656 struct kvm_vcpu {
8657 	struct kvm *kvm;
8658 	struct preempt_notifier preempt_notifier;
8659 	int cpu;
8660 	int vcpu_id;
8661 	int vcpu_idx;
8662 	int ____srcu_idx;
8663 	int mode;
8664 	u64 requests;
8665 	long unsigned int guest_debug;
8666 	struct mutex mutex;
8667 	struct kvm_run *run;
8668 	struct pid *pid;
8669 	int sigset_active;
8670 	sigset_t sigset;
8671 	unsigned int halt_poll_ns;
8672 	bool valid_wakeup;
8673 	int mmio_needed;
8674 	int mmio_read_completed;
8675 	int mmio_is_write;
8676 	int mmio_cur_fragment;
8677 	int mmio_nr_fragments;
8678 	struct kvm_mmio_fragment mmio_fragments[2];
8679 	bool preempted;
8680 	bool ready;
8681 	long: 64;
8682 	long: 64;
8683 	long: 64;
8684 	long: 64;
8685 	long: 64;
8686 	long: 64;
8687 	long: 64;
8688 	long: 64;
8689 	long: 64;
8690 	long: 64;
8691 	long: 64;
8692 	long: 64;
8693 	long: 64;
8694 	long: 64;
8695 	long: 64;
8696 	long: 64;
8697 	long: 64;
8698 	long: 64;
8699 	long: 64;
8700 	long: 64;
8701 	long: 64;
8702 	long: 64;
8703 	long: 64;
8704 	long: 64;
8705 	long: 64;
8706 	long: 64;
8707 	long: 64;
8708 	long: 64;
8709 	long: 64;
8710 	long: 64;
8711 	long: 64;
8712 	long: 64;
8713 	long: 64;
8714 	long: 64;
8715 	long: 64;
8716 	struct kvm_vcpu_arch arch;
8717 	struct kvm_vcpu_stat stat;
8718 	char stats_id[48];
8719 	struct kvm_dirty_ring dirty_ring;
8720 	struct kvm_memory_slot *last_used_slot;
8721 	u64 last_used_slot_gen;
8722 	long: 64;
8723 	long: 64;
8724 	long: 64;
8725 	long: 64;
8726 	long: 64;
8727 	long: 64;
8728 	long: 64;
8729 	long: 64;
8730 	long: 64;
8731 	long: 64;
8732 	long: 64;
8733 	long: 64;
8734 	long: 64;
8735 	long: 64;
8736 	long: 64;
8737 	long: 64;
8738 	long: 64;
8739 	long: 64;
8740 	long: 64;
8741 	long: 64;
8742 	long: 64;
8743 	long: 64;
8744 	long: 64;
8745 	long: 64;
8746 	long: 64;
8747 	long: 64;
8748 	long: 64;
8749 	long: 64;
8750 	long: 64;
8751 	long: 64;
8752 	long: 64;
8753 	long: 64;
8754 	long: 64;
8755 	long: 64;
8756 	long: 64;
8757 	long: 64;
8758 	long: 64;
8759 	long: 64;
8760 	long: 64;
8761 	long: 64;
8762 	long: 64;
8763 	long: 64;
8764 	long: 64;
8765 	long: 64;
8766 	long: 64;
8767 	long: 64;
8768 	long: 64;
8769 };
8770 
8771 struct preempt_ops {
8772 	void (*sched_in)(struct preempt_notifier *, int);
8773 	void (*sched_out)(struct preempt_notifier *, struct task_struct *);
8774 };
8775 
8776 enum irqreturn {
8777 	IRQ_NONE = 0,
8778 	IRQ_HANDLED = 1,
8779 	IRQ_WAKE_THREAD = 2,
8780 };
8781 
8782 typedef enum irqreturn irqreturn_t;
8783 
8784 struct irq_desc;
8785 
8786 typedef void (*irq_flow_handler_t)(struct irq_desc *);
8787 
8788 struct msi_desc;
8789 
8790 struct irq_common_data {
8791 	unsigned int state_use_accessors;
8792 	unsigned int node;
8793 	void *handler_data;
8794 	struct msi_desc *msi_desc;
8795 	cpumask_var_t affinity;
8796 };
8797 
8798 struct irq_chip;
8799 
8800 struct irq_data {
8801 	u32 mask;
8802 	unsigned int irq;
8803 	long unsigned int hwirq;
8804 	struct irq_common_data *common;
8805 	struct irq_chip *chip;
8806 	struct irq_domain *domain;
8807 	struct irq_data *parent_data;
8808 	void *chip_data;
8809 };
8810 
8811 struct irqaction;
8812 
8813 struct irq_affinity_notify;
8814 
8815 struct irq_desc {
8816 	struct irq_common_data irq_common_data;
8817 	struct irq_data irq_data;
8818 	unsigned int *kstat_irqs;
8819 	irq_flow_handler_t handle_irq;
8820 	struct irqaction *action;
8821 	unsigned int status_use_accessors;
8822 	unsigned int core_internal_state__do_not_mess_with_it;
8823 	unsigned int depth;
8824 	unsigned int wake_depth;
8825 	unsigned int tot_count;
8826 	unsigned int irq_count;
8827 	long unsigned int last_unhandled;
8828 	unsigned int irqs_unhandled;
8829 	atomic_t threads_handled;
8830 	int threads_handled_last;
8831 	raw_spinlock_t lock;
8832 	struct cpumask *percpu_enabled;
8833 	const struct cpumask *percpu_affinity;
8834 	const struct cpumask *affinity_hint;
8835 	struct irq_affinity_notify *affinity_notify;
8836 	long unsigned int threads_oneshot;
8837 	atomic_t threads_active;
8838 	wait_queue_head_t wait_for_threads;
8839 	unsigned int nr_actions;
8840 	unsigned int no_suspend_depth;
8841 	unsigned int cond_suspend_depth;
8842 	unsigned int force_resume_depth;
8843 	struct proc_dir_entry *dir;
8844 	struct callback_head rcu;
8845 	struct kobject kobj;
8846 	struct mutex request_mutex;
8847 	int parent_irq;
8848 	struct module *owner;
8849 	const char *name;
8850 	long: 64;
8851 	long: 64;
8852 	long: 64;
8853 	long: 64;
8854 	long: 64;
8855 	long: 64;
8856 	long: 64;
8857 	long: 64;
8858 	long: 64;
8859 	long: 64;
8860 	long: 64;
8861 	long: 64;
8862 	long: 64;
8863 	long: 64;
8864 	long: 64;
8865 };
8866 
8867 struct device_attribute {
8868 	struct attribute attr;
8869 	ssize_t (*show)(struct device *, struct device_attribute *, char *);
8870 	ssize_t (*store)(struct device *, struct device_attribute *, const char *, size_t);
8871 };
8872 
8873 enum irq_domain_bus_token {
8874 	DOMAIN_BUS_ANY = 0,
8875 	DOMAIN_BUS_WIRED = 1,
8876 	DOMAIN_BUS_GENERIC_MSI = 2,
8877 	DOMAIN_BUS_PCI_MSI = 3,
8878 	DOMAIN_BUS_PLATFORM_MSI = 4,
8879 	DOMAIN_BUS_NEXUS = 5,
8880 	DOMAIN_BUS_IPI = 6,
8881 	DOMAIN_BUS_FSL_MC_MSI = 7,
8882 	DOMAIN_BUS_TI_SCI_INTA_MSI = 8,
8883 	DOMAIN_BUS_WAKEUP = 9,
8884 	DOMAIN_BUS_VMD_MSI = 10,
8885 };
8886 
8887 struct irq_domain_ops;
8888 
8889 struct irq_domain_chip_generic;
8890 
8891 struct irq_domain {
8892 	struct list_head link;
8893 	const char *name;
8894 	const struct irq_domain_ops *ops;
8895 	void *host_data;
8896 	unsigned int flags;
8897 	unsigned int mapcount;
8898 	struct fwnode_handle *fwnode;
8899 	enum irq_domain_bus_token bus_token;
8900 	struct irq_domain_chip_generic *gc;
8901 	struct device *dev;
8902 	struct irq_domain *parent;
8903 	irq_hw_number_t hwirq_max;
8904 	unsigned int revmap_size;
8905 	struct xarray revmap_tree;
8906 	struct mutex revmap_mutex;
8907 	struct irq_data *revmap[0];
8908 };
8909 
8910 struct platform_msi_priv_data;
8911 
8912 struct msi_device_data {
8913 	long unsigned int properties;
8914 	struct platform_msi_priv_data *platform_data;
8915 	struct mutex mutex;
8916 	struct xarray __store;
8917 	long unsigned int __iter_idx;
8918 };
8919 
8920 struct arch_msi_msg_addr_lo {
8921 	u32 address_lo;
8922 };
8923 
8924 typedef struct arch_msi_msg_addr_lo arch_msi_msg_addr_lo_t;
8925 
8926 struct arch_msi_msg_addr_hi {
8927 	u32 address_hi;
8928 };
8929 
8930 typedef struct arch_msi_msg_addr_hi arch_msi_msg_addr_hi_t;
8931 
8932 struct arch_msi_msg_data {
8933 	u32 data;
8934 };
8935 
8936 typedef struct arch_msi_msg_data arch_msi_msg_data_t;
8937 
8938 struct msi_msg {
8939 	union {
8940 		u32 address_lo;
8941 		arch_msi_msg_addr_lo_t arch_addr_lo;
8942 	};
8943 	union {
8944 		u32 address_hi;
8945 		arch_msi_msg_addr_hi_t arch_addr_hi;
8946 	};
8947 	union {
8948 		u32 data;
8949 		arch_msi_msg_data_t arch_data;
8950 	};
8951 };
8952 
8953 struct pci_msi_desc {
8954 	union {
8955 		u32 msi_mask;
8956 		u32 msix_ctrl;
8957 	};
8958 	struct {
8959 		u8 is_msix: 1;
8960 		u8 multiple: 3;
8961 		u8 multi_cap: 3;
8962 		u8 can_mask: 1;
8963 		u8 is_64: 1;
8964 		u8 is_virtual: 1;
8965 		unsigned int default_irq;
8966 	} msi_attrib;
8967 	union {
8968 		u8 mask_pos;
8969 		void *mask_base;
8970 	};
8971 };
8972 
8973 struct irq_affinity_desc;
8974 
8975 struct msi_desc {
8976 	unsigned int irq;
8977 	unsigned int nvec_used;
8978 	struct device *dev;
8979 	struct msi_msg msg;
8980 	struct irq_affinity_desc *affinity;
8981 	struct device_attribute *sysfs_attrs;
8982 	void (*write_msi_msg)(struct msi_desc *, void *);
8983 	void *write_msi_msg_data;
8984 	u16 msi_index;
8985 	struct pci_msi_desc pci;
8986 };
8987 
8988 enum irqchip_irq_state {
8989 	IRQCHIP_STATE_PENDING = 0,
8990 	IRQCHIP_STATE_ACTIVE = 1,
8991 	IRQCHIP_STATE_MASKED = 2,
8992 	IRQCHIP_STATE_LINE_LEVEL = 3,
8993 };
8994 
8995 struct irq_chip {
8996 	const char *name;
8997 	unsigned int (*irq_startup)(struct irq_data *);
8998 	void (*irq_shutdown)(struct irq_data *);
8999 	void (*irq_enable)(struct irq_data *);
9000 	void (*irq_disable)(struct irq_data *);
9001 	void (*irq_ack)(struct irq_data *);
9002 	void (*irq_mask)(struct irq_data *);
9003 	void (*irq_mask_ack)(struct irq_data *);
9004 	void (*irq_unmask)(struct irq_data *);
9005 	void (*irq_eoi)(struct irq_data *);
9006 	int (*irq_set_affinity)(struct irq_data *, const struct cpumask *, bool);
9007 	int (*irq_retrigger)(struct irq_data *);
9008 	int (*irq_set_type)(struct irq_data *, unsigned int);
9009 	int (*irq_set_wake)(struct irq_data *, unsigned int);
9010 	void (*irq_bus_lock)(struct irq_data *);
9011 	void (*irq_bus_sync_unlock)(struct irq_data *);
9012 	void (*irq_suspend)(struct irq_data *);
9013 	void (*irq_resume)(struct irq_data *);
9014 	void (*irq_pm_shutdown)(struct irq_data *);
9015 	void (*irq_calc_mask)(struct irq_data *);
9016 	void (*irq_print_chip)(struct irq_data *, struct seq_file *);
9017 	int (*irq_request_resources)(struct irq_data *);
9018 	void (*irq_release_resources)(struct irq_data *);
9019 	void (*irq_compose_msi_msg)(struct irq_data *, struct msi_msg *);
9020 	void (*irq_write_msi_msg)(struct irq_data *, struct msi_msg *);
9021 	int (*irq_get_irqchip_state)(struct irq_data *, enum irqchip_irq_state, bool *);
9022 	int (*irq_set_irqchip_state)(struct irq_data *, enum irqchip_irq_state, bool);
9023 	int (*irq_set_vcpu_affinity)(struct irq_data *, void *);
9024 	void (*ipi_send_single)(struct irq_data *, unsigned int);
9025 	void (*ipi_send_mask)(struct irq_data *, const struct cpumask *);
9026 	int (*irq_nmi_setup)(struct irq_data *);
9027 	void (*irq_nmi_teardown)(struct irq_data *);
9028 	long unsigned int flags;
9029 };
9030 
9031 typedef irqreturn_t (*irq_handler_t)(int, void *);
9032 
9033 struct irqaction {
9034 	irq_handler_t handler;
9035 	void *dev_id;
9036 	void *percpu_dev_id;
9037 	struct irqaction *next;
9038 	irq_handler_t thread_fn;
9039 	struct task_struct *thread;
9040 	struct irqaction *secondary;
9041 	unsigned int irq;
9042 	unsigned int flags;
9043 	long unsigned int thread_flags;
9044 	long unsigned int thread_mask;
9045 	const char *name;
9046 	struct proc_dir_entry *dir;
9047 	long: 64;
9048 	long: 64;
9049 	long: 64;
9050 	long: 64;
9051 };
9052 
9053 struct irq_affinity_notify {
9054 	unsigned int irq;
9055 	struct kref kref;
9056 	struct work_struct work;
9057 	void (*notify)(struct irq_affinity_notify *, const cpumask_t *);
9058 	void (*release)(struct kref *);
9059 };
9060 
9061 struct irq_chip_regs {
9062 	long unsigned int enable;
9063 	long unsigned int disable;
9064 	long unsigned int mask;
9065 	long unsigned int ack;
9066 	long unsigned int eoi;
9067 	long unsigned int type;
9068 	long unsigned int polarity;
9069 };
9070 
9071 struct irq_chip_type {
9072 	struct irq_chip chip;
9073 	struct irq_chip_regs regs;
9074 	irq_flow_handler_t handler;
9075 	u32 type;
9076 	u32 mask_cache_priv;
9077 	u32 *mask_cache;
9078 };
9079 
9080 struct irq_chip_generic {
9081 	raw_spinlock_t lock;
9082 	void *reg_base;
9083 	u32 (*reg_readl)(void *);
9084 	void (*reg_writel)(u32, void *);
9085 	void (*suspend)(struct irq_chip_generic *);
9086 	void (*resume)(struct irq_chip_generic *);
9087 	unsigned int irq_base;
9088 	unsigned int irq_cnt;
9089 	u32 mask_cache;
9090 	u32 type_cache;
9091 	u32 polarity_cache;
9092 	u32 wake_enabled;
9093 	u32 wake_active;
9094 	unsigned int num_ct;
9095 	void *private;
9096 	long unsigned int installed;
9097 	long unsigned int unused;
9098 	struct irq_domain *domain;
9099 	struct list_head list;
9100 	struct irq_chip_type chip_types[0];
9101 };
9102 
9103 enum irq_gc_flags {
9104 	IRQ_GC_INIT_MASK_CACHE = 1,
9105 	IRQ_GC_INIT_NESTED_LOCK = 2,
9106 	IRQ_GC_MASK_CACHE_PER_TYPE = 4,
9107 	IRQ_GC_NO_MASK = 8,
9108 	IRQ_GC_BE_IO = 16,
9109 };
9110 
9111 struct irq_domain_chip_generic {
9112 	unsigned int irqs_per_chip;
9113 	unsigned int num_chips;
9114 	unsigned int irq_flags_to_clear;
9115 	unsigned int irq_flags_to_set;
9116 	enum irq_gc_flags gc_flags;
9117 	struct irq_chip_generic *gc[0];
9118 };
9119 
9120 struct irq_affinity_desc {
9121 	struct cpumask mask;
9122 	unsigned int is_managed: 1;
9123 };
9124 
9125 struct irq_fwspec {
9126 	struct fwnode_handle *fwnode;
9127 	int param_count;
9128 	u32 param[16];
9129 };
9130 
9131 struct irq_domain_ops {
9132 	int (*match)(struct irq_domain *, struct device_node *, enum irq_domain_bus_token);
9133 	int (*select)(struct irq_domain *, struct irq_fwspec *, enum irq_domain_bus_token);
9134 	int (*map)(struct irq_domain *, unsigned int, irq_hw_number_t);
9135 	void (*unmap)(struct irq_domain *, unsigned int);
9136 	int (*xlate)(struct irq_domain *, struct device_node *, const u32 *, unsigned int, long unsigned int *, unsigned int *);
9137 	int (*alloc)(struct irq_domain *, unsigned int, unsigned int, void *);
9138 	void (*free)(struct irq_domain *, unsigned int, unsigned int);
9139 	int (*activate)(struct irq_domain *, struct irq_data *, bool);
9140 	void (*deactivate)(struct irq_domain *, struct irq_data *);
9141 	int (*translate)(struct irq_domain *, struct irq_fwspec *, long unsigned int *, unsigned int *);
9142 };
9143 
9144 struct icp_ops {
9145 	unsigned int (*get_irq)();
9146 	void (*eoi)(struct irq_data *);
9147 	void (*set_priority)(unsigned char);
9148 	void (*teardown_cpu)();
9149 	void (*flush_ipi)();
9150 	void (*cause_ipi)(int);
9151 	irq_handler_t ipi_action;
9152 };
9153 
9154 struct xics_cppr {
9155 	unsigned char stack[3];
9156 	int index;
9157 };
9158 
9159 typedef u64 gfn_t;
9160 
9161 struct interval_tree_node {
9162 	struct rb_node rb;
9163 	long unsigned int start;
9164 	long unsigned int last;
9165 	long unsigned int __subtree_last;
9166 };
9167 
9168 struct kvm_arch_memory_slot {
9169 	long unsigned int *rmap;
9170 };
9171 
9172 struct kvm_memory_slot {
9173 	struct hlist_node id_node[2];
9174 	struct interval_tree_node hva_node[2];
9175 	struct rb_node gfn_node[2];
9176 	gfn_t base_gfn;
9177 	long unsigned int npages;
9178 	long unsigned int *dirty_bitmap;
9179 	struct kvm_arch_memory_slot arch;
9180 	long unsigned int userspace_addr;
9181 	u32 flags;
9182 	short int id;
9183 	u16 as_id;
9184 };
9185 
9186 struct kvm_vm_stat_generic {
9187 	u64 remote_tlb_flush;
9188 	u64 remote_tlb_flush_requests;
9189 };
9190 
9191 enum mmu_notifier_event {
9192 	MMU_NOTIFY_UNMAP = 0,
9193 	MMU_NOTIFY_CLEAR = 1,
9194 	MMU_NOTIFY_PROTECTION_VMA = 2,
9195 	MMU_NOTIFY_PROTECTION_PAGE = 3,
9196 	MMU_NOTIFY_SOFT_DIRTY = 4,
9197 	MMU_NOTIFY_RELEASE = 5,
9198 	MMU_NOTIFY_MIGRATE = 6,
9199 	MMU_NOTIFY_EXCLUSIVE = 7,
9200 };
9201 
9202 struct mmu_notifier;
9203 
9204 struct mmu_notifier_range;
9205 
9206 struct mmu_notifier_ops {
9207 	void (*release)(struct mmu_notifier *, struct mm_struct *);
9208 	int (*clear_flush_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
9209 	int (*clear_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
9210 	int (*test_young)(struct mmu_notifier *, struct mm_struct *, long unsigned int);
9211 	void (*change_pte)(struct mmu_notifier *, struct mm_struct *, long unsigned int, pte_t);
9212 	int (*invalidate_range_start)(struct mmu_notifier *, const struct mmu_notifier_range *);
9213 	void (*invalidate_range_end)(struct mmu_notifier *, const struct mmu_notifier_range *);
9214 	void (*invalidate_range)(struct mmu_notifier *, struct mm_struct *, long unsigned int, long unsigned int);
9215 	struct mmu_notifier * (*alloc_notifier)(struct mm_struct *);
9216 	void (*free_notifier)(struct mmu_notifier *);
9217 };
9218 
9219 struct mmu_notifier {
9220 	struct hlist_node hlist;
9221 	const struct mmu_notifier_ops *ops;
9222 	struct mm_struct *mm;
9223 	struct callback_head rcu;
9224 	unsigned int users;
9225 };
9226 
9227 struct mmu_notifier_range {
9228 	struct vm_area_struct *vma;
9229 	struct mm_struct *mm;
9230 	long unsigned int start;
9231 	long unsigned int end;
9232 	unsigned int flags;
9233 	enum mmu_notifier_event event;
9234 	void *owner;
9235 };
9236 
9237 struct irq_bypass_consumer;
9238 
9239 struct irq_bypass_producer {
9240 	struct list_head node;
9241 	void *token;
9242 	int irq;
9243 	int (*add_consumer)(struct irq_bypass_producer *, struct irq_bypass_consumer *);
9244 	void (*del_consumer)(struct irq_bypass_producer *, struct irq_bypass_consumer *);
9245 	void (*stop)(struct irq_bypass_producer *);
9246 	void (*start)(struct irq_bypass_producer *);
9247 };
9248 
9249 struct irq_bypass_consumer {
9250 	struct list_head node;
9251 	void *token;
9252 	int (*add_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
9253 	void (*del_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
9254 	void (*stop)(struct irq_bypass_consumer *);
9255 	void (*start)(struct irq_bypass_consumer *);
9256 };
9257 
9258 struct kvm_sregs {
9259 	__u32 pvr;
9260 	union {
9261 		struct {
9262 			__u64 sdr1;
9263 			struct {
9264 				struct {
9265 					__u64 slbe;
9266 					__u64 slbv;
9267 				} slb[64];
9268 			} ppc64;
9269 			struct {
9270 				__u32 sr[16];
9271 				__u64 ibat[8];
9272 				__u64 dbat[8];
9273 			} ppc32;
9274 		} s;
9275 		struct {
9276 			union {
9277 				struct {
9278 					__u32 features;
9279 					__u32 svr;
9280 					__u64 mcar;
9281 					__u32 hid0;
9282 					__u32 pid1;
9283 					__u32 pid2;
9284 				} fsl;
9285 				__u8 pad[256];
9286 			} impl;
9287 			__u32 features;
9288 			__u32 impl_id;
9289 			__u32 update_special;
9290 			__u32 pir;
9291 			__u64 sprg8;
9292 			__u64 sprg9;
9293 			__u64 csrr0;
9294 			__u64 dsrr0;
9295 			__u64 mcsrr0;
9296 			__u32 csrr1;
9297 			__u32 dsrr1;
9298 			__u32 mcsrr1;
9299 			__u32 esr;
9300 			__u64 dear;
9301 			__u64 ivpr;
9302 			__u64 mcivpr;
9303 			__u64 mcsr;
9304 			__u32 tsr;
9305 			__u32 tcr;
9306 			__u32 decar;
9307 			__u32 dec;
9308 			__u64 tb;
9309 			__u32 dbsr;
9310 			__u32 dbcr[3];
9311 			__u32 iac[4];
9312 			__u32 dac[2];
9313 			__u32 dvc[2];
9314 			__u8 num_iac;
9315 			__u8 num_dac;
9316 			__u8 num_dvc;
9317 			__u8 pad;
9318 			__u32 epr;
9319 			__u32 vrsave;
9320 			__u32 epcr;
9321 			__u32 mas0;
9322 			__u32 mas1;
9323 			__u64 mas2;
9324 			__u64 mas7_3;
9325 			__u32 mas4;
9326 			__u32 mas6;
9327 			__u32 ivor_low[16];
9328 			__u32 ivor_high[18];
9329 			__u32 mmucfg;
9330 			__u32 eptcfg;
9331 			__u32 tlbcfg[4];
9332 			__u32 tlbps[4];
9333 			__u32 eplc;
9334 			__u32 epsc;
9335 		} e;
9336 		__u8 pad[1020];
9337 	} u;
9338 };
9339 
9340 struct kvm_debug_exit_arch {
9341 	__u64 address;
9342 	__u32 status;
9343 	__u32 reserved;
9344 };
9345 
9346 struct kvm_sync_regs {};
9347 
9348 struct kvm_ppc_mmuv3_cfg {
9349 	__u64 flags;
9350 	__u64 process_table;
9351 };
9352 
9353 struct kvm_ppc_radix_geom {
9354 	__u8 page_shift;
9355 	__u8 level_bits[4];
9356 	__u8 pad[3];
9357 };
9358 
9359 struct kvm_ppc_rmmu_info {
9360 	struct kvm_ppc_radix_geom geometries[8];
9361 	__u32 ap_encodings[8];
9362 };
9363 
9364 struct kvm_hyperv_exit {
9365 	__u32 type;
9366 	__u32 pad1;
9367 	union {
9368 		struct {
9369 			__u32 msr;
9370 			__u32 pad2;
9371 			__u64 control;
9372 			__u64 evt_page;
9373 			__u64 msg_page;
9374 		} synic;
9375 		struct {
9376 			__u64 input;
9377 			__u64 result;
9378 			__u64 params[2];
9379 		} hcall;
9380 		struct {
9381 			__u32 msr;
9382 			__u32 pad2;
9383 			__u64 control;
9384 			__u64 status;
9385 			__u64 send_page;
9386 			__u64 recv_page;
9387 			__u64 pending_page;
9388 		} syndbg;
9389 	} u;
9390 };
9391 
9392 struct kvm_xen_exit {
9393 	__u32 type;
9394 	union {
9395 		struct {
9396 			__u32 longmode;
9397 			__u32 cpl;
9398 			__u64 input;
9399 			__u64 result;
9400 			__u64 params[6];
9401 		} hcall;
9402 	} u;
9403 };
9404 
9405 struct kvm_run {
9406 	__u8 request_interrupt_window;
9407 	__u8 immediate_exit;
9408 	__u8 padding1[6];
9409 	__u32 exit_reason;
9410 	__u8 ready_for_interrupt_injection;
9411 	__u8 if_flag;
9412 	__u16 flags;
9413 	__u64 cr8;
9414 	__u64 apic_base;
9415 	union {
9416 		struct {
9417 			__u64 hardware_exit_reason;
9418 		} hw;
9419 		struct {
9420 			__u64 hardware_entry_failure_reason;
9421 			__u32 cpu;
9422 		} fail_entry;
9423 		struct {
9424 			__u32 exception;
9425 			__u32 error_code;
9426 		} ex;
9427 		struct {
9428 			__u8 direction;
9429 			__u8 size;
9430 			__u16 port;
9431 			__u32 count;
9432 			__u64 data_offset;
9433 		} io;
9434 		struct {
9435 			struct kvm_debug_exit_arch arch;
9436 		} debug;
9437 		struct {
9438 			__u64 phys_addr;
9439 			__u8 data[8];
9440 			__u32 len;
9441 			__u8 is_write;
9442 		} mmio;
9443 		struct {
9444 			__u64 nr;
9445 			__u64 args[6];
9446 			__u64 ret;
9447 			__u32 longmode;
9448 			__u32 pad;
9449 		} hypercall;
9450 		struct {
9451 			__u64 rip;
9452 			__u32 is_write;
9453 			__u32 pad;
9454 		} tpr_access;
9455 		struct {
9456 			__u8 icptcode;
9457 			__u16 ipa;
9458 			__u32 ipb;
9459 		} s390_sieic;
9460 		__u64 s390_reset_flags;
9461 		struct {
9462 			__u64 trans_exc_code;
9463 			__u32 pgm_code;
9464 		} s390_ucontrol;
9465 		struct {
9466 			__u32 dcrn;
9467 			__u32 data;
9468 			__u8 is_write;
9469 		} dcr;
9470 		struct {
9471 			__u32 suberror;
9472 			__u32 ndata;
9473 			__u64 data[16];
9474 		} internal;
9475 		struct {
9476 			__u32 suberror;
9477 			__u32 ndata;
9478 			__u64 flags;
9479 			union {
9480 				struct {
9481 					__u8 insn_size;
9482 					__u8 insn_bytes[15];
9483 				};
9484 			};
9485 		} emulation_failure;
9486 		struct {
9487 			__u64 gprs[32];
9488 		} osi;
9489 		struct {
9490 			__u64 nr;
9491 			__u64 ret;
9492 			__u64 args[9];
9493 		} papr_hcall;
9494 		struct {
9495 			__u16 subchannel_id;
9496 			__u16 subchannel_nr;
9497 			__u32 io_int_parm;
9498 			__u32 io_int_word;
9499 			__u32 ipb;
9500 			__u8 dequeued;
9501 		} s390_tsch;
9502 		struct {
9503 			__u32 epr;
9504 		} epr;
9505 		struct {
9506 			__u32 type;
9507 			__u32 ndata;
9508 			union {
9509 				__u64 data[16];
9510 			};
9511 		} system_event;
9512 		struct {
9513 			__u64 addr;
9514 			__u8 ar;
9515 			__u8 reserved;
9516 			__u8 fc;
9517 			__u8 sel1;
9518 			__u16 sel2;
9519 		} s390_stsi;
9520 		struct {
9521 			__u8 vector;
9522 		} eoi;
9523 		struct kvm_hyperv_exit hyperv;
9524 		struct {
9525 			__u64 esr_iss;
9526 			__u64 fault_ipa;
9527 		} arm_nisv;
9528 		struct {
9529 			__u8 error;
9530 			__u8 pad[7];
9531 			__u32 reason;
9532 			__u32 index;
9533 			__u64 data;
9534 		} msr;
9535 		struct kvm_xen_exit xen;
9536 		struct {
9537 			long unsigned int extension_id;
9538 			long unsigned int function_id;
9539 			long unsigned int args[6];
9540 			long unsigned int ret[2];
9541 		} riscv_sbi;
9542 		struct {
9543 			long unsigned int csr_num;
9544 			long unsigned int new_value;
9545 			long unsigned int write_mask;
9546 			long unsigned int ret_value;
9547 		} riscv_csr;
9548 		struct {
9549 			__u32 flags;
9550 		} notify;
9551 		char padding[256];
9552 	};
9553 	__u64 kvm_valid_regs;
9554 	__u64 kvm_dirty_regs;
9555 	union {
9556 		struct kvm_sync_regs regs;
9557 		char padding[2048];
9558 	} s;
9559 };
9560 
9561 struct kvm_dirty_log {
9562 	__u32 slot;
9563 	__u32 padding1;
9564 	union {
9565 		void *dirty_bitmap;
9566 		__u64 padding2;
9567 	};
9568 };
9569 
9570 struct kvm_ppc_one_page_size {
9571 	__u32 page_shift;
9572 	__u32 pte_enc;
9573 };
9574 
9575 struct kvm_ppc_one_seg_page_size {
9576 	__u32 page_shift;
9577 	__u32 slb_enc;
9578 	struct kvm_ppc_one_page_size enc[8];
9579 };
9580 
9581 struct kvm_ppc_smmu_info {
9582 	__u64 flags;
9583 	__u32 slb_size;
9584 	__u16 data_keys;
9585 	__u16 instr_keys;
9586 	struct kvm_ppc_one_seg_page_size sps[8];
9587 };
9588 
9589 struct kvm_dirty_gfn {
9590 	__u32 flags;
9591 	__u32 slot;
9592 	__u64 offset;
9593 };
9594 
9595 struct kvm_stats_desc {
9596 	__u32 flags;
9597 	__s16 exponent;
9598 	__u16 size;
9599 	__u32 offset;
9600 	__u32 bucket_size;
9601 	char name[0];
9602 };
9603 
9604 struct kvm_vm_stat {
9605 	struct kvm_vm_stat_generic generic;
9606 	u64 num_2M_pages;
9607 	u64 num_1G_pages;
9608 };
9609 
9610 struct kvm_memslots {
9611 	u64 generation;
9612 	atomic_long_t last_used_slot;
9613 	struct rb_root_cached hva_tree;
9614 	struct rb_root gfn_tree;
9615 	struct hlist_head id_hash[128];
9616 	int node_idx;
9617 };
9618 
9619 struct revmap_entry;
9620 
9621 struct kvm_hpt_info {
9622 	long unsigned int virt;
9623 	struct revmap_entry *rev;
9624 	u32 order;
9625 	int cma;
9626 };
9627 
9628 struct kvm_resize_hpt;
9629 
9630 struct kvmppc_xics;
9631 
9632 struct kvmppc_xive;
9633 
9634 struct kvmppc_passthru_irqmap;
9635 
9636 struct kvmppc_ops;
9637 
9638 struct kvm_arch {
9639 	unsigned int lpid;
9640 	unsigned int smt_mode;
9641 	unsigned int emul_smt_mode;
9642 	unsigned int tlb_sets;
9643 	struct kvm_hpt_info hpt;
9644 	atomic64_t mmio_update;
9645 	unsigned int host_lpid;
9646 	long unsigned int host_lpcr;
9647 	long unsigned int sdr1;
9648 	long unsigned int host_sdr1;
9649 	long unsigned int lpcr;
9650 	long unsigned int vrma_slb_v;
9651 	int mmu_ready;
9652 	atomic_t vcpus_running;
9653 	u32 online_vcores;
9654 	atomic_t hpte_mod_interest;
9655 	cpumask_t need_tlb_flush;
9656 	u8 radix;
9657 	u8 fwnmi_enabled;
9658 	u8 secure_guest;
9659 	u8 svm_enabled;
9660 	bool nested_enable;
9661 	bool dawr1_enabled;
9662 	pgd_t *pgtable;
9663 	u64 process_table;
9664 	struct kvm_resize_hpt *resize_hpt;
9665 	struct list_head spapr_tce_tables;
9666 	struct list_head rtas_tokens;
9667 	struct mutex rtas_token_lock;
9668 	long unsigned int enabled_hcalls[5];
9669 	struct kvmppc_xics *xics;
9670 	struct kvmppc_xics *xics_device;
9671 	struct kvmppc_xive *xive;
9672 	struct {
9673 		struct kvmppc_xive *native;
9674 		struct kvmppc_xive *xics_on_xive;
9675 	} xive_devices;
9676 	struct kvmppc_passthru_irqmap *pimap;
9677 	struct kvmppc_ops *kvm_ops;
9678 	struct mutex uvmem_lock;
9679 	struct list_head uvmem_pfns;
9680 	struct mutex mmu_setup_lock;
9681 	u64 l1_ptcr;
9682 	struct idr kvm_nested_guest_idr;
9683 	struct kvmppc_vcore *vcores[2048];
9684 };
9685 
9686 struct kvm_irq_routing_table;
9687 
9688 struct kvm_io_bus;
9689 
9690 struct kvm_stat_data;
9691 
9692 struct kvm {
9693 	spinlock_t mmu_lock;
9694 	struct mutex slots_lock;
9695 	struct mutex slots_arch_lock;
9696 	struct mm_struct *mm;
9697 	long unsigned int nr_memslot_pages;
9698 	struct kvm_memslots __memslots[2];
9699 	struct kvm_memslots *memslots[1];
9700 	struct xarray vcpu_array;
9701 	spinlock_t mn_invalidate_lock;
9702 	long unsigned int mn_active_invalidate_count;
9703 	struct rcuwait mn_memslots_update_rcuwait;
9704 	spinlock_t gpc_lock;
9705 	struct list_head gpc_list;
9706 	atomic_t online_vcpus;
9707 	int max_vcpus;
9708 	int created_vcpus;
9709 	int last_boosted_vcpu;
9710 	struct list_head vm_list;
9711 	struct mutex lock;
9712 	struct kvm_io_bus *buses[4];
9713 	struct {
9714 		spinlock_t lock;
9715 		struct list_head items;
9716 		struct list_head resampler_list;
9717 		struct mutex resampler_lock;
9718 	} irqfds;
9719 	struct list_head ioeventfds;
9720 	struct kvm_vm_stat stat;
9721 	struct kvm_arch arch;
9722 	refcount_t users_count;
9723 	struct mutex irq_lock;
9724 	struct kvm_irq_routing_table *irq_routing;
9725 	struct hlist_head irq_ack_notifier_list;
9726 	struct mmu_notifier mmu_notifier;
9727 	long unsigned int mmu_invalidate_seq;
9728 	long int mmu_invalidate_in_progress;
9729 	long unsigned int mmu_invalidate_range_start;
9730 	long unsigned int mmu_invalidate_range_end;
9731 	struct list_head devices;
9732 	u64 manual_dirty_log_protect;
9733 	struct dentry *debugfs_dentry;
9734 	struct kvm_stat_data **debugfs_stat_data;
9735 	struct srcu_struct srcu;
9736 	struct srcu_struct irq_srcu;
9737 	pid_t userspace_pid;
9738 	unsigned int max_halt_poll_ns;
9739 	u32 dirty_ring_size;
9740 	bool vm_bugged;
9741 	bool vm_dead;
9742 	char stats_id[48];
9743 };
9744 
9745 struct revmap_entry {
9746 	long unsigned int guest_rpte;
9747 	unsigned int forw;
9748 	unsigned int back;
9749 };
9750 
9751 struct kvmppc_irq_map {
9752 	u32 r_hwirq;
9753 	u32 v_hwirq;
9754 	struct irq_desc *desc;
9755 };
9756 
9757 struct kvmppc_passthru_irqmap {
9758 	int n_mapped;
9759 	struct kvmppc_irq_map mapped[1024];
9760 };
9761 
9762 enum kvm_mr_change {
9763 	KVM_MR_CREATE = 0,
9764 	KVM_MR_DELETE = 1,
9765 	KVM_MR_MOVE = 2,
9766 	KVM_MR_FLAGS_ONLY = 3,
9767 };
9768 
9769 union kvmppc_one_reg;
9770 
9771 struct kvm_gfn_range;
9772 
9773 struct kvmppc_ops {
9774 	struct module *owner;
9775 	int (*get_sregs)(struct kvm_vcpu *, struct kvm_sregs *);
9776 	int (*set_sregs)(struct kvm_vcpu *, struct kvm_sregs *);
9777 	int (*get_one_reg)(struct kvm_vcpu *, u64, union kvmppc_one_reg *);
9778 	int (*set_one_reg)(struct kvm_vcpu *, u64, union kvmppc_one_reg *);
9779 	void (*vcpu_load)(struct kvm_vcpu *, int);
9780 	void (*vcpu_put)(struct kvm_vcpu *);
9781 	void (*inject_interrupt)(struct kvm_vcpu *, int, u64);
9782 	void (*set_msr)(struct kvm_vcpu *, u64);
9783 	int (*vcpu_run)(struct kvm_vcpu *);
9784 	int (*vcpu_create)(struct kvm_vcpu *);
9785 	void (*vcpu_free)(struct kvm_vcpu *);
9786 	int (*check_requests)(struct kvm_vcpu *);
9787 	int (*get_dirty_log)(struct kvm *, struct kvm_dirty_log *);
9788 	void (*flush_memslot)(struct kvm *, struct kvm_memory_slot *);
9789 	int (*prepare_memory_region)(struct kvm *, const struct kvm_memory_slot *, struct kvm_memory_slot *, enum kvm_mr_change);
9790 	void (*commit_memory_region)(struct kvm *, struct kvm_memory_slot *, const struct kvm_memory_slot *, enum kvm_mr_change);
9791 	bool (*unmap_gfn_range)(struct kvm *, struct kvm_gfn_range *);
9792 	bool (*age_gfn)(struct kvm *, struct kvm_gfn_range *);
9793 	bool (*test_age_gfn)(struct kvm *, struct kvm_gfn_range *);
9794 	bool (*set_spte_gfn)(struct kvm *, struct kvm_gfn_range *);
9795 	void (*free_memslot)(struct kvm_memory_slot *);
9796 	int (*init_vm)(struct kvm *);
9797 	void (*destroy_vm)(struct kvm *);
9798 	int (*get_smmu_info)(struct kvm *, struct kvm_ppc_smmu_info *);
9799 	int (*emulate_op)(struct kvm_vcpu *, unsigned int, int *);
9800 	int (*emulate_mtspr)(struct kvm_vcpu *, int, ulong);
9801 	int (*emulate_mfspr)(struct kvm_vcpu *, int, ulong *);
9802 	void (*fast_vcpu_kick)(struct kvm_vcpu *);
9803 	long int (*arch_vm_ioctl)(struct file *, unsigned int, long unsigned int);
9804 	int (*hcall_implemented)(long unsigned int);
9805 	int (*irq_bypass_add_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
9806 	void (*irq_bypass_del_producer)(struct irq_bypass_consumer *, struct irq_bypass_producer *);
9807 	int (*configure_mmu)(struct kvm *, struct kvm_ppc_mmuv3_cfg *);
9808 	int (*get_rmmu_info)(struct kvm *, struct kvm_ppc_rmmu_info *);
9809 	int (*set_smt_mode)(struct kvm *, long unsigned int, long unsigned int);
9810 	void (*giveup_ext)(struct kvm_vcpu *, ulong);
9811 	int (*enable_nested)(struct kvm *);
9812 	int (*load_from_eaddr)(struct kvm_vcpu *, ulong *, void *, int);
9813 	int (*store_to_eaddr)(struct kvm_vcpu *, ulong *, void *, int);
9814 	int (*enable_svm)(struct kvm *);
9815 	int (*svm_off)(struct kvm *);
9816 	int (*enable_dawr1)(struct kvm *);
9817 	bool (*hash_v3_possible)();
9818 	int (*create_vm_debugfs)(struct kvm *);
9819 	int (*create_vcpu_debugfs)(struct kvm_vcpu *, struct dentry *);
9820 };
9821 
9822 struct kvmppc_pte {
9823 	ulong eaddr;
9824 	u64 vpage;
9825 	ulong raddr;
9826 	bool may_read: 1;
9827 	bool may_write: 1;
9828 	bool may_execute: 1;
9829 	long unsigned int wimg;
9830 	long unsigned int rc;
9831 	u8 page_size;
9832 	u8 page_shift;
9833 };
9834 
9835 struct kvmppc_sid_map {
9836 	u64 guest_vsid;
9837 	u64 guest_esid;
9838 	u64 host_vsid;
9839 	bool valid: 1;
9840 };
9841 
9842 struct kvmppc_bat {
9843 	u64 raw;
9844 	u32 bepi;
9845 	u32 bepi_mask;
9846 	u32 brpn;
9847 	u8 wimg;
9848 	u8 pp;
9849 	bool vs: 1;
9850 	bool vp: 1;
9851 };
9852 
9853 struct kvmppc_vcpu_book3s {
9854 	struct kvmppc_sid_map sid_map[512];
9855 	struct {
9856 		u64 esid;
9857 		u64 vsid;
9858 	} slb_shadow[64];
9859 	u8 slb_shadow_max;
9860 	struct kvmppc_bat ibat[8];
9861 	struct kvmppc_bat dbat[8];
9862 	u64 hid[6];
9863 	u64 gqr[8];
9864 	u64 sdr1;
9865 	u64 hior;
9866 	u64 msr_mask;
9867 	u64 vtb;
9868 	u64 proto_vsid_first;
9869 	u64 proto_vsid_max;
9870 	u64 proto_vsid_next;
9871 	int context_id[1];
9872 	bool hior_explicit;
9873 	struct hlist_head hpte_hash_pte[8192];
9874 	struct hlist_head hpte_hash_pte_long[4096];
9875 	struct hlist_head hpte_hash_vpte[8192];
9876 	struct hlist_head hpte_hash_vpte_long[32];
9877 	struct hlist_head hpte_hash_vpte_64k[2048];
9878 	int hpte_cache_count;
9879 	spinlock_t mmu_lock;
9880 };
9881 
9882 struct kvm_nested_guest {
9883 	struct kvm *l1_host;
9884 	int l1_lpid;
9885 	int shadow_lpid;
9886 	pgd_t *shadow_pgtable;
9887 	u64 l1_gr_to_hr;
9888 	u64 process_table;
9889 	long int refcnt;
9890 	struct mutex tlb_lock;
9891 	struct kvm_nested_guest *next;
9892 	cpumask_t need_tlb_flush;
9893 	short int prev_cpu[2048];
9894 	u8 radix;
9895 };
9896 
9897 struct kvm_io_device;
9898 
9899 struct kvm_io_range {
9900 	gpa_t addr;
9901 	int len;
9902 	struct kvm_io_device *dev;
9903 };
9904 
9905 struct kvm_io_bus {
9906 	int dev_count;
9907 	int ioeventfd_count;
9908 	struct kvm_io_range range[0];
9909 };
9910 
9911 enum kvm_bus {
9912 	KVM_MMIO_BUS = 0,
9913 	KVM_PIO_BUS = 1,
9914 	KVM_VIRTIO_CCW_NOTIFY_BUS = 2,
9915 	KVM_FAST_MMIO_BUS = 3,
9916 	KVM_NR_BUSES = 4,
9917 };
9918 
9919 struct kvm_gfn_range {
9920 	struct kvm_memory_slot *slot;
9921 	gfn_t start;
9922 	gfn_t end;
9923 	pte_t pte;
9924 	bool may_block;
9925 };
9926 
9927 enum kvm_stat_kind {
9928 	KVM_STAT_VM = 0,
9929 	KVM_STAT_VCPU = 1,
9930 };
9931 
9932 struct _kvm_stats_desc;
9933 
9934 struct kvm_stat_data {
9935 	struct kvm *kvm;
9936 	const struct _kvm_stats_desc *desc;
9937 	enum kvm_stat_kind kind;
9938 };
9939 
9940 struct _kvm_stats_desc {
9941 	struct kvm_stats_desc desc;
9942 	char name[48];
9943 };
9944 
9945 union kvmppc_one_reg {
9946 	u32 wval;
9947 	u64 dval;
9948 	vector128 vval;
9949 	u64 vsxval[2];
9950 	u32 vsx32val[4];
9951 	u16 vsx16val[8];
9952 	u8 vsx8val[16];
9953 	struct {
9954 		u64 addr;
9955 		u64 length;
9956 	} vpaval;
9957 	u64 xive_timaval[2];
9958 };
9959 
9960 typedef u64 uint64_t;
9961 
9962 struct pdev_archdata {
9963 	u64 dma_mask;
9964 	void *priv;
9965 };
9966 
9967 struct platform_device_id {
9968 	char name[20];
9969 	kernel_ulong_t driver_data;
9970 };
9971 
9972 struct mfd_cell;
9973 
9974 struct platform_device {
9975 	const char *name;
9976 	int id;
9977 	bool id_auto;
9978 	struct device dev;
9979 	u64 platform_dma_mask;
9980 	struct device_dma_parameters dma_parms;
9981 	u32 num_resources;
9982 	struct resource *resource;
9983 	const struct platform_device_id *id_entry;
9984 	const char *driver_override;
9985 	struct mfd_cell *mfd_cell;
9986 	struct pdev_archdata archdata;
9987 };
9988 
9989 enum opal_msg_type {
9990 	OPAL_MSG_ASYNC_COMP = 0,
9991 	OPAL_MSG_MEM_ERR = 1,
9992 	OPAL_MSG_EPOW = 2,
9993 	OPAL_MSG_SHUTDOWN = 3,
9994 	OPAL_MSG_HMI_EVT = 4,
9995 	OPAL_MSG_DPO = 5,
9996 	OPAL_MSG_PRD = 6,
9997 	OPAL_MSG_OCC = 7,
9998 	OPAL_MSG_PRD2 = 8,
9999 	OPAL_MSG_TYPE_MAX = 9,
10000 };
10001 
10002 struct opal_msg {
10003 	__be32 msg_type;
10004 	__be32 reserved;
10005 	__be64 params[8];
10006 };
10007 
10008 struct ida {
10009 	struct xarray xa;
10010 };
10011 
10012 enum vas_cop_type {
10013 	VAS_COP_TYPE_FAULT = 0,
10014 	VAS_COP_TYPE_842 = 1,
10015 	VAS_COP_TYPE_842_HIPRI = 2,
10016 	VAS_COP_TYPE_GZIP = 3,
10017 	VAS_COP_TYPE_GZIP_HIPRI = 4,
10018 	VAS_COP_TYPE_FTW = 5,
10019 	VAS_COP_TYPE_MAX = 6,
10020 };
10021 
10022 struct vas_user_win_ref {
10023 	struct pid *pid;
10024 	struct pid *tgid;
10025 	struct mm_struct *mm;
10026 	struct mutex mmap_mutex;
10027 	struct vm_area_struct *vma;
10028 };
10029 
10030 struct vas_window {
10031 	u32 winid;
10032 	u32 wcreds_max;
10033 	u32 status;
10034 	enum vas_cop_type cop;
10035 	struct vas_user_win_ref task_ref;
10036 	char *dbgname;
10037 	struct dentry *dbgdir;
10038 };
10039 
10040 struct vas_user_win_ops {
10041 	struct vas_window * (*open_win)(int, u64, enum vas_cop_type);
10042 	u64 (*paste_addr)(struct vas_window *);
10043 	int (*close_win)(struct vas_window *);
10044 };
10045 
10046 struct vas_rx_win_attr {
10047 	u64 rx_fifo;
10048 	int rx_fifo_size;
10049 	int wcreds_max;
10050 	bool pin_win;
10051 	bool rej_no_credit;
10052 	bool tx_wcred_mode;
10053 	bool rx_wcred_mode;
10054 	bool tx_win_ord_mode;
10055 	bool rx_win_ord_mode;
10056 	bool data_stamp;
10057 	bool nx_win;
10058 	bool fault_win;
10059 	bool user_win;
10060 	bool notify_disable;
10061 	bool intr_disable;
10062 	bool notify_early;
10063 	int lnotify_lpid;
10064 	int lnotify_pid;
10065 	int lnotify_tid;
10066 	u32 pswid;
10067 	int tc_mode;
10068 };
10069 
10070 struct vas_tx_win_attr {
10071 	enum vas_cop_type cop;
10072 	int wcreds_max;
10073 	int lpid;
10074 	int pidr;
10075 	int pswid;
10076 	int rsvd_txbuf_count;
10077 	int tc_mode;
10078 	bool user_win;
10079 	bool pin_win;
10080 	bool rej_no_credit;
10081 	bool rsvd_txbuf_enable;
10082 	bool tx_wcred_mode;
10083 	bool rx_wcred_mode;
10084 	bool tx_win_ord_mode;
10085 	bool rx_win_ord_mode;
10086 };
10087 
10088 enum vas_notify_scope {
10089 	VAS_SCOPE_LOCAL = 0,
10090 	VAS_SCOPE_GROUP = 1,
10091 	VAS_SCOPE_VECTORED_GROUP = 2,
10092 	VAS_SCOPE_UNUSED = 3,
10093 };
10094 
10095 enum vas_dma_type {
10096 	VAS_DMA_TYPE_INJECT = 0,
10097 	VAS_DMA_TYPE_WRITE = 1,
10098 };
10099 
10100 enum vas_notify_after_count {
10101 	VAS_NOTIFY_AFTER_256 = 0,
10102 	VAS_NOTIFY_NONE = 1,
10103 	VAS_NOTIFY_AFTER_2 = 2,
10104 };
10105 
10106 struct pnv_vas_window;
10107 
10108 struct vas_instance {
10109 	int vas_id;
10110 	struct ida ida;
10111 	struct list_head node;
10112 	struct platform_device *pdev;
10113 	u64 hvwc_bar_start;
10114 	u64 uwc_bar_start;
10115 	u64 paste_base_addr;
10116 	u64 paste_win_id_shift;
10117 	u64 irq_port;
10118 	int virq;
10119 	int fault_crbs;
10120 	int fault_fifo_size;
10121 	int fifo_in_progress;
10122 	spinlock_t fault_lock;
10123 	void *fault_fifo;
10124 	struct pnv_vas_window *fault_win;
10125 	struct mutex mutex;
10126 	struct pnv_vas_window *rxwin[6];
10127 	struct pnv_vas_window *windows[65536];
10128 	char *name;
10129 	char *dbgname;
10130 	struct dentry *dbgdir;
10131 };
10132 
10133 struct pnv_vas_window {
10134 	struct vas_window vas_win;
10135 	struct vas_instance *vinst;
10136 	bool tx_win;
10137 	bool nx_win;
10138 	bool user_win;
10139 	void *hvwc_map;
10140 	void *uwc_map;
10141 	void *paste_kaddr;
10142 	char *paste_addr_name;
10143 	struct pnv_vas_window *rxwin;
10144 	atomic_t num_txwins;
10145 };
10146 
10147 struct vas_winctx {
10148 	u64 rx_fifo;
10149 	int rx_fifo_size;
10150 	int wcreds_max;
10151 	int rsvd_txbuf_count;
10152 	bool user_win;
10153 	bool nx_win;
10154 	bool fault_win;
10155 	bool rsvd_txbuf_enable;
10156 	bool pin_win;
10157 	bool rej_no_credit;
10158 	bool tx_wcred_mode;
10159 	bool rx_wcred_mode;
10160 	bool tx_word_mode;
10161 	bool rx_word_mode;
10162 	bool data_stamp;
10163 	bool xtra_write;
10164 	bool notify_disable;
10165 	bool intr_disable;
10166 	bool fifo_disable;
10167 	bool notify_early;
10168 	bool notify_os_intr_reg;
10169 	int lpid;
10170 	int pidr;
10171 	int lnotify_lpid;
10172 	int lnotify_pid;
10173 	int lnotify_tid;
10174 	u32 pswid;
10175 	int rx_win_id;
10176 	int fault_win_id;
10177 	int tc_mode;
10178 	u64 irq_port;
10179 	enum vas_dma_type dma_type;
10180 	enum vas_notify_scope min_scope;
10181 	enum vas_notify_scope max_scope;
10182 	enum vas_notify_after_count notify_after_count;
10183 };
10184 
10185 struct ring_buffer_event {
10186 	u32 type_len: 5;
10187 	u32 time_delta: 27;
10188 	u32 array[0];
10189 };
10190 
10191 struct trace_buffer;
10192 
10193 struct trace_event_file;
10194 
10195 struct trace_event_buffer {
10196 	struct trace_buffer *buffer;
10197 	struct ring_buffer_event *event;
10198 	struct trace_event_file *trace_file;
10199 	void *entry;
10200 	unsigned int trace_ctx;
10201 	struct pt_regs *regs;
10202 };
10203 
10204 struct trace_subsystem_dir;
10205 
10206 struct trace_event_file {
10207 	struct list_head list;
10208 	struct trace_event_call *event_call;
10209 	struct event_filter *filter;
10210 	struct dentry *dir;
10211 	struct trace_array *tr;
10212 	struct trace_subsystem_dir *system;
10213 	struct list_head triggers;
10214 	long unsigned int flags;
10215 	atomic_t sm_ref;
10216 	atomic_t tm_ref;
10217 };
10218 
10219 enum {
10220 	EVENT_FILE_FL_ENABLED = 1,
10221 	EVENT_FILE_FL_RECORDED_CMD = 2,
10222 	EVENT_FILE_FL_RECORDED_TGID = 4,
10223 	EVENT_FILE_FL_FILTERED = 8,
10224 	EVENT_FILE_FL_NO_SET_FILTER = 16,
10225 	EVENT_FILE_FL_SOFT_MODE = 32,
10226 	EVENT_FILE_FL_SOFT_DISABLED = 64,
10227 	EVENT_FILE_FL_TRIGGER_MODE = 128,
10228 	EVENT_FILE_FL_TRIGGER_COND = 256,
10229 	EVENT_FILE_FL_PID_FILTER = 512,
10230 	EVENT_FILE_FL_WAS_ENABLED = 1024,
10231 };
10232 
10233 enum {
10234 	FILTER_OTHER = 0,
10235 	FILTER_STATIC_STRING = 1,
10236 	FILTER_DYN_STRING = 2,
10237 	FILTER_RDYN_STRING = 3,
10238 	FILTER_PTR_STRING = 4,
10239 	FILTER_TRACE_FN = 5,
10240 	FILTER_COMM = 6,
10241 	FILTER_CPU = 7,
10242 };
10243 
10244 struct trace_event_raw_vas_rx_win_open {
10245 	struct trace_entry ent;
10246 	struct task_struct *tsk;
10247 	int pid;
10248 	int cop;
10249 	int vasid;
10250 	struct vas_rx_win_attr *rxattr;
10251 	int lnotify_lpid;
10252 	int lnotify_pid;
10253 	int lnotify_tid;
10254 	char __data[0];
10255 };
10256 
10257 struct trace_event_raw_vas_tx_win_open {
10258 	struct trace_entry ent;
10259 	struct task_struct *tsk;
10260 	int pid;
10261 	int cop;
10262 	int vasid;
10263 	struct vas_tx_win_attr *txattr;
10264 	int lpid;
10265 	int pidr;
10266 	char __data[0];
10267 };
10268 
10269 struct trace_event_raw_vas_paste_crb {
10270 	struct trace_entry ent;
10271 	struct task_struct *tsk;
10272 	struct vas_window *win;
10273 	int pid;
10274 	int vasid;
10275 	int winid;
10276 	long unsigned int paste_kaddr;
10277 	char __data[0];
10278 };
10279 
10280 struct trace_event_data_offsets_vas_rx_win_open {};
10281 
10282 struct trace_event_data_offsets_vas_tx_win_open {};
10283 
10284 struct trace_event_data_offsets_vas_paste_crb {};
10285 
10286 typedef void (*btf_trace_vas_rx_win_open)(void *, struct task_struct *, int, int, struct vas_rx_win_attr *);
10287 
10288 typedef void (*btf_trace_vas_tx_win_open)(void *, struct task_struct *, int, int, struct vas_tx_win_attr *);
10289 
10290 typedef void (*btf_trace_vas_paste_crb)(void *, struct task_struct *, struct pnv_vas_window *);
10291 
10292 struct smp_ops_t {
10293 	void (*message_pass)(int, int);
10294 	void (*cause_ipi)(int);
10295 	int (*cause_nmi_ipi)(int);
10296 	void (*probe)();
10297 	int (*kick_cpu)(int);
10298 	int (*prepare_cpu)(int);
10299 	void (*setup_cpu)(int);
10300 	void (*bringup_done)();
10301 	void (*take_timebase)();
10302 	void (*give_timebase)();
10303 	int (*cpu_disable)();
10304 	void (*cpu_die)(unsigned int);
10305 	int (*cpu_bootable)(unsigned int);
10306 	void (*cpu_offline_self)();
10307 };
10308 
10309 enum ppc_dbell {
10310 	PPC_DBELL = 0,
10311 	PPC_DBELL_CRIT = 1,
10312 	PPC_G_DBELL = 2,
10313 	PPC_G_DBELL_CRIT = 3,
10314 	PPC_G_DBELL_MC = 4,
10315 	PPC_DBELL_SERVER = 5,
10316 };
10317 
10318 typedef __u32 __wsum;
10319 
10320 struct notifier_block;
10321 
10322 typedef int (*notifier_fn_t)(struct notifier_block *, long unsigned int, void *);
10323 
10324 struct notifier_block {
10325 	notifier_fn_t notifier_call;
10326 	struct notifier_block *next;
10327 	int priority;
10328 };
10329 
10330 struct blocking_notifier_head {
10331 	struct rw_semaphore rwsem;
10332 	struct notifier_block *head;
10333 };
10334 
10335 struct raw_notifier_head {
10336 	struct notifier_block *head;
10337 };
10338 
10339 struct page_pool_params {
10340 	unsigned int flags;
10341 	unsigned int order;
10342 	unsigned int pool_size;
10343 	int nid;
10344 	struct device *dev;
10345 	enum dma_data_direction dma_dir;
10346 	unsigned int max_len;
10347 	unsigned int offset;
10348 	void (*init_callback)(struct page *, void *);
10349 	void *init_arg;
10350 };
10351 
10352 struct pp_alloc_cache {
10353 	u32 count;
10354 	struct page *cache[128];
10355 };
10356 
10357 struct ptr_ring {
10358 	int producer;
10359 	spinlock_t producer_lock;
10360 	long: 64;
10361 	long: 64;
10362 	long: 64;
10363 	long: 64;
10364 	long: 64;
10365 	long: 64;
10366 	long: 64;
10367 	long: 64;
10368 	long: 64;
10369 	long: 64;
10370 	long: 64;
10371 	long: 64;
10372 	long: 64;
10373 	long: 64;
10374 	long: 64;
10375 	int consumer_head;
10376 	int consumer_tail;
10377 	spinlock_t consumer_lock;
10378 	long: 64;
10379 	long: 64;
10380 	long: 64;
10381 	long: 64;
10382 	long: 64;
10383 	long: 64;
10384 	long: 64;
10385 	long: 64;
10386 	long: 64;
10387 	long: 64;
10388 	long: 64;
10389 	long: 64;
10390 	long: 64;
10391 	long: 64;
10392 	int size;
10393 	int batch;
10394 	void **queue;
10395 	long: 64;
10396 	long: 64;
10397 	long: 64;
10398 	long: 64;
10399 	long: 64;
10400 	long: 64;
10401 	long: 64;
10402 	long: 64;
10403 	long: 64;
10404 	long: 64;
10405 	long: 64;
10406 	long: 64;
10407 	long: 64;
10408 	long: 64;
10409 };
10410 
10411 struct page_pool {
10412 	struct page_pool_params p;
10413 	struct delayed_work release_dw;
10414 	void (*disconnect)(void *);
10415 	long unsigned int defer_start;
10416 	long unsigned int defer_warn;
10417 	u32 pages_state_hold_cnt;
10418 	unsigned int frag_offset;
10419 	struct page *frag_page;
10420 	long int frag_users;
10421 	u32 xdp_mem_id;
10422 	long: 64;
10423 	long: 64;
10424 	long: 64;
10425 	long: 64;
10426 	long: 64;
10427 	long: 64;
10428 	long: 64;
10429 	struct pp_alloc_cache alloc;
10430 	long: 64;
10431 	long: 64;
10432 	long: 64;
10433 	long: 64;
10434 	long: 64;
10435 	long: 64;
10436 	long: 64;
10437 	long: 64;
10438 	long: 64;
10439 	long: 64;
10440 	long: 64;
10441 	long: 64;
10442 	long: 64;
10443 	long: 64;
10444 	long: 64;
10445 	struct ptr_ring ring;
10446 	atomic_t pages_state_release_cnt;
10447 	refcount_t user_cnt;
10448 	u64 destroy_cnt;
10449 	long: 64;
10450 	long: 64;
10451 	long: 64;
10452 	long: 64;
10453 	long: 64;
10454 	long: 64;
10455 	long: 64;
10456 	long: 64;
10457 	long: 64;
10458 	long: 64;
10459 	long: 64;
10460 	long: 64;
10461 	long: 64;
10462 	long: 64;
10463 };
10464 
10465 struct rhash_head {
10466 	struct rhash_head *next;
10467 };
10468 
10469 struct rhashtable;
10470 
10471 struct rhashtable_compare_arg {
10472 	struct rhashtable *ht;
10473 	const void *key;
10474 };
10475 
10476 typedef u32 (*rht_hashfn_t)(const void *, u32, u32);
10477 
10478 typedef u32 (*rht_obj_hashfn_t)(const void *, u32, u32);
10479 
10480 typedef int (*rht_obj_cmpfn_t)(struct rhashtable_compare_arg *, const void *);
10481 
10482 struct rhashtable_params {
10483 	u16 nelem_hint;
10484 	u16 key_len;
10485 	u16 key_offset;
10486 	u16 head_offset;
10487 	unsigned int max_size;
10488 	u16 min_size;
10489 	bool automatic_shrinking;
10490 	rht_hashfn_t hashfn;
10491 	rht_obj_hashfn_t obj_hashfn;
10492 	rht_obj_cmpfn_t obj_cmpfn;
10493 };
10494 
10495 struct bucket_table;
10496 
10497 struct rhashtable {
10498 	struct bucket_table *tbl;
10499 	unsigned int key_len;
10500 	unsigned int max_elems;
10501 	struct rhashtable_params p;
10502 	bool rhlist;
10503 	struct work_struct run_work;
10504 	struct mutex mutex;
10505 	spinlock_t lock;
10506 	atomic_t nelems;
10507 };
10508 
10509 struct pipe_buffer;
10510 
10511 struct pipe_inode_info {
10512 	struct mutex mutex;
10513 	wait_queue_head_t rd_wait;
10514 	wait_queue_head_t wr_wait;
10515 	unsigned int head;
10516 	unsigned int tail;
10517 	unsigned int max_usage;
10518 	unsigned int ring_size;
10519 	unsigned int nr_accounted;
10520 	unsigned int readers;
10521 	unsigned int writers;
10522 	unsigned int files;
10523 	unsigned int r_counter;
10524 	unsigned int w_counter;
10525 	bool poll_usage;
10526 	struct page *tmp_page;
10527 	struct fasync_struct *fasync_readers;
10528 	struct fasync_struct *fasync_writers;
10529 	struct pipe_buffer *bufs;
10530 	struct user_struct *user;
10531 };
10532 
10533 struct bpf_run_ctx {};
10534 
10535 struct dql {
10536 	unsigned int num_queued;
10537 	unsigned int adj_limit;
10538 	unsigned int last_obj_cnt;
10539 	long: 64;
10540 	long: 64;
10541 	long: 64;
10542 	long: 64;
10543 	long: 64;
10544 	long: 64;
10545 	long: 64;
10546 	long: 64;
10547 	long: 64;
10548 	long: 64;
10549 	long: 64;
10550 	long: 64;
10551 	long: 64;
10552 	long: 64;
10553 	unsigned int limit;
10554 	unsigned int num_completed;
10555 	unsigned int prev_ovlimit;
10556 	unsigned int prev_num_queued;
10557 	unsigned int prev_last_obj_cnt;
10558 	unsigned int lowest_slack;
10559 	long unsigned int slack_start_time;
10560 	unsigned int max_limit;
10561 	unsigned int min_limit;
10562 	unsigned int slack_hold_time;
10563 	long: 64;
10564 	long: 64;
10565 	long: 64;
10566 	long: 64;
10567 	long: 64;
10568 	long: 64;
10569 	long: 64;
10570 	long: 64;
10571 	long: 64;
10572 	long: 64;
10573 };
10574 
10575 typedef short unsigned int __kernel_sa_family_t;
10576 
10577 typedef __kernel_sa_family_t sa_family_t;
10578 
10579 struct sockaddr {
10580 	sa_family_t sa_family;
10581 	char sa_data[14];
10582 };
10583 
10584 typedef unsigned int sk_buff_data_t;
10585 
10586 struct net_device;
10587 
10588 struct skb_ext;
10589 
10590 struct sk_buff {
10591 	union {
10592 		struct {
10593 			struct sk_buff *next;
10594 			struct sk_buff *prev;
10595 			union {
10596 				struct net_device *dev;
10597 				long unsigned int dev_scratch;
10598 			};
10599 		};
10600 		struct rb_node rbnode;
10601 		struct list_head list;
10602 		struct llist_node ll_node;
10603 	};
10604 	union {
10605 		struct sock *sk;
10606 		int ip_defrag_offset;
10607 	};
10608 	union {
10609 		ktime_t tstamp;
10610 		u64 skb_mstamp_ns;
10611 	};
10612 	char cb[48];
10613 	union {
10614 		struct {
10615 			long unsigned int _skb_refdst;
10616 			void (*destructor)(struct sk_buff *);
10617 		};
10618 		struct list_head tcp_tsorted_anchor;
10619 		long unsigned int _sk_redir;
10620 	};
10621 	long unsigned int _nfct;
10622 	unsigned int len;
10623 	unsigned int data_len;
10624 	__u16 mac_len;
10625 	__u16 hdr_len;
10626 	__u16 queue_mapping;
10627 	__u8 __cloned_offset[0];
10628 	__u8 cloned: 1;
10629 	__u8 nohdr: 1;
10630 	__u8 fclone: 2;
10631 	__u8 peeked: 1;
10632 	__u8 head_frag: 1;
10633 	__u8 pfmemalloc: 1;
10634 	__u8 pp_recycle: 1;
10635 	__u8 active_extensions;
10636 	union {
10637 		struct {
10638 			__u8 __pkt_type_offset[0];
10639 			__u8 pkt_type: 3;
10640 			__u8 ignore_df: 1;
10641 			__u8 nf_trace: 1;
10642 			__u8 ip_summed: 2;
10643 			__u8 ooo_okay: 1;
10644 			__u8 l4_hash: 1;
10645 			__u8 sw_hash: 1;
10646 			__u8 wifi_acked_valid: 1;
10647 			__u8 wifi_acked: 1;
10648 			__u8 no_fcs: 1;
10649 			__u8 encapsulation: 1;
10650 			__u8 encap_hdr_csum: 1;
10651 			__u8 csum_valid: 1;
10652 			__u8 __pkt_vlan_present_offset[0];
10653 			__u8 vlan_present: 1;
10654 			__u8 csum_complete_sw: 1;
10655 			__u8 csum_level: 2;
10656 			__u8 dst_pending_confirm: 1;
10657 			__u8 mono_delivery_time: 1;
10658 			__u8 tc_skip_classify: 1;
10659 			__u8 tc_at_ingress: 1;
10660 			__u8 ndisc_nodetype: 2;
10661 			__u8 ipvs_property: 1;
10662 			__u8 inner_protocol_type: 1;
10663 			__u8 remcsum_offload: 1;
10664 			__u8 redirected: 1;
10665 			__u8 nf_skip_egress: 1;
10666 			__u8 slow_gro: 1;
10667 			__u8 csum_not_inet: 1;
10668 			__u16 tc_index;
10669 			union {
10670 				__wsum csum;
10671 				struct {
10672 					__u16 csum_start;
10673 					__u16 csum_offset;
10674 				};
10675 			};
10676 			__u32 priority;
10677 			int skb_iif;
10678 			__u32 hash;
10679 			__be16 vlan_proto;
10680 			__u16 vlan_tci;
10681 			union {
10682 				unsigned int napi_id;
10683 				unsigned int sender_cpu;
10684 			};
10685 			u16 alloc_cpu;
10686 			union {
10687 				__u32 mark;
10688 				__u32 reserved_tailroom;
10689 			};
10690 			union {
10691 				__be16 inner_protocol;
10692 				__u8 inner_ipproto;
10693 			};
10694 			__u16 inner_transport_header;
10695 			__u16 inner_network_header;
10696 			__u16 inner_mac_header;
10697 			__be16 protocol;
10698 			__u16 transport_header;
10699 			__u16 network_header;
10700 			__u16 mac_header;
10701 		};
10702 		struct {
10703 			__u8 __pkt_type_offset[0];
10704 			__u8 pkt_type: 3;
10705 			__u8 ignore_df: 1;
10706 			__u8 nf_trace: 1;
10707 			__u8 ip_summed: 2;
10708 			__u8 ooo_okay: 1;
10709 			__u8 l4_hash: 1;
10710 			__u8 sw_hash: 1;
10711 			__u8 wifi_acked_valid: 1;
10712 			__u8 wifi_acked: 1;
10713 			__u8 no_fcs: 1;
10714 			__u8 encapsulation: 1;
10715 			__u8 encap_hdr_csum: 1;
10716 			__u8 csum_valid: 1;
10717 			__u8 __pkt_vlan_present_offset[0];
10718 			__u8 vlan_present: 1;
10719 			__u8 csum_complete_sw: 1;
10720 			__u8 csum_level: 2;
10721 			__u8 dst_pending_confirm: 1;
10722 			__u8 mono_delivery_time: 1;
10723 			__u8 tc_skip_classify: 1;
10724 			__u8 tc_at_ingress: 1;
10725 			__u8 ndisc_nodetype: 2;
10726 			__u8 ipvs_property: 1;
10727 			__u8 inner_protocol_type: 1;
10728 			__u8 remcsum_offload: 1;
10729 			__u8 redirected: 1;
10730 			__u8 nf_skip_egress: 1;
10731 			__u8 slow_gro: 1;
10732 			__u8 csum_not_inet: 1;
10733 			__u16 tc_index;
10734 			union {
10735 				__wsum csum;
10736 				struct {
10737 					__u16 csum_start;
10738 					__u16 csum_offset;
10739 				};
10740 			};
10741 			__u32 priority;
10742 			int skb_iif;
10743 			__u32 hash;
10744 			__be16 vlan_proto;
10745 			__u16 vlan_tci;
10746 			union {
10747 				unsigned int napi_id;
10748 				unsigned int sender_cpu;
10749 			};
10750 			u16 alloc_cpu;
10751 			union {
10752 				__u32 mark;
10753 				__u32 reserved_tailroom;
10754 			};
10755 			union {
10756 				__be16 inner_protocol;
10757 				__u8 inner_ipproto;
10758 			};
10759 			__u16 inner_transport_header;
10760 			__u16 inner_network_header;
10761 			__u16 inner_mac_header;
10762 			__be16 protocol;
10763 			__u16 transport_header;
10764 			__u16 network_header;
10765 			__u16 mac_header;
10766 		} headers;
10767 	};
10768 	sk_buff_data_t tail;
10769 	sk_buff_data_t end;
10770 	unsigned char *head;
10771 	unsigned char *data;
10772 	unsigned int truesize;
10773 	refcount_t users;
10774 	struct skb_ext *extensions;
10775 };
10776 
10777 struct in6_addr {
10778 	union {
10779 		__u8 u6_addr8[16];
10780 		__be16 u6_addr16[8];
10781 		__be32 u6_addr32[4];
10782 	} in6_u;
10783 };
10784 
10785 typedef struct {
10786 	u64 key[2];
10787 } siphash_key_t;
10788 
10789 struct prot_inuse;
10790 
10791 struct netns_core {
10792 	struct ctl_table_header *sysctl_hdr;
10793 	int sysctl_somaxconn;
10794 	u8 sysctl_txrehash;
10795 	struct prot_inuse *prot_inuse;
10796 };
10797 
10798 typedef struct {
10799 	local64_t v;
10800 } u64_stats_t;
10801 
10802 struct ipstats_mib {
10803 	u64 mibs[37];
10804 	struct u64_stats_sync syncp;
10805 };
10806 
10807 struct icmp_mib {
10808 	long unsigned int mibs[28];
10809 };
10810 
10811 struct icmpmsg_mib {
10812 	atomic_long_t mibs[512];
10813 };
10814 
10815 struct icmpv6_mib {
10816 	long unsigned int mibs[6];
10817 };
10818 
10819 struct icmpv6msg_mib {
10820 	atomic_long_t mibs[512];
10821 };
10822 
10823 struct tcp_mib {
10824 	long unsigned int mibs[16];
10825 };
10826 
10827 struct udp_mib {
10828 	long unsigned int mibs[10];
10829 };
10830 
10831 struct linux_mib {
10832 	long unsigned int mibs[126];
10833 };
10834 
10835 struct netns_mib {
10836 	struct ipstats_mib *ip_statistics;
10837 	struct ipstats_mib *ipv6_statistics;
10838 	struct tcp_mib *tcp_statistics;
10839 	struct linux_mib *net_statistics;
10840 	struct udp_mib *udp_statistics;
10841 	struct udp_mib *udp_stats_in6;
10842 	struct udp_mib *udplite_statistics;
10843 	struct udp_mib *udplite_stats_in6;
10844 	struct icmp_mib *icmp_statistics;
10845 	struct icmpmsg_mib *icmpmsg_statistics;
10846 	struct icmpv6_mib *icmpv6_statistics;
10847 	struct icmpv6msg_mib *icmpv6msg_statistics;
10848 	struct proc_dir_entry *proc_net_devsnmp6;
10849 };
10850 
10851 struct unix_table {
10852 	spinlock_t *locks;
10853 	struct hlist_head *buckets;
10854 };
10855 
10856 struct netns_unix {
10857 	struct unix_table table;
10858 	int sysctl_max_dgram_qlen;
10859 	struct ctl_table_header *ctl;
10860 };
10861 
10862 struct netns_packet {
10863 	struct mutex sklist_lock;
10864 	struct hlist_head sklist;
10865 };
10866 
10867 struct inet_frags;
10868 
10869 struct fqdir {
10870 	long int high_thresh;
10871 	long int low_thresh;
10872 	int timeout;
10873 	int max_dist;
10874 	struct inet_frags *f;
10875 	struct net *net;
10876 	bool dead;
10877 	long: 64;
10878 	long: 64;
10879 	long: 64;
10880 	long: 64;
10881 	long: 64;
10882 	long: 64;
10883 	long: 64;
10884 	long: 64;
10885 	long: 64;
10886 	long: 64;
10887 	struct rhashtable rhashtable;
10888 	long: 64;
10889 	long: 64;
10890 	long: 64;
10891 	long: 64;
10892 	long: 64;
10893 	long: 64;
10894 	long: 64;
10895 	long: 64;
10896 	long: 64;
10897 	long: 64;
10898 	long: 64;
10899 	long: 64;
10900 	long: 64;
10901 	long: 64;
10902 	atomic_long_t mem;
10903 	struct work_struct destroy_work;
10904 	struct llist_node free_list;
10905 	long: 64;
10906 	long: 64;
10907 	long: 64;
10908 	long: 64;
10909 	long: 64;
10910 	long: 64;
10911 	long: 64;
10912 	long: 64;
10913 	long: 64;
10914 	long: 64;
10915 };
10916 
10917 struct inet_frag_queue;
10918 
10919 struct inet_frags {
10920 	unsigned int qsize;
10921 	void (*constructor)(struct inet_frag_queue *, const void *);
10922 	void (*destructor)(struct inet_frag_queue *);
10923 	void (*frag_expire)(struct timer_list *);
10924 	struct kmem_cache *frags_cachep;
10925 	const char *frags_cache_name;
10926 	struct rhashtable_params rhash_params;
10927 	refcount_t refcnt;
10928 	struct completion completion;
10929 };
10930 
10931 struct ref_tracker_dir {};
10932 
10933 struct netns_nexthop {
10934 	struct rb_root rb_root;
10935 	struct hlist_head *devhash;
10936 	unsigned int seq;
10937 	u32 last_id_allocated;
10938 	struct blocking_notifier_head notifier_chain;
10939 };
10940 
10941 struct local_ports {
10942 	seqlock_t lock;
10943 	int range[2];
10944 	bool warned;
10945 };
10946 
10947 struct ping_group_range {
10948 	seqlock_t lock;
10949 	kgid_t range[2];
10950 };
10951 
10952 struct inet_timewait_death_row;
10953 
10954 struct ipv4_devconf;
10955 
10956 struct ip_ra_chain;
10957 
10958 struct inet_peer_base;
10959 
10960 struct tcp_congestion_ops;
10961 
10962 struct tcp_fastopen_context;
10963 
10964 struct fib_notifier_ops;
10965 
10966 struct netns_ipv4 {
10967 	struct inet_timewait_death_row *tcp_death_row;
10968 	struct ctl_table_header *forw_hdr;
10969 	struct ctl_table_header *frags_hdr;
10970 	struct ctl_table_header *ipv4_hdr;
10971 	struct ctl_table_header *route_hdr;
10972 	struct ctl_table_header *xfrm4_hdr;
10973 	struct ipv4_devconf *devconf_all;
10974 	struct ipv4_devconf *devconf_dflt;
10975 	struct ip_ra_chain *ra_chain;
10976 	struct mutex ra_mutex;
10977 	bool fib_has_custom_local_routes;
10978 	bool fib_offload_disabled;
10979 	struct hlist_head *fib_table_hash;
10980 	struct sock *fibnl;
10981 	struct sock *mc_autojoin_sk;
10982 	struct inet_peer_base *peers;
10983 	struct fqdir *fqdir;
10984 	u8 sysctl_icmp_echo_ignore_all;
10985 	u8 sysctl_icmp_echo_enable_probe;
10986 	u8 sysctl_icmp_echo_ignore_broadcasts;
10987 	u8 sysctl_icmp_ignore_bogus_error_responses;
10988 	u8 sysctl_icmp_errors_use_inbound_ifaddr;
10989 	int sysctl_icmp_ratelimit;
10990 	int sysctl_icmp_ratemask;
10991 	u32 ip_rt_min_pmtu;
10992 	int ip_rt_mtu_expires;
10993 	int ip_rt_min_advmss;
10994 	struct local_ports ip_local_ports;
10995 	u8 sysctl_tcp_ecn;
10996 	u8 sysctl_tcp_ecn_fallback;
10997 	u8 sysctl_ip_default_ttl;
10998 	u8 sysctl_ip_no_pmtu_disc;
10999 	u8 sysctl_ip_fwd_use_pmtu;
11000 	u8 sysctl_ip_fwd_update_priority;
11001 	u8 sysctl_ip_nonlocal_bind;
11002 	u8 sysctl_ip_autobind_reuse;
11003 	u8 sysctl_ip_dynaddr;
11004 	u8 sysctl_ip_early_demux;
11005 	u8 sysctl_tcp_early_demux;
11006 	u8 sysctl_udp_early_demux;
11007 	u8 sysctl_nexthop_compat_mode;
11008 	u8 sysctl_fwmark_reflect;
11009 	u8 sysctl_tcp_fwmark_accept;
11010 	u8 sysctl_tcp_mtu_probing;
11011 	int sysctl_tcp_mtu_probe_floor;
11012 	int sysctl_tcp_base_mss;
11013 	int sysctl_tcp_min_snd_mss;
11014 	int sysctl_tcp_probe_threshold;
11015 	u32 sysctl_tcp_probe_interval;
11016 	int sysctl_tcp_keepalive_time;
11017 	int sysctl_tcp_keepalive_intvl;
11018 	u8 sysctl_tcp_keepalive_probes;
11019 	u8 sysctl_tcp_syn_retries;
11020 	u8 sysctl_tcp_synack_retries;
11021 	u8 sysctl_tcp_syncookies;
11022 	u8 sysctl_tcp_migrate_req;
11023 	u8 sysctl_tcp_comp_sack_nr;
11024 	int sysctl_tcp_reordering;
11025 	u8 sysctl_tcp_retries1;
11026 	u8 sysctl_tcp_retries2;
11027 	u8 sysctl_tcp_orphan_retries;
11028 	u8 sysctl_tcp_tw_reuse;
11029 	int sysctl_tcp_fin_timeout;
11030 	unsigned int sysctl_tcp_notsent_lowat;
11031 	u8 sysctl_tcp_sack;
11032 	u8 sysctl_tcp_window_scaling;
11033 	u8 sysctl_tcp_timestamps;
11034 	u8 sysctl_tcp_early_retrans;
11035 	u8 sysctl_tcp_recovery;
11036 	u8 sysctl_tcp_thin_linear_timeouts;
11037 	u8 sysctl_tcp_slow_start_after_idle;
11038 	u8 sysctl_tcp_retrans_collapse;
11039 	u8 sysctl_tcp_stdurg;
11040 	u8 sysctl_tcp_rfc1337;
11041 	u8 sysctl_tcp_abort_on_overflow;
11042 	u8 sysctl_tcp_fack;
11043 	int sysctl_tcp_max_reordering;
11044 	int sysctl_tcp_adv_win_scale;
11045 	u8 sysctl_tcp_dsack;
11046 	u8 sysctl_tcp_app_win;
11047 	u8 sysctl_tcp_frto;
11048 	u8 sysctl_tcp_nometrics_save;
11049 	u8 sysctl_tcp_no_ssthresh_metrics_save;
11050 	u8 sysctl_tcp_moderate_rcvbuf;
11051 	u8 sysctl_tcp_tso_win_divisor;
11052 	u8 sysctl_tcp_workaround_signed_windows;
11053 	int sysctl_tcp_limit_output_bytes;
11054 	int sysctl_tcp_challenge_ack_limit;
11055 	int sysctl_tcp_min_rtt_wlen;
11056 	u8 sysctl_tcp_min_tso_segs;
11057 	u8 sysctl_tcp_tso_rtt_log;
11058 	u8 sysctl_tcp_autocorking;
11059 	u8 sysctl_tcp_reflect_tos;
11060 	int sysctl_tcp_invalid_ratelimit;
11061 	int sysctl_tcp_pacing_ss_ratio;
11062 	int sysctl_tcp_pacing_ca_ratio;
11063 	int sysctl_tcp_wmem[3];
11064 	int sysctl_tcp_rmem[3];
11065 	long unsigned int sysctl_tcp_comp_sack_delay_ns;
11066 	long unsigned int sysctl_tcp_comp_sack_slack_ns;
11067 	int sysctl_max_syn_backlog;
11068 	int sysctl_tcp_fastopen;
11069 	const struct tcp_congestion_ops *tcp_congestion_control;
11070 	struct tcp_fastopen_context *tcp_fastopen_ctx;
11071 	unsigned int sysctl_tcp_fastopen_blackhole_timeout;
11072 	atomic_t tfo_active_disable_times;
11073 	long unsigned int tfo_active_disable_stamp;
11074 	u32 tcp_challenge_timestamp;
11075 	u32 tcp_challenge_count;
11076 	int sysctl_udp_wmem_min;
11077 	int sysctl_udp_rmem_min;
11078 	u8 sysctl_fib_notify_on_flag_change;
11079 	u8 sysctl_igmp_llm_reports;
11080 	int sysctl_igmp_max_memberships;
11081 	int sysctl_igmp_max_msf;
11082 	int sysctl_igmp_qrv;
11083 	struct ping_group_range ping_group_range;
11084 	atomic_t dev_addr_genid;
11085 	long unsigned int *sysctl_local_reserved_ports;
11086 	int sysctl_ip_prot_sock;
11087 	struct fib_notifier_ops *notifier_ops;
11088 	unsigned int fib_seq;
11089 	struct fib_notifier_ops *ipmr_notifier_ops;
11090 	unsigned int ipmr_seq;
11091 	atomic_t rt_genid;
11092 	siphash_key_t ip_id_key;
11093 };
11094 
11095 struct dst_entry;
11096 
11097 struct neighbour;
11098 
11099 struct dst_ops {
11100 	short unsigned int family;
11101 	unsigned int gc_thresh;
11102 	int (*gc)(struct dst_ops *);
11103 	struct dst_entry * (*check)(struct dst_entry *, __u32);
11104 	unsigned int (*default_advmss)(const struct dst_entry *);
11105 	unsigned int (*mtu)(const struct dst_entry *);
11106 	u32 * (*cow_metrics)(struct dst_entry *, long unsigned int);
11107 	void (*destroy)(struct dst_entry *);
11108 	void (*ifdown)(struct dst_entry *, struct net_device *, int);
11109 	struct dst_entry * (*negative_advice)(struct dst_entry *);
11110 	void (*link_failure)(struct sk_buff *);
11111 	void (*update_pmtu)(struct dst_entry *, struct sock *, struct sk_buff *, u32, bool);
11112 	void (*redirect)(struct dst_entry *, struct sock *, struct sk_buff *);
11113 	int (*local_out)(struct net *, struct sock *, struct sk_buff *);
11114 	struct neighbour * (*neigh_lookup)(const struct dst_entry *, struct sk_buff *, const void *);
11115 	void (*confirm_neigh)(const struct dst_entry *, const void *);
11116 	struct kmem_cache *kmem_cachep;
11117 	struct percpu_counter pcpuc_entries;
11118 	long: 64;
11119 	long: 64;
11120 	long: 64;
11121 	long: 64;
11122 	long: 64;
11123 	long: 64;
11124 	long: 64;
11125 	long: 64;
11126 	long: 64;
11127 	long: 64;
11128 	long: 64;
11129 };
11130 
11131 struct netns_sysctl_ipv6 {
11132 	struct ctl_table_header *hdr;
11133 	struct ctl_table_header *route_hdr;
11134 	struct ctl_table_header *icmp_hdr;
11135 	struct ctl_table_header *frags_hdr;
11136 	struct ctl_table_header *xfrm6_hdr;
11137 	int flush_delay;
11138 	int ip6_rt_max_size;
11139 	int ip6_rt_gc_min_interval;
11140 	int ip6_rt_gc_timeout;
11141 	int ip6_rt_gc_interval;
11142 	int ip6_rt_gc_elasticity;
11143 	int ip6_rt_mtu_expires;
11144 	int ip6_rt_min_advmss;
11145 	u32 multipath_hash_fields;
11146 	u8 multipath_hash_policy;
11147 	u8 bindv6only;
11148 	u8 flowlabel_consistency;
11149 	u8 auto_flowlabels;
11150 	int icmpv6_time;
11151 	u8 icmpv6_echo_ignore_all;
11152 	u8 icmpv6_echo_ignore_multicast;
11153 	u8 icmpv6_echo_ignore_anycast;
11154 	long unsigned int icmpv6_ratemask[4];
11155 	long unsigned int *icmpv6_ratemask_ptr;
11156 	u8 anycast_src_echo_reply;
11157 	u8 ip_nonlocal_bind;
11158 	u8 fwmark_reflect;
11159 	u8 flowlabel_state_ranges;
11160 	int idgen_retries;
11161 	int idgen_delay;
11162 	int flowlabel_reflect;
11163 	int max_dst_opts_cnt;
11164 	int max_hbh_opts_cnt;
11165 	int max_dst_opts_len;
11166 	int max_hbh_opts_len;
11167 	int seg6_flowlabel;
11168 	u32 ioam6_id;
11169 	u64 ioam6_id_wide;
11170 	bool skip_notify_on_dev_down;
11171 	u8 fib_notify_on_flag_change;
11172 };
11173 
11174 struct ipv6_devconf;
11175 
11176 struct fib6_info;
11177 
11178 struct rt6_info;
11179 
11180 struct rt6_statistics;
11181 
11182 struct fib6_table;
11183 
11184 struct seg6_pernet_data;
11185 
11186 struct ioam6_pernet_data;
11187 
11188 struct netns_ipv6 {
11189 	struct dst_ops ip6_dst_ops;
11190 	struct netns_sysctl_ipv6 sysctl;
11191 	struct ipv6_devconf *devconf_all;
11192 	struct ipv6_devconf *devconf_dflt;
11193 	struct inet_peer_base *peers;
11194 	struct fqdir *fqdir;
11195 	struct fib6_info *fib6_null_entry;
11196 	struct rt6_info *ip6_null_entry;
11197 	struct rt6_statistics *rt6_stats;
11198 	struct timer_list ip6_fib_timer;
11199 	struct hlist_head *fib_table_hash;
11200 	struct fib6_table *fib6_main_tbl;
11201 	struct list_head fib6_walkers;
11202 	rwlock_t fib6_walker_lock;
11203 	spinlock_t fib6_gc_lock;
11204 	atomic_t ip6_rt_gc_expire;
11205 	long unsigned int ip6_rt_last_gc;
11206 	unsigned char flowlabel_has_excl;
11207 	struct sock *ndisc_sk;
11208 	struct sock *tcp_sk;
11209 	struct sock *igmp_sk;
11210 	struct sock *mc_autojoin_sk;
11211 	struct hlist_head *inet6_addr_lst;
11212 	spinlock_t addrconf_hash_lock;
11213 	struct delayed_work addr_chk_work;
11214 	atomic_t dev_addr_genid;
11215 	atomic_t fib6_sernum;
11216 	struct seg6_pernet_data *seg6_data;
11217 	struct fib_notifier_ops *notifier_ops;
11218 	struct fib_notifier_ops *ip6mr_notifier_ops;
11219 	unsigned int ipmr_seq;
11220 	struct {
11221 		struct hlist_head head;
11222 		spinlock_t lock;
11223 		u32 seq;
11224 	} ip6addrlbl_table;
11225 	struct ioam6_pernet_data *ioam6_data;
11226 	long: 64;
11227 	long: 64;
11228 	long: 64;
11229 	long: 64;
11230 	long: 64;
11231 	long: 64;
11232 	long: 64;
11233 	long: 64;
11234 	long: 64;
11235 	long: 64;
11236 	long: 64;
11237 	long: 64;
11238 };
11239 
11240 struct nf_logger;
11241 
11242 struct nf_hook_entries;
11243 
11244 struct netns_nf {
11245 	struct proc_dir_entry *proc_netfilter;
11246 	const struct nf_logger *nf_loggers[13];
11247 	struct ctl_table_header *nf_log_dir_header;
11248 	struct nf_hook_entries *hooks_ipv4[5];
11249 	struct nf_hook_entries *hooks_ipv6[5];
11250 	unsigned int defrag_ipv4_users;
11251 	unsigned int defrag_ipv6_users;
11252 };
11253 
11254 struct nf_ct_event_notifier;
11255 
11256 struct nf_generic_net {
11257 	unsigned int timeout;
11258 };
11259 
11260 struct nf_tcp_net {
11261 	unsigned int timeouts[14];
11262 	u8 tcp_loose;
11263 	u8 tcp_be_liberal;
11264 	u8 tcp_max_retrans;
11265 	u8 tcp_ignore_invalid_rst;
11266 };
11267 
11268 struct nf_udp_net {
11269 	unsigned int timeouts[2];
11270 };
11271 
11272 struct nf_icmp_net {
11273 	unsigned int timeout;
11274 };
11275 
11276 struct nf_ip_net {
11277 	struct nf_generic_net generic;
11278 	struct nf_tcp_net tcp;
11279 	struct nf_udp_net udp;
11280 	struct nf_icmp_net icmp;
11281 	struct nf_icmp_net icmpv6;
11282 };
11283 
11284 struct ip_conntrack_stat;
11285 
11286 struct netns_ct {
11287 	u8 sysctl_log_invalid;
11288 	u8 sysctl_events;
11289 	u8 sysctl_acct;
11290 	u8 sysctl_tstamp;
11291 	u8 sysctl_checksum;
11292 	struct ip_conntrack_stat *stat;
11293 	struct nf_ct_event_notifier *nf_conntrack_event_cb;
11294 	struct nf_ip_net nf_ct_proto;
11295 };
11296 
11297 struct netns_bpf {
11298 	struct bpf_prog_array *run_array[2];
11299 	struct bpf_prog *progs[2];
11300 	struct list_head links[2];
11301 };
11302 
11303 struct xfrm_policy_hash {
11304 	struct hlist_head *table;
11305 	unsigned int hmask;
11306 	u8 dbits4;
11307 	u8 sbits4;
11308 	u8 dbits6;
11309 	u8 sbits6;
11310 };
11311 
11312 struct xfrm_policy_hthresh {
11313 	struct work_struct work;
11314 	seqlock_t lock;
11315 	u8 lbits4;
11316 	u8 rbits4;
11317 	u8 lbits6;
11318 	u8 rbits6;
11319 };
11320 
11321 struct netns_xfrm {
11322 	struct list_head state_all;
11323 	struct hlist_head *state_bydst;
11324 	struct hlist_head *state_bysrc;
11325 	struct hlist_head *state_byspi;
11326 	struct hlist_head *state_byseq;
11327 	unsigned int state_hmask;
11328 	unsigned int state_num;
11329 	struct work_struct state_hash_work;
11330 	struct list_head policy_all;
11331 	struct hlist_head *policy_byidx;
11332 	unsigned int policy_idx_hmask;
11333 	struct hlist_head policy_inexact[3];
11334 	struct xfrm_policy_hash policy_bydst[3];
11335 	unsigned int policy_count[6];
11336 	struct work_struct policy_hash_work;
11337 	struct xfrm_policy_hthresh policy_hthresh;
11338 	struct list_head inexact_bins;
11339 	struct sock *nlsk;
11340 	struct sock *nlsk_stash;
11341 	u32 sysctl_aevent_etime;
11342 	u32 sysctl_aevent_rseqth;
11343 	int sysctl_larval_drop;
11344 	u32 sysctl_acq_expires;
11345 	u8 policy_default[3];
11346 	struct ctl_table_header *sysctl_hdr;
11347 	long: 64;
11348 	long: 64;
11349 	long: 64;
11350 	struct dst_ops xfrm4_dst_ops;
11351 	struct dst_ops xfrm6_dst_ops;
11352 	spinlock_t xfrm_state_lock;
11353 	seqcount_spinlock_t xfrm_state_hash_generation;
11354 	seqcount_spinlock_t xfrm_policy_hash_generation;
11355 	spinlock_t xfrm_policy_lock;
11356 	struct mutex xfrm_cfg_mutex;
11357 	long: 64;
11358 	long: 64;
11359 	long: 64;
11360 	long: 64;
11361 	long: 64;
11362 	long: 64;
11363 	long: 64;
11364 	long: 64;
11365 	long: 64;
11366 };
11367 
11368 struct uevent_sock;
11369 
11370 struct net_generic;
11371 
11372 struct net {
11373 	refcount_t passive;
11374 	spinlock_t rules_mod_lock;
11375 	atomic_t dev_unreg_count;
11376 	unsigned int dev_base_seq;
11377 	int ifindex;
11378 	spinlock_t nsid_lock;
11379 	atomic_t fnhe_genid;
11380 	struct list_head list;
11381 	struct list_head exit_list;
11382 	struct llist_node cleanup_list;
11383 	struct key_tag *key_domain;
11384 	struct user_namespace *user_ns;
11385 	struct ucounts *ucounts;
11386 	struct idr netns_ids;
11387 	struct ns_common ns;
11388 	struct ref_tracker_dir refcnt_tracker;
11389 	struct list_head dev_base_head;
11390 	struct proc_dir_entry *proc_net;
11391 	struct proc_dir_entry *proc_net_stat;
11392 	struct ctl_table_set sysctls;
11393 	struct sock *rtnl;
11394 	struct sock *genl_sock;
11395 	struct uevent_sock *uevent_sock;
11396 	struct hlist_head *dev_name_head;
11397 	struct hlist_head *dev_index_head;
11398 	struct raw_notifier_head netdev_chain;
11399 	u32 hash_mix;
11400 	struct net_device *loopback_dev;
11401 	struct list_head rules_ops;
11402 	struct netns_core core;
11403 	struct netns_mib mib;
11404 	struct netns_packet packet;
11405 	struct netns_unix unx;
11406 	struct netns_nexthop nexthop;
11407 	struct netns_ipv4 ipv4;
11408 	long: 64;
11409 	long: 64;
11410 	long: 64;
11411 	long: 64;
11412 	long: 64;
11413 	long: 64;
11414 	long: 64;
11415 	long: 64;
11416 	long: 64;
11417 	long: 64;
11418 	long: 64;
11419 	long: 64;
11420 	long: 64;
11421 	long: 64;
11422 	struct netns_ipv6 ipv6;
11423 	struct netns_nf nf;
11424 	struct netns_ct ct;
11425 	struct net_generic *gen;
11426 	struct netns_bpf bpf;
11427 	struct netns_xfrm xfrm;
11428 	u64 net_cookie;
11429 	struct sock *diag_nlsk;
11430 	long: 64;
11431 	long: 64;
11432 	long: 64;
11433 	long: 64;
11434 	long: 64;
11435 	long: 64;
11436 	long: 64;
11437 	long: 64;
11438 	long: 64;
11439 	long: 64;
11440 	long: 64;
11441 	long: 64;
11442 	long: 64;
11443 	long: 64;
11444 };
11445 
11446 struct frag_v4_compare_key {
11447 	__be32 saddr;
11448 	__be32 daddr;
11449 	u32 user;
11450 	u32 vif;
11451 	__be16 id;
11452 	u16 protocol;
11453 };
11454 
11455 struct frag_v6_compare_key {
11456 	struct in6_addr saddr;
11457 	struct in6_addr daddr;
11458 	u32 user;
11459 	__be32 id;
11460 	u32 iif;
11461 };
11462 
11463 struct inet_frag_queue {
11464 	struct rhash_head node;
11465 	union {
11466 		struct frag_v4_compare_key v4;
11467 		struct frag_v6_compare_key v6;
11468 	} key;
11469 	struct timer_list timer;
11470 	spinlock_t lock;
11471 	refcount_t refcnt;
11472 	struct rb_root rb_fragments;
11473 	struct sk_buff *fragments_tail;
11474 	struct sk_buff *last_run_head;
11475 	ktime_t stamp;
11476 	int len;
11477 	int meat;
11478 	u8 mono_delivery_time;
11479 	__u8 flags;
11480 	u16 max_size;
11481 	struct fqdir *fqdir;
11482 	struct callback_head rcu;
11483 };
11484 
11485 struct inet_hashinfo;
11486 
11487 struct inet_timewait_death_row {
11488 	refcount_t tw_refcount;
11489 	long: 64;
11490 	long: 64;
11491 	long: 64;
11492 	long: 64;
11493 	long: 64;
11494 	long: 64;
11495 	long: 64;
11496 	long: 64;
11497 	long: 64;
11498 	long: 64;
11499 	long: 64;
11500 	long: 64;
11501 	long: 64;
11502 	long: 64;
11503 	long: 64;
11504 	struct inet_hashinfo *hashinfo;
11505 	int sysctl_max_tw_buckets;
11506 	long: 64;
11507 	long: 64;
11508 	long: 64;
11509 	long: 64;
11510 	long: 64;
11511 	long: 64;
11512 	long: 64;
11513 	long: 64;
11514 	long: 64;
11515 	long: 64;
11516 	long: 64;
11517 	long: 64;
11518 	long: 64;
11519 	long: 64;
11520 };
11521 
11522 enum tcp_ca_event {
11523 	CA_EVENT_TX_START = 0,
11524 	CA_EVENT_CWND_RESTART = 1,
11525 	CA_EVENT_COMPLETE_CWR = 2,
11526 	CA_EVENT_LOSS = 3,
11527 	CA_EVENT_ECN_NO_CE = 4,
11528 	CA_EVENT_ECN_IS_CE = 5,
11529 };
11530 
11531 struct ack_sample;
11532 
11533 struct rate_sample;
11534 
11535 union tcp_cc_info;
11536 
11537 struct tcp_congestion_ops {
11538 	u32 (*ssthresh)(struct sock *);
11539 	void (*cong_avoid)(struct sock *, u32, u32);
11540 	void (*set_state)(struct sock *, u8);
11541 	void (*cwnd_event)(struct sock *, enum tcp_ca_event);
11542 	void (*in_ack_event)(struct sock *, u32);
11543 	void (*pkts_acked)(struct sock *, const struct ack_sample *);
11544 	u32 (*min_tso_segs)(struct sock *);
11545 	void (*cong_control)(struct sock *, const struct rate_sample *);
11546 	u32 (*undo_cwnd)(struct sock *);
11547 	u32 (*sndbuf_expand)(struct sock *);
11548 	size_t (*get_info)(struct sock *, u32, int *, union tcp_cc_info *);
11549 	char name[16];
11550 	struct module *owner;
11551 	struct list_head list;
11552 	u32 key;
11553 	u32 flags;
11554 	void (*init)(struct sock *);
11555 	void (*release)(struct sock *);
11556 	long: 64;
11557 	long: 64;
11558 	long: 64;
11559 	long: 64;
11560 	long: 64;
11561 	long: 64;
11562 	long: 64;
11563 	long: 64;
11564 	long: 64;
11565 	long: 64;
11566 	long: 64;
11567 	long: 64;
11568 	long: 64;
11569 };
11570 
11571 typedef struct {} netdevice_tracker;
11572 
11573 struct xfrm_state;
11574 
11575 struct lwtunnel_state;
11576 
11577 struct dst_entry {
11578 	struct net_device *dev;
11579 	struct dst_ops *ops;
11580 	long unsigned int _metrics;
11581 	long unsigned int expires;
11582 	struct xfrm_state *xfrm;
11583 	int (*input)(struct sk_buff *);
11584 	int (*output)(struct net *, struct sock *, struct sk_buff *);
11585 	short unsigned int flags;
11586 	short int obsolete;
11587 	short unsigned int header_len;
11588 	short unsigned int trailer_len;
11589 	atomic_t __refcnt;
11590 	int __use;
11591 	long unsigned int lastuse;
11592 	struct lwtunnel_state *lwtstate;
11593 	struct callback_head callback_head;
11594 	short int error;
11595 	short int __pad;
11596 	__u32 tclassid;
11597 	netdevice_tracker dev_tracker;
11598 };
11599 
11600 typedef u64 netdev_features_t;
11601 
11602 struct net_device_stats {
11603 	long unsigned int rx_packets;
11604 	long unsigned int tx_packets;
11605 	long unsigned int rx_bytes;
11606 	long unsigned int tx_bytes;
11607 	long unsigned int rx_errors;
11608 	long unsigned int tx_errors;
11609 	long unsigned int rx_dropped;
11610 	long unsigned int tx_dropped;
11611 	long unsigned int multicast;
11612 	long unsigned int collisions;
11613 	long unsigned int rx_length_errors;
11614 	long unsigned int rx_over_errors;
11615 	long unsigned int rx_crc_errors;
11616 	long unsigned int rx_frame_errors;
11617 	long unsigned int rx_fifo_errors;
11618 	long unsigned int rx_missed_errors;
11619 	long unsigned int tx_aborted_errors;
11620 	long unsigned int tx_carrier_errors;
11621 	long unsigned int tx_fifo_errors;
11622 	long unsigned int tx_heartbeat_errors;
11623 	long unsigned int tx_window_errors;
11624 	long unsigned int rx_compressed;
11625 	long unsigned int tx_compressed;
11626 };
11627 
11628 struct netdev_hw_addr_list {
11629 	struct list_head list;
11630 	int count;
11631 	struct rb_root tree;
11632 };
11633 
11634 enum rx_handler_result {
11635 	RX_HANDLER_CONSUMED = 0,
11636 	RX_HANDLER_ANOTHER = 1,
11637 	RX_HANDLER_EXACT = 2,
11638 	RX_HANDLER_PASS = 3,
11639 };
11640 
11641 typedef enum rx_handler_result rx_handler_result_t;
11642 
11643 typedef rx_handler_result_t rx_handler_func_t(struct sk_buff **);
11644 
11645 typedef struct {
11646 	struct net *net;
11647 } possible_net_t;
11648 
11649 enum netdev_ml_priv_type {
11650 	ML_PRIV_NONE = 0,
11651 	ML_PRIV_CAN = 1,
11652 };
11653 
11654 struct pcpu_dstats;
11655 
11656 struct netdev_tc_txq {
11657 	u16 count;
11658 	u16 offset;
11659 };
11660 
11661 struct sfp_bus;
11662 
11663 struct udp_tunnel_nic;
11664 
11665 struct bpf_xdp_link;
11666 
11667 struct bpf_xdp_entity {
11668 	struct bpf_prog *prog;
11669 	struct bpf_xdp_link *link;
11670 };
11671 
11672 struct netdev_name_node;
11673 
11674 struct dev_ifalias;
11675 
11676 struct net_device_ops;
11677 
11678 struct net_device_core_stats;
11679 
11680 struct ethtool_ops;
11681 
11682 struct ndisc_ops;
11683 
11684 struct header_ops;
11685 
11686 struct in_device;
11687 
11688 struct inet6_dev;
11689 
11690 struct netdev_rx_queue;
11691 
11692 struct mini_Qdisc;
11693 
11694 struct netdev_queue;
11695 
11696 struct cpu_rmap;
11697 
11698 struct Qdisc;
11699 
11700 struct xdp_dev_bulk_queue;
11701 
11702 struct xps_dev_maps;
11703 
11704 struct netpoll_info;
11705 
11706 struct pcpu_lstats;
11707 
11708 struct pcpu_sw_netstats;
11709 
11710 struct rtnl_link_ops;
11711 
11712 struct phy_device;
11713 
11714 struct udp_tunnel_nic_info;
11715 
11716 struct rtnl_hw_stats64;
11717 
11718 struct net_device {
11719 	char name[16];
11720 	struct netdev_name_node *name_node;
11721 	struct dev_ifalias *ifalias;
11722 	long unsigned int mem_end;
11723 	long unsigned int mem_start;
11724 	long unsigned int base_addr;
11725 	long unsigned int state;
11726 	struct list_head dev_list;
11727 	struct list_head napi_list;
11728 	struct list_head unreg_list;
11729 	struct list_head close_list;
11730 	struct list_head ptype_all;
11731 	struct list_head ptype_specific;
11732 	struct {
11733 		struct list_head upper;
11734 		struct list_head lower;
11735 	} adj_list;
11736 	unsigned int flags;
11737 	long long unsigned int priv_flags;
11738 	const struct net_device_ops *netdev_ops;
11739 	int ifindex;
11740 	short unsigned int gflags;
11741 	short unsigned int hard_header_len;
11742 	unsigned int mtu;
11743 	short unsigned int needed_headroom;
11744 	short unsigned int needed_tailroom;
11745 	netdev_features_t features;
11746 	netdev_features_t hw_features;
11747 	netdev_features_t wanted_features;
11748 	netdev_features_t vlan_features;
11749 	netdev_features_t hw_enc_features;
11750 	netdev_features_t mpls_features;
11751 	netdev_features_t gso_partial_features;
11752 	unsigned int min_mtu;
11753 	unsigned int max_mtu;
11754 	short unsigned int type;
11755 	unsigned char min_header_len;
11756 	unsigned char name_assign_type;
11757 	int group;
11758 	struct net_device_stats stats;
11759 	struct net_device_core_stats *core_stats;
11760 	atomic_t carrier_up_count;
11761 	atomic_t carrier_down_count;
11762 	const struct ethtool_ops *ethtool_ops;
11763 	const struct ndisc_ops *ndisc_ops;
11764 	const struct header_ops *header_ops;
11765 	unsigned char operstate;
11766 	unsigned char link_mode;
11767 	unsigned char if_port;
11768 	unsigned char dma;
11769 	unsigned char perm_addr[32];
11770 	unsigned char addr_assign_type;
11771 	unsigned char addr_len;
11772 	unsigned char upper_level;
11773 	unsigned char lower_level;
11774 	short unsigned int neigh_priv_len;
11775 	short unsigned int dev_id;
11776 	short unsigned int dev_port;
11777 	short unsigned int padded;
11778 	spinlock_t addr_list_lock;
11779 	int irq;
11780 	struct netdev_hw_addr_list uc;
11781 	struct netdev_hw_addr_list mc;
11782 	struct netdev_hw_addr_list dev_addrs;
11783 	struct kset *queues_kset;
11784 	unsigned int promiscuity;
11785 	unsigned int allmulti;
11786 	bool uc_promisc;
11787 	struct in_device *ip_ptr;
11788 	struct inet6_dev *ip6_ptr;
11789 	const unsigned char *dev_addr;
11790 	struct netdev_rx_queue *_rx;
11791 	unsigned int num_rx_queues;
11792 	unsigned int real_num_rx_queues;
11793 	struct bpf_prog *xdp_prog;
11794 	long unsigned int gro_flush_timeout;
11795 	int napi_defer_hard_irqs;
11796 	unsigned int gro_max_size;
11797 	rx_handler_func_t *rx_handler;
11798 	void *rx_handler_data;
11799 	struct mini_Qdisc *miniq_ingress;
11800 	struct netdev_queue *ingress_queue;
11801 	struct nf_hook_entries *nf_hooks_ingress;
11802 	unsigned char broadcast[32];
11803 	struct cpu_rmap *rx_cpu_rmap;
11804 	struct hlist_node index_hlist;
11805 	long: 64;
11806 	long: 64;
11807 	long: 64;
11808 	long: 64;
11809 	struct netdev_queue *_tx;
11810 	unsigned int num_tx_queues;
11811 	unsigned int real_num_tx_queues;
11812 	struct Qdisc *qdisc;
11813 	unsigned int tx_queue_len;
11814 	spinlock_t tx_global_lock;
11815 	struct xdp_dev_bulk_queue *xdp_bulkq;
11816 	struct xps_dev_maps *xps_maps[2];
11817 	struct mini_Qdisc *miniq_egress;
11818 	struct nf_hook_entries *nf_hooks_egress;
11819 	struct hlist_head qdisc_hash[16];
11820 	struct timer_list watchdog_timer;
11821 	int watchdog_timeo;
11822 	u32 proto_down_reason;
11823 	struct list_head todo_list;
11824 	int *pcpu_refcnt;
11825 	struct ref_tracker_dir refcnt_tracker;
11826 	struct list_head link_watch_list;
11827 	enum {
11828 		NETREG_UNINITIALIZED = 0,
11829 		NETREG_REGISTERED = 1,
11830 		NETREG_UNREGISTERING = 2,
11831 		NETREG_UNREGISTERED = 3,
11832 		NETREG_RELEASED = 4,
11833 		NETREG_DUMMY = 5,
11834 	} reg_state: 8;
11835 	bool dismantle;
11836 	enum {
11837 		RTNL_LINK_INITIALIZED = 0,
11838 		RTNL_LINK_INITIALIZING = 1,
11839 	} rtnl_link_state: 16;
11840 	bool needs_free_netdev;
11841 	void (*priv_destructor)(struct net_device *);
11842 	struct netpoll_info *npinfo;
11843 	possible_net_t nd_net;
11844 	void *ml_priv;
11845 	enum netdev_ml_priv_type ml_priv_type;
11846 	union {
11847 		struct pcpu_lstats *lstats;
11848 		struct pcpu_sw_netstats *tstats;
11849 		struct pcpu_dstats *dstats;
11850 	};
11851 	struct device dev;
11852 	const struct attribute_group *sysfs_groups[4];
11853 	const struct attribute_group *sysfs_rx_queue_group;
11854 	const struct rtnl_link_ops *rtnl_link_ops;
11855 	unsigned int gso_max_size;
11856 	unsigned int tso_max_size;
11857 	u16 gso_max_segs;
11858 	u16 tso_max_segs;
11859 	s16 num_tc;
11860 	struct netdev_tc_txq tc_to_txq[16];
11861 	u8 prio_tc_map[16];
11862 	struct phy_device *phydev;
11863 	struct sfp_bus *sfp_bus;
11864 	struct lock_class_key *qdisc_tx_busylock;
11865 	bool proto_down;
11866 	unsigned int wol_enabled: 1;
11867 	unsigned int threaded: 1;
11868 	struct list_head net_notifier_list;
11869 	const struct udp_tunnel_nic_info *udp_tunnel_nic_info;
11870 	struct udp_tunnel_nic *udp_tunnel_nic;
11871 	struct bpf_xdp_entity xdp_state[3];
11872 	u8 dev_addr_shadow[32];
11873 	netdevice_tracker linkwatch_dev_tracker;
11874 	netdevice_tracker watchdog_dev_tracker;
11875 	netdevice_tracker dev_registered_tracker;
11876 	struct rtnl_hw_stats64 *offload_xstats_l3;
11877 	long: 64;
11878 	long: 64;
11879 	long: 64;
11880 	long: 64;
11881 	long: 64;
11882 	long: 64;
11883 	long: 64;
11884 	long: 64;
11885 	long: 64;
11886 	long: 64;
11887 	long: 64;
11888 	long: 64;
11889 	long: 64;
11890 	long: 64;
11891 };
11892 
11893 struct sk_buff_list {
11894 	struct sk_buff *next;
11895 	struct sk_buff *prev;
11896 };
11897 
11898 struct sk_buff_head {
11899 	union {
11900 		struct {
11901 			struct sk_buff *next;
11902 			struct sk_buff *prev;
11903 		};
11904 		struct sk_buff_list list;
11905 	};
11906 	__u32 qlen;
11907 	spinlock_t lock;
11908 };
11909 
11910 struct hh_cache {
11911 	unsigned int hh_len;
11912 	seqlock_t hh_lock;
11913 	long unsigned int hh_data[12];
11914 };
11915 
11916 struct neigh_table;
11917 
11918 struct neigh_parms;
11919 
11920 struct neigh_ops;
11921 
11922 struct neighbour {
11923 	struct neighbour *next;
11924 	struct neigh_table *tbl;
11925 	struct neigh_parms *parms;
11926 	long unsigned int confirmed;
11927 	long unsigned int updated;
11928 	rwlock_t lock;
11929 	refcount_t refcnt;
11930 	unsigned int arp_queue_len_bytes;
11931 	struct sk_buff_head arp_queue;
11932 	struct timer_list timer;
11933 	long unsigned int used;
11934 	atomic_t probes;
11935 	u8 nud_state;
11936 	u8 type;
11937 	u8 dead;
11938 	u8 protocol;
11939 	u32 flags;
11940 	seqlock_t ha_lock;
11941 	long: 0;
11942 	unsigned char ha[32];
11943 	struct hh_cache hh;
11944 	int (*output)(struct neighbour *, struct sk_buff *);
11945 	const struct neigh_ops *ops;
11946 	struct list_head gc_list;
11947 	struct list_head managed_list;
11948 	struct callback_head rcu;
11949 	struct net_device *dev;
11950 	netdevice_tracker dev_tracker;
11951 	u8 primary_key[0];
11952 };
11953 
11954 enum nf_log_type {
11955 	NF_LOG_TYPE_LOG = 0,
11956 	NF_LOG_TYPE_ULOG = 1,
11957 	NF_LOG_TYPE_MAX = 2,
11958 };
11959 
11960 typedef u8 u_int8_t;
11961 
11962 struct nf_loginfo;
11963 
11964 typedef void nf_logfn(struct net *, u_int8_t, unsigned int, const struct sk_buff *, const struct net_device *, const struct net_device *, const struct nf_loginfo *, const char *);
11965 
11966 struct nf_logger {
11967 	char *name;
11968 	enum nf_log_type type;
11969 	nf_logfn *logfn;
11970 	struct module *me;
11971 };
11972 
11973 struct ip_conntrack_stat {
11974 	unsigned int found;
11975 	unsigned int invalid;
11976 	unsigned int insert;
11977 	unsigned int insert_failed;
11978 	unsigned int clash_resolve;
11979 	unsigned int drop;
11980 	unsigned int early_drop;
11981 	unsigned int error;
11982 	unsigned int expect_new;
11983 	unsigned int expect_create;
11984 	unsigned int expect_delete;
11985 	unsigned int search_restart;
11986 	unsigned int chaintoolong;
11987 };
11988 
11989 struct bpf_cgroup_storage;
11990 
11991 struct bpf_prog_array_item {
11992 	struct bpf_prog *prog;
11993 	union {
11994 		struct bpf_cgroup_storage *cgroup_storage[2];
11995 		u64 bpf_cookie;
11996 	};
11997 };
11998 
11999 struct bpf_prog_array {
12000 	struct callback_head rcu;
12001 	struct bpf_prog_array_item items[0];
12002 };
12003 
12004 enum bpf_prog_type {
12005 	BPF_PROG_TYPE_UNSPEC = 0,
12006 	BPF_PROG_TYPE_SOCKET_FILTER = 1,
12007 	BPF_PROG_TYPE_KPROBE = 2,
12008 	BPF_PROG_TYPE_SCHED_CLS = 3,
12009 	BPF_PROG_TYPE_SCHED_ACT = 4,
12010 	BPF_PROG_TYPE_TRACEPOINT = 5,
12011 	BPF_PROG_TYPE_XDP = 6,
12012 	BPF_PROG_TYPE_PERF_EVENT = 7,
12013 	BPF_PROG_TYPE_CGROUP_SKB = 8,
12014 	BPF_PROG_TYPE_CGROUP_SOCK = 9,
12015 	BPF_PROG_TYPE_LWT_IN = 10,
12016 	BPF_PROG_TYPE_LWT_OUT = 11,
12017 	BPF_PROG_TYPE_LWT_XMIT = 12,
12018 	BPF_PROG_TYPE_SOCK_OPS = 13,
12019 	BPF_PROG_TYPE_SK_SKB = 14,
12020 	BPF_PROG_TYPE_CGROUP_DEVICE = 15,
12021 	BPF_PROG_TYPE_SK_MSG = 16,
12022 	BPF_PROG_TYPE_RAW_TRACEPOINT = 17,
12023 	BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 18,
12024 	BPF_PROG_TYPE_LWT_SEG6LOCAL = 19,
12025 	BPF_PROG_TYPE_LIRC_MODE2 = 20,
12026 	BPF_PROG_TYPE_SK_REUSEPORT = 21,
12027 	BPF_PROG_TYPE_FLOW_DISSECTOR = 22,
12028 	BPF_PROG_TYPE_CGROUP_SYSCTL = 23,
12029 	BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 24,
12030 	BPF_PROG_TYPE_CGROUP_SOCKOPT = 25,
12031 	BPF_PROG_TYPE_TRACING = 26,
12032 	BPF_PROG_TYPE_STRUCT_OPS = 27,
12033 	BPF_PROG_TYPE_EXT = 28,
12034 	BPF_PROG_TYPE_LSM = 29,
12035 	BPF_PROG_TYPE_SK_LOOKUP = 30,
12036 	BPF_PROG_TYPE_SYSCALL = 31,
12037 };
12038 
12039 enum bpf_attach_type {
12040 	BPF_CGROUP_INET_INGRESS = 0,
12041 	BPF_CGROUP_INET_EGRESS = 1,
12042 	BPF_CGROUP_INET_SOCK_CREATE = 2,
12043 	BPF_CGROUP_SOCK_OPS = 3,
12044 	BPF_SK_SKB_STREAM_PARSER = 4,
12045 	BPF_SK_SKB_STREAM_VERDICT = 5,
12046 	BPF_CGROUP_DEVICE = 6,
12047 	BPF_SK_MSG_VERDICT = 7,
12048 	BPF_CGROUP_INET4_BIND = 8,
12049 	BPF_CGROUP_INET6_BIND = 9,
12050 	BPF_CGROUP_INET4_CONNECT = 10,
12051 	BPF_CGROUP_INET6_CONNECT = 11,
12052 	BPF_CGROUP_INET4_POST_BIND = 12,
12053 	BPF_CGROUP_INET6_POST_BIND = 13,
12054 	BPF_CGROUP_UDP4_SENDMSG = 14,
12055 	BPF_CGROUP_UDP6_SENDMSG = 15,
12056 	BPF_LIRC_MODE2 = 16,
12057 	BPF_FLOW_DISSECTOR = 17,
12058 	BPF_CGROUP_SYSCTL = 18,
12059 	BPF_CGROUP_UDP4_RECVMSG = 19,
12060 	BPF_CGROUP_UDP6_RECVMSG = 20,
12061 	BPF_CGROUP_GETSOCKOPT = 21,
12062 	BPF_CGROUP_SETSOCKOPT = 22,
12063 	BPF_TRACE_RAW_TP = 23,
12064 	BPF_TRACE_FENTRY = 24,
12065 	BPF_TRACE_FEXIT = 25,
12066 	BPF_MODIFY_RETURN = 26,
12067 	BPF_LSM_MAC = 27,
12068 	BPF_TRACE_ITER = 28,
12069 	BPF_CGROUP_INET4_GETPEERNAME = 29,
12070 	BPF_CGROUP_INET6_GETPEERNAME = 30,
12071 	BPF_CGROUP_INET4_GETSOCKNAME = 31,
12072 	BPF_CGROUP_INET6_GETSOCKNAME = 32,
12073 	BPF_XDP_DEVMAP = 33,
12074 	BPF_CGROUP_INET_SOCK_RELEASE = 34,
12075 	BPF_XDP_CPUMAP = 35,
12076 	BPF_SK_LOOKUP = 36,
12077 	BPF_XDP = 37,
12078 	BPF_SK_SKB_VERDICT = 38,
12079 	BPF_SK_REUSEPORT_SELECT = 39,
12080 	BPF_SK_REUSEPORT_SELECT_OR_MIGRATE = 40,
12081 	BPF_PERF_EVENT = 41,
12082 	BPF_TRACE_KPROBE_MULTI = 42,
12083 	BPF_LSM_CGROUP = 43,
12084 	__MAX_BPF_ATTACH_TYPE = 44,
12085 };
12086 
12087 struct sock_filter {
12088 	__u16 code;
12089 	__u8 jt;
12090 	__u8 jf;
12091 	__u32 k;
12092 };
12093 
12094 struct bpf_insn {
12095 	__u8 code;
12096 	__u8 dst_reg: 4;
12097 	__u8 src_reg: 4;
12098 	__s16 off;
12099 	__s32 imm;
12100 };
12101 
12102 struct bpf_prog_stats;
12103 
12104 struct bpf_prog_aux;
12105 
12106 struct sock_fprog_kern;
12107 
12108 struct bpf_prog {
12109 	u16 pages;
12110 	u16 jited: 1;
12111 	u16 jit_requested: 1;
12112 	u16 gpl_compatible: 1;
12113 	u16 cb_access: 1;
12114 	u16 dst_needed: 1;
12115 	u16 blinding_requested: 1;
12116 	u16 blinded: 1;
12117 	u16 is_func: 1;
12118 	u16 kprobe_override: 1;
12119 	u16 has_callchain_buf: 1;
12120 	u16 enforce_expected_attach_type: 1;
12121 	u16 call_get_stack: 1;
12122 	u16 call_get_func_ip: 1;
12123 	u16 tstamp_type_access: 1;
12124 	enum bpf_prog_type type;
12125 	enum bpf_attach_type expected_attach_type;
12126 	u32 len;
12127 	u32 jited_len;
12128 	u8 tag[8];
12129 	struct bpf_prog_stats *stats;
12130 	int *active;
12131 	unsigned int (*bpf_func)(const void *, const struct bpf_insn *);
12132 	struct bpf_prog_aux *aux;
12133 	struct sock_fprog_kern *orig_prog;
12134 	union {
12135 		struct {
12136 			struct {} __empty_insns;
12137 			struct sock_filter insns[0];
12138 		};
12139 		struct {
12140 			struct {} __empty_insnsi;
12141 			struct bpf_insn insnsi[0];
12142 		};
12143 	};
12144 };
12145 
12146 struct pipe_buf_operations;
12147 
12148 struct pipe_buffer {
12149 	struct page *page;
12150 	unsigned int offset;
12151 	unsigned int len;
12152 	const struct pipe_buf_operations *ops;
12153 	unsigned int flags;
12154 	long unsigned int private;
12155 };
12156 
12157 struct pipe_buf_operations {
12158 	int (*confirm)(struct pipe_inode_info *, struct pipe_buffer *);
12159 	void (*release)(struct pipe_inode_info *, struct pipe_buffer *);
12160 	bool (*try_steal)(struct pipe_inode_info *, struct pipe_buffer *);
12161 	bool (*get)(struct pipe_inode_info *, struct pipe_buffer *);
12162 };
12163 
12164 struct skb_shared_hwtstamps {
12165 	union {
12166 		ktime_t hwtstamp;
12167 		void *netdev_data;
12168 	};
12169 };
12170 
12171 struct skb_ext {
12172 	refcount_t refcnt;
12173 	u8 offset[1];
12174 	u8 chunks;
12175 	long: 0;
12176 	char data[0];
12177 };
12178 
12179 struct xdp_mem_info {
12180 	u32 type;
12181 	u32 id;
12182 };
12183 
12184 struct xdp_rxq_info {
12185 	struct net_device *dev;
12186 	u32 queue_index;
12187 	u32 reg_state;
12188 	struct xdp_mem_info mem;
12189 	unsigned int napi_id;
12190 	u32 frag_size;
12191 	long: 64;
12192 	long: 64;
12193 	long: 64;
12194 	long: 64;
12195 	long: 64;
12196 	long: 64;
12197 	long: 64;
12198 	long: 64;
12199 	long: 64;
12200 	long: 64;
12201 	long: 64;
12202 	long: 64;
12203 };
12204 
12205 struct xdp_txq_info {
12206 	struct net_device *dev;
12207 };
12208 
12209 struct xdp_buff {
12210 	void *data;
12211 	void *data_end;
12212 	void *data_meta;
12213 	void *data_hard_start;
12214 	struct xdp_rxq_info *rxq;
12215 	struct xdp_txq_info *txq;
12216 	u32 frame_sz;
12217 	u32 flags;
12218 };
12219 
12220 struct xdp_frame {
12221 	void *data;
12222 	u16 len;
12223 	u16 headroom;
12224 	u32 metasize: 8;
12225 	u32 frame_sz: 24;
12226 	struct xdp_mem_info mem;
12227 	struct net_device *dev_rx;
12228 	u32 flags;
12229 };
12230 
12231 struct nlmsghdr {
12232 	__u32 nlmsg_len;
12233 	__u16 nlmsg_type;
12234 	__u16 nlmsg_flags;
12235 	__u32 nlmsg_seq;
12236 	__u32 nlmsg_pid;
12237 };
12238 
12239 struct nlattr {
12240 	__u16 nla_len;
12241 	__u16 nla_type;
12242 };
12243 
12244 struct nla_policy;
12245 
12246 struct netlink_ext_ack {
12247 	const char *_msg;
12248 	const struct nlattr *bad_attr;
12249 	const struct nla_policy *policy;
12250 	u8 cookie[20];
12251 	u8 cookie_len;
12252 };
12253 
12254 struct netlink_range_validation;
12255 
12256 struct netlink_range_validation_signed;
12257 
12258 struct nla_policy {
12259 	u8 type;
12260 	u8 validation_type;
12261 	u16 len;
12262 	union {
12263 		const u32 bitfield32_valid;
12264 		const u32 mask;
12265 		const char *reject_message;
12266 		const struct nla_policy *nested_policy;
12267 		struct netlink_range_validation *range;
12268 		struct netlink_range_validation_signed *range_signed;
12269 		struct {
12270 			s16 min;
12271 			s16 max;
12272 		};
12273 		int (*validate)(const struct nlattr *, struct netlink_ext_ack *);
12274 		u16 strict_start_type;
12275 	};
12276 };
12277 
12278 struct netlink_callback {
12279 	struct sk_buff *skb;
12280 	const struct nlmsghdr *nlh;
12281 	int (*dump)(struct sk_buff *, struct netlink_callback *);
12282 	int (*done)(struct netlink_callback *);
12283 	void *data;
12284 	struct module *module;
12285 	struct netlink_ext_ack *extack;
12286 	u16 family;
12287 	u16 answer_flags;
12288 	u32 min_dump_alloc;
12289 	unsigned int prev_seq;
12290 	unsigned int seq;
12291 	bool strict_check;
12292 	union {
12293 		u8 ctx[48];
12294 		long int args[6];
12295 	};
12296 };
12297 
12298 struct ndmsg {
12299 	__u8 ndm_family;
12300 	__u8 ndm_pad1;
12301 	__u16 ndm_pad2;
12302 	__s32 ndm_ifindex;
12303 	__u16 ndm_state;
12304 	__u8 ndm_flags;
12305 	__u8 ndm_type;
12306 };
12307 
12308 typedef struct {
12309 	unsigned int clock_rate;
12310 	unsigned int clock_type;
12311 	short unsigned int loopback;
12312 } sync_serial_settings;
12313 
12314 typedef struct {
12315 	unsigned int clock_rate;
12316 	unsigned int clock_type;
12317 	short unsigned int loopback;
12318 	unsigned int slot_map;
12319 } te1_settings;
12320 
12321 typedef struct {
12322 	short unsigned int encoding;
12323 	short unsigned int parity;
12324 } raw_hdlc_proto;
12325 
12326 typedef struct {
12327 	unsigned int t391;
12328 	unsigned int t392;
12329 	unsigned int n391;
12330 	unsigned int n392;
12331 	unsigned int n393;
12332 	short unsigned int lmi;
12333 	short unsigned int dce;
12334 } fr_proto;
12335 
12336 typedef struct {
12337 	unsigned int dlci;
12338 } fr_proto_pvc;
12339 
12340 typedef struct {
12341 	unsigned int dlci;
12342 	char master[16];
12343 } fr_proto_pvc_info;
12344 
12345 typedef struct {
12346 	unsigned int interval;
12347 	unsigned int timeout;
12348 } cisco_proto;
12349 
12350 typedef struct {
12351 	short unsigned int dce;
12352 	unsigned int modulo;
12353 	unsigned int window;
12354 	unsigned int t1;
12355 	unsigned int t2;
12356 	unsigned int n2;
12357 } x25_hdlc_proto;
12358 
12359 struct ifmap {
12360 	long unsigned int mem_start;
12361 	long unsigned int mem_end;
12362 	short unsigned int base_addr;
12363 	unsigned char irq;
12364 	unsigned char dma;
12365 	unsigned char port;
12366 };
12367 
12368 struct if_settings {
12369 	unsigned int type;
12370 	unsigned int size;
12371 	union {
12372 		raw_hdlc_proto *raw_hdlc;
12373 		cisco_proto *cisco;
12374 		fr_proto *fr;
12375 		fr_proto_pvc *fr_pvc;
12376 		fr_proto_pvc_info *fr_pvc_info;
12377 		x25_hdlc_proto *x25;
12378 		sync_serial_settings *sync;
12379 		te1_settings *te1;
12380 	} ifs_ifsu;
12381 };
12382 
12383 struct ifreq {
12384 	union {
12385 		char ifrn_name[16];
12386 	} ifr_ifrn;
12387 	union {
12388 		struct sockaddr ifru_addr;
12389 		struct sockaddr ifru_dstaddr;
12390 		struct sockaddr ifru_broadaddr;
12391 		struct sockaddr ifru_netmask;
12392 		struct sockaddr ifru_hwaddr;
12393 		short int ifru_flags;
12394 		int ifru_ivalue;
12395 		int ifru_mtu;
12396 		struct ifmap ifru_map;
12397 		char ifru_slave[16];
12398 		char ifru_newname[16];
12399 		void *ifru_data;
12400 		struct if_settings ifru_settings;
12401 	} ifr_ifru;
12402 };
12403 
12404 struct rtnl_link_stats64 {
12405 	__u64 rx_packets;
12406 	__u64 tx_packets;
12407 	__u64 rx_bytes;
12408 	__u64 tx_bytes;
12409 	__u64 rx_errors;
12410 	__u64 tx_errors;
12411 	__u64 rx_dropped;
12412 	__u64 tx_dropped;
12413 	__u64 multicast;
12414 	__u64 collisions;
12415 	__u64 rx_length_errors;
12416 	__u64 rx_over_errors;
12417 	__u64 rx_crc_errors;
12418 	__u64 rx_frame_errors;
12419 	__u64 rx_fifo_errors;
12420 	__u64 rx_missed_errors;
12421 	__u64 tx_aborted_errors;
12422 	__u64 tx_carrier_errors;
12423 	__u64 tx_fifo_errors;
12424 	__u64 tx_heartbeat_errors;
12425 	__u64 tx_window_errors;
12426 	__u64 rx_compressed;
12427 	__u64 tx_compressed;
12428 	__u64 rx_nohandler;
12429 	__u64 rx_otherhost_dropped;
12430 };
12431 
12432 struct rtnl_hw_stats64 {
12433 	__u64 rx_packets;
12434 	__u64 tx_packets;
12435 	__u64 rx_bytes;
12436 	__u64 tx_bytes;
12437 	__u64 rx_errors;
12438 	__u64 tx_errors;
12439 	__u64 rx_dropped;
12440 	__u64 tx_dropped;
12441 	__u64 multicast;
12442 };
12443 
12444 struct ifla_vf_guid {
12445 	__u32 vf;
12446 	__u64 guid;
12447 };
12448 
12449 struct ifla_vf_stats {
12450 	__u64 rx_packets;
12451 	__u64 tx_packets;
12452 	__u64 rx_bytes;
12453 	__u64 tx_bytes;
12454 	__u64 broadcast;
12455 	__u64 multicast;
12456 	__u64 rx_dropped;
12457 	__u64 tx_dropped;
12458 };
12459 
12460 struct ifla_vf_info {
12461 	__u32 vf;
12462 	__u8 mac[32];
12463 	__u32 vlan;
12464 	__u32 qos;
12465 	__u32 spoofchk;
12466 	__u32 linkstate;
12467 	__u32 min_tx_rate;
12468 	__u32 max_tx_rate;
12469 	__u32 rss_query_en;
12470 	__u32 trusted;
12471 	__be16 vlan_proto;
12472 };
12473 
12474 struct tc_stats {
12475 	__u64 bytes;
12476 	__u32 packets;
12477 	__u32 drops;
12478 	__u32 overlimits;
12479 	__u32 bps;
12480 	__u32 pps;
12481 	__u32 qlen;
12482 	__u32 backlog;
12483 };
12484 
12485 struct tc_sizespec {
12486 	unsigned char cell_log;
12487 	unsigned char size_log;
12488 	short int cell_align;
12489 	int overhead;
12490 	unsigned int linklayer;
12491 	unsigned int mpu;
12492 	unsigned int mtu;
12493 	unsigned int tsize;
12494 };
12495 
12496 enum netdev_tx {
12497 	__NETDEV_TX_MIN = -2147483648,
12498 	NETDEV_TX_OK = 0,
12499 	NETDEV_TX_BUSY = 16,
12500 };
12501 
12502 typedef enum netdev_tx netdev_tx_t;
12503 
12504 struct net_device_core_stats {
12505 	long unsigned int rx_dropped;
12506 	long unsigned int tx_dropped;
12507 	long unsigned int rx_nohandler;
12508 	long unsigned int rx_otherhost_dropped;
12509 };
12510 
12511 struct header_ops {
12512 	int (*create)(struct sk_buff *, struct net_device *, short unsigned int, const void *, const void *, unsigned int);
12513 	int (*parse)(const struct sk_buff *, unsigned char *);
12514 	int (*cache)(const struct neighbour *, struct hh_cache *, __be16);
12515 	void (*cache_update)(struct hh_cache *, const struct net_device *, const unsigned char *);
12516 	bool (*validate)(const char *, unsigned int);
12517 	__be16 (*parse_protocol)(const struct sk_buff *);
12518 };
12519 
12520 struct netdev_queue {
12521 	struct net_device *dev;
12522 	netdevice_tracker dev_tracker;
12523 	struct Qdisc *qdisc;
12524 	struct Qdisc *qdisc_sleeping;
12525 	struct kobject kobj;
12526 	int numa_node;
12527 	long unsigned int tx_maxrate;
12528 	atomic_long_t trans_timeout;
12529 	struct net_device *sb_dev;
12530 	long: 64;
12531 	spinlock_t _xmit_lock;
12532 	int xmit_lock_owner;
12533 	long unsigned int trans_start;
12534 	long unsigned int state;
12535 	long: 64;
12536 	long: 64;
12537 	long: 64;
12538 	long: 64;
12539 	long: 64;
12540 	long: 64;
12541 	long: 64;
12542 	long: 64;
12543 	long: 64;
12544 	long: 64;
12545 	long: 64;
12546 	long: 64;
12547 	long: 64;
12548 	struct dql dql;
12549 };
12550 
12551 struct net_rate_estimator;
12552 
12553 struct qdisc_skb_head {
12554 	struct sk_buff *head;
12555 	struct sk_buff *tail;
12556 	__u32 qlen;
12557 	spinlock_t lock;
12558 };
12559 
12560 struct gnet_stats_basic_sync {
12561 	u64_stats_t bytes;
12562 	u64_stats_t packets;
12563 	struct u64_stats_sync syncp;
12564 };
12565 
12566 struct gnet_stats_queue {
12567 	__u32 qlen;
12568 	__u32 backlog;
12569 	__u32 drops;
12570 	__u32 requeues;
12571 	__u32 overlimits;
12572 };
12573 
12574 struct Qdisc_ops;
12575 
12576 struct qdisc_size_table;
12577 
12578 struct Qdisc {
12579 	int (*enqueue)(struct sk_buff *, struct Qdisc *, struct sk_buff **);
12580 	struct sk_buff * (*dequeue)(struct Qdisc *);
12581 	unsigned int flags;
12582 	u32 limit;
12583 	const struct Qdisc_ops *ops;
12584 	struct qdisc_size_table *stab;
12585 	struct hlist_node hash;
12586 	u32 handle;
12587 	u32 parent;
12588 	struct netdev_queue *dev_queue;
12589 	struct net_rate_estimator *rate_est;
12590 	struct gnet_stats_basic_sync *cpu_bstats;
12591 	struct gnet_stats_queue *cpu_qstats;
12592 	int pad;
12593 	refcount_t refcnt;
12594 	long: 64;
12595 	long: 64;
12596 	long: 64;
12597 	struct sk_buff_head gso_skb;
12598 	struct qdisc_skb_head q;
12599 	struct gnet_stats_basic_sync bstats;
12600 	struct gnet_stats_queue qstats;
12601 	long unsigned int state;
12602 	long unsigned int state2;
12603 	struct Qdisc *next_sched;
12604 	struct sk_buff_head skb_bad_txq;
12605 	long: 64;
12606 	long: 64;
12607 	long: 64;
12608 	long: 64;
12609 	long: 64;
12610 	long: 64;
12611 	long: 64;
12612 	long: 64;
12613 	long: 64;
12614 	long: 64;
12615 	long: 64;
12616 	long: 64;
12617 	long: 64;
12618 	long: 64;
12619 	long: 64;
12620 	spinlock_t busylock;
12621 	spinlock_t seqlock;
12622 	struct callback_head rcu;
12623 	netdevice_tracker dev_tracker;
12624 	long: 64;
12625 	long: 64;
12626 	long: 64;
12627 	long: 64;
12628 	long: 64;
12629 	long: 64;
12630 	long: 64;
12631 	long: 64;
12632 	long: 64;
12633 	long: 64;
12634 	long: 64;
12635 	long: 64;
12636 	long: 64;
12637 	long int privdata[0];
12638 };
12639 
12640 struct rps_map {
12641 	unsigned int len;
12642 	struct callback_head rcu;
12643 	u16 cpus[0];
12644 };
12645 
12646 struct rps_dev_flow {
12647 	u16 cpu;
12648 	u16 filter;
12649 	unsigned int last_qtail;
12650 };
12651 
12652 struct rps_dev_flow_table {
12653 	unsigned int mask;
12654 	struct callback_head rcu;
12655 	struct rps_dev_flow flows[0];
12656 };
12657 
12658 struct netdev_rx_queue {
12659 	struct xdp_rxq_info xdp_rxq;
12660 	struct rps_map *rps_map;
12661 	struct rps_dev_flow_table *rps_flow_table;
12662 	struct kobject kobj;
12663 	struct net_device *dev;
12664 	netdevice_tracker dev_tracker;
12665 	long: 64;
12666 	long: 64;
12667 	long: 64;
12668 	long: 64;
12669 	long: 64;
12670 };
12671 
12672 struct xps_map {
12673 	unsigned int len;
12674 	unsigned int alloc_len;
12675 	struct callback_head rcu;
12676 	u16 queues[0];
12677 };
12678 
12679 struct xps_dev_maps {
12680 	struct callback_head rcu;
12681 	unsigned int nr_ids;
12682 	s16 num_tc;
12683 	struct xps_map *attr_map[0];
12684 };
12685 
12686 struct netdev_phys_item_id {
12687 	unsigned char id[32];
12688 	unsigned char id_len;
12689 };
12690 
12691 enum net_device_path_type {
12692 	DEV_PATH_ETHERNET = 0,
12693 	DEV_PATH_VLAN = 1,
12694 	DEV_PATH_BRIDGE = 2,
12695 	DEV_PATH_PPPOE = 3,
12696 	DEV_PATH_DSA = 4,
12697 	DEV_PATH_MTK_WDMA = 5,
12698 };
12699 
12700 struct net_device_path {
12701 	enum net_device_path_type type;
12702 	const struct net_device *dev;
12703 	union {
12704 		struct {
12705 			u16 id;
12706 			__be16 proto;
12707 			u8 h_dest[6];
12708 		} encap;
12709 		struct {
12710 			enum {
12711 				DEV_PATH_BR_VLAN_KEEP = 0,
12712 				DEV_PATH_BR_VLAN_TAG = 1,
12713 				DEV_PATH_BR_VLAN_UNTAG = 2,
12714 				DEV_PATH_BR_VLAN_UNTAG_HW = 3,
12715 			} vlan_mode;
12716 			u16 vlan_id;
12717 			__be16 vlan_proto;
12718 		} bridge;
12719 		struct {
12720 			int port;
12721 			u16 proto;
12722 		} dsa;
12723 		struct {
12724 			u8 wdma_idx;
12725 			u8 queue;
12726 			u16 wcid;
12727 			u8 bss;
12728 		} mtk_wdma;
12729 	};
12730 };
12731 
12732 struct net_device_path_ctx {
12733 	const struct net_device *dev;
12734 	u8 daddr[6];
12735 	int num_vlans;
12736 	struct {
12737 		u16 id;
12738 		__be16 proto;
12739 	} vlan[2];
12740 };
12741 
12742 enum tc_setup_type {
12743 	TC_SETUP_QDISC_MQPRIO = 0,
12744 	TC_SETUP_CLSU32 = 1,
12745 	TC_SETUP_CLSFLOWER = 2,
12746 	TC_SETUP_CLSMATCHALL = 3,
12747 	TC_SETUP_CLSBPF = 4,
12748 	TC_SETUP_BLOCK = 5,
12749 	TC_SETUP_QDISC_CBS = 6,
12750 	TC_SETUP_QDISC_RED = 7,
12751 	TC_SETUP_QDISC_PRIO = 8,
12752 	TC_SETUP_QDISC_MQ = 9,
12753 	TC_SETUP_QDISC_ETF = 10,
12754 	TC_SETUP_ROOT_QDISC = 11,
12755 	TC_SETUP_QDISC_GRED = 12,
12756 	TC_SETUP_QDISC_TAPRIO = 13,
12757 	TC_SETUP_FT = 14,
12758 	TC_SETUP_QDISC_ETS = 15,
12759 	TC_SETUP_QDISC_TBF = 16,
12760 	TC_SETUP_QDISC_FIFO = 17,
12761 	TC_SETUP_QDISC_HTB = 18,
12762 	TC_SETUP_ACT = 19,
12763 };
12764 
12765 enum bpf_netdev_command {
12766 	XDP_SETUP_PROG = 0,
12767 	XDP_SETUP_PROG_HW = 1,
12768 	BPF_OFFLOAD_MAP_ALLOC = 2,
12769 	BPF_OFFLOAD_MAP_FREE = 3,
12770 	XDP_SETUP_XSK_POOL = 4,
12771 };
12772 
12773 enum bpf_map_type {
12774 	BPF_MAP_TYPE_UNSPEC = 0,
12775 	BPF_MAP_TYPE_HASH = 1,
12776 	BPF_MAP_TYPE_ARRAY = 2,
12777 	BPF_MAP_TYPE_PROG_ARRAY = 3,
12778 	BPF_MAP_TYPE_PERF_EVENT_ARRAY = 4,
12779 	BPF_MAP_TYPE_PERCPU_HASH = 5,
12780 	BPF_MAP_TYPE_PERCPU_ARRAY = 6,
12781 	BPF_MAP_TYPE_STACK_TRACE = 7,
12782 	BPF_MAP_TYPE_CGROUP_ARRAY = 8,
12783 	BPF_MAP_TYPE_LRU_HASH = 9,
12784 	BPF_MAP_TYPE_LRU_PERCPU_HASH = 10,
12785 	BPF_MAP_TYPE_LPM_TRIE = 11,
12786 	BPF_MAP_TYPE_ARRAY_OF_MAPS = 12,
12787 	BPF_MAP_TYPE_HASH_OF_MAPS = 13,
12788 	BPF_MAP_TYPE_DEVMAP = 14,
12789 	BPF_MAP_TYPE_SOCKMAP = 15,
12790 	BPF_MAP_TYPE_CPUMAP = 16,
12791 	BPF_MAP_TYPE_XSKMAP = 17,
12792 	BPF_MAP_TYPE_SOCKHASH = 18,
12793 	BPF_MAP_TYPE_CGROUP_STORAGE = 19,
12794 	BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 20,
12795 	BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 21,
12796 	BPF_MAP_TYPE_QUEUE = 22,
12797 	BPF_MAP_TYPE_STACK = 23,
12798 	BPF_MAP_TYPE_SK_STORAGE = 24,
12799 	BPF_MAP_TYPE_DEVMAP_HASH = 25,
12800 	BPF_MAP_TYPE_STRUCT_OPS = 26,
12801 	BPF_MAP_TYPE_RINGBUF = 27,
12802 	BPF_MAP_TYPE_INODE_STORAGE = 28,
12803 	BPF_MAP_TYPE_TASK_STORAGE = 29,
12804 	BPF_MAP_TYPE_BLOOM_FILTER = 30,
12805 };
12806 
12807 struct bpf_map_ops;
12808 
12809 struct bpf_map_value_off;
12810 
12811 struct btf;
12812 
12813 struct bpf_map_off_arr;
12814 
12815 struct bpf_map {
12816 	const struct bpf_map_ops *ops;
12817 	struct bpf_map *inner_map_meta;
12818 	enum bpf_map_type map_type;
12819 	u32 key_size;
12820 	u32 value_size;
12821 	u32 max_entries;
12822 	u64 map_extra;
12823 	u32 map_flags;
12824 	int spin_lock_off;
12825 	struct bpf_map_value_off *kptr_off_tab;
12826 	int timer_off;
12827 	u32 id;
12828 	int numa_node;
12829 	u32 btf_key_type_id;
12830 	u32 btf_value_type_id;
12831 	u32 btf_vmlinux_value_type_id;
12832 	struct btf *btf;
12833 	struct obj_cgroup *objcg;
12834 	char name[16];
12835 	struct bpf_map_off_arr *off_arr;
12836 	long: 64;
12837 	atomic64_t refcnt;
12838 	atomic64_t usercnt;
12839 	struct work_struct work;
12840 	struct mutex freeze_mutex;
12841 	atomic64_t writecnt;
12842 	struct {
12843 		spinlock_t lock;
12844 		enum bpf_prog_type type;
12845 		bool jited;
12846 		bool xdp_has_frags;
12847 	} owner;
12848 	bool bypass_spec_v1;
12849 	bool frozen;
12850 	long: 64;
12851 	long: 64;
12852 };
12853 
12854 struct bpf_map_dev_ops;
12855 
12856 struct bpf_offloaded_map {
12857 	struct bpf_map map;
12858 	struct net_device *netdev;
12859 	const struct bpf_map_dev_ops *dev_ops;
12860 	void *dev_priv;
12861 	struct list_head offloads;
12862 	long: 64;
12863 	long: 64;
12864 	long: 64;
12865 	long: 64;
12866 	long: 64;
12867 	long: 64;
12868 	long: 64;
12869 	long: 64;
12870 	long: 64;
12871 	long: 64;
12872 	long: 64;
12873 };
12874 
12875 struct xsk_buff_pool;
12876 
12877 struct netdev_bpf {
12878 	enum bpf_netdev_command command;
12879 	union {
12880 		struct {
12881 			u32 flags;
12882 			struct bpf_prog *prog;
12883 			struct netlink_ext_ack *extack;
12884 		};
12885 		struct {
12886 			struct bpf_offloaded_map *offmap;
12887 		};
12888 		struct {
12889 			struct xsk_buff_pool *pool;
12890 			u16 queue_id;
12891 		} xsk;
12892 	};
12893 };
12894 
12895 struct dev_ifalias {
12896 	struct callback_head rcuhead;
12897 	char ifalias[0];
12898 };
12899 
12900 struct devlink_port;
12901 
12902 struct ip_tunnel_parm;
12903 
12904 struct net_device_ops {
12905 	int (*ndo_init)(struct net_device *);
12906 	void (*ndo_uninit)(struct net_device *);
12907 	int (*ndo_open)(struct net_device *);
12908 	int (*ndo_stop)(struct net_device *);
12909 	netdev_tx_t (*ndo_start_xmit)(struct sk_buff *, struct net_device *);
12910 	netdev_features_t (*ndo_features_check)(struct sk_buff *, struct net_device *, netdev_features_t);
12911 	u16 (*ndo_select_queue)(struct net_device *, struct sk_buff *, struct net_device *);
12912 	void (*ndo_change_rx_flags)(struct net_device *, int);
12913 	void (*ndo_set_rx_mode)(struct net_device *);
12914 	int (*ndo_set_mac_address)(struct net_device *, void *);
12915 	int (*ndo_validate_addr)(struct net_device *);
12916 	int (*ndo_do_ioctl)(struct net_device *, struct ifreq *, int);
12917 	int (*ndo_eth_ioctl)(struct net_device *, struct ifreq *, int);
12918 	int (*ndo_siocbond)(struct net_device *, struct ifreq *, int);
12919 	int (*ndo_siocwandev)(struct net_device *, struct if_settings *);
12920 	int (*ndo_siocdevprivate)(struct net_device *, struct ifreq *, void *, int);
12921 	int (*ndo_set_config)(struct net_device *, struct ifmap *);
12922 	int (*ndo_change_mtu)(struct net_device *, int);
12923 	int (*ndo_neigh_setup)(struct net_device *, struct neigh_parms *);
12924 	void (*ndo_tx_timeout)(struct net_device *, unsigned int);
12925 	void (*ndo_get_stats64)(struct net_device *, struct rtnl_link_stats64 *);
12926 	bool (*ndo_has_offload_stats)(const struct net_device *, int);
12927 	int (*ndo_get_offload_stats)(int, const struct net_device *, void *);
12928 	struct net_device_stats * (*ndo_get_stats)(struct net_device *);
12929 	int (*ndo_vlan_rx_add_vid)(struct net_device *, __be16, u16);
12930 	int (*ndo_vlan_rx_kill_vid)(struct net_device *, __be16, u16);
12931 	void (*ndo_poll_controller)(struct net_device *);
12932 	int (*ndo_netpoll_setup)(struct net_device *, struct netpoll_info *);
12933 	void (*ndo_netpoll_cleanup)(struct net_device *);
12934 	int (*ndo_set_vf_mac)(struct net_device *, int, u8 *);
12935 	int (*ndo_set_vf_vlan)(struct net_device *, int, u16, u8, __be16);
12936 	int (*ndo_set_vf_rate)(struct net_device *, int, int, int);
12937 	int (*ndo_set_vf_spoofchk)(struct net_device *, int, bool);
12938 	int (*ndo_set_vf_trust)(struct net_device *, int, bool);
12939 	int (*ndo_get_vf_config)(struct net_device *, int, struct ifla_vf_info *);
12940 	int (*ndo_set_vf_link_state)(struct net_device *, int, int);
12941 	int (*ndo_get_vf_stats)(struct net_device *, int, struct ifla_vf_stats *);
12942 	int (*ndo_set_vf_port)(struct net_device *, int, struct nlattr **);
12943 	int (*ndo_get_vf_port)(struct net_device *, int, struct sk_buff *);
12944 	int (*ndo_get_vf_guid)(struct net_device *, int, struct ifla_vf_guid *, struct ifla_vf_guid *);
12945 	int (*ndo_set_vf_guid)(struct net_device *, int, u64, int);
12946 	int (*ndo_set_vf_rss_query_en)(struct net_device *, int, bool);
12947 	int (*ndo_setup_tc)(struct net_device *, enum tc_setup_type, void *);
12948 	int (*ndo_rx_flow_steer)(struct net_device *, const struct sk_buff *, u16, u32);
12949 	int (*ndo_add_slave)(struct net_device *, struct net_device *, struct netlink_ext_ack *);
12950 	int (*ndo_del_slave)(struct net_device *, struct net_device *);
12951 	struct net_device * (*ndo_get_xmit_slave)(struct net_device *, struct sk_buff *, bool);
12952 	struct net_device * (*ndo_sk_get_lower_dev)(struct net_device *, struct sock *);
12953 	netdev_features_t (*ndo_fix_features)(struct net_device *, netdev_features_t);
12954 	int (*ndo_set_features)(struct net_device *, netdev_features_t);
12955 	int (*ndo_neigh_construct)(struct net_device *, struct neighbour *);
12956 	void (*ndo_neigh_destroy)(struct net_device *, struct neighbour *);
12957 	int (*ndo_fdb_add)(struct ndmsg *, struct nlattr **, struct net_device *, const unsigned char *, u16, u16, struct netlink_ext_ack *);
12958 	int (*ndo_fdb_del)(struct ndmsg *, struct nlattr **, struct net_device *, const unsigned char *, u16, struct netlink_ext_ack *);
12959 	int (*ndo_fdb_del_bulk)(struct ndmsg *, struct nlattr **, struct net_device *, u16, struct netlink_ext_ack *);
12960 	int (*ndo_fdb_dump)(struct sk_buff *, struct netlink_callback *, struct net_device *, struct net_device *, int *);
12961 	int (*ndo_fdb_get)(struct sk_buff *, struct nlattr **, struct net_device *, const unsigned char *, u16, u32, u32, struct netlink_ext_ack *);
12962 	int (*ndo_bridge_setlink)(struct net_device *, struct nlmsghdr *, u16, struct netlink_ext_ack *);
12963 	int (*ndo_bridge_getlink)(struct sk_buff *, u32, u32, struct net_device *, u32, int);
12964 	int (*ndo_bridge_dellink)(struct net_device *, struct nlmsghdr *, u16);
12965 	int (*ndo_change_carrier)(struct net_device *, bool);
12966 	int (*ndo_get_phys_port_id)(struct net_device *, struct netdev_phys_item_id *);
12967 	int (*ndo_get_port_parent_id)(struct net_device *, struct netdev_phys_item_id *);
12968 	int (*ndo_get_phys_port_name)(struct net_device *, char *, size_t);
12969 	void * (*ndo_dfwd_add_station)(struct net_device *, struct net_device *);
12970 	void (*ndo_dfwd_del_station)(struct net_device *, void *);
12971 	int (*ndo_set_tx_maxrate)(struct net_device *, int, u32);
12972 	int (*ndo_get_iflink)(const struct net_device *);
12973 	int (*ndo_fill_metadata_dst)(struct net_device *, struct sk_buff *);
12974 	void (*ndo_set_rx_headroom)(struct net_device *, int);
12975 	int (*ndo_bpf)(struct net_device *, struct netdev_bpf *);
12976 	int (*ndo_xdp_xmit)(struct net_device *, int, struct xdp_frame **, u32);
12977 	struct net_device * (*ndo_xdp_get_xmit_slave)(struct net_device *, struct xdp_buff *);
12978 	int (*ndo_xsk_wakeup)(struct net_device *, u32, u32);
12979 	struct devlink_port * (*ndo_get_devlink_port)(struct net_device *);
12980 	int (*ndo_tunnel_ctl)(struct net_device *, struct ip_tunnel_parm *, int);
12981 	struct net_device * (*ndo_get_peer_dev)(struct net_device *);
12982 	int (*ndo_fill_forward_path)(struct net_device_path_ctx *, struct net_device_path *);
12983 	ktime_t (*ndo_get_tstamp)(struct net_device *, const struct skb_shared_hwtstamps *, bool);
12984 };
12985 
12986 struct pcpu_lstats {
12987 	u64_stats_t packets;
12988 	u64_stats_t bytes;
12989 	struct u64_stats_sync syncp;
12990 };
12991 
12992 struct pcpu_sw_netstats {
12993 	u64_stats_t rx_packets;
12994 	u64_stats_t rx_bytes;
12995 	u64_stats_t tx_packets;
12996 	u64_stats_t tx_bytes;
12997 	struct u64_stats_sync syncp;
12998 };
12999 
13000 enum ethtool_phys_id_state {
13001 	ETHTOOL_ID_INACTIVE = 0,
13002 	ETHTOOL_ID_ACTIVE = 1,
13003 	ETHTOOL_ID_ON = 2,
13004 	ETHTOOL_ID_OFF = 3,
13005 };
13006 
13007 struct ethtool_drvinfo;
13008 
13009 struct ethtool_regs;
13010 
13011 struct ethtool_wolinfo;
13012 
13013 struct ethtool_link_ext_state_info;
13014 
13015 struct ethtool_eeprom;
13016 
13017 struct ethtool_coalesce;
13018 
13019 struct kernel_ethtool_coalesce;
13020 
13021 struct ethtool_ringparam;
13022 
13023 struct kernel_ethtool_ringparam;
13024 
13025 struct ethtool_pause_stats;
13026 
13027 struct ethtool_pauseparam;
13028 
13029 struct ethtool_test;
13030 
13031 struct ethtool_stats;
13032 
13033 struct ethtool_rxnfc;
13034 
13035 struct ethtool_flash;
13036 
13037 struct ethtool_channels;
13038 
13039 struct ethtool_dump;
13040 
13041 struct ethtool_ts_info;
13042 
13043 struct ethtool_modinfo;
13044 
13045 struct ethtool_eee;
13046 
13047 struct ethtool_tunable;
13048 
13049 struct ethtool_link_ksettings;
13050 
13051 struct ethtool_fec_stats;
13052 
13053 struct ethtool_fecparam;
13054 
13055 struct ethtool_module_eeprom;
13056 
13057 struct ethtool_eth_phy_stats;
13058 
13059 struct ethtool_eth_mac_stats;
13060 
13061 struct ethtool_eth_ctrl_stats;
13062 
13063 struct ethtool_rmon_stats;
13064 
13065 struct ethtool_rmon_hist_range;
13066 
13067 struct ethtool_module_power_mode_params;
13068 
13069 struct ethtool_ops {
13070 	u32 cap_link_lanes_supported: 1;
13071 	u32 supported_coalesce_params;
13072 	u32 supported_ring_params;
13073 	void (*get_drvinfo)(struct net_device *, struct ethtool_drvinfo *);
13074 	int (*get_regs_len)(struct net_device *);
13075 	void (*get_regs)(struct net_device *, struct ethtool_regs *, void *);
13076 	void (*get_wol)(struct net_device *, struct ethtool_wolinfo *);
13077 	int (*set_wol)(struct net_device *, struct ethtool_wolinfo *);
13078 	u32 (*get_msglevel)(struct net_device *);
13079 	void (*set_msglevel)(struct net_device *, u32);
13080 	int (*nway_reset)(struct net_device *);
13081 	u32 (*get_link)(struct net_device *);
13082 	int (*get_link_ext_state)(struct net_device *, struct ethtool_link_ext_state_info *);
13083 	int (*get_eeprom_len)(struct net_device *);
13084 	int (*get_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
13085 	int (*set_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
13086 	int (*get_coalesce)(struct net_device *, struct ethtool_coalesce *, struct kernel_ethtool_coalesce *, struct netlink_ext_ack *);
13087 	int (*set_coalesce)(struct net_device *, struct ethtool_coalesce *, struct kernel_ethtool_coalesce *, struct netlink_ext_ack *);
13088 	void (*get_ringparam)(struct net_device *, struct ethtool_ringparam *, struct kernel_ethtool_ringparam *, struct netlink_ext_ack *);
13089 	int (*set_ringparam)(struct net_device *, struct ethtool_ringparam *, struct kernel_ethtool_ringparam *, struct netlink_ext_ack *);
13090 	void (*get_pause_stats)(struct net_device *, struct ethtool_pause_stats *);
13091 	void (*get_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
13092 	int (*set_pauseparam)(struct net_device *, struct ethtool_pauseparam *);
13093 	void (*self_test)(struct net_device *, struct ethtool_test *, u64 *);
13094 	void (*get_strings)(struct net_device *, u32, u8 *);
13095 	int (*set_phys_id)(struct net_device *, enum ethtool_phys_id_state);
13096 	void (*get_ethtool_stats)(struct net_device *, struct ethtool_stats *, u64 *);
13097 	int (*begin)(struct net_device *);
13098 	void (*complete)(struct net_device *);
13099 	u32 (*get_priv_flags)(struct net_device *);
13100 	int (*set_priv_flags)(struct net_device *, u32);
13101 	int (*get_sset_count)(struct net_device *, int);
13102 	int (*get_rxnfc)(struct net_device *, struct ethtool_rxnfc *, u32 *);
13103 	int (*set_rxnfc)(struct net_device *, struct ethtool_rxnfc *);
13104 	int (*flash_device)(struct net_device *, struct ethtool_flash *);
13105 	int (*reset)(struct net_device *, u32 *);
13106 	u32 (*get_rxfh_key_size)(struct net_device *);
13107 	u32 (*get_rxfh_indir_size)(struct net_device *);
13108 	int (*get_rxfh)(struct net_device *, u32 *, u8 *, u8 *);
13109 	int (*set_rxfh)(struct net_device *, const u32 *, const u8 *, const u8);
13110 	int (*get_rxfh_context)(struct net_device *, u32 *, u8 *, u8 *, u32);
13111 	int (*set_rxfh_context)(struct net_device *, const u32 *, const u8 *, const u8, u32 *, bool);
13112 	void (*get_channels)(struct net_device *, struct ethtool_channels *);
13113 	int (*set_channels)(struct net_device *, struct ethtool_channels *);
13114 	int (*get_dump_flag)(struct net_device *, struct ethtool_dump *);
13115 	int (*get_dump_data)(struct net_device *, struct ethtool_dump *, void *);
13116 	int (*set_dump)(struct net_device *, struct ethtool_dump *);
13117 	int (*get_ts_info)(struct net_device *, struct ethtool_ts_info *);
13118 	int (*get_module_info)(struct net_device *, struct ethtool_modinfo *);
13119 	int (*get_module_eeprom)(struct net_device *, struct ethtool_eeprom *, u8 *);
13120 	int (*get_eee)(struct net_device *, struct ethtool_eee *);
13121 	int (*set_eee)(struct net_device *, struct ethtool_eee *);
13122 	int (*get_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
13123 	int (*set_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
13124 	int (*get_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
13125 	int (*set_per_queue_coalesce)(struct net_device *, u32, struct ethtool_coalesce *);
13126 	int (*get_link_ksettings)(struct net_device *, struct ethtool_link_ksettings *);
13127 	int (*set_link_ksettings)(struct net_device *, const struct ethtool_link_ksettings *);
13128 	void (*get_fec_stats)(struct net_device *, struct ethtool_fec_stats *);
13129 	int (*get_fecparam)(struct net_device *, struct ethtool_fecparam *);
13130 	int (*set_fecparam)(struct net_device *, struct ethtool_fecparam *);
13131 	void (*get_ethtool_phy_stats)(struct net_device *, struct ethtool_stats *, u64 *);
13132 	int (*get_phy_tunable)(struct net_device *, const struct ethtool_tunable *, void *);
13133 	int (*set_phy_tunable)(struct net_device *, const struct ethtool_tunable *, const void *);
13134 	int (*get_module_eeprom_by_page)(struct net_device *, const struct ethtool_module_eeprom *, struct netlink_ext_ack *);
13135 	void (*get_eth_phy_stats)(struct net_device *, struct ethtool_eth_phy_stats *);
13136 	void (*get_eth_mac_stats)(struct net_device *, struct ethtool_eth_mac_stats *);
13137 	void (*get_eth_ctrl_stats)(struct net_device *, struct ethtool_eth_ctrl_stats *);
13138 	void (*get_rmon_stats)(struct net_device *, struct ethtool_rmon_stats *, const struct ethtool_rmon_hist_range **);
13139 	int (*get_module_power_mode)(struct net_device *, struct ethtool_module_power_mode_params *, struct netlink_ext_ack *);
13140 	int (*set_module_power_mode)(struct net_device *, const struct ethtool_module_power_mode_params *, struct netlink_ext_ack *);
13141 };
13142 
13143 struct nd_opt_hdr;
13144 
13145 struct ndisc_options;
13146 
13147 struct prefix_info;
13148 
13149 struct ndisc_ops {
13150 	int (*is_useropt)(u8);
13151 	int (*parse_options)(const struct net_device *, struct nd_opt_hdr *, struct ndisc_options *);
13152 	void (*update)(const struct net_device *, struct neighbour *, u32, u8, const struct ndisc_options *);
13153 	int (*opt_addr_space)(const struct net_device *, u8, struct neighbour *, u8 *, u8 **);
13154 	void (*fill_addr_option)(const struct net_device *, struct sk_buff *, u8, const u8 *);
13155 	void (*prefix_rcv_add_addr)(struct net *, struct net_device *, const struct prefix_info *, struct inet6_dev *, struct in6_addr *, int, u32, bool, bool, __u32, u32, bool);
13156 };
13157 
13158 struct tcf_proto;
13159 
13160 struct tcf_block;
13161 
13162 struct mini_Qdisc {
13163 	struct tcf_proto *filter_list;
13164 	struct tcf_block *block;
13165 	struct gnet_stats_basic_sync *cpu_bstats;
13166 	struct gnet_stats_queue *cpu_qstats;
13167 	long unsigned int rcu_state;
13168 };
13169 
13170 struct rtnl_link_ops {
13171 	struct list_head list;
13172 	const char *kind;
13173 	size_t priv_size;
13174 	struct net_device * (*alloc)(struct nlattr **, const char *, unsigned char, unsigned int, unsigned int);
13175 	void (*setup)(struct net_device *);
13176 	bool netns_refund;
13177 	unsigned int maxtype;
13178 	const struct nla_policy *policy;
13179 	int (*validate)(struct nlattr **, struct nlattr **, struct netlink_ext_ack *);
13180 	int (*newlink)(struct net *, struct net_device *, struct nlattr **, struct nlattr **, struct netlink_ext_ack *);
13181 	int (*changelink)(struct net_device *, struct nlattr **, struct nlattr **, struct netlink_ext_ack *);
13182 	void (*dellink)(struct net_device *, struct list_head *);
13183 	size_t (*get_size)(const struct net_device *);
13184 	int (*fill_info)(struct sk_buff *, const struct net_device *);
13185 	size_t (*get_xstats_size)(const struct net_device *);
13186 	int (*fill_xstats)(struct sk_buff *, const struct net_device *);
13187 	unsigned int (*get_num_tx_queues)();
13188 	unsigned int (*get_num_rx_queues)();
13189 	unsigned int slave_maxtype;
13190 	const struct nla_policy *slave_policy;
13191 	int (*slave_changelink)(struct net_device *, struct net_device *, struct nlattr **, struct nlattr **, struct netlink_ext_ack *);
13192 	size_t (*get_slave_size)(const struct net_device *, const struct net_device *);
13193 	int (*fill_slave_info)(struct sk_buff *, const struct net_device *, const struct net_device *);
13194 	struct net * (*get_link_net)(const struct net_device *);
13195 	size_t (*get_linkxstats_size)(const struct net_device *, int);
13196 	int (*fill_linkxstats)(struct sk_buff *, const struct net_device *, int *, int);
13197 };
13198 
13199 struct udp_tunnel_nic_table_info {
13200 	unsigned int n_entries;
13201 	unsigned int tunnel_types;
13202 };
13203 
13204 struct udp_tunnel_info;
13205 
13206 struct udp_tunnel_nic_shared;
13207 
13208 struct udp_tunnel_nic_info {
13209 	int (*set_port)(struct net_device *, unsigned int, unsigned int, struct udp_tunnel_info *);
13210 	int (*unset_port)(struct net_device *, unsigned int, unsigned int, struct udp_tunnel_info *);
13211 	int (*sync_table)(struct net_device *, unsigned int);
13212 	struct udp_tunnel_nic_shared *shared;
13213 	unsigned int flags;
13214 	struct udp_tunnel_nic_table_info tables[4];
13215 };
13216 
13217 enum {
13218 	BPF_REG_0 = 0,
13219 	BPF_REG_1 = 1,
13220 	BPF_REG_2 = 2,
13221 	BPF_REG_3 = 3,
13222 	BPF_REG_4 = 4,
13223 	BPF_REG_5 = 5,
13224 	BPF_REG_6 = 6,
13225 	BPF_REG_7 = 7,
13226 	BPF_REG_8 = 8,
13227 	BPF_REG_9 = 9,
13228 	BPF_REG_10 = 10,
13229 	__MAX_BPF_REG = 11,
13230 };
13231 
13232 union bpf_attr {
13233 	struct {
13234 		__u32 map_type;
13235 		__u32 key_size;
13236 		__u32 value_size;
13237 		__u32 max_entries;
13238 		__u32 map_flags;
13239 		__u32 inner_map_fd;
13240 		__u32 numa_node;
13241 		char map_name[16];
13242 		__u32 map_ifindex;
13243 		__u32 btf_fd;
13244 		__u32 btf_key_type_id;
13245 		__u32 btf_value_type_id;
13246 		__u32 btf_vmlinux_value_type_id;
13247 		__u64 map_extra;
13248 	};
13249 	struct {
13250 		__u32 map_fd;
13251 		__u64 key;
13252 		union {
13253 			__u64 value;
13254 			__u64 next_key;
13255 		};
13256 		__u64 flags;
13257 	};
13258 	struct {
13259 		__u64 in_batch;
13260 		__u64 out_batch;
13261 		__u64 keys;
13262 		__u64 values;
13263 		__u32 count;
13264 		__u32 map_fd;
13265 		__u64 elem_flags;
13266 		__u64 flags;
13267 	} batch;
13268 	struct {
13269 		__u32 prog_type;
13270 		__u32 insn_cnt;
13271 		__u64 insns;
13272 		__u64 license;
13273 		__u32 log_level;
13274 		__u32 log_size;
13275 		__u64 log_buf;
13276 		__u32 kern_version;
13277 		__u32 prog_flags;
13278 		char prog_name[16];
13279 		__u32 prog_ifindex;
13280 		__u32 expected_attach_type;
13281 		__u32 prog_btf_fd;
13282 		__u32 func_info_rec_size;
13283 		__u64 func_info;
13284 		__u32 func_info_cnt;
13285 		__u32 line_info_rec_size;
13286 		__u64 line_info;
13287 		__u32 line_info_cnt;
13288 		__u32 attach_btf_id;
13289 		union {
13290 			__u32 attach_prog_fd;
13291 			__u32 attach_btf_obj_fd;
13292 		};
13293 		__u32 core_relo_cnt;
13294 		__u64 fd_array;
13295 		__u64 core_relos;
13296 		__u32 core_relo_rec_size;
13297 	};
13298 	struct {
13299 		__u64 pathname;
13300 		__u32 bpf_fd;
13301 		__u32 file_flags;
13302 	};
13303 	struct {
13304 		__u32 target_fd;
13305 		__u32 attach_bpf_fd;
13306 		__u32 attach_type;
13307 		__u32 attach_flags;
13308 		__u32 replace_bpf_fd;
13309 	};
13310 	struct {
13311 		__u32 prog_fd;
13312 		__u32 retval;
13313 		__u32 data_size_in;
13314 		__u32 data_size_out;
13315 		__u64 data_in;
13316 		__u64 data_out;
13317 		__u32 repeat;
13318 		__u32 duration;
13319 		__u32 ctx_size_in;
13320 		__u32 ctx_size_out;
13321 		__u64 ctx_in;
13322 		__u64 ctx_out;
13323 		__u32 flags;
13324 		__u32 cpu;
13325 		__u32 batch_size;
13326 	} test;
13327 	struct {
13328 		union {
13329 			__u32 start_id;
13330 			__u32 prog_id;
13331 			__u32 map_id;
13332 			__u32 btf_id;
13333 			__u32 link_id;
13334 		};
13335 		__u32 next_id;
13336 		__u32 open_flags;
13337 	};
13338 	struct {
13339 		__u32 bpf_fd;
13340 		__u32 info_len;
13341 		__u64 info;
13342 	} info;
13343 	struct {
13344 		__u32 target_fd;
13345 		__u32 attach_type;
13346 		__u32 query_flags;
13347 		__u32 attach_flags;
13348 		__u64 prog_ids;
13349 		__u32 prog_cnt;
13350 		__u64 prog_attach_flags;
13351 	} query;
13352 	struct {
13353 		__u64 name;
13354 		__u32 prog_fd;
13355 	} raw_tracepoint;
13356 	struct {
13357 		__u64 btf;
13358 		__u64 btf_log_buf;
13359 		__u32 btf_size;
13360 		__u32 btf_log_size;
13361 		__u32 btf_log_level;
13362 	};
13363 	struct {
13364 		__u32 pid;
13365 		__u32 fd;
13366 		__u32 flags;
13367 		__u32 buf_len;
13368 		__u64 buf;
13369 		__u32 prog_id;
13370 		__u32 fd_type;
13371 		__u64 probe_offset;
13372 		__u64 probe_addr;
13373 	} task_fd_query;
13374 	struct {
13375 		__u32 prog_fd;
13376 		union {
13377 			__u32 target_fd;
13378 			__u32 target_ifindex;
13379 		};
13380 		__u32 attach_type;
13381 		__u32 flags;
13382 		union {
13383 			__u32 target_btf_id;
13384 			struct {
13385 				__u64 iter_info;
13386 				__u32 iter_info_len;
13387 			};
13388 			struct {
13389 				__u64 bpf_cookie;
13390 			} perf_event;
13391 			struct {
13392 				__u32 flags;
13393 				__u32 cnt;
13394 				__u64 syms;
13395 				__u64 addrs;
13396 				__u64 cookies;
13397 			} kprobe_multi;
13398 			struct {
13399 				__u32 target_btf_id;
13400 				__u64 cookie;
13401 			} tracing;
13402 		};
13403 	} link_create;
13404 	struct {
13405 		__u32 link_fd;
13406 		__u32 new_prog_fd;
13407 		__u32 flags;
13408 		__u32 old_prog_fd;
13409 	} link_update;
13410 	struct {
13411 		__u32 link_fd;
13412 	} link_detach;
13413 	struct {
13414 		__u32 type;
13415 	} enable_stats;
13416 	struct {
13417 		__u32 link_fd;
13418 		__u32 flags;
13419 	} iter_create;
13420 	struct {
13421 		__u32 prog_fd;
13422 		__u32 map_fd;
13423 		__u32 flags;
13424 	} prog_bind_map;
13425 };
13426 
13427 struct bpf_func_info {
13428 	__u32 insn_off;
13429 	__u32 type_id;
13430 };
13431 
13432 struct bpf_line_info {
13433 	__u32 insn_off;
13434 	__u32 file_name_off;
13435 	__u32 line_off;
13436 	__u32 line_col;
13437 };
13438 
13439 struct btf_type {
13440 	__u32 name_off;
13441 	__u32 info;
13442 	union {
13443 		__u32 size;
13444 		__u32 type;
13445 	};
13446 };
13447 
13448 typedef void (*btf_dtor_kfunc_t)(void *);
13449 
13450 typedef u64 (*bpf_callback_t)(u64, u64, u64, u64, u64);
13451 
13452 struct bpf_iter_aux_info;
13453 
13454 typedef int (*bpf_iter_init_seq_priv_t)(void *, struct bpf_iter_aux_info *);
13455 
13456 struct bpf_iter_aux_info {
13457 	struct bpf_map *map;
13458 };
13459 
13460 typedef void (*bpf_iter_fini_seq_priv_t)(void *);
13461 
13462 struct bpf_iter_seq_info {
13463 	const struct seq_operations *seq_ops;
13464 	bpf_iter_init_seq_priv_t init_seq_private;
13465 	bpf_iter_fini_seq_priv_t fini_seq_private;
13466 	u32 seq_priv_size;
13467 };
13468 
13469 struct bpf_local_storage_map;
13470 
13471 struct bpf_verifier_env;
13472 
13473 struct bpf_func_state;
13474 
13475 struct bpf_map_ops {
13476 	int (*map_alloc_check)(union bpf_attr *);
13477 	struct bpf_map * (*map_alloc)(union bpf_attr *);
13478 	void (*map_release)(struct bpf_map *, struct file *);
13479 	void (*map_free)(struct bpf_map *);
13480 	int (*map_get_next_key)(struct bpf_map *, void *, void *);
13481 	void (*map_release_uref)(struct bpf_map *);
13482 	void * (*map_lookup_elem_sys_only)(struct bpf_map *, void *);
13483 	int (*map_lookup_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
13484 	int (*map_lookup_and_delete_elem)(struct bpf_map *, void *, void *, u64);
13485 	int (*map_lookup_and_delete_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
13486 	int (*map_update_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
13487 	int (*map_delete_batch)(struct bpf_map *, const union bpf_attr *, union bpf_attr *);
13488 	void * (*map_lookup_elem)(struct bpf_map *, void *);
13489 	int (*map_update_elem)(struct bpf_map *, void *, void *, u64);
13490 	int (*map_delete_elem)(struct bpf_map *, void *);
13491 	int (*map_push_elem)(struct bpf_map *, void *, u64);
13492 	int (*map_pop_elem)(struct bpf_map *, void *);
13493 	int (*map_peek_elem)(struct bpf_map *, void *);
13494 	void * (*map_lookup_percpu_elem)(struct bpf_map *, void *, u32);
13495 	void * (*map_fd_get_ptr)(struct bpf_map *, struct file *, int);
13496 	void (*map_fd_put_ptr)(void *);
13497 	int (*map_gen_lookup)(struct bpf_map *, struct bpf_insn *);
13498 	u32 (*map_fd_sys_lookup_elem)(void *);
13499 	void (*map_seq_show_elem)(struct bpf_map *, void *, struct seq_file *);
13500 	int (*map_check_btf)(const struct bpf_map *, const struct btf *, const struct btf_type *, const struct btf_type *);
13501 	int (*map_poke_track)(struct bpf_map *, struct bpf_prog_aux *);
13502 	void (*map_poke_untrack)(struct bpf_map *, struct bpf_prog_aux *);
13503 	void (*map_poke_run)(struct bpf_map *, u32, struct bpf_prog *, struct bpf_prog *);
13504 	int (*map_direct_value_addr)(const struct bpf_map *, u64 *, u32);
13505 	int (*map_direct_value_meta)(const struct bpf_map *, u64, u32 *);
13506 	int (*map_mmap)(struct bpf_map *, struct vm_area_struct *);
13507 	__poll_t (*map_poll)(struct bpf_map *, struct file *, struct poll_table_struct *);
13508 	int (*map_local_storage_charge)(struct bpf_local_storage_map *, void *, u32);
13509 	void (*map_local_storage_uncharge)(struct bpf_local_storage_map *, void *, u32);
13510 	struct bpf_local_storage ** (*map_owner_storage_ptr)(void *);
13511 	int (*map_redirect)(struct bpf_map *, u32, u64);
13512 	bool (*map_meta_equal)(const struct bpf_map *, const struct bpf_map *);
13513 	int (*map_set_for_each_callback_args)(struct bpf_verifier_env *, struct bpf_func_state *, struct bpf_func_state *);
13514 	int (*map_for_each_callback)(struct bpf_map *, bpf_callback_t, void *, u64);
13515 	int *map_btf_id;
13516 	const struct bpf_iter_seq_info *iter_seq_info;
13517 };
13518 
13519 struct btf_header {
13520 	__u16 magic;
13521 	__u8 version;
13522 	__u8 flags;
13523 	__u32 hdr_len;
13524 	__u32 type_off;
13525 	__u32 type_len;
13526 	__u32 str_off;
13527 	__u32 str_len;
13528 };
13529 
13530 struct btf_kfunc_set_tab;
13531 
13532 struct btf_id_dtor_kfunc_tab;
13533 
13534 struct btf {
13535 	void *data;
13536 	struct btf_type **types;
13537 	u32 *resolved_ids;
13538 	u32 *resolved_sizes;
13539 	const char *strings;
13540 	void *nohdr_data;
13541 	struct btf_header hdr;
13542 	u32 nr_types;
13543 	u32 types_size;
13544 	u32 data_size;
13545 	refcount_t refcnt;
13546 	u32 id;
13547 	struct callback_head rcu;
13548 	struct btf_kfunc_set_tab *kfunc_set_tab;
13549 	struct btf_id_dtor_kfunc_tab *dtor_kfunc_tab;
13550 	struct btf *base_btf;
13551 	u32 start_id;
13552 	u32 start_str_off;
13553 	char name[56];
13554 	bool kernel_btf;
13555 };
13556 
13557 struct bpf_ksym {
13558 	long unsigned int start;
13559 	long unsigned int end;
13560 	char name[128];
13561 	struct list_head lnode;
13562 	struct latch_tree_node tnode;
13563 	bool prog;
13564 };
13565 
13566 struct bpf_ctx_arg_aux;
13567 
13568 struct bpf_trampoline;
13569 
13570 struct bpf_jit_poke_descriptor;
13571 
13572 struct bpf_kfunc_desc_tab;
13573 
13574 struct bpf_kfunc_btf_tab;
13575 
13576 struct bpf_prog_ops;
13577 
13578 struct btf_mod_pair;
13579 
13580 struct bpf_prog_offload;
13581 
13582 struct bpf_func_info_aux;
13583 
13584 struct bpf_prog_aux {
13585 	atomic64_t refcnt;
13586 	u32 used_map_cnt;
13587 	u32 used_btf_cnt;
13588 	u32 max_ctx_offset;
13589 	u32 max_pkt_offset;
13590 	u32 max_tp_access;
13591 	u32 stack_depth;
13592 	u32 id;
13593 	u32 func_cnt;
13594 	u32 func_idx;
13595 	u32 attach_btf_id;
13596 	u32 ctx_arg_info_size;
13597 	u32 max_rdonly_access;
13598 	u32 max_rdwr_access;
13599 	struct btf *attach_btf;
13600 	const struct bpf_ctx_arg_aux *ctx_arg_info;
13601 	struct mutex dst_mutex;
13602 	struct bpf_prog *dst_prog;
13603 	struct bpf_trampoline *dst_trampoline;
13604 	enum bpf_prog_type saved_dst_prog_type;
13605 	enum bpf_attach_type saved_dst_attach_type;
13606 	bool verifier_zext;
13607 	bool offload_requested;
13608 	bool attach_btf_trace;
13609 	bool func_proto_unreliable;
13610 	bool sleepable;
13611 	bool tail_call_reachable;
13612 	bool xdp_has_frags;
13613 	const struct btf_type *attach_func_proto;
13614 	const char *attach_func_name;
13615 	struct bpf_prog **func;
13616 	void *jit_data;
13617 	struct bpf_jit_poke_descriptor *poke_tab;
13618 	struct bpf_kfunc_desc_tab *kfunc_tab;
13619 	struct bpf_kfunc_btf_tab *kfunc_btf_tab;
13620 	u32 size_poke_tab;
13621 	struct bpf_ksym ksym;
13622 	const struct bpf_prog_ops *ops;
13623 	struct bpf_map **used_maps;
13624 	struct mutex used_maps_mutex;
13625 	struct btf_mod_pair *used_btfs;
13626 	struct bpf_prog *prog;
13627 	struct user_struct *user;
13628 	u64 load_time;
13629 	u32 verified_insns;
13630 	int cgroup_atype;
13631 	struct bpf_map *cgroup_storage[2];
13632 	char name[16];
13633 	struct bpf_prog_offload *offload;
13634 	struct btf *btf;
13635 	struct bpf_func_info *func_info;
13636 	struct bpf_func_info_aux *func_info_aux;
13637 	struct bpf_line_info *linfo;
13638 	void **jited_linfo;
13639 	u32 func_info_cnt;
13640 	u32 nr_linfo;
13641 	u32 linfo_idx;
13642 	u32 num_exentries;
13643 	struct exception_table_entry *extable;
13644 	union {
13645 		struct work_struct work;
13646 		struct callback_head rcu;
13647 	};
13648 };
13649 
13650 enum bpf_kptr_type {
13651 	BPF_KPTR_UNREF = 0,
13652 	BPF_KPTR_REF = 1,
13653 };
13654 
13655 struct bpf_map_value_off_desc {
13656 	u32 offset;
13657 	enum bpf_kptr_type type;
13658 	struct {
13659 		struct btf *btf;
13660 		struct module *module;
13661 		btf_dtor_kfunc_t dtor;
13662 		u32 btf_id;
13663 	} kptr;
13664 };
13665 
13666 struct bpf_map_value_off {
13667 	u32 nr_off;
13668 	struct bpf_map_value_off_desc off[0];
13669 };
13670 
13671 struct bpf_map_off_arr {
13672 	u32 cnt;
13673 	u32 field_off[10];
13674 	u8 field_sz[10];
13675 };
13676 
13677 struct bpf_map_dev_ops {
13678 	int (*map_get_next_key)(struct bpf_offloaded_map *, void *, void *);
13679 	int (*map_lookup_elem)(struct bpf_offloaded_map *, void *, void *);
13680 	int (*map_update_elem)(struct bpf_offloaded_map *, void *, void *, u64);
13681 	int (*map_delete_elem)(struct bpf_offloaded_map *, void *);
13682 };
13683 
13684 enum bpf_reg_type {
13685 	NOT_INIT = 0,
13686 	SCALAR_VALUE = 1,
13687 	PTR_TO_CTX = 2,
13688 	CONST_PTR_TO_MAP = 3,
13689 	PTR_TO_MAP_VALUE = 4,
13690 	PTR_TO_MAP_KEY = 5,
13691 	PTR_TO_STACK = 6,
13692 	PTR_TO_PACKET_META = 7,
13693 	PTR_TO_PACKET = 8,
13694 	PTR_TO_PACKET_END = 9,
13695 	PTR_TO_FLOW_KEYS = 10,
13696 	PTR_TO_SOCKET = 11,
13697 	PTR_TO_SOCK_COMMON = 12,
13698 	PTR_TO_TCP_SOCK = 13,
13699 	PTR_TO_TP_BUFFER = 14,
13700 	PTR_TO_XDP_SOCK = 15,
13701 	PTR_TO_BTF_ID = 16,
13702 	PTR_TO_MEM = 17,
13703 	PTR_TO_BUF = 18,
13704 	PTR_TO_FUNC = 19,
13705 	__BPF_REG_TYPE_MAX = 20,
13706 	PTR_TO_MAP_VALUE_OR_NULL = 260,
13707 	PTR_TO_SOCKET_OR_NULL = 267,
13708 	PTR_TO_SOCK_COMMON_OR_NULL = 268,
13709 	PTR_TO_TCP_SOCK_OR_NULL = 269,
13710 	PTR_TO_BTF_ID_OR_NULL = 272,
13711 	__BPF_REG_TYPE_LIMIT = 524287,
13712 };
13713 
13714 struct bpf_prog_ops {
13715 	int (*test_run)(struct bpf_prog *, const union bpf_attr *, union bpf_attr *);
13716 };
13717 
13718 struct bpf_offload_dev;
13719 
13720 struct bpf_prog_offload {
13721 	struct bpf_prog *prog;
13722 	struct net_device *netdev;
13723 	struct bpf_offload_dev *offdev;
13724 	void *dev_priv;
13725 	struct list_head offloads;
13726 	bool dev_state;
13727 	bool opt_failed;
13728 	void *jited_image;
13729 	u32 jited_len;
13730 };
13731 
13732 struct btf_func_model {
13733 	u8 ret_size;
13734 	u8 nr_args;
13735 	u8 arg_size[12];
13736 };
13737 
13738 struct bpf_tramp_image {
13739 	void *image;
13740 	struct bpf_ksym ksym;
13741 	struct percpu_ref pcref;
13742 	void *ip_after_call;
13743 	void *ip_epilogue;
13744 	union {
13745 		struct callback_head rcu;
13746 		struct work_struct work;
13747 	};
13748 };
13749 
13750 struct bpf_trampoline {
13751 	struct hlist_node hlist;
13752 	struct ftrace_ops *fops;
13753 	struct mutex mutex;
13754 	refcount_t refcnt;
13755 	u32 flags;
13756 	u64 key;
13757 	struct {
13758 		struct btf_func_model model;
13759 		void *addr;
13760 		bool ftrace_managed;
13761 	} func;
13762 	struct bpf_prog *extension_prog;
13763 	struct hlist_head progs_hlist[3];
13764 	int progs_cnt[3];
13765 	struct bpf_tramp_image *cur_image;
13766 	u64 selector;
13767 	struct module *mod;
13768 };
13769 
13770 struct bpf_func_info_aux {
13771 	u16 linkage;
13772 	bool unreliable;
13773 };
13774 
13775 struct bpf_jit_poke_descriptor {
13776 	void *tailcall_target;
13777 	void *tailcall_bypass;
13778 	void *bypass_addr;
13779 	void *aux;
13780 	union {
13781 		struct {
13782 			struct bpf_map *map;
13783 			u32 key;
13784 		} tail_call;
13785 	};
13786 	bool tailcall_target_stable;
13787 	u8 adj_off;
13788 	u16 reason;
13789 	u32 insn_idx;
13790 };
13791 
13792 struct bpf_ctx_arg_aux {
13793 	u32 offset;
13794 	enum bpf_reg_type reg_type;
13795 	u32 btf_id;
13796 };
13797 
13798 struct btf_mod_pair {
13799 	struct btf *btf;
13800 	struct module *module;
13801 };
13802 
13803 struct bpf_prog_stats {
13804 	u64_stats_t cnt;
13805 	u64_stats_t nsecs;
13806 	u64_stats_t misses;
13807 	struct u64_stats_sync syncp;
13808 	long: 64;
13809 };
13810 
13811 struct sock_fprog_kern {
13812 	u16 len;
13813 	struct sock_filter *filter;
13814 };
13815 
13816 struct tcmsg {
13817 	unsigned char tcm_family;
13818 	unsigned char tcm__pad1;
13819 	short unsigned int tcm__pad2;
13820 	int tcm_ifindex;
13821 	__u32 tcm_handle;
13822 	__u32 tcm_parent;
13823 	__u32 tcm_info;
13824 };
13825 
13826 struct gnet_dump {
13827 	spinlock_t *lock;
13828 	struct sk_buff *skb;
13829 	struct nlattr *tail;
13830 	int compat_tc_stats;
13831 	int compat_xstats;
13832 	int padattr;
13833 	void *xstats;
13834 	int xstats_len;
13835 	struct tc_stats tc_stats;
13836 };
13837 
13838 struct netlink_range_validation {
13839 	u64 min;
13840 	u64 max;
13841 };
13842 
13843 struct netlink_range_validation_signed {
13844 	s64 min;
13845 	s64 max;
13846 };
13847 
13848 struct flow_block {
13849 	struct list_head cb_list;
13850 };
13851 
13852 typedef int flow_setup_cb_t(enum tc_setup_type, void *, void *);
13853 
13854 struct qdisc_size_table {
13855 	struct callback_head rcu;
13856 	struct list_head list;
13857 	struct tc_sizespec szopts;
13858 	int refcnt;
13859 	u16 data[0];
13860 };
13861 
13862 struct Qdisc_class_ops;
13863 
13864 struct Qdisc_ops {
13865 	struct Qdisc_ops *next;
13866 	const struct Qdisc_class_ops *cl_ops;
13867 	char id[16];
13868 	int priv_size;
13869 	unsigned int static_flags;
13870 	int (*enqueue)(struct sk_buff *, struct Qdisc *, struct sk_buff **);
13871 	struct sk_buff * (*dequeue)(struct Qdisc *);
13872 	struct sk_buff * (*peek)(struct Qdisc *);
13873 	int (*init)(struct Qdisc *, struct nlattr *, struct netlink_ext_ack *);
13874 	void (*reset)(struct Qdisc *);
13875 	void (*destroy)(struct Qdisc *);
13876 	int (*change)(struct Qdisc *, struct nlattr *, struct netlink_ext_ack *);
13877 	void (*attach)(struct Qdisc *);
13878 	int (*change_tx_queue_len)(struct Qdisc *, unsigned int);
13879 	void (*change_real_num_tx)(struct Qdisc *, unsigned int);
13880 	int (*dump)(struct Qdisc *, struct sk_buff *);
13881 	int (*dump_stats)(struct Qdisc *, struct gnet_dump *);
13882 	void (*ingress_block_set)(struct Qdisc *, u32);
13883 	void (*egress_block_set)(struct Qdisc *, u32);
13884 	u32 (*ingress_block_get)(struct Qdisc *);
13885 	u32 (*egress_block_get)(struct Qdisc *);
13886 	struct module *owner;
13887 };
13888 
13889 struct qdisc_walker;
13890 
13891 struct Qdisc_class_ops {
13892 	unsigned int flags;
13893 	struct netdev_queue * (*select_queue)(struct Qdisc *, struct tcmsg *);
13894 	int (*graft)(struct Qdisc *, long unsigned int, struct Qdisc *, struct Qdisc **, struct netlink_ext_ack *);
13895 	struct Qdisc * (*leaf)(struct Qdisc *, long unsigned int);
13896 	void (*qlen_notify)(struct Qdisc *, long unsigned int);
13897 	long unsigned int (*find)(struct Qdisc *, u32);
13898 	int (*change)(struct Qdisc *, u32, u32, struct nlattr **, long unsigned int *, struct netlink_ext_ack *);
13899 	int (*delete)(struct Qdisc *, long unsigned int, struct netlink_ext_ack *);
13900 	void (*walk)(struct Qdisc *, struct qdisc_walker *);
13901 	struct tcf_block * (*tcf_block)(struct Qdisc *, long unsigned int, struct netlink_ext_ack *);
13902 	long unsigned int (*bind_tcf)(struct Qdisc *, long unsigned int, u32);
13903 	void (*unbind_tcf)(struct Qdisc *, long unsigned int);
13904 	int (*dump)(struct Qdisc *, long unsigned int, struct sk_buff *, struct tcmsg *);
13905 	int (*dump_stats)(struct Qdisc *, long unsigned int, struct gnet_dump *);
13906 };
13907 
13908 struct tcf_chain;
13909 
13910 struct tcf_block {
13911 	struct mutex lock;
13912 	struct list_head chain_list;
13913 	u32 index;
13914 	u32 classid;
13915 	refcount_t refcnt;
13916 	struct net *net;
13917 	struct Qdisc *q;
13918 	struct rw_semaphore cb_lock;
13919 	struct flow_block flow_block;
13920 	struct list_head owner_list;
13921 	bool keep_dst;
13922 	atomic_t offloadcnt;
13923 	unsigned int nooffloaddevcnt;
13924 	unsigned int lockeddevcnt;
13925 	struct {
13926 		struct tcf_chain *chain;
13927 		struct list_head filter_chain_list;
13928 	} chain0;
13929 	struct callback_head rcu;
13930 	struct hlist_head proto_destroy_ht[128];
13931 	struct mutex proto_destroy_lock;
13932 };
13933 
13934 struct tcf_result;
13935 
13936 struct tcf_proto_ops;
13937 
13938 struct tcf_proto {
13939 	struct tcf_proto *next;
13940 	void *root;
13941 	int (*classify)(struct sk_buff *, const struct tcf_proto *, struct tcf_result *);
13942 	__be16 protocol;
13943 	u32 prio;
13944 	void *data;
13945 	const struct tcf_proto_ops *ops;
13946 	struct tcf_chain *chain;
13947 	spinlock_t lock;
13948 	bool deleting;
13949 	refcount_t refcnt;
13950 	struct callback_head rcu;
13951 	struct hlist_node destroy_ht_node;
13952 };
13953 
13954 struct tcf_result {
13955 	union {
13956 		struct {
13957 			long unsigned int class;
13958 			u32 classid;
13959 		};
13960 		const struct tcf_proto *goto_tp;
13961 		struct {
13962 			bool ingress;
13963 			struct gnet_stats_queue *qstats;
13964 		};
13965 	};
13966 };
13967 
13968 struct tcf_walker;
13969 
13970 struct tcf_proto_ops {
13971 	struct list_head head;
13972 	char kind[16];
13973 	int (*classify)(struct sk_buff *, const struct tcf_proto *, struct tcf_result *);
13974 	int (*init)(struct tcf_proto *);
13975 	void (*destroy)(struct tcf_proto *, bool, struct netlink_ext_ack *);
13976 	void * (*get)(struct tcf_proto *, u32);
13977 	void (*put)(struct tcf_proto *, void *);
13978 	int (*change)(struct net *, struct sk_buff *, struct tcf_proto *, long unsigned int, u32, struct nlattr **, void **, u32, struct netlink_ext_ack *);
13979 	int (*delete)(struct tcf_proto *, void *, bool *, bool, struct netlink_ext_ack *);
13980 	bool (*delete_empty)(struct tcf_proto *);
13981 	void (*walk)(struct tcf_proto *, struct tcf_walker *, bool);
13982 	int (*reoffload)(struct tcf_proto *, bool, flow_setup_cb_t *, void *, struct netlink_ext_ack *);
13983 	void (*hw_add)(struct tcf_proto *, void *);
13984 	void (*hw_del)(struct tcf_proto *, void *);
13985 	void (*bind_class)(void *, u32, long unsigned int, void *, long unsigned int);
13986 	void * (*tmplt_create)(struct net *, struct tcf_chain *, struct nlattr **, struct netlink_ext_ack *);
13987 	void (*tmplt_destroy)(void *);
13988 	int (*dump)(struct net *, struct tcf_proto *, void *, struct sk_buff *, struct tcmsg *, bool);
13989 	int (*terse_dump)(struct net *, struct tcf_proto *, void *, struct sk_buff *, struct tcmsg *, bool);
13990 	int (*tmplt_dump)(struct sk_buff *, struct net *, void *);
13991 	struct module *owner;
13992 	int flags;
13993 };
13994 
13995 struct tcf_chain {
13996 	struct mutex filter_chain_lock;
13997 	struct tcf_proto *filter_chain;
13998 	struct list_head list;
13999 	struct tcf_block *block;
14000 	u32 index;
14001 	unsigned int refcnt;
14002 	unsigned int action_refcnt;
14003 	bool explicitly_created;
14004 	bool flushing;
14005 	const struct tcf_proto_ops *tmplt_ops;
14006 	void *tmplt_priv;
14007 	struct callback_head rcu;
14008 };
14009 
14010 enum stf_barrier_type {
14011 	STF_BARRIER_NONE = 1,
14012 	STF_BARRIER_FALLBACK = 2,
14013 	STF_BARRIER_EIEIO = 4,
14014 	STF_BARRIER_SYNC_ORI = 8,
14015 };
14016 
14017 struct codegen_context {
14018 	unsigned int seen;
14019 	unsigned int idx;
14020 	unsigned int stack_size;
14021 	int b2p[14];
14022 	unsigned int exentry_idx;
14023 	unsigned int alt_exit_addr;
14024 };
14025 
14026 enum perf_hw_id {
14027 	PERF_COUNT_HW_CPU_CYCLES = 0,
14028 	PERF_COUNT_HW_INSTRUCTIONS = 1,
14029 	PERF_COUNT_HW_CACHE_REFERENCES = 2,
14030 	PERF_COUNT_HW_CACHE_MISSES = 3,
14031 	PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 4,
14032 	PERF_COUNT_HW_BRANCH_MISSES = 5,
14033 	PERF_COUNT_HW_BUS_CYCLES = 6,
14034 	PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 7,
14035 	PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 8,
14036 	PERF_COUNT_HW_REF_CPU_CYCLES = 9,
14037 	PERF_COUNT_HW_MAX = 10,
14038 };
14039 
14040 enum perf_branch_sample_type {
14041 	PERF_SAMPLE_BRANCH_USER = 1,
14042 	PERF_SAMPLE_BRANCH_KERNEL = 2,
14043 	PERF_SAMPLE_BRANCH_HV = 4,
14044 	PERF_SAMPLE_BRANCH_ANY = 8,
14045 	PERF_SAMPLE_BRANCH_ANY_CALL = 16,
14046 	PERF_SAMPLE_BRANCH_ANY_RETURN = 32,
14047 	PERF_SAMPLE_BRANCH_IND_CALL = 64,
14048 	PERF_SAMPLE_BRANCH_ABORT_TX = 128,
14049 	PERF_SAMPLE_BRANCH_IN_TX = 256,
14050 	PERF_SAMPLE_BRANCH_NO_TX = 512,
14051 	PERF_SAMPLE_BRANCH_COND = 1024,
14052 	PERF_SAMPLE_BRANCH_CALL_STACK = 2048,
14053 	PERF_SAMPLE_BRANCH_IND_JUMP = 4096,
14054 	PERF_SAMPLE_BRANCH_CALL = 8192,
14055 	PERF_SAMPLE_BRANCH_NO_FLAGS = 16384,
14056 	PERF_SAMPLE_BRANCH_NO_CYCLES = 32768,
14057 	PERF_SAMPLE_BRANCH_TYPE_SAVE = 65536,
14058 	PERF_SAMPLE_BRANCH_HW_INDEX = 131072,
14059 	PERF_SAMPLE_BRANCH_MAX = 262144,
14060 };
14061 
14062 struct mmcr_regs {
14063 	long unsigned int mmcr0;
14064 	long unsigned int mmcr1;
14065 	long unsigned int mmcr2;
14066 	long unsigned int mmcra;
14067 	long unsigned int mmcr3;
14068 };
14069 
14070 struct power_pmu {
14071 	const char *name;
14072 	int n_counter;
14073 	int max_alternatives;
14074 	long unsigned int add_fields;
14075 	long unsigned int test_adder;
14076 	int (*compute_mmcr)(u64 *, int, unsigned int *, struct mmcr_regs *, struct perf_event **, u32);
14077 	int (*get_constraint)(u64, long unsigned int *, long unsigned int *, u64);
14078 	int (*get_alternatives)(u64, unsigned int, u64 *);
14079 	void (*get_mem_data_src)(union perf_mem_data_src *, u32, struct pt_regs *);
14080 	void (*get_mem_weight)(u64 *, u64);
14081 	long unsigned int group_constraint_mask;
14082 	long unsigned int group_constraint_val;
14083 	u64 (*bhrb_filter_map)(u64);
14084 	void (*config_bhrb)(u64);
14085 	void (*disable_pmc)(unsigned int, struct mmcr_regs *);
14086 	int (*limited_pmc_event)(u64);
14087 	u32 flags;
14088 	const struct attribute_group **attr_groups;
14089 	int n_generic;
14090 	int *generic_events;
14091 	u64 (*cache_events)[42];
14092 	int n_blacklist_ev;
14093 	int *blacklist_ev;
14094 	int bhrb_nr;
14095 	int capabilities;
14096 	int (*check_attr_config)(struct perf_event *);
14097 };
14098 
14099 struct perf_pmu_events_attr {
14100 	struct device_attribute attr;
14101 	u64 id;
14102 	const char *event_str;
14103 };
14104 
14105 enum {
14106 	PM_CYC = 30,
14107 	PM_GCT_NOSLOT_CYC = 65784,
14108 	PM_CMPLU_STALL = 262154,
14109 	PM_INST_CMPL = 2,
14110 	PM_BRU_FIN = 65640,
14111 	PM_BR_MPRED_CMPL = 262390,
14112 	PM_LD_REF_L1 = 65774,
14113 	PM_LD_MISS_L1 = 254036,
14114 	PM_ST_MISS_L1 = 196848,
14115 	PM_L1_PREF = 55480,
14116 	PM_INST_FROM_L1 = 16512,
14117 	PM_L1_ICACHE_MISS = 131325,
14118 	PM_L1_DEMAND_WRITE = 16524,
14119 	PM_IC_PREF_WRITE = 16526,
14120 	PM_DATA_FROM_L3 = 311362,
14121 	PM_DATA_FROM_L3MISS = 196862,
14122 	PM_L2_ST = 94336,
14123 	PM_L2_ST_MISS = 94338,
14124 	PM_L3_PREF_ALL = 319570,
14125 	PM_DTLB_MISS = 196860,
14126 	PM_ITLB_MISS = 262396,
14127 	PM_RUN_INST_CMPL = 327930,
14128 	PM_RUN_INST_CMPL_ALT = 262394,
14129 	PM_RUN_CYC = 393460,
14130 	PM_RUN_CYC_ALT = 131316,
14131 	PM_MRK_ST_CMPL = 65844,
14132 	PM_MRK_ST_CMPL_ALT = 197090,
14133 	PM_BR_MRK_2PATH = 65848,
14134 	PM_BR_MRK_2PATH_ALT = 262456,
14135 	PM_L3_CO_MEPF = 98434,
14136 	PM_L3_CO_MEPF_ALT = 254046,
14137 	PM_MRK_DATA_FROM_L2MISS = 119118,
14138 	PM_MRK_DATA_FROM_L2MISS_ALT = 262632,
14139 	PM_CMPLU_STALL_ALT = 122964,
14140 	PM_BR_2PATH = 131126,
14141 	PM_BR_2PATH_ALT = 262198,
14142 	PM_INST_DISP = 131314,
14143 	PM_INST_DISP_ALT = 196850,
14144 	PM_MRK_FILT_MATCH = 131388,
14145 	PM_MRK_FILT_MATCH_ALT = 196910,
14146 	PM_LD_MISS_L1_ALT = 262384,
14147 	MEM_ACCESS = 17039840,
14148 };
14149 
14150 enum system_states {
14151 	SYSTEM_BOOTING = 0,
14152 	SYSTEM_SCHEDULING = 1,
14153 	SYSTEM_FREEING_INITMEM = 2,
14154 	SYSTEM_RUNNING = 3,
14155 	SYSTEM_HALT = 4,
14156 	SYSTEM_POWER_OFF = 5,
14157 	SYSTEM_RESTART = 6,
14158 	SYSTEM_SUSPEND = 7,
14159 };
14160 
14161 typedef void (*smp_call_func_t)(void *);
14162 
14163 struct plist_head {
14164 	struct list_head node_list;
14165 };
14166 
14167 enum pm_qos_type {
14168 	PM_QOS_UNITIALIZED = 0,
14169 	PM_QOS_MAX = 1,
14170 	PM_QOS_MIN = 2,
14171 };
14172 
14173 struct pm_qos_constraints {
14174 	struct plist_head list;
14175 	s32 target_value;
14176 	s32 default_value;
14177 	s32 no_constraint_value;
14178 	enum pm_qos_type type;
14179 	struct blocking_notifier_head *notifiers;
14180 };
14181 
14182 struct freq_constraints {
14183 	struct pm_qos_constraints min_freq;
14184 	struct blocking_notifier_head min_freq_notifiers;
14185 	struct pm_qos_constraints max_freq;
14186 	struct blocking_notifier_head max_freq_notifiers;
14187 };
14188 
14189 struct pm_qos_flags {
14190 	struct list_head list;
14191 	s32 effective_flags;
14192 };
14193 
14194 struct dev_pm_qos_request;
14195 
14196 struct dev_pm_qos {
14197 	struct pm_qos_constraints resume_latency;
14198 	struct pm_qos_constraints latency_tolerance;
14199 	struct freq_constraints freq;
14200 	struct pm_qos_flags flags;
14201 	struct dev_pm_qos_request *resume_latency_req;
14202 	struct dev_pm_qos_request *latency_tolerance_req;
14203 	struct dev_pm_qos_request *flags_req;
14204 };
14205 
14206 enum hk_type {
14207 	HK_TYPE_TIMER = 0,
14208 	HK_TYPE_RCU = 1,
14209 	HK_TYPE_MISC = 2,
14210 	HK_TYPE_SCHED = 3,
14211 	HK_TYPE_TICK = 4,
14212 	HK_TYPE_DOMAIN = 5,
14213 	HK_TYPE_WQ = 6,
14214 	HK_TYPE_MANAGED_IRQ = 7,
14215 	HK_TYPE_KTHREAD = 8,
14216 	HK_TYPE_MAX = 9,
14217 };
14218 
14219 enum cpuhp_state {
14220 	CPUHP_INVALID = -1,
14221 	CPUHP_OFFLINE = 0,
14222 	CPUHP_CREATE_THREADS = 1,
14223 	CPUHP_PERF_PREPARE = 2,
14224 	CPUHP_PERF_X86_PREPARE = 3,
14225 	CPUHP_PERF_X86_AMD_UNCORE_PREP = 4,
14226 	CPUHP_PERF_POWER = 5,
14227 	CPUHP_PERF_SUPERH = 6,
14228 	CPUHP_X86_HPET_DEAD = 7,
14229 	CPUHP_X86_APB_DEAD = 8,
14230 	CPUHP_X86_MCE_DEAD = 9,
14231 	CPUHP_VIRT_NET_DEAD = 10,
14232 	CPUHP_SLUB_DEAD = 11,
14233 	CPUHP_DEBUG_OBJ_DEAD = 12,
14234 	CPUHP_MM_WRITEBACK_DEAD = 13,
14235 	CPUHP_MM_DEMOTION_DEAD = 14,
14236 	CPUHP_MM_VMSTAT_DEAD = 15,
14237 	CPUHP_SOFTIRQ_DEAD = 16,
14238 	CPUHP_NET_MVNETA_DEAD = 17,
14239 	CPUHP_CPUIDLE_DEAD = 18,
14240 	CPUHP_ARM64_FPSIMD_DEAD = 19,
14241 	CPUHP_ARM_OMAP_WAKE_DEAD = 20,
14242 	CPUHP_IRQ_POLL_DEAD = 21,
14243 	CPUHP_BLOCK_SOFTIRQ_DEAD = 22,
14244 	CPUHP_BIO_DEAD = 23,
14245 	CPUHP_ACPI_CPUDRV_DEAD = 24,
14246 	CPUHP_S390_PFAULT_DEAD = 25,
14247 	CPUHP_BLK_MQ_DEAD = 26,
14248 	CPUHP_FS_BUFF_DEAD = 27,
14249 	CPUHP_PRINTK_DEAD = 28,
14250 	CPUHP_MM_MEMCQ_DEAD = 29,
14251 	CPUHP_XFS_DEAD = 30,
14252 	CPUHP_PERCPU_CNT_DEAD = 31,
14253 	CPUHP_RADIX_DEAD = 32,
14254 	CPUHP_PAGE_ALLOC = 33,
14255 	CPUHP_NET_DEV_DEAD = 34,
14256 	CPUHP_PCI_XGENE_DEAD = 35,
14257 	CPUHP_IOMMU_IOVA_DEAD = 36,
14258 	CPUHP_LUSTRE_CFS_DEAD = 37,
14259 	CPUHP_AP_ARM_CACHE_B15_RAC_DEAD = 38,
14260 	CPUHP_PADATA_DEAD = 39,
14261 	CPUHP_AP_DTPM_CPU_DEAD = 40,
14262 	CPUHP_RANDOM_PREPARE = 41,
14263 	CPUHP_WORKQUEUE_PREP = 42,
14264 	CPUHP_POWER_NUMA_PREPARE = 43,
14265 	CPUHP_HRTIMERS_PREPARE = 44,
14266 	CPUHP_PROFILE_PREPARE = 45,
14267 	CPUHP_X2APIC_PREPARE = 46,
14268 	CPUHP_SMPCFD_PREPARE = 47,
14269 	CPUHP_RELAY_PREPARE = 48,
14270 	CPUHP_SLAB_PREPARE = 49,
14271 	CPUHP_MD_RAID5_PREPARE = 50,
14272 	CPUHP_RCUTREE_PREP = 51,
14273 	CPUHP_CPUIDLE_COUPLED_PREPARE = 52,
14274 	CPUHP_POWERPC_PMAC_PREPARE = 53,
14275 	CPUHP_POWERPC_MMU_CTX_PREPARE = 54,
14276 	CPUHP_XEN_PREPARE = 55,
14277 	CPUHP_XEN_EVTCHN_PREPARE = 56,
14278 	CPUHP_ARM_SHMOBILE_SCU_PREPARE = 57,
14279 	CPUHP_SH_SH3X_PREPARE = 58,
14280 	CPUHP_NET_FLOW_PREPARE = 59,
14281 	CPUHP_TOPOLOGY_PREPARE = 60,
14282 	CPUHP_NET_IUCV_PREPARE = 61,
14283 	CPUHP_ARM_BL_PREPARE = 62,
14284 	CPUHP_TRACE_RB_PREPARE = 63,
14285 	CPUHP_MM_ZS_PREPARE = 64,
14286 	CPUHP_MM_ZSWP_MEM_PREPARE = 65,
14287 	CPUHP_MM_ZSWP_POOL_PREPARE = 66,
14288 	CPUHP_KVM_PPC_BOOK3S_PREPARE = 67,
14289 	CPUHP_ZCOMP_PREPARE = 68,
14290 	CPUHP_TIMERS_PREPARE = 69,
14291 	CPUHP_MIPS_SOC_PREPARE = 70,
14292 	CPUHP_BP_PREPARE_DYN = 71,
14293 	CPUHP_BP_PREPARE_DYN_END = 91,
14294 	CPUHP_BRINGUP_CPU = 92,
14295 	CPUHP_AP_IDLE_DEAD = 93,
14296 	CPUHP_AP_OFFLINE = 94,
14297 	CPUHP_AP_SCHED_STARTING = 95,
14298 	CPUHP_AP_RCUTREE_DYING = 96,
14299 	CPUHP_AP_CPU_PM_STARTING = 97,
14300 	CPUHP_AP_IRQ_GIC_STARTING = 98,
14301 	CPUHP_AP_IRQ_HIP04_STARTING = 99,
14302 	CPUHP_AP_IRQ_APPLE_AIC_STARTING = 100,
14303 	CPUHP_AP_IRQ_ARMADA_XP_STARTING = 101,
14304 	CPUHP_AP_IRQ_BCM2836_STARTING = 102,
14305 	CPUHP_AP_IRQ_MIPS_GIC_STARTING = 103,
14306 	CPUHP_AP_IRQ_RISCV_STARTING = 104,
14307 	CPUHP_AP_IRQ_LOONGARCH_STARTING = 105,
14308 	CPUHP_AP_IRQ_SIFIVE_PLIC_STARTING = 106,
14309 	CPUHP_AP_ARM_MVEBU_COHERENCY = 107,
14310 	CPUHP_AP_MICROCODE_LOADER = 108,
14311 	CPUHP_AP_PERF_X86_AMD_UNCORE_STARTING = 109,
14312 	CPUHP_AP_PERF_X86_STARTING = 110,
14313 	CPUHP_AP_PERF_X86_AMD_IBS_STARTING = 111,
14314 	CPUHP_AP_PERF_X86_CQM_STARTING = 112,
14315 	CPUHP_AP_PERF_X86_CSTATE_STARTING = 113,
14316 	CPUHP_AP_PERF_XTENSA_STARTING = 114,
14317 	CPUHP_AP_MIPS_OP_LOONGSON3_STARTING = 115,
14318 	CPUHP_AP_ARM_SDEI_STARTING = 116,
14319 	CPUHP_AP_ARM_VFP_STARTING = 117,
14320 	CPUHP_AP_ARM64_DEBUG_MONITORS_STARTING = 118,
14321 	CPUHP_AP_PERF_ARM_HW_BREAKPOINT_STARTING = 119,
14322 	CPUHP_AP_PERF_ARM_ACPI_STARTING = 120,
14323 	CPUHP_AP_PERF_ARM_STARTING = 121,
14324 	CPUHP_AP_PERF_RISCV_STARTING = 122,
14325 	CPUHP_AP_ARM_L2X0_STARTING = 123,
14326 	CPUHP_AP_EXYNOS4_MCT_TIMER_STARTING = 124,
14327 	CPUHP_AP_ARM_ARCH_TIMER_STARTING = 125,
14328 	CPUHP_AP_ARM_GLOBAL_TIMER_STARTING = 126,
14329 	CPUHP_AP_JCORE_TIMER_STARTING = 127,
14330 	CPUHP_AP_ARM_TWD_STARTING = 128,
14331 	CPUHP_AP_QCOM_TIMER_STARTING = 129,
14332 	CPUHP_AP_TEGRA_TIMER_STARTING = 130,
14333 	CPUHP_AP_ARMADA_TIMER_STARTING = 131,
14334 	CPUHP_AP_MARCO_TIMER_STARTING = 132,
14335 	CPUHP_AP_MIPS_GIC_TIMER_STARTING = 133,
14336 	CPUHP_AP_ARC_TIMER_STARTING = 134,
14337 	CPUHP_AP_RISCV_TIMER_STARTING = 135,
14338 	CPUHP_AP_CLINT_TIMER_STARTING = 136,
14339 	CPUHP_AP_CSKY_TIMER_STARTING = 137,
14340 	CPUHP_AP_TI_GP_TIMER_STARTING = 138,
14341 	CPUHP_AP_HYPERV_TIMER_STARTING = 139,
14342 	CPUHP_AP_KVM_STARTING = 140,
14343 	CPUHP_AP_KVM_ARM_VGIC_INIT_STARTING = 141,
14344 	CPUHP_AP_KVM_ARM_VGIC_STARTING = 142,
14345 	CPUHP_AP_KVM_ARM_TIMER_STARTING = 143,
14346 	CPUHP_AP_DUMMY_TIMER_STARTING = 144,
14347 	CPUHP_AP_ARM_XEN_STARTING = 145,
14348 	CPUHP_AP_ARM_CORESIGHT_STARTING = 146,
14349 	CPUHP_AP_ARM_CORESIGHT_CTI_STARTING = 147,
14350 	CPUHP_AP_ARM64_ISNDEP_STARTING = 148,
14351 	CPUHP_AP_SMPCFD_DYING = 149,
14352 	CPUHP_AP_X86_TBOOT_DYING = 150,
14353 	CPUHP_AP_ARM_CACHE_B15_RAC_DYING = 151,
14354 	CPUHP_AP_ONLINE = 152,
14355 	CPUHP_TEARDOWN_CPU = 153,
14356 	CPUHP_AP_ONLINE_IDLE = 154,
14357 	CPUHP_AP_SCHED_WAIT_EMPTY = 155,
14358 	CPUHP_AP_SMPBOOT_THREADS = 156,
14359 	CPUHP_AP_X86_VDSO_VMA_ONLINE = 157,
14360 	CPUHP_AP_IRQ_AFFINITY_ONLINE = 158,
14361 	CPUHP_AP_BLK_MQ_ONLINE = 159,
14362 	CPUHP_AP_ARM_MVEBU_SYNC_CLOCKS = 160,
14363 	CPUHP_AP_X86_INTEL_EPB_ONLINE = 161,
14364 	CPUHP_AP_PERF_ONLINE = 162,
14365 	CPUHP_AP_PERF_X86_ONLINE = 163,
14366 	CPUHP_AP_PERF_X86_UNCORE_ONLINE = 164,
14367 	CPUHP_AP_PERF_X86_AMD_UNCORE_ONLINE = 165,
14368 	CPUHP_AP_PERF_X86_AMD_POWER_ONLINE = 166,
14369 	CPUHP_AP_PERF_X86_RAPL_ONLINE = 167,
14370 	CPUHP_AP_PERF_X86_CQM_ONLINE = 168,
14371 	CPUHP_AP_PERF_X86_CSTATE_ONLINE = 169,
14372 	CPUHP_AP_PERF_X86_IDXD_ONLINE = 170,
14373 	CPUHP_AP_PERF_S390_CF_ONLINE = 171,
14374 	CPUHP_AP_PERF_S390_SF_ONLINE = 172,
14375 	CPUHP_AP_PERF_ARM_CCI_ONLINE = 173,
14376 	CPUHP_AP_PERF_ARM_CCN_ONLINE = 174,
14377 	CPUHP_AP_PERF_ARM_HISI_CPA_ONLINE = 175,
14378 	CPUHP_AP_PERF_ARM_HISI_DDRC_ONLINE = 176,
14379 	CPUHP_AP_PERF_ARM_HISI_HHA_ONLINE = 177,
14380 	CPUHP_AP_PERF_ARM_HISI_L3_ONLINE = 178,
14381 	CPUHP_AP_PERF_ARM_HISI_PA_ONLINE = 179,
14382 	CPUHP_AP_PERF_ARM_HISI_SLLC_ONLINE = 180,
14383 	CPUHP_AP_PERF_ARM_HISI_PCIE_PMU_ONLINE = 181,
14384 	CPUHP_AP_PERF_ARM_HNS3_PMU_ONLINE = 182,
14385 	CPUHP_AP_PERF_ARM_L2X0_ONLINE = 183,
14386 	CPUHP_AP_PERF_ARM_QCOM_L2_ONLINE = 184,
14387 	CPUHP_AP_PERF_ARM_QCOM_L3_ONLINE = 185,
14388 	CPUHP_AP_PERF_ARM_APM_XGENE_ONLINE = 186,
14389 	CPUHP_AP_PERF_ARM_CAVIUM_TX2_UNCORE_ONLINE = 187,
14390 	CPUHP_AP_PERF_ARM_MARVELL_CN10K_DDR_ONLINE = 188,
14391 	CPUHP_AP_PERF_POWERPC_NEST_IMC_ONLINE = 189,
14392 	CPUHP_AP_PERF_POWERPC_CORE_IMC_ONLINE = 190,
14393 	CPUHP_AP_PERF_POWERPC_THREAD_IMC_ONLINE = 191,
14394 	CPUHP_AP_PERF_POWERPC_TRACE_IMC_ONLINE = 192,
14395 	CPUHP_AP_PERF_POWERPC_HV_24x7_ONLINE = 193,
14396 	CPUHP_AP_PERF_POWERPC_HV_GPCI_ONLINE = 194,
14397 	CPUHP_AP_PERF_CSKY_ONLINE = 195,
14398 	CPUHP_AP_WATCHDOG_ONLINE = 196,
14399 	CPUHP_AP_WORKQUEUE_ONLINE = 197,
14400 	CPUHP_AP_RANDOM_ONLINE = 198,
14401 	CPUHP_AP_RCUTREE_ONLINE = 199,
14402 	CPUHP_AP_BASE_CACHEINFO_ONLINE = 200,
14403 	CPUHP_AP_ONLINE_DYN = 201,
14404 	CPUHP_AP_ONLINE_DYN_END = 231,
14405 	CPUHP_AP_MM_DEMOTION_ONLINE = 232,
14406 	CPUHP_AP_X86_HPET_ONLINE = 233,
14407 	CPUHP_AP_X86_KVM_CLK_ONLINE = 234,
14408 	CPUHP_AP_ACTIVE = 235,
14409 	CPUHP_ONLINE = 236,
14410 };
14411 
14412 enum cpuhp_smt_control {
14413 	CPU_SMT_ENABLED = 0,
14414 	CPU_SMT_DISABLED = 1,
14415 	CPU_SMT_FORCE_DISABLED = 2,
14416 	CPU_SMT_NOT_SUPPORTED = 3,
14417 	CPU_SMT_NOT_IMPLEMENTED = 4,
14418 };
14419 
14420 typedef int (*cpu_stop_fn_t)(void *);
14421 
14422 struct smp_hotplug_thread {
14423 	struct task_struct **store;
14424 	struct list_head list;
14425 	int (*thread_should_run)(unsigned int);
14426 	void (*thread_fn)(unsigned int);
14427 	void (*create)(unsigned int);
14428 	void (*setup)(unsigned int);
14429 	void (*cleanup)(unsigned int, bool);
14430 	void (*park)(unsigned int);
14431 	void (*unpark)(unsigned int);
14432 	bool selfparking;
14433 	const char *thread_comm;
14434 };
14435 
14436 enum cc_attr {
14437 	CC_ATTR_MEM_ENCRYPT = 0,
14438 	CC_ATTR_HOST_MEM_ENCRYPT = 1,
14439 	CC_ATTR_GUEST_MEM_ENCRYPT = 2,
14440 	CC_ATTR_GUEST_STATE_ENCRYPT = 3,
14441 	CC_ATTR_GUEST_UNROLL_STRING_IO = 4,
14442 	CC_ATTR_GUEST_SEV_SNP = 5,
14443 	CC_ATTR_HOTPLUG_DISABLED = 6,
14444 };
14445 
14446 struct pm_qos_flags_request {
14447 	struct list_head node;
14448 	s32 flags;
14449 };
14450 
14451 enum freq_qos_req_type {
14452 	FREQ_QOS_MIN = 1,
14453 	FREQ_QOS_MAX = 2,
14454 };
14455 
14456 struct freq_qos_request {
14457 	enum freq_qos_req_type type;
14458 	struct plist_node pnode;
14459 	struct freq_constraints *qos;
14460 };
14461 
14462 enum dev_pm_qos_req_type {
14463 	DEV_PM_QOS_RESUME_LATENCY = 1,
14464 	DEV_PM_QOS_LATENCY_TOLERANCE = 2,
14465 	DEV_PM_QOS_MIN_FREQUENCY = 3,
14466 	DEV_PM_QOS_MAX_FREQUENCY = 4,
14467 	DEV_PM_QOS_FLAGS = 5,
14468 };
14469 
14470 struct dev_pm_qos_request {
14471 	enum dev_pm_qos_req_type type;
14472 	union {
14473 		struct plist_node pnode;
14474 		struct pm_qos_flags_request flr;
14475 		struct freq_qos_request freq;
14476 	} data;
14477 	struct device *dev;
14478 };
14479 
14480 struct trace_event_raw_cpuhp_enter {
14481 	struct trace_entry ent;
14482 	unsigned int cpu;
14483 	int target;
14484 	int idx;
14485 	void *fun;
14486 	char __data[0];
14487 };
14488 
14489 struct trace_event_raw_cpuhp_multi_enter {
14490 	struct trace_entry ent;
14491 	unsigned int cpu;
14492 	int target;
14493 	int idx;
14494 	void *fun;
14495 	char __data[0];
14496 };
14497 
14498 struct trace_event_raw_cpuhp_exit {
14499 	struct trace_entry ent;
14500 	unsigned int cpu;
14501 	int state;
14502 	int idx;
14503 	int ret;
14504 	char __data[0];
14505 };
14506 
14507 struct trace_event_data_offsets_cpuhp_enter {};
14508 
14509 struct trace_event_data_offsets_cpuhp_multi_enter {};
14510 
14511 struct trace_event_data_offsets_cpuhp_exit {};
14512 
14513 typedef void (*btf_trace_cpuhp_enter)(void *, unsigned int, int, int, int (*)(unsigned int));
14514 
14515 typedef void (*btf_trace_cpuhp_multi_enter)(void *, unsigned int, int, int, int (*)(unsigned int, struct hlist_node *), struct hlist_node *);
14516 
14517 typedef void (*btf_trace_cpuhp_exit)(void *, unsigned int, int, int, int);
14518 
14519 struct cpuhp_cpu_state {
14520 	enum cpuhp_state state;
14521 	enum cpuhp_state target;
14522 	enum cpuhp_state fail;
14523 	struct task_struct *thread;
14524 	bool should_run;
14525 	bool rollback;
14526 	bool single;
14527 	bool bringup;
14528 	struct hlist_node *node;
14529 	struct hlist_node *last;
14530 	enum cpuhp_state cb_state;
14531 	int result;
14532 	struct completion done_up;
14533 	struct completion done_down;
14534 };
14535 
14536 struct cpuhp_step {
14537 	const char *name;
14538 	union {
14539 		int (*single)(unsigned int);
14540 		int (*multi)(unsigned int, struct hlist_node *);
14541 	} startup;
14542 	union {
14543 		int (*single)(unsigned int);
14544 		int (*multi)(unsigned int, struct hlist_node *);
14545 	} teardown;
14546 	struct hlist_head list;
14547 	bool cant_stop;
14548 	bool multi_instance;
14549 };
14550 
14551 enum cpu_mitigations {
14552 	CPU_MITIGATIONS_OFF = 0,
14553 	CPU_MITIGATIONS_AUTO = 1,
14554 	CPU_MITIGATIONS_AUTO_NOSMT = 2,
14555 };
14556 
14557 struct kobj_attribute {
14558 	struct attribute attr;
14559 	ssize_t (*show)(struct kobject *, struct kobj_attribute *, char *);
14560 	ssize_t (*store)(struct kobject *, struct kobj_attribute *, const char *, size_t);
14561 };
14562 
14563 typedef __u64 Elf64_Off;
14564 
14565 struct elf64_hdr {
14566 	unsigned char e_ident[16];
14567 	Elf64_Half e_type;
14568 	Elf64_Half e_machine;
14569 	Elf64_Word e_version;
14570 	Elf64_Addr e_entry;
14571 	Elf64_Off e_phoff;
14572 	Elf64_Off e_shoff;
14573 	Elf64_Word e_flags;
14574 	Elf64_Half e_ehsize;
14575 	Elf64_Half e_phentsize;
14576 	Elf64_Half e_phnum;
14577 	Elf64_Half e_shentsize;
14578 	Elf64_Half e_shnum;
14579 	Elf64_Half e_shstrndx;
14580 };
14581 
14582 typedef struct elf64_hdr Elf64_Ehdr;
14583 
14584 struct elf64_shdr {
14585 	Elf64_Word sh_name;
14586 	Elf64_Word sh_type;
14587 	Elf64_Xword sh_flags;
14588 	Elf64_Addr sh_addr;
14589 	Elf64_Off sh_offset;
14590 	Elf64_Xword sh_size;
14591 	Elf64_Word sh_link;
14592 	Elf64_Word sh_info;
14593 	Elf64_Xword sh_addralign;
14594 	Elf64_Xword sh_entsize;
14595 };
14596 
14597 typedef struct elf64_shdr Elf64_Shdr;
14598 
14599 typedef int kexec_probe_t(const char *, long unsigned int);
14600 
14601 typedef void *kexec_load_t(struct kimage *, char *, long unsigned int, char *, long unsigned int, char *, long unsigned int);
14602 
14603 typedef int kexec_cleanup_t(void *);
14604 
14605 struct kexec_file_ops {
14606 	kexec_probe_t *probe;
14607 	kexec_load_t *load;
14608 	kexec_cleanup_t *cleanup;
14609 };
14610 
14611 struct crash_mem;
14612 
14613 struct kimage_arch {
14614 	struct crash_mem *exclude_ranges;
14615 	long unsigned int backup_start;
14616 	void *backup_buf;
14617 	void *fdt;
14618 };
14619 
14620 struct crash_mem_range {
14621 	u64 start;
14622 	u64 end;
14623 };
14624 
14625 struct crash_mem {
14626 	unsigned int max_nr_ranges;
14627 	unsigned int nr_ranges;
14628 	struct crash_mem_range ranges[0];
14629 };
14630 
14631 typedef long unsigned int kimage_entry_t;
14632 
14633 struct kexec_segment {
14634 	union {
14635 		void *buf;
14636 		void *kbuf;
14637 	};
14638 	size_t bufsz;
14639 	long unsigned int mem;
14640 	size_t memsz;
14641 };
14642 
14643 struct purgatory_info {
14644 	const Elf64_Ehdr *ehdr;
14645 	Elf64_Shdr *sechdrs;
14646 	void *purgatory_buf;
14647 };
14648 
14649 struct kimage {
14650 	kimage_entry_t head;
14651 	kimage_entry_t *entry;
14652 	kimage_entry_t *last_entry;
14653 	long unsigned int start;
14654 	struct page *control_code_page;
14655 	struct page *swap_page;
14656 	void *vmcoreinfo_data_copy;
14657 	long unsigned int nr_segments;
14658 	struct kexec_segment segment[16];
14659 	struct list_head control_pages;
14660 	struct list_head dest_pages;
14661 	struct list_head unusable_pages;
14662 	long unsigned int control_page;
14663 	unsigned int type: 1;
14664 	unsigned int preserve_context: 1;
14665 	unsigned int file_mode: 1;
14666 	struct kimage_arch arch;
14667 	void *kernel_buf;
14668 	long unsigned int kernel_buf_len;
14669 	void *initrd_buf;
14670 	long unsigned int initrd_buf_len;
14671 	char *cmdline_buf;
14672 	long unsigned int cmdline_buf_len;
14673 	const struct kexec_file_ops *fops;
14674 	void *image_loader_data;
14675 	struct purgatory_info purgatory_info;
14676 	void *elf_headers;
14677 	long unsigned int elf_headers_sz;
14678 	long unsigned int elf_load_addr;
14679 };
14680 
14681 enum refcount_saturation_type {
14682 	REFCOUNT_ADD_NOT_ZERO_OVF = 0,
14683 	REFCOUNT_ADD_OVF = 1,
14684 	REFCOUNT_ADD_UAF = 2,
14685 	REFCOUNT_SUB_UAF = 3,
14686 	REFCOUNT_DEC_LEAK = 4,
14687 };
14688 
14689 struct wake_q_head {
14690 	struct wake_q_node *first;
14691 	struct wake_q_node **lastp;
14692 };
14693 
14694 enum rwsem_waiter_type {
14695 	RWSEM_WAITING_FOR_WRITE = 0,
14696 	RWSEM_WAITING_FOR_READ = 1,
14697 };
14698 
14699 struct rwsem_waiter {
14700 	struct list_head list;
14701 	struct task_struct *task;
14702 	enum rwsem_waiter_type type;
14703 	long unsigned int timeout;
14704 	bool handoff_set;
14705 };
14706 
14707 enum rwsem_wake_type {
14708 	RWSEM_WAKE_ANY = 0,
14709 	RWSEM_WAKE_READERS = 1,
14710 	RWSEM_WAKE_READ_OWNED = 2,
14711 };
14712 
14713 enum owner_state {
14714 	OWNER_NULL = 1,
14715 	OWNER_WRITER = 2,
14716 	OWNER_READER = 4,
14717 	OWNER_NONSPINNABLE = 8,
14718 };
14719 
14720 typedef unsigned int tcflag_t;
14721 
14722 typedef unsigned char cc_t;
14723 
14724 typedef unsigned int speed_t;
14725 
14726 struct ktermios {
14727 	tcflag_t c_iflag;
14728 	tcflag_t c_oflag;
14729 	tcflag_t c_cflag;
14730 	tcflag_t c_lflag;
14731 	cc_t c_cc[19];
14732 	cc_t c_line;
14733 	speed_t c_ispeed;
14734 	speed_t c_ospeed;
14735 };
14736 
14737 struct tty_port;
14738 
14739 struct tty_operations;
14740 
14741 struct tty_driver {
14742 	int magic;
14743 	struct kref kref;
14744 	struct cdev **cdevs;
14745 	struct module *owner;
14746 	const char *driver_name;
14747 	const char *name;
14748 	int name_base;
14749 	int major;
14750 	int minor_start;
14751 	unsigned int num;
14752 	short int type;
14753 	short int subtype;
14754 	struct ktermios init_termios;
14755 	long unsigned int flags;
14756 	struct proc_dir_entry *proc_entry;
14757 	struct tty_driver *other;
14758 	struct tty_struct **ttys;
14759 	struct tty_port **ports;
14760 	struct ktermios **termios;
14761 	void *driver_state;
14762 	const struct tty_operations *ops;
14763 	struct list_head tty_drivers;
14764 };
14765 
14766 struct ld_semaphore {
14767 	atomic_long_t count;
14768 	raw_spinlock_t wait_lock;
14769 	unsigned int wait_readers;
14770 	struct list_head read_wait;
14771 	struct list_head write_wait;
14772 };
14773 
14774 struct winsize {
14775 	short unsigned int ws_row;
14776 	short unsigned int ws_col;
14777 	short unsigned int ws_xpixel;
14778 	short unsigned int ws_ypixel;
14779 };
14780 
14781 struct tty_ldisc;
14782 
14783 struct tty_struct {
14784 	int magic;
14785 	struct kref kref;
14786 	struct device *dev;
14787 	struct tty_driver *driver;
14788 	const struct tty_operations *ops;
14789 	int index;
14790 	struct ld_semaphore ldisc_sem;
14791 	struct tty_ldisc *ldisc;
14792 	struct mutex atomic_write_lock;
14793 	struct mutex legacy_mutex;
14794 	struct mutex throttle_mutex;
14795 	struct rw_semaphore termios_rwsem;
14796 	struct mutex winsize_mutex;
14797 	struct ktermios termios;
14798 	struct ktermios termios_locked;
14799 	char name[64];
14800 	long unsigned int flags;
14801 	int count;
14802 	struct winsize winsize;
14803 	struct {
14804 		spinlock_t lock;
14805 		bool stopped;
14806 		bool tco_stopped;
14807 		long unsigned int unused[0];
14808 	} flow;
14809 	struct {
14810 		spinlock_t lock;
14811 		struct pid *pgrp;
14812 		struct pid *session;
14813 		unsigned char pktstatus;
14814 		bool packet;
14815 		long unsigned int unused[0];
14816 	} ctrl;
14817 	int hw_stopped;
14818 	unsigned int receive_room;
14819 	int flow_change;
14820 	struct tty_struct *link;
14821 	struct fasync_struct *fasync;
14822 	wait_queue_head_t write_wait;
14823 	wait_queue_head_t read_wait;
14824 	struct work_struct hangup_work;
14825 	void *disc_data;
14826 	void *driver_data;
14827 	spinlock_t files_lock;
14828 	struct list_head tty_files;
14829 	int closing;
14830 	unsigned char *write_buf;
14831 	int write_cnt;
14832 	struct work_struct SAK_work;
14833 	struct tty_port *port;
14834 };
14835 
14836 struct cdev {
14837 	struct kobject kobj;
14838 	struct module *owner;
14839 	const struct file_operations *ops;
14840 	struct list_head list;
14841 	dev_t dev;
14842 	unsigned int count;
14843 };
14844 
14845 struct tty_buffer {
14846 	union {
14847 		struct tty_buffer *next;
14848 		struct llist_node free;
14849 	};
14850 	int used;
14851 	int size;
14852 	int commit;
14853 	int lookahead;
14854 	int read;
14855 	int flags;
14856 	long unsigned int data[0];
14857 };
14858 
14859 struct tty_bufhead {
14860 	struct tty_buffer *head;
14861 	struct work_struct work;
14862 	struct mutex lock;
14863 	atomic_t priority;
14864 	struct tty_buffer sentinel;
14865 	struct llist_head free;
14866 	atomic_t mem_used;
14867 	int mem_limit;
14868 	struct tty_buffer *tail;
14869 };
14870 
14871 struct serial_icounter_struct;
14872 
14873 struct serial_struct;
14874 
14875 struct tty_operations {
14876 	struct tty_struct * (*lookup)(struct tty_driver *, struct file *, int);
14877 	int (*install)(struct tty_driver *, struct tty_struct *);
14878 	void (*remove)(struct tty_driver *, struct tty_struct *);
14879 	int (*open)(struct tty_struct *, struct file *);
14880 	void (*close)(struct tty_struct *, struct file *);
14881 	void (*shutdown)(struct tty_struct *);
14882 	void (*cleanup)(struct tty_struct *);
14883 	int (*write)(struct tty_struct *, const unsigned char *, int);
14884 	int (*put_char)(struct tty_struct *, unsigned char);
14885 	void (*flush_chars)(struct tty_struct *);
14886 	unsigned int (*write_room)(struct tty_struct *);
14887 	unsigned int (*chars_in_buffer)(struct tty_struct *);
14888 	int (*ioctl)(struct tty_struct *, unsigned int, long unsigned int);
14889 	long int (*compat_ioctl)(struct tty_struct *, unsigned int, long unsigned int);
14890 	void (*set_termios)(struct tty_struct *, struct ktermios *);
14891 	void (*throttle)(struct tty_struct *);
14892 	void (*unthrottle)(struct tty_struct *);
14893 	void (*stop)(struct tty_struct *);
14894 	void (*start)(struct tty_struct *);
14895 	void (*hangup)(struct tty_struct *);
14896 	int (*break_ctl)(struct tty_struct *, int);
14897 	void (*flush_buffer)(struct tty_struct *);
14898 	void (*set_ldisc)(struct tty_struct *);
14899 	void (*wait_until_sent)(struct tty_struct *, int);
14900 	void (*send_xchar)(struct tty_struct *, char);
14901 	int (*tiocmget)(struct tty_struct *);
14902 	int (*tiocmset)(struct tty_struct *, unsigned int, unsigned int);
14903 	int (*resize)(struct tty_struct *, struct winsize *);
14904 	int (*get_icount)(struct tty_struct *, struct serial_icounter_struct *);
14905 	int (*get_serial)(struct tty_struct *, struct serial_struct *);
14906 	int (*set_serial)(struct tty_struct *, struct serial_struct *);
14907 	void (*show_fdinfo)(struct tty_struct *, struct seq_file *);
14908 	int (*proc_show)(struct seq_file *, void *);
14909 };
14910 
14911 struct __kfifo {
14912 	unsigned int in;
14913 	unsigned int out;
14914 	unsigned int mask;
14915 	unsigned int esize;
14916 	void *data;
14917 };
14918 
14919 struct tty_port_operations;
14920 
14921 struct tty_port_client_operations;
14922 
14923 struct tty_port {
14924 	struct tty_bufhead buf;
14925 	struct tty_struct *tty;
14926 	struct tty_struct *itty;
14927 	const struct tty_port_operations *ops;
14928 	const struct tty_port_client_operations *client_ops;
14929 	spinlock_t lock;
14930 	int blocked_open;
14931 	int count;
14932 	wait_queue_head_t open_wait;
14933 	wait_queue_head_t delta_msr_wait;
14934 	long unsigned int flags;
14935 	long unsigned int iflags;
14936 	unsigned char console: 1;
14937 	struct mutex mutex;
14938 	struct mutex buf_mutex;
14939 	unsigned char *xmit_buf;
14940 	struct {
14941 		union {
14942 			struct __kfifo kfifo;
14943 			unsigned char *type;
14944 			const unsigned char *const_type;
14945 			char (*rectype)[0];
14946 			unsigned char *ptr;
14947 			const unsigned char *ptr_const;
14948 		};
14949 		unsigned char buf[0];
14950 	} xmit_fifo;
14951 	unsigned int close_delay;
14952 	unsigned int closing_wait;
14953 	int drain_delay;
14954 	struct kref kref;
14955 	void *client_data;
14956 };
14957 
14958 struct tty_ldisc_ops {
14959 	char *name;
14960 	int num;
14961 	int (*open)(struct tty_struct *);
14962 	void (*close)(struct tty_struct *);
14963 	void (*flush_buffer)(struct tty_struct *);
14964 	ssize_t (*read)(struct tty_struct *, struct file *, unsigned char *, size_t, void **, long unsigned int);
14965 	ssize_t (*write)(struct tty_struct *, struct file *, const unsigned char *, size_t);
14966 	int (*ioctl)(struct tty_struct *, unsigned int, long unsigned int);
14967 	int (*compat_ioctl)(struct tty_struct *, unsigned int, long unsigned int);
14968 	void (*set_termios)(struct tty_struct *, struct ktermios *);
14969 	__poll_t (*poll)(struct tty_struct *, struct file *, struct poll_table_struct *);
14970 	void (*hangup)(struct tty_struct *);
14971 	void (*receive_buf)(struct tty_struct *, const unsigned char *, const char *, int);
14972 	void (*write_wakeup)(struct tty_struct *);
14973 	void (*dcd_change)(struct tty_struct *, unsigned int);
14974 	int (*receive_buf2)(struct tty_struct *, const unsigned char *, const char *, int);
14975 	void (*lookahead_buf)(struct tty_struct *, const unsigned char *, const unsigned char *, unsigned int);
14976 	struct module *owner;
14977 };
14978 
14979 struct tty_ldisc {
14980 	struct tty_ldisc_ops *ops;
14981 	struct tty_struct *tty;
14982 };
14983 
14984 struct tty_port_operations {
14985 	int (*carrier_raised)(struct tty_port *);
14986 	void (*dtr_rts)(struct tty_port *, int);
14987 	void (*shutdown)(struct tty_port *);
14988 	int (*activate)(struct tty_port *, struct tty_struct *);
14989 	void (*destruct)(struct tty_port *);
14990 };
14991 
14992 struct tty_port_client_operations {
14993 	int (*receive_buf)(struct tty_port *, const unsigned char *, const unsigned char *, size_t);
14994 	void (*lookahead_buf)(struct tty_port *, const unsigned char *, const unsigned char *, unsigned int);
14995 	void (*write_wakeup)(struct tty_port *);
14996 };
14997 
14998 struct new_utsname {
14999 	char sysname[65];
15000 	char nodename[65];
15001 	char release[65];
15002 	char version[65];
15003 	char machine[65];
15004 	char domainname[65];
15005 };
15006 
15007 struct uts_namespace {
15008 	struct new_utsname name;
15009 	struct user_namespace *user_ns;
15010 	struct ucounts *ucounts;
15011 	struct ns_common ns;
15012 };
15013 
15014 struct pm_vt_switch {
15015 	struct list_head head;
15016 	struct device *dev;
15017 	bool required;
15018 };
15019 
15020 struct of_phandle_args {
15021 	struct device_node *np;
15022 	int args_count;
15023 	uint32_t args[16];
15024 };
15025 
15026 enum {
15027 	IRQ_DOMAIN_FLAG_HIERARCHY = 1,
15028 	IRQ_DOMAIN_NAME_ALLOCATED = 2,
15029 	IRQ_DOMAIN_FLAG_IPI_PER_CPU = 4,
15030 	IRQ_DOMAIN_FLAG_IPI_SINGLE = 8,
15031 	IRQ_DOMAIN_FLAG_MSI = 16,
15032 	IRQ_DOMAIN_FLAG_MSI_REMAP = 32,
15033 	IRQ_DOMAIN_MSI_NOMASK_QUIRK = 64,
15034 	IRQ_DOMAIN_FLAG_NO_MAP = 128,
15035 	IRQ_DOMAIN_FLAG_NONCORE = 65536,
15036 };
15037 
15038 enum {
15039 	IRQCHIP_FWNODE_REAL = 0,
15040 	IRQCHIP_FWNODE_NAMED = 1,
15041 	IRQCHIP_FWNODE_NAMED_ID = 2,
15042 };
15043 
15044 enum {
15045 	IRQ_TYPE_NONE = 0,
15046 	IRQ_TYPE_EDGE_RISING = 1,
15047 	IRQ_TYPE_EDGE_FALLING = 2,
15048 	IRQ_TYPE_EDGE_BOTH = 3,
15049 	IRQ_TYPE_LEVEL_HIGH = 4,
15050 	IRQ_TYPE_LEVEL_LOW = 8,
15051 	IRQ_TYPE_LEVEL_MASK = 12,
15052 	IRQ_TYPE_SENSE_MASK = 15,
15053 	IRQ_TYPE_DEFAULT = 15,
15054 	IRQ_TYPE_PROBE = 16,
15055 	IRQ_LEVEL = 256,
15056 	IRQ_PER_CPU = 512,
15057 	IRQ_NOPROBE = 1024,
15058 	IRQ_NOREQUEST = 2048,
15059 	IRQ_NOAUTOEN = 4096,
15060 	IRQ_NO_BALANCING = 8192,
15061 	IRQ_MOVE_PCNTXT = 16384,
15062 	IRQ_NESTED_THREAD = 32768,
15063 	IRQ_NOTHREAD = 65536,
15064 	IRQ_PER_CPU_DEVID = 131072,
15065 	IRQ_IS_POLLED = 262144,
15066 	IRQ_DISABLE_UNLAZY = 524288,
15067 	IRQ_HIDDEN = 1048576,
15068 	IRQ_NO_DEBUG = 2097152,
15069 };
15070 
15071 enum {
15072 	IRQD_TRIGGER_MASK = 15,
15073 	IRQD_SETAFFINITY_PENDING = 256,
15074 	IRQD_ACTIVATED = 512,
15075 	IRQD_NO_BALANCING = 1024,
15076 	IRQD_PER_CPU = 2048,
15077 	IRQD_AFFINITY_SET = 4096,
15078 	IRQD_LEVEL = 8192,
15079 	IRQD_WAKEUP_STATE = 16384,
15080 	IRQD_MOVE_PCNTXT = 32768,
15081 	IRQD_IRQ_DISABLED = 65536,
15082 	IRQD_IRQ_MASKED = 131072,
15083 	IRQD_IRQ_INPROGRESS = 262144,
15084 	IRQD_WAKEUP_ARMED = 524288,
15085 	IRQD_FORWARDED_TO_VCPU = 1048576,
15086 	IRQD_AFFINITY_MANAGED = 2097152,
15087 	IRQD_IRQ_STARTED = 4194304,
15088 	IRQD_MANAGED_SHUTDOWN = 8388608,
15089 	IRQD_SINGLE_TARGET = 16777216,
15090 	IRQD_DEFAULT_TRIGGER_SET = 33554432,
15091 	IRQD_CAN_RESERVE = 67108864,
15092 	IRQD_MSI_NOMASK_QUIRK = 134217728,
15093 	IRQD_HANDLE_ENFORCE_IRQCTX = 268435456,
15094 	IRQD_AFFINITY_ON_ACTIVATE = 536870912,
15095 	IRQD_IRQ_ENABLED_ON_SUSPEND = 1073741824,
15096 };
15097 
15098 struct irqchip_fwid {
15099 	struct fwnode_handle fwnode;
15100 	unsigned int type;
15101 	char *name;
15102 	phys_addr_t *pa;
15103 };
15104 
15105 struct vm_struct {
15106 	struct vm_struct *next;
15107 	void *addr;
15108 	long unsigned int size;
15109 	long unsigned int flags;
15110 	struct page **pages;
15111 	unsigned int page_order;
15112 	unsigned int nr_pages;
15113 	phys_addr_t phys_addr;
15114 	const void *caller;
15115 };
15116 
15117 struct itimerspec64 {
15118 	struct timespec64 it_interval;
15119 	struct timespec64 it_value;
15120 };
15121 
15122 enum {
15123 	WORK_STRUCT_PENDING_BIT = 0LL,
15124 	WORK_STRUCT_INACTIVE_BIT = 1LL,
15125 	WORK_STRUCT_PWQ_BIT = 2LL,
15126 	WORK_STRUCT_LINKED_BIT = 3LL,
15127 	WORK_STRUCT_COLOR_SHIFT = 4LL,
15128 	WORK_STRUCT_COLOR_BITS = 4LL,
15129 	WORK_STRUCT_PENDING = 1LL,
15130 	WORK_STRUCT_INACTIVE = 2LL,
15131 	WORK_STRUCT_PWQ = 4LL,
15132 	WORK_STRUCT_LINKED = 8LL,
15133 	WORK_STRUCT_STATIC = 0LL,
15134 	WORK_NR_COLORS = 16LL,
15135 	WORK_CPU_UNBOUND = 2048LL,
15136 	WORK_STRUCT_FLAG_BITS = 8LL,
15137 	WORK_OFFQ_FLAG_BASE = 4LL,
15138 	__WORK_OFFQ_CANCELING = 4LL,
15139 	WORK_OFFQ_CANCELING = 16LL,
15140 	WORK_OFFQ_FLAG_BITS = 1LL,
15141 	WORK_OFFQ_POOL_SHIFT = 5LL,
15142 	WORK_OFFQ_LEFT = 59LL,
15143 	WORK_OFFQ_POOL_BITS = 31LL,
15144 	WORK_OFFQ_POOL_NONE = 2147483647LL,
15145 	WORK_STRUCT_FLAG_MASK = 255LL,
15146 	WORK_STRUCT_WQ_DATA_MASK = -256LL,
15147 	WORK_STRUCT_NO_POOL = 68719476704LL,
15148 	WORK_BUSY_PENDING = 1LL,
15149 	WORK_BUSY_RUNNING = 2LL,
15150 	WORKER_DESC_LEN = 24LL,
15151 };
15152 
15153 enum hrtimer_mode {
15154 	HRTIMER_MODE_ABS = 0,
15155 	HRTIMER_MODE_REL = 1,
15156 	HRTIMER_MODE_PINNED = 2,
15157 	HRTIMER_MODE_SOFT = 4,
15158 	HRTIMER_MODE_HARD = 8,
15159 	HRTIMER_MODE_ABS_PINNED = 2,
15160 	HRTIMER_MODE_REL_PINNED = 3,
15161 	HRTIMER_MODE_ABS_SOFT = 4,
15162 	HRTIMER_MODE_REL_SOFT = 5,
15163 	HRTIMER_MODE_ABS_PINNED_SOFT = 6,
15164 	HRTIMER_MODE_REL_PINNED_SOFT = 7,
15165 	HRTIMER_MODE_ABS_HARD = 8,
15166 	HRTIMER_MODE_REL_HARD = 9,
15167 	HRTIMER_MODE_ABS_PINNED_HARD = 10,
15168 	HRTIMER_MODE_REL_PINNED_HARD = 11,
15169 };
15170 
15171 struct trace_print_flags {
15172 	long unsigned int mask;
15173 	const char *name;
15174 };
15175 
15176 struct softirq_action {
15177 	void (*action)(struct softirq_action *);
15178 };
15179 
15180 enum tick_dep_bits {
15181 	TICK_DEP_BIT_POSIX_TIMER = 0,
15182 	TICK_DEP_BIT_PERF_EVENTS = 1,
15183 	TICK_DEP_BIT_SCHED = 2,
15184 	TICK_DEP_BIT_CLOCK_UNSTABLE = 3,
15185 	TICK_DEP_BIT_RCU = 4,
15186 	TICK_DEP_BIT_RCU_EXP = 5,
15187 };
15188 
15189 struct trace_event_raw_timer_class {
15190 	struct trace_entry ent;
15191 	void *timer;
15192 	char __data[0];
15193 };
15194 
15195 struct trace_event_raw_timer_start {
15196 	struct trace_entry ent;
15197 	void *timer;
15198 	void *function;
15199 	long unsigned int expires;
15200 	long unsigned int now;
15201 	unsigned int flags;
15202 	char __data[0];
15203 };
15204 
15205 struct trace_event_raw_timer_expire_entry {
15206 	struct trace_entry ent;
15207 	void *timer;
15208 	long unsigned int now;
15209 	void *function;
15210 	long unsigned int baseclk;
15211 	char __data[0];
15212 };
15213 
15214 struct trace_event_raw_hrtimer_init {
15215 	struct trace_entry ent;
15216 	void *hrtimer;
15217 	clockid_t clockid;
15218 	enum hrtimer_mode mode;
15219 	char __data[0];
15220 };
15221 
15222 struct trace_event_raw_hrtimer_start {
15223 	struct trace_entry ent;
15224 	void *hrtimer;
15225 	void *function;
15226 	s64 expires;
15227 	s64 softexpires;
15228 	enum hrtimer_mode mode;
15229 	char __data[0];
15230 };
15231 
15232 struct trace_event_raw_hrtimer_expire_entry {
15233 	struct trace_entry ent;
15234 	void *hrtimer;
15235 	s64 now;
15236 	void *function;
15237 	char __data[0];
15238 };
15239 
15240 struct trace_event_raw_hrtimer_class {
15241 	struct trace_entry ent;
15242 	void *hrtimer;
15243 	char __data[0];
15244 };
15245 
15246 struct trace_event_raw_itimer_state {
15247 	struct trace_entry ent;
15248 	int which;
15249 	long long unsigned int expires;
15250 	long int value_sec;
15251 	long int value_nsec;
15252 	long int interval_sec;
15253 	long int interval_nsec;
15254 	char __data[0];
15255 };
15256 
15257 struct trace_event_raw_itimer_expire {
15258 	struct trace_entry ent;
15259 	int which;
15260 	pid_t pid;
15261 	long long unsigned int now;
15262 	char __data[0];
15263 };
15264 
15265 struct trace_event_raw_tick_stop {
15266 	struct trace_entry ent;
15267 	int success;
15268 	int dependency;
15269 	char __data[0];
15270 };
15271 
15272 struct trace_event_data_offsets_timer_class {};
15273 
15274 struct trace_event_data_offsets_timer_start {};
15275 
15276 struct trace_event_data_offsets_timer_expire_entry {};
15277 
15278 struct trace_event_data_offsets_hrtimer_init {};
15279 
15280 struct trace_event_data_offsets_hrtimer_start {};
15281 
15282 struct trace_event_data_offsets_hrtimer_expire_entry {};
15283 
15284 struct trace_event_data_offsets_hrtimer_class {};
15285 
15286 struct trace_event_data_offsets_itimer_state {};
15287 
15288 struct trace_event_data_offsets_itimer_expire {};
15289 
15290 struct trace_event_data_offsets_tick_stop {};
15291 
15292 typedef void (*btf_trace_timer_init)(void *, struct timer_list *);
15293 
15294 typedef void (*btf_trace_timer_start)(void *, struct timer_list *, long unsigned int, unsigned int);
15295 
15296 typedef void (*btf_trace_timer_expire_entry)(void *, struct timer_list *, long unsigned int);
15297 
15298 typedef void (*btf_trace_timer_expire_exit)(void *, struct timer_list *);
15299 
15300 typedef void (*btf_trace_timer_cancel)(void *, struct timer_list *);
15301 
15302 typedef void (*btf_trace_hrtimer_init)(void *, struct hrtimer *, clockid_t, enum hrtimer_mode);
15303 
15304 typedef void (*btf_trace_hrtimer_start)(void *, struct hrtimer *, enum hrtimer_mode);
15305 
15306 typedef void (*btf_trace_hrtimer_expire_entry)(void *, struct hrtimer *, ktime_t *);
15307 
15308 typedef void (*btf_trace_hrtimer_expire_exit)(void *, struct hrtimer *);
15309 
15310 typedef void (*btf_trace_hrtimer_cancel)(void *, struct hrtimer *);
15311 
15312 typedef void (*btf_trace_itimer_state)(void *, int, const struct itimerspec64 * const, long long unsigned int);
15313 
15314 typedef void (*btf_trace_itimer_expire)(void *, int, struct pid *, long long unsigned int);
15315 
15316 typedef void (*btf_trace_tick_stop)(void *, int, int);
15317 
15318 struct timer_base {
15319 	raw_spinlock_t lock;
15320 	struct timer_list *running_timer;
15321 	long unsigned int clk;
15322 	long unsigned int next_expiry;
15323 	unsigned int cpu;
15324 	bool next_expiry_recalc;
15325 	bool is_idle;
15326 	bool timers_pending;
15327 	long unsigned int pending_map[8];
15328 	struct hlist_head vectors[512];
15329 	long: 64;
15330 	long: 64;
15331 	long: 64;
15332 };
15333 
15334 struct process_timer {
15335 	struct timer_list timer;
15336 	struct task_struct *task;
15337 };
15338 
15339 enum pageflags {
15340 	PG_locked = 0,
15341 	PG_referenced = 1,
15342 	PG_uptodate = 2,
15343 	PG_dirty = 3,
15344 	PG_lru = 4,
15345 	PG_active = 5,
15346 	PG_workingset = 6,
15347 	PG_waiters = 7,
15348 	PG_error = 8,
15349 	PG_slab = 9,
15350 	PG_owner_priv_1 = 10,
15351 	PG_arch_1 = 11,
15352 	PG_reserved = 12,
15353 	PG_private = 13,
15354 	PG_private_2 = 14,
15355 	PG_writeback = 15,
15356 	PG_head = 16,
15357 	PG_mappedtodisk = 17,
15358 	PG_reclaim = 18,
15359 	PG_swapbacked = 19,
15360 	PG_unevictable = 20,
15361 	PG_mlocked = 21,
15362 	PG_arch_2 = 22,
15363 	__NR_PAGEFLAGS = 23,
15364 	PG_readahead = 18,
15365 	PG_anon_exclusive = 17,
15366 	PG_checked = 10,
15367 	PG_swapcache = 10,
15368 	PG_fscache = 14,
15369 	PG_pinned = 10,
15370 	PG_savepinned = 3,
15371 	PG_foreign = 10,
15372 	PG_xen_remapped = 10,
15373 	PG_slob_free = 13,
15374 	PG_double_map = 6,
15375 	PG_isolated = 18,
15376 	PG_reported = 2,
15377 	PG_vmemmap_self_hosted = 10,
15378 };
15379 
15380 struct hrtimer_sleeper {
15381 	struct hrtimer timer;
15382 	struct task_struct *task;
15383 };
15384 
15385 struct rt_mutex_base;
15386 
15387 struct ww_acquire_ctx;
15388 
15389 struct rt_mutex_waiter {
15390 	struct rb_node tree_entry;
15391 	struct rb_node pi_tree_entry;
15392 	struct task_struct *task;
15393 	struct rt_mutex_base *lock;
15394 	unsigned int wake_state;
15395 	int prio;
15396 	u64 deadline;
15397 	struct ww_acquire_ctx *ww_ctx;
15398 };
15399 
15400 struct robust_list {
15401 	struct robust_list *next;
15402 };
15403 
15404 struct robust_list_head {
15405 	struct robust_list list;
15406 	long int futex_offset;
15407 	struct robust_list *list_op_pending;
15408 };
15409 
15410 struct rt_mutex_base {
15411 	raw_spinlock_t wait_lock;
15412 	struct rb_root_cached waiters;
15413 	struct task_struct *owner;
15414 };
15415 
15416 union futex_key {
15417 	struct {
15418 		u64 i_seq;
15419 		long unsigned int pgoff;
15420 		unsigned int offset;
15421 	} shared;
15422 	struct {
15423 		union {
15424 			struct mm_struct *mm;
15425 			u64 __tmp;
15426 		};
15427 		long unsigned int address;
15428 		unsigned int offset;
15429 	} private;
15430 	struct {
15431 		u64 ptr;
15432 		long unsigned int word;
15433 		unsigned int offset;
15434 	} both;
15435 };
15436 
15437 struct futex_pi_state {
15438 	struct list_head list;
15439 	struct rt_mutex_base pi_mutex;
15440 	struct task_struct *owner;
15441 	refcount_t refcount;
15442 	union futex_key key;
15443 };
15444 
15445 enum {
15446 	FUTEX_STATE_OK = 0,
15447 	FUTEX_STATE_EXITING = 1,
15448 	FUTEX_STATE_DEAD = 2,
15449 };
15450 
15451 struct futex_hash_bucket {
15452 	atomic_t waiters;
15453 	spinlock_t lock;
15454 	struct plist_head chain;
15455 	long: 64;
15456 	long: 64;
15457 	long: 64;
15458 	long: 64;
15459 	long: 64;
15460 	long: 64;
15461 	long: 64;
15462 	long: 64;
15463 	long: 64;
15464 	long: 64;
15465 	long: 64;
15466 	long: 64;
15467 	long: 64;
15468 };
15469 
15470 struct futex_q {
15471 	struct plist_node list;
15472 	struct task_struct *task;
15473 	spinlock_t *lock_ptr;
15474 	union futex_key key;
15475 	struct futex_pi_state *pi_state;
15476 	struct rt_mutex_waiter *rt_waiter;
15477 	union futex_key *requeue_pi_key;
15478 	u32 bitset;
15479 	atomic_t requeue_state;
15480 };
15481 
15482 enum futex_access {
15483 	FUTEX_READ = 0,
15484 	FUTEX_WRITE = 1,
15485 };
15486 
15487 typedef unsigned int slab_flags_t;
15488 
15489 typedef void (*rcu_callback_t)(struct callback_head *);
15490 
15491 struct __kernel_old_timeval {
15492 	__kernel_long_t tv_sec;
15493 	__kernel_long_t tv_usec;
15494 };
15495 
15496 struct rusage {
15497 	struct __kernel_old_timeval ru_utime;
15498 	struct __kernel_old_timeval ru_stime;
15499 	__kernel_long_t ru_maxrss;
15500 	__kernel_long_t ru_ixrss;
15501 	__kernel_long_t ru_idrss;
15502 	__kernel_long_t ru_isrss;
15503 	__kernel_long_t ru_minflt;
15504 	__kernel_long_t ru_majflt;
15505 	__kernel_long_t ru_nswap;
15506 	__kernel_long_t ru_inblock;
15507 	__kernel_long_t ru_oublock;
15508 	__kernel_long_t ru_msgsnd;
15509 	__kernel_long_t ru_msgrcv;
15510 	__kernel_long_t ru_nsignals;
15511 	__kernel_long_t ru_nvcsw;
15512 	__kernel_long_t ru_nivcsw;
15513 };
15514 
15515 struct nsset {
15516 	unsigned int flags;
15517 	struct nsproxy *nsproxy;
15518 	struct fs_struct *fs;
15519 	const struct cred *cred;
15520 };
15521 
15522 enum {
15523 	TRACE_FTRACE_BIT = 0,
15524 	TRACE_FTRACE_NMI_BIT = 1,
15525 	TRACE_FTRACE_IRQ_BIT = 2,
15526 	TRACE_FTRACE_SIRQ_BIT = 3,
15527 	TRACE_FTRACE_TRANSITION_BIT = 4,
15528 	TRACE_INTERNAL_BIT = 5,
15529 	TRACE_INTERNAL_NMI_BIT = 6,
15530 	TRACE_INTERNAL_IRQ_BIT = 7,
15531 	TRACE_INTERNAL_SIRQ_BIT = 8,
15532 	TRACE_INTERNAL_TRANSITION_BIT = 9,
15533 	TRACE_BRANCH_BIT = 10,
15534 	TRACE_IRQ_BIT = 11,
15535 	TRACE_GRAPH_BIT = 12,
15536 	TRACE_GRAPH_DEPTH_START_BIT = 13,
15537 	TRACE_GRAPH_DEPTH_END_BIT = 14,
15538 	TRACE_GRAPH_NOTRACE_BIT = 15,
15539 	TRACE_RECORD_RECURSION_BIT = 16,
15540 };
15541 
15542 struct ftrace_hash {
15543 	long unsigned int size_bits;
15544 	struct hlist_head *buckets;
15545 	long unsigned int count;
15546 	long unsigned int flags;
15547 	struct callback_head rcu;
15548 };
15549 
15550 struct ftrace_func_entry {
15551 	struct hlist_node hlist;
15552 	long unsigned int ip;
15553 	long unsigned int direct;
15554 };
15555 
15556 struct ftrace_graph_ent {
15557 	long unsigned int func;
15558 	int depth;
15559 } __attribute__((packed));
15560 
15561 struct ftrace_graph_ret {
15562 	long unsigned int func;
15563 	int depth;
15564 	unsigned int overrun;
15565 	long long unsigned int calltime;
15566 	long long unsigned int rettime;
15567 };
15568 
15569 typedef void (*trace_func_graph_ret_t)(struct ftrace_graph_ret *);
15570 
15571 typedef int (*trace_func_graph_ent_t)(struct ftrace_graph_ent *);
15572 
15573 struct fgraph_ops {
15574 	trace_func_graph_ent_t entryfunc;
15575 	trace_func_graph_ret_t retfunc;
15576 };
15577 
15578 struct prog_entry;
15579 
15580 struct event_filter {
15581 	struct prog_entry *prog;
15582 	char *filter_string;
15583 };
15584 
15585 struct trace_array_cpu;
15586 
15587 struct array_buffer {
15588 	struct trace_array *tr;
15589 	struct trace_buffer *buffer;
15590 	struct trace_array_cpu *data;
15591 	u64 time_start;
15592 	int cpu;
15593 };
15594 
15595 struct trace_pid_list;
15596 
15597 struct trace_options;
15598 
15599 struct cond_snapshot;
15600 
15601 struct trace_func_repeats;
15602 
15603 struct trace_array {
15604 	struct list_head list;
15605 	char *name;
15606 	struct array_buffer array_buffer;
15607 	struct array_buffer max_buffer;
15608 	bool allocated_snapshot;
15609 	long unsigned int max_latency;
15610 	struct dentry *d_max_latency;
15611 	struct work_struct fsnotify_work;
15612 	struct irq_work fsnotify_irqwork;
15613 	struct trace_pid_list *filtered_pids;
15614 	struct trace_pid_list *filtered_no_pids;
15615 	arch_spinlock_t max_lock;
15616 	int buffer_disabled;
15617 	int sys_refcount_enter;
15618 	int sys_refcount_exit;
15619 	struct trace_event_file *enter_syscall_files[451];
15620 	struct trace_event_file *exit_syscall_files[451];
15621 	int stop_count;
15622 	int clock_id;
15623 	int nr_topts;
15624 	bool clear_trace;
15625 	int buffer_percent;
15626 	unsigned int n_err_log_entries;
15627 	struct tracer *current_trace;
15628 	unsigned int trace_flags;
15629 	unsigned char trace_flags_index[32];
15630 	unsigned int flags;
15631 	raw_spinlock_t start_lock;
15632 	struct list_head err_log;
15633 	struct dentry *dir;
15634 	struct dentry *options;
15635 	struct dentry *percpu_dir;
15636 	struct dentry *event_dir;
15637 	struct trace_options *topts;
15638 	struct list_head systems;
15639 	struct list_head events;
15640 	struct trace_event_file *trace_marker_file;
15641 	cpumask_var_t tracing_cpumask;
15642 	int ref;
15643 	int trace_ref;
15644 	struct ftrace_ops *ops;
15645 	struct trace_pid_list *function_pids;
15646 	struct trace_pid_list *function_no_pids;
15647 	struct list_head func_probes;
15648 	struct list_head mod_trace;
15649 	struct list_head mod_notrace;
15650 	int function_enabled;
15651 	int no_filter_buffering_ref;
15652 	struct list_head hist_vars;
15653 	struct cond_snapshot *cond_snapshot;
15654 	struct trace_func_repeats *last_func_repeats;
15655 };
15656 
15657 struct tracer_flags;
15658 
15659 struct tracer {
15660 	const char *name;
15661 	int (*init)(struct trace_array *);
15662 	void (*reset)(struct trace_array *);
15663 	void (*start)(struct trace_array *);
15664 	void (*stop)(struct trace_array *);
15665 	int (*update_thresh)(struct trace_array *);
15666 	void (*open)(struct trace_iterator *);
15667 	void (*pipe_open)(struct trace_iterator *);
15668 	void (*close)(struct trace_iterator *);
15669 	void (*pipe_close)(struct trace_iterator *);
15670 	ssize_t (*read)(struct trace_iterator *, struct file *, char *, size_t, loff_t *);
15671 	ssize_t (*splice_read)(struct trace_iterator *, struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
15672 	void (*print_header)(struct seq_file *);
15673 	enum print_line_t (*print_line)(struct trace_iterator *);
15674 	int (*set_flag)(struct trace_array *, u32, u32, int);
15675 	int (*flag_changed)(struct trace_array *, u32, int);
15676 	struct tracer *next;
15677 	struct tracer_flags *flags;
15678 	int enabled;
15679 	bool print_max;
15680 	bool allow_instances;
15681 	bool use_max_tr;
15682 	bool noboot;
15683 };
15684 
15685 enum trace_flag_type {
15686 	TRACE_FLAG_IRQS_OFF = 1,
15687 	TRACE_FLAG_IRQS_NOSUPPORT = 2,
15688 	TRACE_FLAG_NEED_RESCHED = 4,
15689 	TRACE_FLAG_HARDIRQ = 8,
15690 	TRACE_FLAG_SOFTIRQ = 16,
15691 	TRACE_FLAG_PREEMPT_RESCHED = 32,
15692 	TRACE_FLAG_NMI = 64,
15693 	TRACE_FLAG_BH_OFF = 128,
15694 };
15695 
15696 struct event_subsystem;
15697 
15698 struct trace_subsystem_dir {
15699 	struct list_head list;
15700 	struct event_subsystem *subsystem;
15701 	struct trace_array *tr;
15702 	struct dentry *entry;
15703 	int ref_count;
15704 	int nr_events;
15705 };
15706 
15707 union lower_chunk {
15708 	union lower_chunk *next;
15709 	long unsigned int data[256];
15710 };
15711 
15712 union upper_chunk {
15713 	union upper_chunk *next;
15714 	union lower_chunk *data[256];
15715 };
15716 
15717 struct trace_pid_list {
15718 	raw_spinlock_t lock;
15719 	struct irq_work refill_irqwork;
15720 	union upper_chunk *upper[256];
15721 	union upper_chunk *upper_list;
15722 	union lower_chunk *lower_list;
15723 	int free_upper_chunks;
15724 	int free_lower_chunks;
15725 };
15726 
15727 enum trace_type {
15728 	__TRACE_FIRST_TYPE = 0,
15729 	TRACE_FN = 1,
15730 	TRACE_CTX = 2,
15731 	TRACE_WAKE = 3,
15732 	TRACE_STACK = 4,
15733 	TRACE_PRINT = 5,
15734 	TRACE_BPRINT = 6,
15735 	TRACE_MMIO_RW = 7,
15736 	TRACE_MMIO_MAP = 8,
15737 	TRACE_BRANCH = 9,
15738 	TRACE_GRAPH_RET = 10,
15739 	TRACE_GRAPH_ENT = 11,
15740 	TRACE_USER_STACK = 12,
15741 	TRACE_BLK = 13,
15742 	TRACE_BPUTS = 14,
15743 	TRACE_HWLAT = 15,
15744 	TRACE_OSNOISE = 16,
15745 	TRACE_TIMERLAT = 17,
15746 	TRACE_RAW_DATA = 18,
15747 	TRACE_FUNC_REPEATS = 19,
15748 	__TRACE_LAST_TYPE = 20,
15749 };
15750 
15751 struct ftrace_graph_ent_entry {
15752 	struct trace_entry ent;
15753 	struct ftrace_graph_ent graph_ent;
15754 };
15755 
15756 struct ftrace_graph_ret_entry {
15757 	struct trace_entry ent;
15758 	struct ftrace_graph_ret ret;
15759 };
15760 
15761 struct trace_array_cpu {
15762 	atomic_t disabled;
15763 	void *buffer_page;
15764 	long unsigned int entries;
15765 	long unsigned int saved_latency;
15766 	long unsigned int critical_start;
15767 	long unsigned int critical_end;
15768 	long unsigned int critical_sequence;
15769 	long unsigned int nice;
15770 	long unsigned int policy;
15771 	long unsigned int rt_priority;
15772 	long unsigned int skipped_entries;
15773 	u64 preempt_timestamp;
15774 	pid_t pid;
15775 	kuid_t uid;
15776 	char comm[16];
15777 	int ftrace_ignore_pid;
15778 	bool ignore_pid;
15779 };
15780 
15781 struct trace_option_dentry;
15782 
15783 struct trace_options {
15784 	struct tracer *tracer;
15785 	struct trace_option_dentry *topts;
15786 };
15787 
15788 struct tracer_opt;
15789 
15790 struct trace_option_dentry {
15791 	struct tracer_opt *opt;
15792 	struct tracer_flags *flags;
15793 	struct trace_array *tr;
15794 	struct dentry *entry;
15795 };
15796 
15797 typedef bool (*cond_update_fn_t)(struct trace_array *, void *);
15798 
15799 struct cond_snapshot {
15800 	void *cond_data;
15801 	cond_update_fn_t update;
15802 };
15803 
15804 struct trace_func_repeats {
15805 	long unsigned int ip;
15806 	long unsigned int parent_ip;
15807 	long unsigned int count;
15808 	u64 ts_last_call;
15809 };
15810 
15811 struct tracer_opt {
15812 	const char *name;
15813 	u32 bit;
15814 };
15815 
15816 struct tracer_flags {
15817 	u32 val;
15818 	struct tracer_opt *opts;
15819 	struct tracer *trace;
15820 };
15821 
15822 enum {
15823 	FTRACE_HASH_FL_MOD = 1,
15824 };
15825 
15826 enum trace_iterator_bits {
15827 	TRACE_ITER_PRINT_PARENT_BIT = 0,
15828 	TRACE_ITER_SYM_OFFSET_BIT = 1,
15829 	TRACE_ITER_SYM_ADDR_BIT = 2,
15830 	TRACE_ITER_VERBOSE_BIT = 3,
15831 	TRACE_ITER_RAW_BIT = 4,
15832 	TRACE_ITER_HEX_BIT = 5,
15833 	TRACE_ITER_BIN_BIT = 6,
15834 	TRACE_ITER_BLOCK_BIT = 7,
15835 	TRACE_ITER_PRINTK_BIT = 8,
15836 	TRACE_ITER_ANNOTATE_BIT = 9,
15837 	TRACE_ITER_USERSTACKTRACE_BIT = 10,
15838 	TRACE_ITER_SYM_USEROBJ_BIT = 11,
15839 	TRACE_ITER_PRINTK_MSGONLY_BIT = 12,
15840 	TRACE_ITER_CONTEXT_INFO_BIT = 13,
15841 	TRACE_ITER_LATENCY_FMT_BIT = 14,
15842 	TRACE_ITER_RECORD_CMD_BIT = 15,
15843 	TRACE_ITER_RECORD_TGID_BIT = 16,
15844 	TRACE_ITER_OVERWRITE_BIT = 17,
15845 	TRACE_ITER_STOP_ON_FREE_BIT = 18,
15846 	TRACE_ITER_IRQ_INFO_BIT = 19,
15847 	TRACE_ITER_MARKERS_BIT = 20,
15848 	TRACE_ITER_EVENT_FORK_BIT = 21,
15849 	TRACE_ITER_PAUSE_ON_TRACE_BIT = 22,
15850 	TRACE_ITER_HASH_PTR_BIT = 23,
15851 	TRACE_ITER_FUNCTION_BIT = 24,
15852 	TRACE_ITER_FUNC_FORK_BIT = 25,
15853 	TRACE_ITER_DISPLAY_GRAPH_BIT = 26,
15854 	TRACE_ITER_STACKTRACE_BIT = 27,
15855 	TRACE_ITER_LAST_BIT = 28,
15856 };
15857 
15858 enum trace_iterator_flags {
15859 	TRACE_ITER_PRINT_PARENT = 1,
15860 	TRACE_ITER_SYM_OFFSET = 2,
15861 	TRACE_ITER_SYM_ADDR = 4,
15862 	TRACE_ITER_VERBOSE = 8,
15863 	TRACE_ITER_RAW = 16,
15864 	TRACE_ITER_HEX = 32,
15865 	TRACE_ITER_BIN = 64,
15866 	TRACE_ITER_BLOCK = 128,
15867 	TRACE_ITER_PRINTK = 256,
15868 	TRACE_ITER_ANNOTATE = 512,
15869 	TRACE_ITER_USERSTACKTRACE = 1024,
15870 	TRACE_ITER_SYM_USEROBJ = 2048,
15871 	TRACE_ITER_PRINTK_MSGONLY = 4096,
15872 	TRACE_ITER_CONTEXT_INFO = 8192,
15873 	TRACE_ITER_LATENCY_FMT = 16384,
15874 	TRACE_ITER_RECORD_CMD = 32768,
15875 	TRACE_ITER_RECORD_TGID = 65536,
15876 	TRACE_ITER_OVERWRITE = 131072,
15877 	TRACE_ITER_STOP_ON_FREE = 262144,
15878 	TRACE_ITER_IRQ_INFO = 524288,
15879 	TRACE_ITER_MARKERS = 1048576,
15880 	TRACE_ITER_EVENT_FORK = 2097152,
15881 	TRACE_ITER_PAUSE_ON_TRACE = 4194304,
15882 	TRACE_ITER_HASH_PTR = 8388608,
15883 	TRACE_ITER_FUNCTION = 16777216,
15884 	TRACE_ITER_FUNC_FORK = 33554432,
15885 	TRACE_ITER_DISPLAY_GRAPH = 67108864,
15886 	TRACE_ITER_STACKTRACE = 134217728,
15887 };
15888 
15889 struct event_subsystem {
15890 	struct list_head list;
15891 	const char *name;
15892 	struct event_filter *filter;
15893 	int ref_count;
15894 };
15895 
15896 struct fgraph_cpu_data {
15897 	pid_t last_pid;
15898 	int depth;
15899 	int depth_irq;
15900 	int ignore;
15901 	long unsigned int enter_funcs[50];
15902 };
15903 
15904 struct fgraph_data {
15905 	struct fgraph_cpu_data *cpu_data;
15906 	struct ftrace_graph_ent_entry ent;
15907 	struct ftrace_graph_ret_entry ret;
15908 	int failed;
15909 	int cpu;
15910 	long: 0;
15911 } __attribute__((packed));
15912 
15913 enum {
15914 	FLAGS_FILL_FULL = 268435456,
15915 	FLAGS_FILL_START = 536870912,
15916 	FLAGS_FILL_END = 805306368,
15917 };
15918 
15919 struct trace_event_raw_rpm_internal {
15920 	struct trace_entry ent;
15921 	u32 __data_loc_name;
15922 	int flags;
15923 	int usage_count;
15924 	int disable_depth;
15925 	int runtime_auto;
15926 	int request_pending;
15927 	int irq_safe;
15928 	int child_count;
15929 	char __data[0];
15930 };
15931 
15932 struct trace_event_raw_rpm_return_int {
15933 	struct trace_entry ent;
15934 	u32 __data_loc_name;
15935 	long unsigned int ip;
15936 	int ret;
15937 	char __data[0];
15938 };
15939 
15940 struct trace_event_data_offsets_rpm_internal {
15941 	u32 name;
15942 };
15943 
15944 struct trace_event_data_offsets_rpm_return_int {
15945 	u32 name;
15946 };
15947 
15948 typedef void (*btf_trace_rpm_suspend)(void *, struct device *, int);
15949 
15950 typedef void (*btf_trace_rpm_resume)(void *, struct device *, int);
15951 
15952 typedef void (*btf_trace_rpm_idle)(void *, struct device *, int);
15953 
15954 typedef void (*btf_trace_rpm_usage)(void *, struct device *, int);
15955 
15956 typedef void (*btf_trace_rpm_return_int)(void *, struct device *, long unsigned int, int);
15957 
15958 enum {
15959 	CSD_FLAG_LOCK = 1,
15960 	IRQ_WORK_PENDING = 1,
15961 	IRQ_WORK_BUSY = 2,
15962 	IRQ_WORK_LAZY = 4,
15963 	IRQ_WORK_HARD_IRQ = 8,
15964 	IRQ_WORK_CLAIMED = 3,
15965 	CSD_TYPE_ASYNC = 0,
15966 	CSD_TYPE_SYNC = 16,
15967 	CSD_TYPE_IRQ_WORK = 32,
15968 	CSD_TYPE_TTWU = 48,
15969 	CSD_FLAG_TYPE_MASK = 240,
15970 };
15971 
15972 struct fdtable {
15973 	unsigned int max_fds;
15974 	struct file **fd;
15975 	long unsigned int *close_on_exec;
15976 	long unsigned int *open_fds;
15977 	long unsigned int *full_fds_bits;
15978 	struct callback_head rcu;
15979 };
15980 
15981 struct files_struct {
15982 	atomic_t count;
15983 	bool resize_in_progress;
15984 	wait_queue_head_t resize_wait;
15985 	struct fdtable *fdt;
15986 	struct fdtable fdtab;
15987 	long: 64;
15988 	long: 64;
15989 	long: 64;
15990 	long: 64;
15991 	spinlock_t file_lock;
15992 	unsigned int next_fd;
15993 	long unsigned int close_on_exec_init[1];
15994 	long unsigned int open_fds_init[1];
15995 	long unsigned int full_fds_bits_init[1];
15996 	struct file *fd_array[64];
15997 	long: 64;
15998 	long: 64;
15999 	long: 64;
16000 	long: 64;
16001 	long: 64;
16002 	long: 64;
16003 	long: 64;
16004 	long: 64;
16005 	long: 64;
16006 	long: 64;
16007 	long: 64;
16008 	long: 64;
16009 };
16010 
16011 union bpf_iter_link_info {
16012 	struct {
16013 		__u32 map_fd;
16014 	} map;
16015 };
16016 
16017 enum bpf_func_id {
16018 	BPF_FUNC_unspec = 0,
16019 	BPF_FUNC_map_lookup_elem = 1,
16020 	BPF_FUNC_map_update_elem = 2,
16021 	BPF_FUNC_map_delete_elem = 3,
16022 	BPF_FUNC_probe_read = 4,
16023 	BPF_FUNC_ktime_get_ns = 5,
16024 	BPF_FUNC_trace_printk = 6,
16025 	BPF_FUNC_get_prandom_u32 = 7,
16026 	BPF_FUNC_get_smp_processor_id = 8,
16027 	BPF_FUNC_skb_store_bytes = 9,
16028 	BPF_FUNC_l3_csum_replace = 10,
16029 	BPF_FUNC_l4_csum_replace = 11,
16030 	BPF_FUNC_tail_call = 12,
16031 	BPF_FUNC_clone_redirect = 13,
16032 	BPF_FUNC_get_current_pid_tgid = 14,
16033 	BPF_FUNC_get_current_uid_gid = 15,
16034 	BPF_FUNC_get_current_comm = 16,
16035 	BPF_FUNC_get_cgroup_classid = 17,
16036 	BPF_FUNC_skb_vlan_push = 18,
16037 	BPF_FUNC_skb_vlan_pop = 19,
16038 	BPF_FUNC_skb_get_tunnel_key = 20,
16039 	BPF_FUNC_skb_set_tunnel_key = 21,
16040 	BPF_FUNC_perf_event_read = 22,
16041 	BPF_FUNC_redirect = 23,
16042 	BPF_FUNC_get_route_realm = 24,
16043 	BPF_FUNC_perf_event_output = 25,
16044 	BPF_FUNC_skb_load_bytes = 26,
16045 	BPF_FUNC_get_stackid = 27,
16046 	BPF_FUNC_csum_diff = 28,
16047 	BPF_FUNC_skb_get_tunnel_opt = 29,
16048 	BPF_FUNC_skb_set_tunnel_opt = 30,
16049 	BPF_FUNC_skb_change_proto = 31,
16050 	BPF_FUNC_skb_change_type = 32,
16051 	BPF_FUNC_skb_under_cgroup = 33,
16052 	BPF_FUNC_get_hash_recalc = 34,
16053 	BPF_FUNC_get_current_task = 35,
16054 	BPF_FUNC_probe_write_user = 36,
16055 	BPF_FUNC_current_task_under_cgroup = 37,
16056 	BPF_FUNC_skb_change_tail = 38,
16057 	BPF_FUNC_skb_pull_data = 39,
16058 	BPF_FUNC_csum_update = 40,
16059 	BPF_FUNC_set_hash_invalid = 41,
16060 	BPF_FUNC_get_numa_node_id = 42,
16061 	BPF_FUNC_skb_change_head = 43,
16062 	BPF_FUNC_xdp_adjust_head = 44,
16063 	BPF_FUNC_probe_read_str = 45,
16064 	BPF_FUNC_get_socket_cookie = 46,
16065 	BPF_FUNC_get_socket_uid = 47,
16066 	BPF_FUNC_set_hash = 48,
16067 	BPF_FUNC_setsockopt = 49,
16068 	BPF_FUNC_skb_adjust_room = 50,
16069 	BPF_FUNC_redirect_map = 51,
16070 	BPF_FUNC_sk_redirect_map = 52,
16071 	BPF_FUNC_sock_map_update = 53,
16072 	BPF_FUNC_xdp_adjust_meta = 54,
16073 	BPF_FUNC_perf_event_read_value = 55,
16074 	BPF_FUNC_perf_prog_read_value = 56,
16075 	BPF_FUNC_getsockopt = 57,
16076 	BPF_FUNC_override_return = 58,
16077 	BPF_FUNC_sock_ops_cb_flags_set = 59,
16078 	BPF_FUNC_msg_redirect_map = 60,
16079 	BPF_FUNC_msg_apply_bytes = 61,
16080 	BPF_FUNC_msg_cork_bytes = 62,
16081 	BPF_FUNC_msg_pull_data = 63,
16082 	BPF_FUNC_bind = 64,
16083 	BPF_FUNC_xdp_adjust_tail = 65,
16084 	BPF_FUNC_skb_get_xfrm_state = 66,
16085 	BPF_FUNC_get_stack = 67,
16086 	BPF_FUNC_skb_load_bytes_relative = 68,
16087 	BPF_FUNC_fib_lookup = 69,
16088 	BPF_FUNC_sock_hash_update = 70,
16089 	BPF_FUNC_msg_redirect_hash = 71,
16090 	BPF_FUNC_sk_redirect_hash = 72,
16091 	BPF_FUNC_lwt_push_encap = 73,
16092 	BPF_FUNC_lwt_seg6_store_bytes = 74,
16093 	BPF_FUNC_lwt_seg6_adjust_srh = 75,
16094 	BPF_FUNC_lwt_seg6_action = 76,
16095 	BPF_FUNC_rc_repeat = 77,
16096 	BPF_FUNC_rc_keydown = 78,
16097 	BPF_FUNC_skb_cgroup_id = 79,
16098 	BPF_FUNC_get_current_cgroup_id = 80,
16099 	BPF_FUNC_get_local_storage = 81,
16100 	BPF_FUNC_sk_select_reuseport = 82,
16101 	BPF_FUNC_skb_ancestor_cgroup_id = 83,
16102 	BPF_FUNC_sk_lookup_tcp = 84,
16103 	BPF_FUNC_sk_lookup_udp = 85,
16104 	BPF_FUNC_sk_release = 86,
16105 	BPF_FUNC_map_push_elem = 87,
16106 	BPF_FUNC_map_pop_elem = 88,
16107 	BPF_FUNC_map_peek_elem = 89,
16108 	BPF_FUNC_msg_push_data = 90,
16109 	BPF_FUNC_msg_pop_data = 91,
16110 	BPF_FUNC_rc_pointer_rel = 92,
16111 	BPF_FUNC_spin_lock = 93,
16112 	BPF_FUNC_spin_unlock = 94,
16113 	BPF_FUNC_sk_fullsock = 95,
16114 	BPF_FUNC_tcp_sock = 96,
16115 	BPF_FUNC_skb_ecn_set_ce = 97,
16116 	BPF_FUNC_get_listener_sock = 98,
16117 	BPF_FUNC_skc_lookup_tcp = 99,
16118 	BPF_FUNC_tcp_check_syncookie = 100,
16119 	BPF_FUNC_sysctl_get_name = 101,
16120 	BPF_FUNC_sysctl_get_current_value = 102,
16121 	BPF_FUNC_sysctl_get_new_value = 103,
16122 	BPF_FUNC_sysctl_set_new_value = 104,
16123 	BPF_FUNC_strtol = 105,
16124 	BPF_FUNC_strtoul = 106,
16125 	BPF_FUNC_sk_storage_get = 107,
16126 	BPF_FUNC_sk_storage_delete = 108,
16127 	BPF_FUNC_send_signal = 109,
16128 	BPF_FUNC_tcp_gen_syncookie = 110,
16129 	BPF_FUNC_skb_output = 111,
16130 	BPF_FUNC_probe_read_user = 112,
16131 	BPF_FUNC_probe_read_kernel = 113,
16132 	BPF_FUNC_probe_read_user_str = 114,
16133 	BPF_FUNC_probe_read_kernel_str = 115,
16134 	BPF_FUNC_tcp_send_ack = 116,
16135 	BPF_FUNC_send_signal_thread = 117,
16136 	BPF_FUNC_jiffies64 = 118,
16137 	BPF_FUNC_read_branch_records = 119,
16138 	BPF_FUNC_get_ns_current_pid_tgid = 120,
16139 	BPF_FUNC_xdp_output = 121,
16140 	BPF_FUNC_get_netns_cookie = 122,
16141 	BPF_FUNC_get_current_ancestor_cgroup_id = 123,
16142 	BPF_FUNC_sk_assign = 124,
16143 	BPF_FUNC_ktime_get_boot_ns = 125,
16144 	BPF_FUNC_seq_printf = 126,
16145 	BPF_FUNC_seq_write = 127,
16146 	BPF_FUNC_sk_cgroup_id = 128,
16147 	BPF_FUNC_sk_ancestor_cgroup_id = 129,
16148 	BPF_FUNC_ringbuf_output = 130,
16149 	BPF_FUNC_ringbuf_reserve = 131,
16150 	BPF_FUNC_ringbuf_submit = 132,
16151 	BPF_FUNC_ringbuf_discard = 133,
16152 	BPF_FUNC_ringbuf_query = 134,
16153 	BPF_FUNC_csum_level = 135,
16154 	BPF_FUNC_skc_to_tcp6_sock = 136,
16155 	BPF_FUNC_skc_to_tcp_sock = 137,
16156 	BPF_FUNC_skc_to_tcp_timewait_sock = 138,
16157 	BPF_FUNC_skc_to_tcp_request_sock = 139,
16158 	BPF_FUNC_skc_to_udp6_sock = 140,
16159 	BPF_FUNC_get_task_stack = 141,
16160 	BPF_FUNC_load_hdr_opt = 142,
16161 	BPF_FUNC_store_hdr_opt = 143,
16162 	BPF_FUNC_reserve_hdr_opt = 144,
16163 	BPF_FUNC_inode_storage_get = 145,
16164 	BPF_FUNC_inode_storage_delete = 146,
16165 	BPF_FUNC_d_path = 147,
16166 	BPF_FUNC_copy_from_user = 148,
16167 	BPF_FUNC_snprintf_btf = 149,
16168 	BPF_FUNC_seq_printf_btf = 150,
16169 	BPF_FUNC_skb_cgroup_classid = 151,
16170 	BPF_FUNC_redirect_neigh = 152,
16171 	BPF_FUNC_per_cpu_ptr = 153,
16172 	BPF_FUNC_this_cpu_ptr = 154,
16173 	BPF_FUNC_redirect_peer = 155,
16174 	BPF_FUNC_task_storage_get = 156,
16175 	BPF_FUNC_task_storage_delete = 157,
16176 	BPF_FUNC_get_current_task_btf = 158,
16177 	BPF_FUNC_bprm_opts_set = 159,
16178 	BPF_FUNC_ktime_get_coarse_ns = 160,
16179 	BPF_FUNC_ima_inode_hash = 161,
16180 	BPF_FUNC_sock_from_file = 162,
16181 	BPF_FUNC_check_mtu = 163,
16182 	BPF_FUNC_for_each_map_elem = 164,
16183 	BPF_FUNC_snprintf = 165,
16184 	BPF_FUNC_sys_bpf = 166,
16185 	BPF_FUNC_btf_find_by_name_kind = 167,
16186 	BPF_FUNC_sys_close = 168,
16187 	BPF_FUNC_timer_init = 169,
16188 	BPF_FUNC_timer_set_callback = 170,
16189 	BPF_FUNC_timer_start = 171,
16190 	BPF_FUNC_timer_cancel = 172,
16191 	BPF_FUNC_get_func_ip = 173,
16192 	BPF_FUNC_get_attach_cookie = 174,
16193 	BPF_FUNC_task_pt_regs = 175,
16194 	BPF_FUNC_get_branch_snapshot = 176,
16195 	BPF_FUNC_trace_vprintk = 177,
16196 	BPF_FUNC_skc_to_unix_sock = 178,
16197 	BPF_FUNC_kallsyms_lookup_name = 179,
16198 	BPF_FUNC_find_vma = 180,
16199 	BPF_FUNC_loop = 181,
16200 	BPF_FUNC_strncmp = 182,
16201 	BPF_FUNC_get_func_arg = 183,
16202 	BPF_FUNC_get_func_ret = 184,
16203 	BPF_FUNC_get_func_arg_cnt = 185,
16204 	BPF_FUNC_get_retval = 186,
16205 	BPF_FUNC_set_retval = 187,
16206 	BPF_FUNC_xdp_get_buff_len = 188,
16207 	BPF_FUNC_xdp_load_bytes = 189,
16208 	BPF_FUNC_xdp_store_bytes = 190,
16209 	BPF_FUNC_copy_from_user_task = 191,
16210 	BPF_FUNC_skb_set_tstamp = 192,
16211 	BPF_FUNC_ima_file_hash = 193,
16212 	BPF_FUNC_kptr_xchg = 194,
16213 	BPF_FUNC_map_lookup_percpu_elem = 195,
16214 	BPF_FUNC_skc_to_mptcp_sock = 196,
16215 	BPF_FUNC_dynptr_from_mem = 197,
16216 	BPF_FUNC_ringbuf_reserve_dynptr = 198,
16217 	BPF_FUNC_ringbuf_submit_dynptr = 199,
16218 	BPF_FUNC_ringbuf_discard_dynptr = 200,
16219 	BPF_FUNC_dynptr_read = 201,
16220 	BPF_FUNC_dynptr_write = 202,
16221 	BPF_FUNC_dynptr_data = 203,
16222 	BPF_FUNC_tcp_raw_gen_syncookie_ipv4 = 204,
16223 	BPF_FUNC_tcp_raw_gen_syncookie_ipv6 = 205,
16224 	BPF_FUNC_tcp_raw_check_syncookie_ipv4 = 206,
16225 	BPF_FUNC_tcp_raw_check_syncookie_ipv6 = 207,
16226 	__BPF_FUNC_MAX_ID = 208,
16227 };
16228 
16229 struct bpf_link_info {
16230 	__u32 type;
16231 	__u32 id;
16232 	__u32 prog_id;
16233 	union {
16234 		struct {
16235 			__u64 tp_name;
16236 			__u32 tp_name_len;
16237 		} raw_tracepoint;
16238 		struct {
16239 			__u32 attach_type;
16240 			__u32 target_obj_id;
16241 			__u32 target_btf_id;
16242 		} tracing;
16243 		struct {
16244 			__u64 cgroup_id;
16245 			__u32 attach_type;
16246 		} cgroup;
16247 		struct {
16248 			__u64 target_name;
16249 			__u32 target_name_len;
16250 			union {
16251 				struct {
16252 					__u32 map_id;
16253 				} map;
16254 			};
16255 		} iter;
16256 		struct {
16257 			__u32 netns_ino;
16258 			__u32 attach_type;
16259 		} netns;
16260 		struct {
16261 			__u32 ifindex;
16262 		} xdp;
16263 	};
16264 };
16265 
16266 enum bpf_arg_type {
16267 	ARG_DONTCARE = 0,
16268 	ARG_CONST_MAP_PTR = 1,
16269 	ARG_PTR_TO_MAP_KEY = 2,
16270 	ARG_PTR_TO_MAP_VALUE = 3,
16271 	ARG_PTR_TO_MEM = 4,
16272 	ARG_CONST_SIZE = 5,
16273 	ARG_CONST_SIZE_OR_ZERO = 6,
16274 	ARG_PTR_TO_CTX = 7,
16275 	ARG_ANYTHING = 8,
16276 	ARG_PTR_TO_SPIN_LOCK = 9,
16277 	ARG_PTR_TO_SOCK_COMMON = 10,
16278 	ARG_PTR_TO_INT = 11,
16279 	ARG_PTR_TO_LONG = 12,
16280 	ARG_PTR_TO_SOCKET = 13,
16281 	ARG_PTR_TO_BTF_ID = 14,
16282 	ARG_PTR_TO_ALLOC_MEM = 15,
16283 	ARG_CONST_ALLOC_SIZE_OR_ZERO = 16,
16284 	ARG_PTR_TO_BTF_ID_SOCK_COMMON = 17,
16285 	ARG_PTR_TO_PERCPU_BTF_ID = 18,
16286 	ARG_PTR_TO_FUNC = 19,
16287 	ARG_PTR_TO_STACK = 20,
16288 	ARG_PTR_TO_CONST_STR = 21,
16289 	ARG_PTR_TO_TIMER = 22,
16290 	ARG_PTR_TO_KPTR = 23,
16291 	ARG_PTR_TO_DYNPTR = 24,
16292 	__BPF_ARG_TYPE_MAX = 25,
16293 	ARG_PTR_TO_MAP_VALUE_OR_NULL = 259,
16294 	ARG_PTR_TO_MEM_OR_NULL = 260,
16295 	ARG_PTR_TO_CTX_OR_NULL = 263,
16296 	ARG_PTR_TO_SOCKET_OR_NULL = 269,
16297 	ARG_PTR_TO_ALLOC_MEM_OR_NULL = 271,
16298 	ARG_PTR_TO_STACK_OR_NULL = 276,
16299 	ARG_PTR_TO_BTF_ID_OR_NULL = 270,
16300 	ARG_PTR_TO_UNINIT_MEM = 32772,
16301 	ARG_PTR_TO_FIXED_SIZE_MEM = 262148,
16302 	__BPF_ARG_TYPE_LIMIT = 524287,
16303 };
16304 
16305 enum bpf_return_type {
16306 	RET_INTEGER = 0,
16307 	RET_VOID = 1,
16308 	RET_PTR_TO_MAP_VALUE = 2,
16309 	RET_PTR_TO_SOCKET = 3,
16310 	RET_PTR_TO_TCP_SOCK = 4,
16311 	RET_PTR_TO_SOCK_COMMON = 5,
16312 	RET_PTR_TO_ALLOC_MEM = 6,
16313 	RET_PTR_TO_MEM_OR_BTF_ID = 7,
16314 	RET_PTR_TO_BTF_ID = 8,
16315 	__BPF_RET_TYPE_MAX = 9,
16316 	RET_PTR_TO_MAP_VALUE_OR_NULL = 258,
16317 	RET_PTR_TO_SOCKET_OR_NULL = 259,
16318 	RET_PTR_TO_TCP_SOCK_OR_NULL = 260,
16319 	RET_PTR_TO_SOCK_COMMON_OR_NULL = 261,
16320 	RET_PTR_TO_ALLOC_MEM_OR_NULL = 1286,
16321 	RET_PTR_TO_DYNPTR_MEM_OR_NULL = 262,
16322 	RET_PTR_TO_BTF_ID_OR_NULL = 264,
16323 	__BPF_RET_TYPE_LIMIT = 524287,
16324 };
16325 
16326 struct bpf_func_proto {
16327 	u64 (*func)(u64, u64, u64, u64, u64);
16328 	bool gpl_only;
16329 	bool pkt_access;
16330 	enum bpf_return_type ret_type;
16331 	union {
16332 		struct {
16333 			enum bpf_arg_type arg1_type;
16334 			enum bpf_arg_type arg2_type;
16335 			enum bpf_arg_type arg3_type;
16336 			enum bpf_arg_type arg4_type;
16337 			enum bpf_arg_type arg5_type;
16338 		};
16339 		enum bpf_arg_type arg_type[5];
16340 	};
16341 	union {
16342 		struct {
16343 			u32 *arg1_btf_id;
16344 			u32 *arg2_btf_id;
16345 			u32 *arg3_btf_id;
16346 			u32 *arg4_btf_id;
16347 			u32 *arg5_btf_id;
16348 		};
16349 		u32 *arg_btf_id[5];
16350 		struct {
16351 			size_t arg1_size;
16352 			size_t arg2_size;
16353 			size_t arg3_size;
16354 			size_t arg4_size;
16355 			size_t arg5_size;
16356 		};
16357 		size_t arg_size[5];
16358 	};
16359 	int *ret_btf_id;
16360 	bool (*allowed)(const struct bpf_prog *);
16361 };
16362 
16363 typedef int (*bpf_iter_attach_target_t)(struct bpf_prog *, union bpf_iter_link_info *, struct bpf_iter_aux_info *);
16364 
16365 typedef void (*bpf_iter_detach_target_t)(struct bpf_iter_aux_info *);
16366 
16367 typedef void (*bpf_iter_show_fdinfo_t)(const struct bpf_iter_aux_info *, struct seq_file *);
16368 
16369 typedef int (*bpf_iter_fill_link_info_t)(const struct bpf_iter_aux_info *, struct bpf_link_info *);
16370 
16371 typedef const struct bpf_func_proto * (*bpf_iter_get_func_proto_t)(enum bpf_func_id, const struct bpf_prog *);
16372 
16373 enum bpf_iter_feature {
16374 	BPF_ITER_RESCHED = 1,
16375 };
16376 
16377 struct bpf_iter_reg {
16378 	const char *target;
16379 	bpf_iter_attach_target_t attach_target;
16380 	bpf_iter_detach_target_t detach_target;
16381 	bpf_iter_show_fdinfo_t show_fdinfo;
16382 	bpf_iter_fill_link_info_t fill_link_info;
16383 	bpf_iter_get_func_proto_t get_func_proto;
16384 	u32 ctx_arg_info_size;
16385 	u32 feature;
16386 	struct bpf_ctx_arg_aux ctx_arg_info[2];
16387 	const struct bpf_iter_seq_info *seq_info;
16388 };
16389 
16390 struct bpf_iter_meta {
16391 	union {
16392 		struct seq_file *seq;
16393 	};
16394 	u64 session_id;
16395 	u64 seq_num;
16396 };
16397 
16398 enum flow_action_hw_stats_bit {
16399 	FLOW_ACTION_HW_STATS_IMMEDIATE_BIT = 0,
16400 	FLOW_ACTION_HW_STATS_DELAYED_BIT = 1,
16401 	FLOW_ACTION_HW_STATS_DISABLED_BIT = 2,
16402 	FLOW_ACTION_HW_STATS_NUM_BITS = 3,
16403 };
16404 
16405 enum {
16406 	BTF_TRACING_TYPE_TASK = 0,
16407 	BTF_TRACING_TYPE_FILE = 1,
16408 	BTF_TRACING_TYPE_VMA = 2,
16409 	MAX_BTF_TRACING_TYPE = 3,
16410 };
16411 
16412 struct mmap_unlock_irq_work {
16413 	struct irq_work irq_work;
16414 	struct mm_struct *mm;
16415 };
16416 
16417 struct bpf_iter_seq_task_common {
16418 	struct pid_namespace *ns;
16419 };
16420 
16421 struct bpf_iter_seq_task_info {
16422 	struct bpf_iter_seq_task_common common;
16423 	u32 tid;
16424 };
16425 
16426 struct bpf_iter__task {
16427 	union {
16428 		struct bpf_iter_meta *meta;
16429 	};
16430 	union {
16431 		struct task_struct *task;
16432 	};
16433 };
16434 
16435 struct bpf_iter_seq_task_file_info {
16436 	struct bpf_iter_seq_task_common common;
16437 	struct task_struct *task;
16438 	u32 tid;
16439 	u32 fd;
16440 };
16441 
16442 struct bpf_iter__task_file {
16443 	union {
16444 		struct bpf_iter_meta *meta;
16445 	};
16446 	union {
16447 		struct task_struct *task;
16448 	};
16449 	u32 fd;
16450 	union {
16451 		struct file *file;
16452 	};
16453 };
16454 
16455 struct bpf_iter_seq_task_vma_info {
16456 	struct bpf_iter_seq_task_common common;
16457 	struct task_struct *task;
16458 	struct vm_area_struct *vma;
16459 	u32 tid;
16460 	long unsigned int prev_vm_start;
16461 	long unsigned int prev_vm_end;
16462 };
16463 
16464 enum bpf_task_vma_iter_find_op {
16465 	task_vma_iter_first_vma = 0,
16466 	task_vma_iter_next_vma = 1,
16467 	task_vma_iter_find_vma = 2,
16468 };
16469 
16470 struct bpf_iter__task_vma {
16471 	union {
16472 		struct bpf_iter_meta *meta;
16473 	};
16474 	union {
16475 		struct task_struct *task;
16476 	};
16477 	union {
16478 		struct vm_area_struct *vma;
16479 	};
16480 };
16481 
16482 typedef u64 (*btf_bpf_find_vma)(struct task_struct *, u64, bpf_callback_t, void *, u64);
16483 
16484 struct bpf_local_storage_data;
16485 
16486 struct bpf_local_storage {
16487 	struct bpf_local_storage_data *cache[16];
16488 	struct hlist_head list;
16489 	void *owner;
16490 	struct callback_head rcu;
16491 	raw_spinlock_t lock;
16492 };
16493 
16494 enum {
16495 	BPF_ANY = 0,
16496 	BPF_NOEXIST = 1,
16497 	BPF_EXIST = 2,
16498 	BPF_F_LOCK = 4,
16499 };
16500 
16501 enum {
16502 	BPF_LOCAL_STORAGE_GET_F_CREATE = 1,
16503 	BPF_SK_STORAGE_GET_F_CREATE = 1,
16504 };
16505 
16506 struct bpf_local_storage_map_bucket;
16507 
16508 struct bpf_local_storage_map {
16509 	struct bpf_map map;
16510 	struct bpf_local_storage_map_bucket *buckets;
16511 	u32 bucket_log;
16512 	u16 elem_size;
16513 	u16 cache_idx;
16514 	long: 64;
16515 	long: 64;
16516 	long: 64;
16517 	long: 64;
16518 	long: 64;
16519 	long: 64;
16520 	long: 64;
16521 	long: 64;
16522 	long: 64;
16523 	long: 64;
16524 	long: 64;
16525 	long: 64;
16526 	long: 64;
16527 	long: 64;
16528 };
16529 
16530 struct bpf_local_storage_map_bucket {
16531 	struct hlist_head list;
16532 	raw_spinlock_t lock;
16533 };
16534 
16535 struct bpf_local_storage_data {
16536 	struct bpf_local_storage_map *smap;
16537 	u8 data[0];
16538 };
16539 
16540 struct bpf_local_storage_elem {
16541 	struct hlist_node map_node;
16542 	struct hlist_node snode;
16543 	struct bpf_local_storage *local_storage;
16544 	struct callback_head rcu;
16545 	long: 64;
16546 	long: 64;
16547 	long: 64;
16548 	long: 64;
16549 	long: 64;
16550 	long: 64;
16551 	long: 64;
16552 	long: 64;
16553 	long: 64;
16554 	struct bpf_local_storage_data sdata;
16555 	long: 64;
16556 	long: 64;
16557 	long: 64;
16558 	long: 64;
16559 	long: 64;
16560 	long: 64;
16561 	long: 64;
16562 	long: 64;
16563 	long: 64;
16564 	long: 64;
16565 	long: 64;
16566 	long: 64;
16567 	long: 64;
16568 	long: 64;
16569 	long: 64;
16570 };
16571 
16572 struct bpf_local_storage_cache {
16573 	spinlock_t idx_lock;
16574 	u64 idx_usage_counts[16];
16575 };
16576 
16577 typedef u64 (*btf_bpf_task_storage_get)(struct bpf_map *, struct task_struct *, void *, u64, gfp_t);
16578 
16579 typedef u64 (*btf_bpf_task_storage_delete)(struct bpf_map *, struct task_struct *);
16580 
16581 struct perf_event_mmap_page {
16582 	__u32 version;
16583 	__u32 compat_version;
16584 	__u32 lock;
16585 	__u32 index;
16586 	__s64 offset;
16587 	__u64 time_enabled;
16588 	__u64 time_running;
16589 	union {
16590 		__u64 capabilities;
16591 		struct {
16592 			__u64 cap_bit0: 1;
16593 			__u64 cap_bit0_is_deprecated: 1;
16594 			__u64 cap_user_rdpmc: 1;
16595 			__u64 cap_user_time: 1;
16596 			__u64 cap_user_time_zero: 1;
16597 			__u64 cap_user_time_short: 1;
16598 			__u64 cap_____res: 58;
16599 		};
16600 	};
16601 	__u16 pmc_width;
16602 	__u16 time_shift;
16603 	__u32 time_mult;
16604 	__u64 time_offset;
16605 	__u64 time_zero;
16606 	__u32 size;
16607 	__u32 __reserved_1;
16608 	__u64 time_cycles;
16609 	__u64 time_mask;
16610 	__u8 __reserved[928];
16611 	__u64 data_head;
16612 	__u64 data_tail;
16613 	__u64 data_offset;
16614 	__u64 data_size;
16615 	__u64 aux_head;
16616 	__u64 aux_tail;
16617 	__u64 aux_offset;
16618 	__u64 aux_size;
16619 };
16620 
16621 enum perf_callchain_context {
16622 	PERF_CONTEXT_HV = 18446744073709551584ULL,
16623 	PERF_CONTEXT_KERNEL = 18446744073709551488ULL,
16624 	PERF_CONTEXT_USER = 18446744073709551104ULL,
16625 	PERF_CONTEXT_GUEST = 18446744073709549568ULL,
16626 	PERF_CONTEXT_GUEST_KERNEL = 18446744073709549440ULL,
16627 	PERF_CONTEXT_GUEST_USER = 18446744073709549056ULL,
16628 	PERF_CONTEXT_MAX = 18446744073709547521ULL,
16629 };
16630 
16631 struct perf_callchain_entry_ctx {
16632 	struct perf_callchain_entry *entry;
16633 	u32 max_stack;
16634 	u32 nr;
16635 	short int contexts;
16636 	bool contexts_maxed;
16637 };
16638 
16639 struct perf_buffer {
16640 	refcount_t refcount;
16641 	struct callback_head callback_head;
16642 	int nr_pages;
16643 	int overwrite;
16644 	int paused;
16645 	atomic_t poll;
16646 	local_t head;
16647 	unsigned int nest;
16648 	local_t events;
16649 	local_t wakeup;
16650 	local_t lost;
16651 	long int watermark;
16652 	long int aux_watermark;
16653 	spinlock_t event_lock;
16654 	struct list_head event_list;
16655 	atomic_t mmap_count;
16656 	long unsigned int mmap_locked;
16657 	struct user_struct *mmap_user;
16658 	long int aux_head;
16659 	unsigned int aux_nest;
16660 	long int aux_wakeup;
16661 	long unsigned int aux_pgoff;
16662 	int aux_nr_pages;
16663 	int aux_overwrite;
16664 	atomic_t aux_mmap_count;
16665 	long unsigned int aux_mmap_locked;
16666 	void (*free_aux)(void *);
16667 	refcount_t aux_refcount;
16668 	int aux_in_sampling;
16669 	void **aux_pages;
16670 	void *aux_priv;
16671 	struct perf_event_mmap_page *user_page;
16672 	void *data_pages[0];
16673 };
16674 
16675 struct callchain_cpus_entries {
16676 	struct callback_head callback_head;
16677 	struct perf_callchain_entry *cpu_entries[0];
16678 };
16679 
16680 typedef struct {} local_lock_t;
16681 
16682 struct reciprocal_value {
16683 	u32 m;
16684 	u8 sh1;
16685 	u8 sh2;
16686 };
16687 
16688 struct kmem_cache_order_objects {
16689 	unsigned int x;
16690 };
16691 
16692 struct kmem_cache_cpu;
16693 
16694 struct kmem_cache_node;
16695 
16696 struct kmem_cache {
16697 	struct kmem_cache_cpu *cpu_slab;
16698 	slab_flags_t flags;
16699 	long unsigned int min_partial;
16700 	unsigned int size;
16701 	unsigned int object_size;
16702 	struct reciprocal_value reciprocal_size;
16703 	unsigned int offset;
16704 	unsigned int cpu_partial;
16705 	unsigned int cpu_partial_slabs;
16706 	struct kmem_cache_order_objects oo;
16707 	struct kmem_cache_order_objects min;
16708 	gfp_t allocflags;
16709 	int refcount;
16710 	void (*ctor)(void *);
16711 	unsigned int inuse;
16712 	unsigned int align;
16713 	unsigned int red_left_pad;
16714 	const char *name;
16715 	struct list_head list;
16716 	struct kobject kobj;
16717 	unsigned int remote_node_defrag_ratio;
16718 	unsigned int useroffset;
16719 	unsigned int usersize;
16720 	struct kmem_cache_node *node[256];
16721 };
16722 
16723 struct slab {
16724 	long unsigned int __page_flags;
16725 	union {
16726 		struct list_head slab_list;
16727 		struct callback_head callback_head;
16728 		struct {
16729 			struct slab *next;
16730 			int slabs;
16731 		};
16732 	};
16733 	struct kmem_cache *slab_cache;
16734 	void *freelist;
16735 	union {
16736 		long unsigned int counters;
16737 		struct {
16738 			unsigned int inuse: 16;
16739 			unsigned int objects: 15;
16740 			unsigned int frozen: 1;
16741 		};
16742 	};
16743 	unsigned int __unused;
16744 	atomic_t __page_refcount;
16745 	long unsigned int memcg_data;
16746 };
16747 
16748 struct kmem_cache_cpu {
16749 	void **freelist;
16750 	long unsigned int tid;
16751 	struct slab *slab;
16752 	struct slab *partial;
16753 	local_lock_t lock;
16754 };
16755 
16756 struct kmem_cache_node {
16757 	spinlock_t list_lock;
16758 	long unsigned int nr_partial;
16759 	struct list_head partial;
16760 	atomic_long_t nr_slabs;
16761 	atomic_long_t total_objects;
16762 	struct list_head full;
16763 };
16764 
16765 struct anon_vma {
16766 	struct anon_vma *root;
16767 	struct rw_semaphore rwsem;
16768 	atomic_t refcount;
16769 	long unsigned int num_children;
16770 	long unsigned int num_active_vmas;
16771 	struct anon_vma *parent;
16772 	struct rb_root_cached rb_root;
16773 };
16774 
16775 typedef struct pglist_data pg_data_t;
16776 
16777 struct compact_control;
16778 
16779 struct capture_control {
16780 	struct compact_control *cc;
16781 	struct page *page;
16782 };
16783 
16784 struct compact_control {
16785 	struct list_head freepages;
16786 	struct list_head migratepages;
16787 	unsigned int nr_freepages;
16788 	unsigned int nr_migratepages;
16789 	long unsigned int free_pfn;
16790 	long unsigned int migrate_pfn;
16791 	long unsigned int fast_start_pfn;
16792 	struct zone *zone;
16793 	long unsigned int total_migrate_scanned;
16794 	long unsigned int total_free_scanned;
16795 	short unsigned int fast_search_fail;
16796 	short int search_order;
16797 	const gfp_t gfp_mask;
16798 	int order;
16799 	int migratetype;
16800 	const unsigned int alloc_flags;
16801 	const int highest_zoneidx;
16802 	enum migrate_mode mode;
16803 	bool ignore_skip_hint;
16804 	bool no_set_skip_hint;
16805 	bool ignore_block_suitable;
16806 	bool direct_compaction;
16807 	bool proactive_compaction;
16808 	bool whole_zone;
16809 	bool contended;
16810 	bool rescan;
16811 	bool alloc_contig;
16812 };
16813 
16814 enum mminit_level {
16815 	MMINIT_WARNING = 0,
16816 	MMINIT_VERIFY = 1,
16817 	MMINIT_TRACE = 2,
16818 };
16819 
16820 typedef struct {
16821 	pgd_t pgd;
16822 } p4d_t;
16823 
16824 struct mempolicy {
16825 	atomic_t refcnt;
16826 	short unsigned int mode;
16827 	short unsigned int flags;
16828 	nodemask_t nodes;
16829 	int home_node;
16830 	union {
16831 		nodemask_t cpuset_mems_allowed;
16832 		nodemask_t user_nodemask;
16833 	} w;
16834 };
16835 
16836 typedef struct {
16837 	long unsigned int val;
16838 } swp_entry_t;
16839 
16840 struct page_vma_mapped_walk {
16841 	long unsigned int pfn;
16842 	long unsigned int nr_pages;
16843 	long unsigned int pgoff;
16844 	struct vm_area_struct *vma;
16845 	long unsigned int address;
16846 	pmd_t *pmd;
16847 	pte_t *pte;
16848 	spinlock_t *ptl;
16849 	unsigned int flags;
16850 };
16851 
16852 struct hstate;
16853 
16854 struct hugepage_subpool {
16855 	spinlock_t lock;
16856 	long int count;
16857 	long int max_hpages;
16858 	long int used_hpages;
16859 	struct hstate *hstate;
16860 	long int min_hpages;
16861 	long int rsv_hpages;
16862 };
16863 
16864 struct hstate {
16865 	struct mutex resize_lock;
16866 	int next_nid_to_alloc;
16867 	int next_nid_to_free;
16868 	unsigned int order;
16869 	unsigned int demote_order;
16870 	long unsigned int mask;
16871 	long unsigned int max_huge_pages;
16872 	long unsigned int nr_huge_pages;
16873 	long unsigned int free_huge_pages;
16874 	long unsigned int resv_huge_pages;
16875 	long unsigned int surplus_huge_pages;
16876 	long unsigned int nr_overcommit_huge_pages;
16877 	struct list_head hugepage_activelist;
16878 	struct list_head hugepage_freelists[256];
16879 	unsigned int max_huge_pages_node[256];
16880 	unsigned int nr_huge_pages_node[256];
16881 	unsigned int free_huge_pages_node[256];
16882 	unsigned int surplus_huge_pages_node[256];
16883 	char name[32];
16884 };
16885 
16886 struct hugetlbfs_sb_info {
16887 	long int max_inodes;
16888 	long int free_inodes;
16889 	spinlock_t stat_lock;
16890 	struct hstate *hstate;
16891 	struct hugepage_subpool *spool;
16892 	kuid_t uid;
16893 	kgid_t gid;
16894 	umode_t mode;
16895 };
16896 
16897 struct swap_slots_cache {
16898 	bool lock_initialized;
16899 	struct mutex alloc_lock;
16900 	swp_entry_t *slots;
16901 	int nr;
16902 	int cur;
16903 	spinlock_t free_lock;
16904 	swp_entry_t *slots_ret;
16905 	int n_ret;
16906 };
16907 
16908 typedef __kernel_ulong_t ino_t;
16909 
16910 typedef void (*swap_func_t)(void *, void *, int);
16911 
16912 typedef int (*cmp_func_t)(const void *, const void *);
16913 
16914 enum {
16915 	__PERCPU_REF_ATOMIC = 1,
16916 	__PERCPU_REF_DEAD = 2,
16917 	__PERCPU_REF_ATOMIC_DEAD = 3,
16918 	__PERCPU_REF_FLAG_BITS = 2,
16919 };
16920 
16921 struct fc_log;
16922 
16923 struct p_log {
16924 	const char *prefix;
16925 	struct fc_log *log;
16926 };
16927 
16928 enum fs_context_purpose {
16929 	FS_CONTEXT_FOR_MOUNT = 0,
16930 	FS_CONTEXT_FOR_SUBMOUNT = 1,
16931 	FS_CONTEXT_FOR_RECONFIGURE = 2,
16932 };
16933 
16934 enum fs_context_phase {
16935 	FS_CONTEXT_CREATE_PARAMS = 0,
16936 	FS_CONTEXT_CREATING = 1,
16937 	FS_CONTEXT_AWAITING_MOUNT = 2,
16938 	FS_CONTEXT_AWAITING_RECONF = 3,
16939 	FS_CONTEXT_RECONF_PARAMS = 4,
16940 	FS_CONTEXT_RECONFIGURING = 5,
16941 	FS_CONTEXT_FAILED = 6,
16942 };
16943 
16944 struct fs_context_operations;
16945 
16946 struct fs_context {
16947 	const struct fs_context_operations *ops;
16948 	struct mutex uapi_mutex;
16949 	struct file_system_type *fs_type;
16950 	void *fs_private;
16951 	void *sget_key;
16952 	struct dentry *root;
16953 	struct user_namespace *user_ns;
16954 	struct net *net_ns;
16955 	const struct cred *cred;
16956 	struct p_log log;
16957 	const char *source;
16958 	void *security;
16959 	void *s_fs_info;
16960 	unsigned int sb_flags;
16961 	unsigned int sb_flags_mask;
16962 	unsigned int s_iflags;
16963 	unsigned int lsm_flags;
16964 	enum fs_context_purpose purpose: 8;
16965 	enum fs_context_phase phase: 8;
16966 	bool need_free: 1;
16967 	bool global: 1;
16968 	bool oldapi: 1;
16969 };
16970 
16971 struct audit_names;
16972 
16973 struct filename {
16974 	const char *name;
16975 	const char *uptr;
16976 	int refcnt;
16977 	struct audit_names *aname;
16978 	const char iname[0];
16979 };
16980 
16981 typedef __u64 __addrpair;
16982 
16983 typedef __u32 __portpair;
16984 
16985 struct hlist_nulls_node {
16986 	struct hlist_nulls_node *next;
16987 	struct hlist_nulls_node **pprev;
16988 };
16989 
16990 struct proto;
16991 
16992 struct sock_common {
16993 	union {
16994 		__addrpair skc_addrpair;
16995 		struct {
16996 			__be32 skc_daddr;
16997 			__be32 skc_rcv_saddr;
16998 		};
16999 	};
17000 	union {
17001 		unsigned int skc_hash;
17002 		__u16 skc_u16hashes[2];
17003 	};
17004 	union {
17005 		__portpair skc_portpair;
17006 		struct {
17007 			__be16 skc_dport;
17008 			__u16 skc_num;
17009 		};
17010 	};
17011 	short unsigned int skc_family;
17012 	volatile unsigned char skc_state;
17013 	unsigned char skc_reuse: 4;
17014 	unsigned char skc_reuseport: 1;
17015 	unsigned char skc_ipv6only: 1;
17016 	unsigned char skc_net_refcnt: 1;
17017 	int skc_bound_dev_if;
17018 	union {
17019 		struct hlist_node skc_bind_node;
17020 		struct hlist_node skc_portaddr_node;
17021 	};
17022 	struct proto *skc_prot;
17023 	possible_net_t skc_net;
17024 	struct in6_addr skc_v6_daddr;
17025 	struct in6_addr skc_v6_rcv_saddr;
17026 	atomic64_t skc_cookie;
17027 	union {
17028 		long unsigned int skc_flags;
17029 		struct sock *skc_listener;
17030 		struct inet_timewait_death_row *skc_tw_dr;
17031 	};
17032 	int skc_dontcopy_begin[0];
17033 	union {
17034 		struct hlist_node skc_node;
17035 		struct hlist_nulls_node skc_nulls_node;
17036 	};
17037 	short unsigned int skc_tx_queue_mapping;
17038 	short unsigned int skc_rx_queue_mapping;
17039 	union {
17040 		int skc_incoming_cpu;
17041 		u32 skc_rcv_wnd;
17042 		u32 skc_tw_rcv_nxt;
17043 	};
17044 	refcount_t skc_refcnt;
17045 	int skc_dontcopy_end[0];
17046 	union {
17047 		u32 skc_rxhash;
17048 		u32 skc_window_clamp;
17049 		u32 skc_tw_snd_nxt;
17050 	};
17051 };
17052 
17053 typedef struct {
17054 	spinlock_t slock;
17055 	int owned;
17056 	wait_queue_head_t wq;
17057 } socket_lock_t;
17058 
17059 struct sock_cgroup_data {
17060 	struct cgroup *cgroup;
17061 };
17062 
17063 typedef struct {} netns_tracker;
17064 
17065 struct sk_filter;
17066 
17067 struct socket_wq;
17068 
17069 struct xfrm_policy;
17070 
17071 struct socket;
17072 
17073 struct sock_reuseport;
17074 
17075 struct sock {
17076 	struct sock_common __sk_common;
17077 	struct dst_entry *sk_rx_dst;
17078 	int sk_rx_dst_ifindex;
17079 	u32 sk_rx_dst_cookie;
17080 	socket_lock_t sk_lock;
17081 	atomic_t sk_drops;
17082 	int sk_rcvlowat;
17083 	struct sk_buff_head sk_error_queue;
17084 	struct sk_buff_head sk_receive_queue;
17085 	struct {
17086 		atomic_t rmem_alloc;
17087 		int len;
17088 		struct sk_buff *head;
17089 		struct sk_buff *tail;
17090 	} sk_backlog;
17091 	int sk_forward_alloc;
17092 	u32 sk_reserved_mem;
17093 	unsigned int sk_ll_usec;
17094 	unsigned int sk_napi_id;
17095 	int sk_rcvbuf;
17096 	struct sk_filter *sk_filter;
17097 	union {
17098 		struct socket_wq *sk_wq;
17099 		struct socket_wq *sk_wq_raw;
17100 	};
17101 	struct xfrm_policy *sk_policy[2];
17102 	struct dst_entry *sk_dst_cache;
17103 	atomic_t sk_omem_alloc;
17104 	int sk_sndbuf;
17105 	int sk_wmem_queued;
17106 	refcount_t sk_wmem_alloc;
17107 	long unsigned int sk_tsq_flags;
17108 	union {
17109 		struct sk_buff *sk_send_head;
17110 		struct rb_root tcp_rtx_queue;
17111 	};
17112 	struct sk_buff_head sk_write_queue;
17113 	__s32 sk_peek_off;
17114 	int sk_write_pending;
17115 	__u32 sk_dst_pending_confirm;
17116 	u32 sk_pacing_status;
17117 	long int sk_sndtimeo;
17118 	struct timer_list sk_timer;
17119 	__u32 sk_priority;
17120 	__u32 sk_mark;
17121 	long unsigned int sk_pacing_rate;
17122 	long unsigned int sk_max_pacing_rate;
17123 	struct page_frag sk_frag;
17124 	netdev_features_t sk_route_caps;
17125 	int sk_gso_type;
17126 	unsigned int sk_gso_max_size;
17127 	gfp_t sk_allocation;
17128 	__u32 sk_txhash;
17129 	u8 sk_gso_disabled: 1;
17130 	u8 sk_kern_sock: 1;
17131 	u8 sk_no_check_tx: 1;
17132 	u8 sk_no_check_rx: 1;
17133 	u8 sk_userlocks: 4;
17134 	u8 sk_pacing_shift;
17135 	u16 sk_type;
17136 	u16 sk_protocol;
17137 	u16 sk_gso_max_segs;
17138 	long unsigned int sk_lingertime;
17139 	struct proto *sk_prot_creator;
17140 	rwlock_t sk_callback_lock;
17141 	int sk_err;
17142 	int sk_err_soft;
17143 	u32 sk_ack_backlog;
17144 	u32 sk_max_ack_backlog;
17145 	kuid_t sk_uid;
17146 	u8 sk_txrehash;
17147 	u8 sk_prefer_busy_poll;
17148 	u16 sk_busy_poll_budget;
17149 	spinlock_t sk_peer_lock;
17150 	int sk_bind_phc;
17151 	struct pid *sk_peer_pid;
17152 	const struct cred *sk_peer_cred;
17153 	long int sk_rcvtimeo;
17154 	ktime_t sk_stamp;
17155 	u16 sk_tsflags;
17156 	u8 sk_shutdown;
17157 	atomic_t sk_tskey;
17158 	atomic_t sk_zckey;
17159 	u8 sk_clockid;
17160 	u8 sk_txtime_deadline_mode: 1;
17161 	u8 sk_txtime_report_errors: 1;
17162 	u8 sk_txtime_unused: 6;
17163 	struct socket *sk_socket;
17164 	void *sk_user_data;
17165 	struct sock_cgroup_data sk_cgrp_data;
17166 	struct mem_cgroup *sk_memcg;
17167 	void (*sk_state_change)(struct sock *);
17168 	void (*sk_data_ready)(struct sock *);
17169 	void (*sk_write_space)(struct sock *);
17170 	void (*sk_error_report)(struct sock *);
17171 	int (*sk_backlog_rcv)(struct sock *, struct sk_buff *);
17172 	void (*sk_destruct)(struct sock *);
17173 	struct sock_reuseport *sk_reuseport_cb;
17174 	struct bpf_local_storage *sk_bpf_storage;
17175 	struct callback_head sk_rcu;
17176 	netns_tracker ns_tracker;
17177 };
17178 
17179 enum writeback_stat_item {
17180 	NR_DIRTY_THRESHOLD = 0,
17181 	NR_DIRTY_BG_THRESHOLD = 1,
17182 	NR_VM_WRITEBACK_STAT_ITEMS = 2,
17183 };
17184 
17185 enum {
17186 	CSS_NO_REF = 1,
17187 	CSS_ONLINE = 2,
17188 	CSS_RELEASED = 4,
17189 	CSS_VISIBLE = 8,
17190 	CSS_DYING = 16,
17191 };
17192 
17193 enum {
17194 	CGRP_ROOT_NOPREFIX = 2,
17195 	CGRP_ROOT_XATTR = 4,
17196 	CGRP_ROOT_NS_DELEGATE = 8,
17197 	CGRP_ROOT_FAVOR_DYNMODS = 16,
17198 	CGRP_ROOT_CPUSET_V2_MODE = 65536,
17199 	CGRP_ROOT_MEMORY_LOCAL_EVENTS = 131072,
17200 	CGRP_ROOT_MEMORY_RECURSIVE_PROT = 262144,
17201 };
17202 
17203 enum {
17204 	CFTYPE_ONLY_ON_ROOT = 1,
17205 	CFTYPE_NOT_ON_ROOT = 2,
17206 	CFTYPE_NS_DELEGATABLE = 4,
17207 	CFTYPE_NO_PREFIX = 8,
17208 	CFTYPE_WORLD_WRITABLE = 16,
17209 	CFTYPE_DEBUG = 32,
17210 	CFTYPE_PRESSURE = 64,
17211 	__CFTYPE_ONLY_ON_DFL = 65536,
17212 	__CFTYPE_NOT_ON_DFL = 131072,
17213 };
17214 
17215 struct css_task_iter {
17216 	struct cgroup_subsys *ss;
17217 	unsigned int flags;
17218 	struct list_head *cset_pos;
17219 	struct list_head *cset_head;
17220 	struct list_head *tcset_pos;
17221 	struct list_head *tcset_head;
17222 	struct list_head *task_pos;
17223 	struct list_head *cur_tasks_head;
17224 	struct css_set *cur_cset;
17225 	struct css_set *cur_dcset;
17226 	struct task_struct *cur_task;
17227 	struct list_head iters_node;
17228 };
17229 
17230 struct mem_cgroup_reclaim_cookie {
17231 	pg_data_t *pgdat;
17232 	unsigned int generation;
17233 };
17234 
17235 enum page_memcg_data_flags {
17236 	MEMCG_DATA_OBJCGS = 1,
17237 	MEMCG_DATA_KMEM = 2,
17238 	__NR_MEMCG_DATA_FLAGS = 4,
17239 };
17240 
17241 struct mm_walk;
17242 
17243 struct mm_walk_ops {
17244 	int (*pgd_entry)(pgd_t *, long unsigned int, long unsigned int, struct mm_walk *);
17245 	int (*p4d_entry)(p4d_t *, long unsigned int, long unsigned int, struct mm_walk *);
17246 	int (*pud_entry)(pud_t *, long unsigned int, long unsigned int, struct mm_walk *);
17247 	int (*pmd_entry)(pmd_t *, long unsigned int, long unsigned int, struct mm_walk *);
17248 	int (*pte_entry)(pte_t *, long unsigned int, long unsigned int, struct mm_walk *);
17249 	int (*pte_hole)(long unsigned int, long unsigned int, int, struct mm_walk *);
17250 	int (*hugetlb_entry)(pte_t *, long unsigned int, long unsigned int, long unsigned int, struct mm_walk *);
17251 	int (*test_walk)(long unsigned int, long unsigned int, struct mm_walk *);
17252 	int (*pre_vma)(long unsigned int, long unsigned int, struct mm_walk *);
17253 	void (*post_vma)(struct mm_walk *);
17254 };
17255 
17256 enum page_walk_action {
17257 	ACTION_SUBTREE = 0,
17258 	ACTION_CONTINUE = 1,
17259 	ACTION_AGAIN = 2,
17260 };
17261 
17262 struct mm_walk {
17263 	const struct mm_walk_ops *ops;
17264 	struct mm_struct *mm;
17265 	pgd_t *pgd;
17266 	struct vm_area_struct *vma;
17267 	enum page_walk_action action;
17268 	bool no_vma;
17269 	void *private;
17270 };
17271 
17272 struct fd {
17273 	struct file *file;
17274 	unsigned int flags;
17275 };
17276 
17277 enum fs_value_type {
17278 	fs_value_is_undefined = 0,
17279 	fs_value_is_flag = 1,
17280 	fs_value_is_string = 2,
17281 	fs_value_is_blob = 3,
17282 	fs_value_is_filename = 4,
17283 	fs_value_is_file = 5,
17284 };
17285 
17286 struct fs_parameter {
17287 	const char *key;
17288 	enum fs_value_type type: 8;
17289 	union {
17290 		char *string;
17291 		void *blob;
17292 		struct filename *name;
17293 		struct file *file;
17294 	};
17295 	size_t size;
17296 	int dirfd;
17297 };
17298 
17299 struct fc_log {
17300 	refcount_t usage;
17301 	u8 head;
17302 	u8 tail;
17303 	u8 need_free;
17304 	struct module *owner;
17305 	char *buffer[8];
17306 };
17307 
17308 struct fs_context_operations {
17309 	void (*free)(struct fs_context *);
17310 	int (*dup)(struct fs_context *, struct fs_context *);
17311 	int (*parse_param)(struct fs_context *, struct fs_parameter *);
17312 	int (*parse_monolithic)(struct fs_context *, void *);
17313 	int (*get_tree)(struct fs_context *);
17314 	int (*reconfigure)(struct fs_context *);
17315 };
17316 
17317 struct fs_parse_result {
17318 	bool negated;
17319 	union {
17320 		bool boolean;
17321 		int int_32;
17322 		unsigned int uint_32;
17323 		u64 uint_64;
17324 	};
17325 };
17326 
17327 typedef struct poll_table_struct poll_table;
17328 
17329 enum oom_constraint {
17330 	CONSTRAINT_NONE = 0,
17331 	CONSTRAINT_CPUSET = 1,
17332 	CONSTRAINT_MEMORY_POLICY = 2,
17333 	CONSTRAINT_MEMCG = 3,
17334 };
17335 
17336 struct oom_control {
17337 	struct zonelist *zonelist;
17338 	nodemask_t *nodemask;
17339 	struct mem_cgroup *memcg;
17340 	const gfp_t gfp_mask;
17341 	const int order;
17342 	long unsigned int totalpages;
17343 	struct task_struct *chosen;
17344 	long int chosen_points;
17345 	enum oom_constraint constraint;
17346 };
17347 
17348 struct ubuf_info;
17349 
17350 struct msghdr {
17351 	void *msg_name;
17352 	int msg_namelen;
17353 	int msg_inq;
17354 	struct iov_iter msg_iter;
17355 	union {
17356 		void *msg_control;
17357 		void *msg_control_user;
17358 	};
17359 	bool msg_control_is_user: 1;
17360 	bool msg_get_inq: 1;
17361 	unsigned int msg_flags;
17362 	__kernel_size_t msg_controllen;
17363 	struct kiocb *msg_iocb;
17364 	struct ubuf_info *msg_ubuf;
17365 	int (*sg_from_iter)(struct sock *, struct sk_buff *, struct iov_iter *, size_t);
17366 };
17367 
17368 struct mmpin {
17369 	struct user_struct *user;
17370 	unsigned int num_pg;
17371 };
17372 
17373 struct ubuf_info {
17374 	void (*callback)(struct sk_buff *, struct ubuf_info *, bool);
17375 	union {
17376 		struct {
17377 			long unsigned int desc;
17378 			void *ctx;
17379 		};
17380 		struct {
17381 			u32 id;
17382 			u16 len;
17383 			u16 zerocopy: 1;
17384 			u32 bytelen;
17385 		};
17386 	};
17387 	refcount_t refcnt;
17388 	u8 flags;
17389 	struct mmpin mmp;
17390 };
17391 
17392 enum flow_dissector_key_id {
17393 	FLOW_DISSECTOR_KEY_CONTROL = 0,
17394 	FLOW_DISSECTOR_KEY_BASIC = 1,
17395 	FLOW_DISSECTOR_KEY_IPV4_ADDRS = 2,
17396 	FLOW_DISSECTOR_KEY_IPV6_ADDRS = 3,
17397 	FLOW_DISSECTOR_KEY_PORTS = 4,
17398 	FLOW_DISSECTOR_KEY_PORTS_RANGE = 5,
17399 	FLOW_DISSECTOR_KEY_ICMP = 6,
17400 	FLOW_DISSECTOR_KEY_ETH_ADDRS = 7,
17401 	FLOW_DISSECTOR_KEY_TIPC = 8,
17402 	FLOW_DISSECTOR_KEY_ARP = 9,
17403 	FLOW_DISSECTOR_KEY_VLAN = 10,
17404 	FLOW_DISSECTOR_KEY_FLOW_LABEL = 11,
17405 	FLOW_DISSECTOR_KEY_GRE_KEYID = 12,
17406 	FLOW_DISSECTOR_KEY_MPLS_ENTROPY = 13,
17407 	FLOW_DISSECTOR_KEY_ENC_KEYID = 14,
17408 	FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS = 15,
17409 	FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS = 16,
17410 	FLOW_DISSECTOR_KEY_ENC_CONTROL = 17,
17411 	FLOW_DISSECTOR_KEY_ENC_PORTS = 18,
17412 	FLOW_DISSECTOR_KEY_MPLS = 19,
17413 	FLOW_DISSECTOR_KEY_TCP = 20,
17414 	FLOW_DISSECTOR_KEY_IP = 21,
17415 	FLOW_DISSECTOR_KEY_CVLAN = 22,
17416 	FLOW_DISSECTOR_KEY_ENC_IP = 23,
17417 	FLOW_DISSECTOR_KEY_ENC_OPTS = 24,
17418 	FLOW_DISSECTOR_KEY_META = 25,
17419 	FLOW_DISSECTOR_KEY_CT = 26,
17420 	FLOW_DISSECTOR_KEY_HASH = 27,
17421 	FLOW_DISSECTOR_KEY_NUM_OF_VLANS = 28,
17422 	FLOW_DISSECTOR_KEY_PPPOE = 29,
17423 	FLOW_DISSECTOR_KEY_MAX = 30,
17424 };
17425 
17426 struct prot_inuse {
17427 	int all;
17428 	int val[64];
17429 };
17430 
17431 enum {
17432 	IPSTATS_MIB_NUM = 0,
17433 	IPSTATS_MIB_INPKTS = 1,
17434 	IPSTATS_MIB_INOCTETS = 2,
17435 	IPSTATS_MIB_INDELIVERS = 3,
17436 	IPSTATS_MIB_OUTFORWDATAGRAMS = 4,
17437 	IPSTATS_MIB_OUTPKTS = 5,
17438 	IPSTATS_MIB_OUTOCTETS = 6,
17439 	IPSTATS_MIB_INHDRERRORS = 7,
17440 	IPSTATS_MIB_INTOOBIGERRORS = 8,
17441 	IPSTATS_MIB_INNOROUTES = 9,
17442 	IPSTATS_MIB_INADDRERRORS = 10,
17443 	IPSTATS_MIB_INUNKNOWNPROTOS = 11,
17444 	IPSTATS_MIB_INTRUNCATEDPKTS = 12,
17445 	IPSTATS_MIB_INDISCARDS = 13,
17446 	IPSTATS_MIB_OUTDISCARDS = 14,
17447 	IPSTATS_MIB_OUTNOROUTES = 15,
17448 	IPSTATS_MIB_REASMTIMEOUT = 16,
17449 	IPSTATS_MIB_REASMREQDS = 17,
17450 	IPSTATS_MIB_REASMOKS = 18,
17451 	IPSTATS_MIB_REASMFAILS = 19,
17452 	IPSTATS_MIB_FRAGOKS = 20,
17453 	IPSTATS_MIB_FRAGFAILS = 21,
17454 	IPSTATS_MIB_FRAGCREATES = 22,
17455 	IPSTATS_MIB_INMCASTPKTS = 23,
17456 	IPSTATS_MIB_OUTMCASTPKTS = 24,
17457 	IPSTATS_MIB_INBCASTPKTS = 25,
17458 	IPSTATS_MIB_OUTBCASTPKTS = 26,
17459 	IPSTATS_MIB_INMCASTOCTETS = 27,
17460 	IPSTATS_MIB_OUTMCASTOCTETS = 28,
17461 	IPSTATS_MIB_INBCASTOCTETS = 29,
17462 	IPSTATS_MIB_OUTBCASTOCTETS = 30,
17463 	IPSTATS_MIB_CSUMERRORS = 31,
17464 	IPSTATS_MIB_NOECTPKTS = 32,
17465 	IPSTATS_MIB_ECT1PKTS = 33,
17466 	IPSTATS_MIB_ECT0PKTS = 34,
17467 	IPSTATS_MIB_CEPKTS = 35,
17468 	IPSTATS_MIB_REASM_OVERLAPS = 36,
17469 	__IPSTATS_MIB_MAX = 37,
17470 };
17471 
17472 enum {
17473 	ICMP_MIB_NUM = 0,
17474 	ICMP_MIB_INMSGS = 1,
17475 	ICMP_MIB_INERRORS = 2,
17476 	ICMP_MIB_INDESTUNREACHS = 3,
17477 	ICMP_MIB_INTIMEEXCDS = 4,
17478 	ICMP_MIB_INPARMPROBS = 5,
17479 	ICMP_MIB_INSRCQUENCHS = 6,
17480 	ICMP_MIB_INREDIRECTS = 7,
17481 	ICMP_MIB_INECHOS = 8,
17482 	ICMP_MIB_INECHOREPS = 9,
17483 	ICMP_MIB_INTIMESTAMPS = 10,
17484 	ICMP_MIB_INTIMESTAMPREPS = 11,
17485 	ICMP_MIB_INADDRMASKS = 12,
17486 	ICMP_MIB_INADDRMASKREPS = 13,
17487 	ICMP_MIB_OUTMSGS = 14,
17488 	ICMP_MIB_OUTERRORS = 15,
17489 	ICMP_MIB_OUTDESTUNREACHS = 16,
17490 	ICMP_MIB_OUTTIMEEXCDS = 17,
17491 	ICMP_MIB_OUTPARMPROBS = 18,
17492 	ICMP_MIB_OUTSRCQUENCHS = 19,
17493 	ICMP_MIB_OUTREDIRECTS = 20,
17494 	ICMP_MIB_OUTECHOS = 21,
17495 	ICMP_MIB_OUTECHOREPS = 22,
17496 	ICMP_MIB_OUTTIMESTAMPS = 23,
17497 	ICMP_MIB_OUTTIMESTAMPREPS = 24,
17498 	ICMP_MIB_OUTADDRMASKS = 25,
17499 	ICMP_MIB_OUTADDRMASKREPS = 26,
17500 	ICMP_MIB_CSUMERRORS = 27,
17501 	__ICMP_MIB_MAX = 28,
17502 };
17503 
17504 enum {
17505 	ICMP6_MIB_NUM = 0,
17506 	ICMP6_MIB_INMSGS = 1,
17507 	ICMP6_MIB_INERRORS = 2,
17508 	ICMP6_MIB_OUTMSGS = 3,
17509 	ICMP6_MIB_OUTERRORS = 4,
17510 	ICMP6_MIB_CSUMERRORS = 5,
17511 	__ICMP6_MIB_MAX = 6,
17512 };
17513 
17514 enum {
17515 	TCP_MIB_NUM = 0,
17516 	TCP_MIB_RTOALGORITHM = 1,
17517 	TCP_MIB_RTOMIN = 2,
17518 	TCP_MIB_RTOMAX = 3,
17519 	TCP_MIB_MAXCONN = 4,
17520 	TCP_MIB_ACTIVEOPENS = 5,
17521 	TCP_MIB_PASSIVEOPENS = 6,
17522 	TCP_MIB_ATTEMPTFAILS = 7,
17523 	TCP_MIB_ESTABRESETS = 8,
17524 	TCP_MIB_CURRESTAB = 9,
17525 	TCP_MIB_INSEGS = 10,
17526 	TCP_MIB_OUTSEGS = 11,
17527 	TCP_MIB_RETRANSSEGS = 12,
17528 	TCP_MIB_INERRS = 13,
17529 	TCP_MIB_OUTRSTS = 14,
17530 	TCP_MIB_CSUMERRORS = 15,
17531 	__TCP_MIB_MAX = 16,
17532 };
17533 
17534 enum {
17535 	UDP_MIB_NUM = 0,
17536 	UDP_MIB_INDATAGRAMS = 1,
17537 	UDP_MIB_NOPORTS = 2,
17538 	UDP_MIB_INERRORS = 3,
17539 	UDP_MIB_OUTDATAGRAMS = 4,
17540 	UDP_MIB_RCVBUFERRORS = 5,
17541 	UDP_MIB_SNDBUFERRORS = 6,
17542 	UDP_MIB_CSUMERRORS = 7,
17543 	UDP_MIB_IGNOREDMULTI = 8,
17544 	UDP_MIB_MEMERRORS = 9,
17545 	__UDP_MIB_MAX = 10,
17546 };
17547 
17548 enum {
17549 	LINUX_MIB_NUM = 0,
17550 	LINUX_MIB_SYNCOOKIESSENT = 1,
17551 	LINUX_MIB_SYNCOOKIESRECV = 2,
17552 	LINUX_MIB_SYNCOOKIESFAILED = 3,
17553 	LINUX_MIB_EMBRYONICRSTS = 4,
17554 	LINUX_MIB_PRUNECALLED = 5,
17555 	LINUX_MIB_RCVPRUNED = 6,
17556 	LINUX_MIB_OFOPRUNED = 7,
17557 	LINUX_MIB_OUTOFWINDOWICMPS = 8,
17558 	LINUX_MIB_LOCKDROPPEDICMPS = 9,
17559 	LINUX_MIB_ARPFILTER = 10,
17560 	LINUX_MIB_TIMEWAITED = 11,
17561 	LINUX_MIB_TIMEWAITRECYCLED = 12,
17562 	LINUX_MIB_TIMEWAITKILLED = 13,
17563 	LINUX_MIB_PAWSACTIVEREJECTED = 14,
17564 	LINUX_MIB_PAWSESTABREJECTED = 15,
17565 	LINUX_MIB_DELAYEDACKS = 16,
17566 	LINUX_MIB_DELAYEDACKLOCKED = 17,
17567 	LINUX_MIB_DELAYEDACKLOST = 18,
17568 	LINUX_MIB_LISTENOVERFLOWS = 19,
17569 	LINUX_MIB_LISTENDROPS = 20,
17570 	LINUX_MIB_TCPHPHITS = 21,
17571 	LINUX_MIB_TCPPUREACKS = 22,
17572 	LINUX_MIB_TCPHPACKS = 23,
17573 	LINUX_MIB_TCPRENORECOVERY = 24,
17574 	LINUX_MIB_TCPSACKRECOVERY = 25,
17575 	LINUX_MIB_TCPSACKRENEGING = 26,
17576 	LINUX_MIB_TCPSACKREORDER = 27,
17577 	LINUX_MIB_TCPRENOREORDER = 28,
17578 	LINUX_MIB_TCPTSREORDER = 29,
17579 	LINUX_MIB_TCPFULLUNDO = 30,
17580 	LINUX_MIB_TCPPARTIALUNDO = 31,
17581 	LINUX_MIB_TCPDSACKUNDO = 32,
17582 	LINUX_MIB_TCPLOSSUNDO = 33,
17583 	LINUX_MIB_TCPLOSTRETRANSMIT = 34,
17584 	LINUX_MIB_TCPRENOFAILURES = 35,
17585 	LINUX_MIB_TCPSACKFAILURES = 36,
17586 	LINUX_MIB_TCPLOSSFAILURES = 37,
17587 	LINUX_MIB_TCPFASTRETRANS = 38,
17588 	LINUX_MIB_TCPSLOWSTARTRETRANS = 39,
17589 	LINUX_MIB_TCPTIMEOUTS = 40,
17590 	LINUX_MIB_TCPLOSSPROBES = 41,
17591 	LINUX_MIB_TCPLOSSPROBERECOVERY = 42,
17592 	LINUX_MIB_TCPRENORECOVERYFAIL = 43,
17593 	LINUX_MIB_TCPSACKRECOVERYFAIL = 44,
17594 	LINUX_MIB_TCPRCVCOLLAPSED = 45,
17595 	LINUX_MIB_TCPDSACKOLDSENT = 46,
17596 	LINUX_MIB_TCPDSACKOFOSENT = 47,
17597 	LINUX_MIB_TCPDSACKRECV = 48,
17598 	LINUX_MIB_TCPDSACKOFORECV = 49,
17599 	LINUX_MIB_TCPABORTONDATA = 50,
17600 	LINUX_MIB_TCPABORTONCLOSE = 51,
17601 	LINUX_MIB_TCPABORTONMEMORY = 52,
17602 	LINUX_MIB_TCPABORTONTIMEOUT = 53,
17603 	LINUX_MIB_TCPABORTONLINGER = 54,
17604 	LINUX_MIB_TCPABORTFAILED = 55,
17605 	LINUX_MIB_TCPMEMORYPRESSURES = 56,
17606 	LINUX_MIB_TCPMEMORYPRESSURESCHRONO = 57,
17607 	LINUX_MIB_TCPSACKDISCARD = 58,
17608 	LINUX_MIB_TCPDSACKIGNOREDOLD = 59,
17609 	LINUX_MIB_TCPDSACKIGNOREDNOUNDO = 60,
17610 	LINUX_MIB_TCPSPURIOUSRTOS = 61,
17611 	LINUX_MIB_TCPMD5NOTFOUND = 62,
17612 	LINUX_MIB_TCPMD5UNEXPECTED = 63,
17613 	LINUX_MIB_TCPMD5FAILURE = 64,
17614 	LINUX_MIB_SACKSHIFTED = 65,
17615 	LINUX_MIB_SACKMERGED = 66,
17616 	LINUX_MIB_SACKSHIFTFALLBACK = 67,
17617 	LINUX_MIB_TCPBACKLOGDROP = 68,
17618 	LINUX_MIB_PFMEMALLOCDROP = 69,
17619 	LINUX_MIB_TCPMINTTLDROP = 70,
17620 	LINUX_MIB_TCPDEFERACCEPTDROP = 71,
17621 	LINUX_MIB_IPRPFILTER = 72,
17622 	LINUX_MIB_TCPTIMEWAITOVERFLOW = 73,
17623 	LINUX_MIB_TCPREQQFULLDOCOOKIES = 74,
17624 	LINUX_MIB_TCPREQQFULLDROP = 75,
17625 	LINUX_MIB_TCPRETRANSFAIL = 76,
17626 	LINUX_MIB_TCPRCVCOALESCE = 77,
17627 	LINUX_MIB_TCPBACKLOGCOALESCE = 78,
17628 	LINUX_MIB_TCPOFOQUEUE = 79,
17629 	LINUX_MIB_TCPOFODROP = 80,
17630 	LINUX_MIB_TCPOFOMERGE = 81,
17631 	LINUX_MIB_TCPCHALLENGEACK = 82,
17632 	LINUX_MIB_TCPSYNCHALLENGE = 83,
17633 	LINUX_MIB_TCPFASTOPENACTIVE = 84,
17634 	LINUX_MIB_TCPFASTOPENACTIVEFAIL = 85,
17635 	LINUX_MIB_TCPFASTOPENPASSIVE = 86,
17636 	LINUX_MIB_TCPFASTOPENPASSIVEFAIL = 87,
17637 	LINUX_MIB_TCPFASTOPENLISTENOVERFLOW = 88,
17638 	LINUX_MIB_TCPFASTOPENCOOKIEREQD = 89,
17639 	LINUX_MIB_TCPFASTOPENBLACKHOLE = 90,
17640 	LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES = 91,
17641 	LINUX_MIB_BUSYPOLLRXPACKETS = 92,
17642 	LINUX_MIB_TCPAUTOCORKING = 93,
17643 	LINUX_MIB_TCPFROMZEROWINDOWADV = 94,
17644 	LINUX_MIB_TCPTOZEROWINDOWADV = 95,
17645 	LINUX_MIB_TCPWANTZEROWINDOWADV = 96,
17646 	LINUX_MIB_TCPSYNRETRANS = 97,
17647 	LINUX_MIB_TCPORIGDATASENT = 98,
17648 	LINUX_MIB_TCPHYSTARTTRAINDETECT = 99,
17649 	LINUX_MIB_TCPHYSTARTTRAINCWND = 100,
17650 	LINUX_MIB_TCPHYSTARTDELAYDETECT = 101,
17651 	LINUX_MIB_TCPHYSTARTDELAYCWND = 102,
17652 	LINUX_MIB_TCPACKSKIPPEDSYNRECV = 103,
17653 	LINUX_MIB_TCPACKSKIPPEDPAWS = 104,
17654 	LINUX_MIB_TCPACKSKIPPEDSEQ = 105,
17655 	LINUX_MIB_TCPACKSKIPPEDFINWAIT2 = 106,
17656 	LINUX_MIB_TCPACKSKIPPEDTIMEWAIT = 107,
17657 	LINUX_MIB_TCPACKSKIPPEDCHALLENGE = 108,
17658 	LINUX_MIB_TCPWINPROBE = 109,
17659 	LINUX_MIB_TCPKEEPALIVE = 110,
17660 	LINUX_MIB_TCPMTUPFAIL = 111,
17661 	LINUX_MIB_TCPMTUPSUCCESS = 112,
17662 	LINUX_MIB_TCPDELIVERED = 113,
17663 	LINUX_MIB_TCPDELIVEREDCE = 114,
17664 	LINUX_MIB_TCPACKCOMPRESSED = 115,
17665 	LINUX_MIB_TCPZEROWINDOWDROP = 116,
17666 	LINUX_MIB_TCPRCVQDROP = 117,
17667 	LINUX_MIB_TCPWQUEUETOOBIG = 118,
17668 	LINUX_MIB_TCPFASTOPENPASSIVEALTKEY = 119,
17669 	LINUX_MIB_TCPTIMEOUTREHASH = 120,
17670 	LINUX_MIB_TCPDUPLICATEDATAREHASH = 121,
17671 	LINUX_MIB_TCPDSACKRECVSEGS = 122,
17672 	LINUX_MIB_TCPDSACKIGNOREDDUBIOUS = 123,
17673 	LINUX_MIB_TCPMIGRATEREQSUCCESS = 124,
17674 	LINUX_MIB_TCPMIGRATEREQFAILURE = 125,
17675 	__LINUX_MIB_MAX = 126,
17676 };
17677 
17678 enum {
17679 	LINUX_MIB_XFRMNUM = 0,
17680 	LINUX_MIB_XFRMINERROR = 1,
17681 	LINUX_MIB_XFRMINBUFFERERROR = 2,
17682 	LINUX_MIB_XFRMINHDRERROR = 3,
17683 	LINUX_MIB_XFRMINNOSTATES = 4,
17684 	LINUX_MIB_XFRMINSTATEPROTOERROR = 5,
17685 	LINUX_MIB_XFRMINSTATEMODEERROR = 6,
17686 	LINUX_MIB_XFRMINSTATESEQERROR = 7,
17687 	LINUX_MIB_XFRMINSTATEEXPIRED = 8,
17688 	LINUX_MIB_XFRMINSTATEMISMATCH = 9,
17689 	LINUX_MIB_XFRMINSTATEINVALID = 10,
17690 	LINUX_MIB_XFRMINTMPLMISMATCH = 11,
17691 	LINUX_MIB_XFRMINNOPOLS = 12,
17692 	LINUX_MIB_XFRMINPOLBLOCK = 13,
17693 	LINUX_MIB_XFRMINPOLERROR = 14,
17694 	LINUX_MIB_XFRMOUTERROR = 15,
17695 	LINUX_MIB_XFRMOUTBUNDLEGENERROR = 16,
17696 	LINUX_MIB_XFRMOUTBUNDLECHECKERROR = 17,
17697 	LINUX_MIB_XFRMOUTNOSTATES = 18,
17698 	LINUX_MIB_XFRMOUTSTATEPROTOERROR = 19,
17699 	LINUX_MIB_XFRMOUTSTATEMODEERROR = 20,
17700 	LINUX_MIB_XFRMOUTSTATESEQERROR = 21,
17701 	LINUX_MIB_XFRMOUTSTATEEXPIRED = 22,
17702 	LINUX_MIB_XFRMOUTPOLBLOCK = 23,
17703 	LINUX_MIB_XFRMOUTPOLDEAD = 24,
17704 	LINUX_MIB_XFRMOUTPOLERROR = 25,
17705 	LINUX_MIB_XFRMFWDHDRERROR = 26,
17706 	LINUX_MIB_XFRMOUTSTATEINVALID = 27,
17707 	LINUX_MIB_XFRMACQUIREERROR = 28,
17708 	__LINUX_MIB_XFRMMAX = 29,
17709 };
17710 
17711 enum {
17712 	LINUX_MIB_TLSNUM = 0,
17713 	LINUX_MIB_TLSCURRTXSW = 1,
17714 	LINUX_MIB_TLSCURRRXSW = 2,
17715 	LINUX_MIB_TLSCURRTXDEVICE = 3,
17716 	LINUX_MIB_TLSCURRRXDEVICE = 4,
17717 	LINUX_MIB_TLSTXSW = 5,
17718 	LINUX_MIB_TLSRXSW = 6,
17719 	LINUX_MIB_TLSTXDEVICE = 7,
17720 	LINUX_MIB_TLSRXDEVICE = 8,
17721 	LINUX_MIB_TLSDECRYPTERROR = 9,
17722 	LINUX_MIB_TLSRXDEVICERESYNC = 10,
17723 	LINUX_MIB_TLSDECRYPTRETRY = 11,
17724 	LINUX_MIB_TLSRXNOPADVIOL = 12,
17725 	__LINUX_MIB_TLSMAX = 13,
17726 };
17727 
17728 struct icmpv6_mib_device {
17729 	atomic_long_t mibs[6];
17730 };
17731 
17732 struct icmpv6msg_mib_device {
17733 	atomic_long_t mibs[512];
17734 };
17735 
17736 struct ip_ra_chain {
17737 	struct ip_ra_chain *next;
17738 	struct sock *sk;
17739 	union {
17740 		void (*destructor)(struct sock *);
17741 		struct sock *saved_sk;
17742 	};
17743 	struct callback_head rcu;
17744 };
17745 
17746 struct inet_peer_base {
17747 	struct rb_root rb_root;
17748 	seqlock_t lock;
17749 	int total;
17750 };
17751 
17752 struct fib_notifier_ops {
17753 	int family;
17754 	struct list_head list;
17755 	unsigned int (*fib_seq_read)(struct net *);
17756 	int (*fib_dump)(struct net *, struct notifier_block *, struct netlink_ext_ack *);
17757 	struct module *owner;
17758 	struct callback_head rcu;
17759 };
17760 
17761 struct ipv6_stable_secret {
17762 	bool initialized;
17763 	struct in6_addr secret;
17764 };
17765 
17766 struct ipv6_devconf {
17767 	__s32 forwarding;
17768 	__s32 hop_limit;
17769 	__s32 mtu6;
17770 	__s32 accept_ra;
17771 	__s32 accept_redirects;
17772 	__s32 autoconf;
17773 	__s32 dad_transmits;
17774 	__s32 rtr_solicits;
17775 	__s32 rtr_solicit_interval;
17776 	__s32 rtr_solicit_max_interval;
17777 	__s32 rtr_solicit_delay;
17778 	__s32 force_mld_version;
17779 	__s32 mldv1_unsolicited_report_interval;
17780 	__s32 mldv2_unsolicited_report_interval;
17781 	__s32 use_tempaddr;
17782 	__s32 temp_valid_lft;
17783 	__s32 temp_prefered_lft;
17784 	__s32 regen_max_retry;
17785 	__s32 max_desync_factor;
17786 	__s32 max_addresses;
17787 	__s32 accept_ra_defrtr;
17788 	__u32 ra_defrtr_metric;
17789 	__s32 accept_ra_min_hop_limit;
17790 	__s32 accept_ra_pinfo;
17791 	__s32 ignore_routes_with_linkdown;
17792 	__s32 proxy_ndp;
17793 	__s32 accept_source_route;
17794 	__s32 accept_ra_from_local;
17795 	__s32 disable_ipv6;
17796 	__s32 drop_unicast_in_l2_multicast;
17797 	__s32 accept_dad;
17798 	__s32 force_tllao;
17799 	__s32 ndisc_notify;
17800 	__s32 suppress_frag_ndisc;
17801 	__s32 accept_ra_mtu;
17802 	__s32 drop_unsolicited_na;
17803 	__s32 accept_untracked_na;
17804 	struct ipv6_stable_secret stable_secret;
17805 	__s32 use_oif_addrs_only;
17806 	__s32 keep_addr_on_down;
17807 	__s32 seg6_enabled;
17808 	__u32 enhanced_dad;
17809 	__u32 addr_gen_mode;
17810 	__s32 disable_policy;
17811 	__s32 ndisc_tclass;
17812 	__s32 rpl_seg_enabled;
17813 	__u32 ioam6_id;
17814 	__u32 ioam6_id_wide;
17815 	__u8 ioam6_enabled;
17816 	__u8 ndisc_evict_nocarrier;
17817 	struct ctl_table_header *sysctl_header;
17818 };
17819 
17820 enum nf_inet_hooks {
17821 	NF_INET_PRE_ROUTING = 0,
17822 	NF_INET_LOCAL_IN = 1,
17823 	NF_INET_FORWARD = 2,
17824 	NF_INET_LOCAL_OUT = 3,
17825 	NF_INET_POST_ROUTING = 4,
17826 	NF_INET_NUMHOOKS = 5,
17827 	NF_INET_INGRESS = 5,
17828 };
17829 
17830 enum {
17831 	NFPROTO_UNSPEC = 0,
17832 	NFPROTO_INET = 1,
17833 	NFPROTO_IPV4 = 2,
17834 	NFPROTO_ARP = 3,
17835 	NFPROTO_NETDEV = 5,
17836 	NFPROTO_BRIDGE = 7,
17837 	NFPROTO_IPV6 = 10,
17838 	NFPROTO_DECNET = 12,
17839 	NFPROTO_NUMPROTO = 13,
17840 };
17841 
17842 enum tcp_conntrack {
17843 	TCP_CONNTRACK_NONE = 0,
17844 	TCP_CONNTRACK_SYN_SENT = 1,
17845 	TCP_CONNTRACK_SYN_RECV = 2,
17846 	TCP_CONNTRACK_ESTABLISHED = 3,
17847 	TCP_CONNTRACK_FIN_WAIT = 4,
17848 	TCP_CONNTRACK_CLOSE_WAIT = 5,
17849 	TCP_CONNTRACK_LAST_ACK = 6,
17850 	TCP_CONNTRACK_TIME_WAIT = 7,
17851 	TCP_CONNTRACK_CLOSE = 8,
17852 	TCP_CONNTRACK_LISTEN = 9,
17853 	TCP_CONNTRACK_MAX = 10,
17854 	TCP_CONNTRACK_IGNORE = 11,
17855 	TCP_CONNTRACK_RETRANS = 12,
17856 	TCP_CONNTRACK_UNACK = 13,
17857 	TCP_CONNTRACK_TIMEOUT_MAX = 14,
17858 };
17859 
17860 enum udp_conntrack {
17861 	UDP_CT_UNREPLIED = 0,
17862 	UDP_CT_REPLIED = 1,
17863 	UDP_CT_MAX = 2,
17864 };
17865 
17866 enum {
17867 	XFRM_POLICY_IN = 0,
17868 	XFRM_POLICY_OUT = 1,
17869 	XFRM_POLICY_FWD = 2,
17870 	XFRM_POLICY_MASK = 3,
17871 	XFRM_POLICY_MAX = 3,
17872 };
17873 
17874 enum netns_bpf_attach_type {
17875 	NETNS_BPF_INVALID = -1,
17876 	NETNS_BPF_FLOW_DISSECTOR = 0,
17877 	NETNS_BPF_SK_LOOKUP = 1,
17878 	MAX_NETNS_BPF_ATTACH_TYPE = 2,
17879 };
17880 
17881 typedef struct {
17882 	union {
17883 		void *kernel;
17884 		void *user;
17885 	};
17886 	bool is_kernel: 1;
17887 } sockptr_t;
17888 
17889 typedef enum {
17890 	SS_FREE = 0,
17891 	SS_UNCONNECTED = 1,
17892 	SS_CONNECTING = 2,
17893 	SS_CONNECTED = 3,
17894 	SS_DISCONNECTING = 4,
17895 } socket_state;
17896 
17897 struct socket_wq {
17898 	wait_queue_head_t wait;
17899 	struct fasync_struct *fasync_list;
17900 	long unsigned int flags;
17901 	struct callback_head rcu;
17902 	long: 64;
17903 	long: 64;
17904 	long: 64;
17905 	long: 64;
17906 	long: 64;
17907 	long: 64;
17908 	long: 64;
17909 	long: 64;
17910 	long: 64;
17911 };
17912 
17913 struct proto_ops;
17914 
17915 struct socket {
17916 	socket_state state;
17917 	short int type;
17918 	long unsigned int flags;
17919 	struct file *file;
17920 	struct sock *sk;
17921 	const struct proto_ops *ops;
17922 	long: 64;
17923 	long: 64;
17924 	long: 64;
17925 	long: 64;
17926 	long: 64;
17927 	long: 64;
17928 	long: 64;
17929 	long: 64;
17930 	long: 64;
17931 	long: 64;
17932 	long: 64;
17933 	struct socket_wq wq;
17934 };
17935 
17936 typedef struct {
17937 	size_t written;
17938 	size_t count;
17939 	union {
17940 		char *buf;
17941 		void *data;
17942 	} arg;
17943 	int error;
17944 } read_descriptor_t;
17945 
17946 typedef int (*sk_read_actor_t)(read_descriptor_t *, struct sk_buff *, unsigned int, size_t);
17947 
17948 typedef int (*skb_read_actor_t)(struct sock *, struct sk_buff *);
17949 
17950 struct proto_ops {
17951 	int family;
17952 	struct module *owner;
17953 	int (*release)(struct socket *);
17954 	int (*bind)(struct socket *, struct sockaddr *, int);
17955 	int (*connect)(struct socket *, struct sockaddr *, int, int);
17956 	int (*socketpair)(struct socket *, struct socket *);
17957 	int (*accept)(struct socket *, struct socket *, int, bool);
17958 	int (*getname)(struct socket *, struct sockaddr *, int);
17959 	__poll_t (*poll)(struct file *, struct socket *, struct poll_table_struct *);
17960 	int (*ioctl)(struct socket *, unsigned int, long unsigned int);
17961 	int (*gettstamp)(struct socket *, void *, bool, bool);
17962 	int (*listen)(struct socket *, int);
17963 	int (*shutdown)(struct socket *, int);
17964 	int (*setsockopt)(struct socket *, int, int, sockptr_t, unsigned int);
17965 	int (*getsockopt)(struct socket *, int, int, char *, int *);
17966 	void (*show_fdinfo)(struct seq_file *, struct socket *);
17967 	int (*sendmsg)(struct socket *, struct msghdr *, size_t);
17968 	int (*recvmsg)(struct socket *, struct msghdr *, size_t, int);
17969 	int (*mmap)(struct file *, struct socket *, struct vm_area_struct *);
17970 	ssize_t (*sendpage)(struct socket *, struct page *, int, size_t, int);
17971 	ssize_t (*splice_read)(struct socket *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
17972 	int (*set_peek_off)(struct sock *, int);
17973 	int (*peek_len)(struct socket *);
17974 	int (*read_sock)(struct sock *, read_descriptor_t *, sk_read_actor_t);
17975 	int (*read_skb)(struct sock *, skb_read_actor_t);
17976 	int (*sendpage_locked)(struct sock *, struct page *, int, size_t, int);
17977 	int (*sendmsg_locked)(struct sock *, struct msghdr *, size_t);
17978 	int (*set_rcvlowat)(struct sock *, int);
17979 };
17980 
17981 enum skb_ext_id {
17982 	SKB_EXT_SEC_PATH = 0,
17983 	SKB_EXT_NUM = 1,
17984 };
17985 
17986 enum {
17987 	NAPI_STATE_SCHED = 0,
17988 	NAPI_STATE_MISSED = 1,
17989 	NAPI_STATE_DISABLE = 2,
17990 	NAPI_STATE_NPSVC = 3,
17991 	NAPI_STATE_LISTED = 4,
17992 	NAPI_STATE_NO_BUSY_POLL = 5,
17993 	NAPI_STATE_IN_BUSY_POLL = 6,
17994 	NAPI_STATE_PREFER_BUSY_POLL = 7,
17995 	NAPI_STATE_THREADED = 8,
17996 	NAPI_STATE_SCHED_THREADED = 9,
17997 };
17998 
17999 enum xps_map_type {
18000 	XPS_CPUS = 0,
18001 	XPS_RXQS = 1,
18002 	XPS_MAPS_MAX = 2,
18003 };
18004 
18005 enum bpf_xdp_mode {
18006 	XDP_MODE_SKB = 0,
18007 	XDP_MODE_DRV = 1,
18008 	XDP_MODE_HW = 2,
18009 	__MAX_XDP_MODE = 3,
18010 };
18011 
18012 struct neigh_parms {
18013 	possible_net_t net;
18014 	struct net_device *dev;
18015 	netdevice_tracker dev_tracker;
18016 	struct list_head list;
18017 	int (*neigh_setup)(struct neighbour *);
18018 	struct neigh_table *tbl;
18019 	void *sysctl_table;
18020 	int dead;
18021 	refcount_t refcnt;
18022 	struct callback_head callback_head;
18023 	int reachable_time;
18024 	int qlen;
18025 	int data[14];
18026 	long unsigned int data_state[1];
18027 };
18028 
18029 struct ipv6_devstat {
18030 	struct proc_dir_entry *proc_dir_entry;
18031 	struct ipstats_mib *ipv6;
18032 	struct icmpv6_mib_device *icmpv6dev;
18033 	struct icmpv6msg_mib_device *icmpv6msgdev;
18034 };
18035 
18036 struct ifmcaddr6;
18037 
18038 struct ifacaddr6;
18039 
18040 struct inet6_dev {
18041 	struct net_device *dev;
18042 	netdevice_tracker dev_tracker;
18043 	struct list_head addr_list;
18044 	struct ifmcaddr6 *mc_list;
18045 	struct ifmcaddr6 *mc_tomb;
18046 	unsigned char mc_qrv;
18047 	unsigned char mc_gq_running;
18048 	unsigned char mc_ifc_count;
18049 	unsigned char mc_dad_count;
18050 	long unsigned int mc_v1_seen;
18051 	long unsigned int mc_qi;
18052 	long unsigned int mc_qri;
18053 	long unsigned int mc_maxdelay;
18054 	struct delayed_work mc_gq_work;
18055 	struct delayed_work mc_ifc_work;
18056 	struct delayed_work mc_dad_work;
18057 	struct delayed_work mc_query_work;
18058 	struct delayed_work mc_report_work;
18059 	struct sk_buff_head mc_query_queue;
18060 	struct sk_buff_head mc_report_queue;
18061 	spinlock_t mc_query_lock;
18062 	spinlock_t mc_report_lock;
18063 	struct mutex mc_lock;
18064 	struct ifacaddr6 *ac_list;
18065 	rwlock_t lock;
18066 	refcount_t refcnt;
18067 	__u32 if_flags;
18068 	int dead;
18069 	u32 desync_factor;
18070 	struct list_head tempaddr_list;
18071 	struct in6_addr token;
18072 	struct neigh_parms *nd_parms;
18073 	struct ipv6_devconf cnf;
18074 	struct ipv6_devstat stats;
18075 	struct timer_list rs_timer;
18076 	__s32 rs_interval;
18077 	__u8 rs_probes;
18078 	long unsigned int tstamp;
18079 	struct callback_head rcu;
18080 	unsigned int ra_mtu;
18081 };
18082 
18083 enum {
18084 	NETIF_MSG_DRV_BIT = 0,
18085 	NETIF_MSG_PROBE_BIT = 1,
18086 	NETIF_MSG_LINK_BIT = 2,
18087 	NETIF_MSG_TIMER_BIT = 3,
18088 	NETIF_MSG_IFDOWN_BIT = 4,
18089 	NETIF_MSG_IFUP_BIT = 5,
18090 	NETIF_MSG_RX_ERR_BIT = 6,
18091 	NETIF_MSG_TX_ERR_BIT = 7,
18092 	NETIF_MSG_TX_QUEUED_BIT = 8,
18093 	NETIF_MSG_INTR_BIT = 9,
18094 	NETIF_MSG_TX_DONE_BIT = 10,
18095 	NETIF_MSG_RX_STATUS_BIT = 11,
18096 	NETIF_MSG_PKTDATA_BIT = 12,
18097 	NETIF_MSG_HW_BIT = 13,
18098 	NETIF_MSG_WOL_BIT = 14,
18099 	NETIF_MSG_CLASS_COUNT = 15,
18100 };
18101 
18102 enum {
18103 	RTAX_UNSPEC = 0,
18104 	RTAX_LOCK = 1,
18105 	RTAX_MTU = 2,
18106 	RTAX_WINDOW = 3,
18107 	RTAX_RTT = 4,
18108 	RTAX_RTTVAR = 5,
18109 	RTAX_SSTHRESH = 6,
18110 	RTAX_CWND = 7,
18111 	RTAX_ADVMSS = 8,
18112 	RTAX_REORDERING = 9,
18113 	RTAX_HOPLIMIT = 10,
18114 	RTAX_INITCWND = 11,
18115 	RTAX_FEATURES = 12,
18116 	RTAX_RTO_MIN = 13,
18117 	RTAX_INITRWND = 14,
18118 	RTAX_QUICKACK = 15,
18119 	RTAX_CC_ALGO = 16,
18120 	RTAX_FASTOPEN_NO_COOKIE = 17,
18121 	__RTAX_MAX = 18,
18122 };
18123 
18124 enum {
18125 	NEIGH_VAR_MCAST_PROBES = 0,
18126 	NEIGH_VAR_UCAST_PROBES = 1,
18127 	NEIGH_VAR_APP_PROBES = 2,
18128 	NEIGH_VAR_MCAST_REPROBES = 3,
18129 	NEIGH_VAR_RETRANS_TIME = 4,
18130 	NEIGH_VAR_BASE_REACHABLE_TIME = 5,
18131 	NEIGH_VAR_DELAY_PROBE_TIME = 6,
18132 	NEIGH_VAR_INTERVAL_PROBE_TIME_MS = 7,
18133 	NEIGH_VAR_GC_STALETIME = 8,
18134 	NEIGH_VAR_QUEUE_LEN_BYTES = 9,
18135 	NEIGH_VAR_PROXY_QLEN = 10,
18136 	NEIGH_VAR_ANYCAST_DELAY = 11,
18137 	NEIGH_VAR_PROXY_DELAY = 12,
18138 	NEIGH_VAR_LOCKTIME = 13,
18139 	NEIGH_VAR_QUEUE_LEN = 14,
18140 	NEIGH_VAR_RETRANS_TIME_MS = 15,
18141 	NEIGH_VAR_BASE_REACHABLE_TIME_MS = 16,
18142 	NEIGH_VAR_GC_INTERVAL = 17,
18143 	NEIGH_VAR_GC_THRESH1 = 18,
18144 	NEIGH_VAR_GC_THRESH2 = 19,
18145 	NEIGH_VAR_GC_THRESH3 = 20,
18146 	NEIGH_VAR_MAX = 21,
18147 };
18148 
18149 struct pneigh_entry;
18150 
18151 struct neigh_statistics;
18152 
18153 struct neigh_hash_table;
18154 
18155 struct neigh_table {
18156 	int family;
18157 	unsigned int entry_size;
18158 	unsigned int key_len;
18159 	__be16 protocol;
18160 	__u32 (*hash)(const void *, const struct net_device *, __u32 *);
18161 	bool (*key_eq)(const struct neighbour *, const void *);
18162 	int (*constructor)(struct neighbour *);
18163 	int (*pconstructor)(struct pneigh_entry *);
18164 	void (*pdestructor)(struct pneigh_entry *);
18165 	void (*proxy_redo)(struct sk_buff *);
18166 	int (*is_multicast)(const void *);
18167 	bool (*allow_add)(const struct net_device *, struct netlink_ext_ack *);
18168 	char *id;
18169 	struct neigh_parms parms;
18170 	struct list_head parms_list;
18171 	int gc_interval;
18172 	int gc_thresh1;
18173 	int gc_thresh2;
18174 	int gc_thresh3;
18175 	long unsigned int last_flush;
18176 	struct delayed_work gc_work;
18177 	struct delayed_work managed_work;
18178 	struct timer_list proxy_timer;
18179 	struct sk_buff_head proxy_queue;
18180 	atomic_t entries;
18181 	atomic_t gc_entries;
18182 	struct list_head gc_list;
18183 	struct list_head managed_list;
18184 	rwlock_t lock;
18185 	long unsigned int last_rand;
18186 	struct neigh_statistics *stats;
18187 	struct neigh_hash_table *nht;
18188 	struct pneigh_entry **phash_buckets;
18189 };
18190 
18191 struct neigh_statistics {
18192 	long unsigned int allocs;
18193 	long unsigned int destroys;
18194 	long unsigned int hash_grows;
18195 	long unsigned int res_failed;
18196 	long unsigned int lookups;
18197 	long unsigned int hits;
18198 	long unsigned int rcv_probes_mcast;
18199 	long unsigned int rcv_probes_ucast;
18200 	long unsigned int periodic_gc_runs;
18201 	long unsigned int forced_gc_runs;
18202 	long unsigned int unres_discards;
18203 	long unsigned int table_fulls;
18204 };
18205 
18206 struct neigh_ops {
18207 	int family;
18208 	void (*solicit)(struct neighbour *, struct sk_buff *);
18209 	void (*error_report)(struct neighbour *, struct sk_buff *);
18210 	int (*output)(struct neighbour *, struct sk_buff *);
18211 	int (*connected_output)(struct neighbour *, struct sk_buff *);
18212 };
18213 
18214 struct pneigh_entry {
18215 	struct pneigh_entry *next;
18216 	possible_net_t net;
18217 	struct net_device *dev;
18218 	netdevice_tracker dev_tracker;
18219 	u32 flags;
18220 	u8 protocol;
18221 	u8 key[0];
18222 };
18223 
18224 struct neigh_hash_table {
18225 	struct neighbour **hash_buckets;
18226 	unsigned int hash_shift;
18227 	__u32 hash_rnd[4];
18228 	struct callback_head rcu;
18229 };
18230 
18231 struct lwtunnel_state {
18232 	__u16 type;
18233 	__u16 flags;
18234 	__u16 headroom;
18235 	atomic_t refcnt;
18236 	int (*orig_output)(struct net *, struct sock *, struct sk_buff *);
18237 	int (*orig_input)(struct sk_buff *);
18238 	struct callback_head rcu;
18239 	__u8 data[0];
18240 };
18241 
18242 enum {
18243 	TCP_ESTABLISHED = 1,
18244 	TCP_SYN_SENT = 2,
18245 	TCP_SYN_RECV = 3,
18246 	TCP_FIN_WAIT1 = 4,
18247 	TCP_FIN_WAIT2 = 5,
18248 	TCP_TIME_WAIT = 6,
18249 	TCP_CLOSE = 7,
18250 	TCP_CLOSE_WAIT = 8,
18251 	TCP_LAST_ACK = 9,
18252 	TCP_LISTEN = 10,
18253 	TCP_CLOSING = 11,
18254 	TCP_NEW_SYN_RECV = 12,
18255 	TCP_MAX_STATES = 13,
18256 };
18257 
18258 struct smc_hashinfo;
18259 
18260 struct sk_psock;
18261 
18262 struct request_sock_ops;
18263 
18264 struct timewait_sock_ops;
18265 
18266 struct udp_table;
18267 
18268 struct raw_hashinfo;
18269 
18270 struct proto {
18271 	void (*close)(struct sock *, long int);
18272 	int (*pre_connect)(struct sock *, struct sockaddr *, int);
18273 	int (*connect)(struct sock *, struct sockaddr *, int);
18274 	int (*disconnect)(struct sock *, int);
18275 	struct sock * (*accept)(struct sock *, int, int *, bool);
18276 	int (*ioctl)(struct sock *, int, long unsigned int);
18277 	int (*init)(struct sock *);
18278 	void (*destroy)(struct sock *);
18279 	void (*shutdown)(struct sock *, int);
18280 	int (*setsockopt)(struct sock *, int, int, sockptr_t, unsigned int);
18281 	int (*getsockopt)(struct sock *, int, int, char *, int *);
18282 	void (*keepalive)(struct sock *, int);
18283 	int (*sendmsg)(struct sock *, struct msghdr *, size_t);
18284 	int (*recvmsg)(struct sock *, struct msghdr *, size_t, int, int *);
18285 	int (*sendpage)(struct sock *, struct page *, int, size_t, int);
18286 	int (*bind)(struct sock *, struct sockaddr *, int);
18287 	int (*bind_add)(struct sock *, struct sockaddr *, int);
18288 	int (*backlog_rcv)(struct sock *, struct sk_buff *);
18289 	bool (*bpf_bypass_getsockopt)(int, int);
18290 	void (*release_cb)(struct sock *);
18291 	int (*hash)(struct sock *);
18292 	void (*unhash)(struct sock *);
18293 	void (*rehash)(struct sock *);
18294 	int (*get_port)(struct sock *, short unsigned int);
18295 	void (*put_port)(struct sock *);
18296 	int (*psock_update_sk_prot)(struct sock *, struct sk_psock *, bool);
18297 	unsigned int inuse_idx;
18298 	bool (*stream_memory_free)(const struct sock *, int);
18299 	bool (*sock_is_readable)(struct sock *);
18300 	void (*enter_memory_pressure)(struct sock *);
18301 	void (*leave_memory_pressure)(struct sock *);
18302 	atomic_long_t *memory_allocated;
18303 	int *per_cpu_fw_alloc;
18304 	struct percpu_counter *sockets_allocated;
18305 	long unsigned int *memory_pressure;
18306 	long int *sysctl_mem;
18307 	int *sysctl_wmem;
18308 	int *sysctl_rmem;
18309 	u32 sysctl_wmem_offset;
18310 	u32 sysctl_rmem_offset;
18311 	int max_header;
18312 	bool no_autobind;
18313 	struct kmem_cache *slab;
18314 	unsigned int obj_size;
18315 	slab_flags_t slab_flags;
18316 	unsigned int useroffset;
18317 	unsigned int usersize;
18318 	unsigned int *orphan_count;
18319 	struct request_sock_ops *rsk_prot;
18320 	struct timewait_sock_ops *twsk_prot;
18321 	union {
18322 		struct inet_hashinfo *hashinfo;
18323 		struct udp_table *udp_table;
18324 		struct raw_hashinfo *raw_hash;
18325 		struct smc_hashinfo *smc_hash;
18326 	} h;
18327 	struct module *owner;
18328 	char name[32];
18329 	struct list_head node;
18330 	int (*diag_destroy)(struct sock *, int);
18331 };
18332 
18333 struct request_sock;
18334 
18335 struct request_sock_ops {
18336 	int family;
18337 	unsigned int obj_size;
18338 	struct kmem_cache *slab;
18339 	char *slab_name;
18340 	int (*rtx_syn_ack)(const struct sock *, struct request_sock *);
18341 	void (*send_ack)(const struct sock *, struct sk_buff *, struct request_sock *);
18342 	void (*send_reset)(const struct sock *, struct sk_buff *);
18343 	void (*destructor)(struct request_sock *);
18344 	void (*syn_ack_timeout)(const struct request_sock *);
18345 };
18346 
18347 struct timewait_sock_ops {
18348 	struct kmem_cache *twsk_slab;
18349 	char *twsk_slab_name;
18350 	unsigned int twsk_obj_size;
18351 	int (*twsk_unique)(struct sock *, struct sock *, void *);
18352 	void (*twsk_destructor)(struct sock *);
18353 };
18354 
18355 struct saved_syn;
18356 
18357 struct request_sock {
18358 	struct sock_common __req_common;
18359 	struct request_sock *dl_next;
18360 	u16 mss;
18361 	u8 num_retrans;
18362 	u8 syncookie: 1;
18363 	u8 num_timeout: 7;
18364 	u32 ts_recent;
18365 	struct timer_list rsk_timer;
18366 	const struct request_sock_ops *rsk_ops;
18367 	struct sock *sk;
18368 	struct saved_syn *saved_syn;
18369 	u32 secid;
18370 	u32 peer_secid;
18371 	u32 timeout;
18372 };
18373 
18374 struct saved_syn {
18375 	u32 mac_hdrlen;
18376 	u32 network_hdrlen;
18377 	u32 tcp_hdrlen;
18378 	u8 data[0];
18379 };
18380 
18381 enum tsq_enum {
18382 	TSQ_THROTTLED = 0,
18383 	TSQ_QUEUED = 1,
18384 	TCP_TSQ_DEFERRED = 2,
18385 	TCP_WRITE_TIMER_DEFERRED = 3,
18386 	TCP_DELACK_TIMER_DEFERRED = 4,
18387 	TCP_MTU_REDUCED_DEFERRED = 5,
18388 };
18389 
18390 struct ip6_sf_list {
18391 	struct ip6_sf_list *sf_next;
18392 	struct in6_addr sf_addr;
18393 	long unsigned int sf_count[2];
18394 	unsigned char sf_gsresp;
18395 	unsigned char sf_oldin;
18396 	unsigned char sf_crcount;
18397 	struct callback_head rcu;
18398 };
18399 
18400 struct ifmcaddr6 {
18401 	struct in6_addr mca_addr;
18402 	struct inet6_dev *idev;
18403 	struct ifmcaddr6 *next;
18404 	struct ip6_sf_list *mca_sources;
18405 	struct ip6_sf_list *mca_tomb;
18406 	unsigned int mca_sfmode;
18407 	unsigned char mca_crcount;
18408 	long unsigned int mca_sfcount[2];
18409 	struct delayed_work mca_work;
18410 	unsigned int mca_flags;
18411 	int mca_users;
18412 	refcount_t mca_refcnt;
18413 	long unsigned int mca_cstamp;
18414 	long unsigned int mca_tstamp;
18415 	struct callback_head rcu;
18416 };
18417 
18418 struct ifacaddr6 {
18419 	struct in6_addr aca_addr;
18420 	struct fib6_info *aca_rt;
18421 	struct ifacaddr6 *aca_next;
18422 	struct hlist_node aca_addr_lst;
18423 	int aca_users;
18424 	refcount_t aca_refcnt;
18425 	long unsigned int aca_cstamp;
18426 	long unsigned int aca_tstamp;
18427 	struct callback_head rcu;
18428 };
18429 
18430 enum {
18431 	__ND_OPT_PREFIX_INFO_END = 0,
18432 	ND_OPT_SOURCE_LL_ADDR = 1,
18433 	ND_OPT_TARGET_LL_ADDR = 2,
18434 	ND_OPT_PREFIX_INFO = 3,
18435 	ND_OPT_REDIRECT_HDR = 4,
18436 	ND_OPT_MTU = 5,
18437 	ND_OPT_NONCE = 14,
18438 	__ND_OPT_ARRAY_MAX = 15,
18439 	ND_OPT_ROUTE_INFO = 24,
18440 	ND_OPT_RDNSS = 25,
18441 	ND_OPT_DNSSL = 31,
18442 	ND_OPT_6CO = 34,
18443 	ND_OPT_CAPTIVE_PORTAL = 37,
18444 	ND_OPT_PREF64 = 38,
18445 	__ND_OPT_MAX = 39,
18446 };
18447 
18448 struct nd_opt_hdr {
18449 	__u8 nd_opt_type;
18450 	__u8 nd_opt_len;
18451 };
18452 
18453 struct ndisc_options {
18454 	struct nd_opt_hdr *nd_opt_array[15];
18455 	struct nd_opt_hdr *nd_useropts;
18456 	struct nd_opt_hdr *nd_useropts_end;
18457 };
18458 
18459 struct prefix_info {
18460 	__u8 type;
18461 	__u8 length;
18462 	__u8 prefix_len;
18463 	__u8 reserved: 6;
18464 	__u8 autoconf: 1;
18465 	__u8 onlink: 1;
18466 	__be32 valid;
18467 	__be32 prefered;
18468 	__be32 reserved2;
18469 	struct in6_addr prefix;
18470 };
18471 
18472 struct mem_cgroup_tree_per_node {
18473 	struct rb_root rb_root;
18474 	struct rb_node *rb_rightmost;
18475 	spinlock_t lock;
18476 };
18477 
18478 struct mem_cgroup_tree {
18479 	struct mem_cgroup_tree_per_node *rb_tree_per_node[256];
18480 };
18481 
18482 struct mem_cgroup_eventfd_list {
18483 	struct list_head list;
18484 	struct eventfd_ctx *eventfd;
18485 };
18486 
18487 struct mem_cgroup_event {
18488 	struct mem_cgroup *memcg;
18489 	struct eventfd_ctx *eventfd;
18490 	struct list_head list;
18491 	int (*register_event)(struct mem_cgroup *, struct eventfd_ctx *, const char *);
18492 	void (*unregister_event)(struct mem_cgroup *, struct eventfd_ctx *);
18493 	poll_table pt;
18494 	wait_queue_head_t *wqh;
18495 	wait_queue_entry_t wait;
18496 	struct work_struct remove;
18497 };
18498 
18499 struct move_charge_struct {
18500 	spinlock_t lock;
18501 	struct mm_struct *mm;
18502 	struct mem_cgroup *from;
18503 	struct mem_cgroup *to;
18504 	long unsigned int flags;
18505 	long unsigned int precharge;
18506 	long unsigned int moved_charge;
18507 	long unsigned int moved_swap;
18508 	struct task_struct *moving_task;
18509 	wait_queue_head_t waitq;
18510 };
18511 
18512 enum res_type {
18513 	_MEM = 0,
18514 	_MEMSWAP = 1,
18515 	_KMEM = 2,
18516 	_TCP = 3,
18517 };
18518 
18519 struct memory_stat {
18520 	const char *name;
18521 	unsigned int idx;
18522 };
18523 
18524 struct oom_wait_info {
18525 	struct mem_cgroup *memcg;
18526 	wait_queue_entry_t wait;
18527 };
18528 
18529 struct memcg_stock_pcp {
18530 	local_lock_t stock_lock;
18531 	struct mem_cgroup *cached;
18532 	unsigned int nr_pages;
18533 	struct obj_cgroup *cached_objcg;
18534 	struct pglist_data *cached_pgdat;
18535 	unsigned int nr_bytes;
18536 	int nr_slab_reclaimable_b;
18537 	int nr_slab_unreclaimable_b;
18538 	struct work_struct work;
18539 	long unsigned int flags;
18540 };
18541 
18542 enum {
18543 	RES_USAGE = 0,
18544 	RES_LIMIT = 1,
18545 	RES_MAX_USAGE = 2,
18546 	RES_FAILCNT = 3,
18547 	RES_SOFT_LIMIT = 4,
18548 };
18549 
18550 union mc_target {
18551 	struct page *page;
18552 	swp_entry_t ent;
18553 };
18554 
18555 enum mc_target_type {
18556 	MC_TARGET_NONE = 0,
18557 	MC_TARGET_PAGE = 1,
18558 	MC_TARGET_SWAP = 2,
18559 	MC_TARGET_DEVICE = 3,
18560 };
18561 
18562 struct uncharge_gather {
18563 	struct mem_cgroup *memcg;
18564 	long unsigned int nr_memory;
18565 	long unsigned int pgpgout;
18566 	long unsigned int nr_kmem;
18567 	int nid;
18568 };
18569 
18570 struct numa_stat {
18571 	const char *name;
18572 	unsigned int lru_mask;
18573 };
18574 
18575 struct fs_struct {
18576 	int users;
18577 	spinlock_t lock;
18578 	seqcount_spinlock_t seq;
18579 	int umask;
18580 	int in_exec;
18581 	struct path root;
18582 	struct path pwd;
18583 };
18584 
18585 typedef u32 nlink_t;
18586 
18587 struct linux_binprm;
18588 
18589 struct coredump_params;
18590 
18591 struct linux_binfmt {
18592 	struct list_head lh;
18593 	struct module *module;
18594 	int (*load_binary)(struct linux_binprm *);
18595 	int (*load_shlib)(struct file *);
18596 	int (*core_dump)(struct coredump_params *);
18597 	long unsigned int min_coredump;
18598 };
18599 
18600 struct proc_ops {
18601 	unsigned int proc_flags;
18602 	int (*proc_open)(struct inode *, struct file *);
18603 	ssize_t (*proc_read)(struct file *, char *, size_t, loff_t *);
18604 	ssize_t (*proc_read_iter)(struct kiocb *, struct iov_iter *);
18605 	ssize_t (*proc_write)(struct file *, const char *, size_t, loff_t *);
18606 	loff_t (*proc_lseek)(struct file *, loff_t, int);
18607 	int (*proc_release)(struct inode *, struct file *);
18608 	__poll_t (*proc_poll)(struct file *, struct poll_table_struct *);
18609 	long int (*proc_ioctl)(struct file *, unsigned int, long unsigned int);
18610 	int (*proc_mmap)(struct file *, struct vm_area_struct *);
18611 	long unsigned int (*proc_get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
18612 };
18613 
18614 enum proc_hidepid {
18615 	HIDEPID_OFF = 0,
18616 	HIDEPID_NO_ACCESS = 1,
18617 	HIDEPID_INVISIBLE = 2,
18618 	HIDEPID_NOT_PTRACEABLE = 4,
18619 };
18620 
18621 enum proc_pidonly {
18622 	PROC_PIDONLY_OFF = 0,
18623 	PROC_PIDONLY_ON = 1,
18624 };
18625 
18626 struct proc_fs_info {
18627 	struct pid_namespace *pid_ns;
18628 	struct dentry *proc_self;
18629 	struct dentry *proc_thread_self;
18630 	kgid_t pid_gid;
18631 	enum proc_hidepid hide_pid;
18632 	enum proc_pidonly pidonly;
18633 };
18634 
18635 typedef int (*proc_write_t)(struct file *, char *, size_t);
18636 
18637 enum {
18638 	PROC_ROOT_INO = 1,
18639 	PROC_IPC_INIT_INO = 4026531839,
18640 	PROC_UTS_INIT_INO = 4026531838,
18641 	PROC_USER_INIT_INO = 4026531837,
18642 	PROC_PID_INIT_INO = 4026531836,
18643 	PROC_CGROUP_INIT_INO = 4026531835,
18644 	PROC_TIME_INIT_INO = 4026531834,
18645 };
18646 
18647 struct linux_binprm {
18648 	struct vm_area_struct *vma;
18649 	long unsigned int vma_pages;
18650 	struct mm_struct *mm;
18651 	long unsigned int p;
18652 	long unsigned int argmin;
18653 	unsigned int have_execfd: 1;
18654 	unsigned int execfd_creds: 1;
18655 	unsigned int secureexec: 1;
18656 	unsigned int point_of_no_return: 1;
18657 	struct file *executable;
18658 	struct file *interpreter;
18659 	struct file *file;
18660 	struct cred *cred;
18661 	int unsafe;
18662 	unsigned int per_clear;
18663 	int argc;
18664 	int envc;
18665 	const char *filename;
18666 	const char *interp;
18667 	const char *fdpath;
18668 	unsigned int interp_flags;
18669 	int execfd;
18670 	long unsigned int loader;
18671 	long unsigned int exec;
18672 	struct rlimit rlim_stack;
18673 	char buf[256];
18674 };
18675 
18676 struct proc_dir_entry {
18677 	atomic_t in_use;
18678 	refcount_t refcnt;
18679 	struct list_head pde_openers;
18680 	spinlock_t pde_unload_lock;
18681 	struct completion *pde_unload_completion;
18682 	const struct inode_operations *proc_iops;
18683 	union {
18684 		const struct proc_ops *proc_ops;
18685 		const struct file_operations *proc_dir_ops;
18686 	};
18687 	const struct dentry_operations *proc_dops;
18688 	union {
18689 		const struct seq_operations *seq_ops;
18690 		int (*single_show)(struct seq_file *, void *);
18691 	};
18692 	proc_write_t write;
18693 	void *data;
18694 	unsigned int state_size;
18695 	unsigned int low_ino;
18696 	nlink_t nlink;
18697 	kuid_t uid;
18698 	kgid_t gid;
18699 	loff_t size;
18700 	struct proc_dir_entry *parent;
18701 	struct rb_root subdir;
18702 	struct rb_node subdir_node;
18703 	char *name;
18704 	umode_t mode;
18705 	u8 flags;
18706 	u8 namelen;
18707 	char inline_name[0];
18708 };
18709 
18710 struct proc_fs_context {
18711 	struct pid_namespace *pid_ns;
18712 	unsigned int mask;
18713 	enum proc_hidepid hidepid;
18714 	int gid;
18715 	enum proc_pidonly pidonly;
18716 };
18717 
18718 enum proc_param {
18719 	Opt_gid = 0,
18720 	Opt_hidepid = 1,
18721 	Opt_subset = 2,
18722 };
18723 
18724 struct kernel_cpustat {
18725 	u64 cpustat[10];
18726 };
18727 
18728 struct kernel_stat {
18729 	long unsigned int irqs_sum;
18730 	unsigned int softirqs[10];
18731 };
18732 
18733 enum {
18734 	PROC_ENTRY_PERMANENT = 1,
18735 };
18736 
18737 enum kernfs_node_type {
18738 	KERNFS_DIR = 1,
18739 	KERNFS_FILE = 2,
18740 	KERNFS_LINK = 4,
18741 };
18742 
18743 enum kernfs_node_flag {
18744 	KERNFS_ACTIVATED = 16,
18745 	KERNFS_NS = 32,
18746 	KERNFS_HAS_SEQ_SHOW = 64,
18747 	KERNFS_HAS_MMAP = 128,
18748 	KERNFS_LOCKDEP = 256,
18749 	KERNFS_SUICIDAL = 1024,
18750 	KERNFS_SUICIDED = 2048,
18751 	KERNFS_EMPTY_DIR = 4096,
18752 	KERNFS_HAS_RELEASE = 8192,
18753 };
18754 
18755 enum kernfs_root_flag {
18756 	KERNFS_ROOT_CREATE_DEACTIVATED = 1,
18757 	KERNFS_ROOT_EXTRA_OPEN_PERM_CHECK = 2,
18758 	KERNFS_ROOT_SUPPORT_EXPORTOP = 4,
18759 	KERNFS_ROOT_SUPPORT_USER_XATTR = 8,
18760 };
18761 
18762 struct kernfs_syscall_ops;
18763 
18764 struct kernfs_root {
18765 	struct kernfs_node *kn;
18766 	unsigned int flags;
18767 	struct idr ino_idr;
18768 	u32 last_id_lowbits;
18769 	u32 id_highbits;
18770 	struct kernfs_syscall_ops *syscall_ops;
18771 	struct list_head supers;
18772 	wait_queue_head_t deactivate_waitq;
18773 	struct rw_semaphore kernfs_rwsem;
18774 };
18775 
18776 struct simple_xattrs {
18777 	struct list_head head;
18778 	spinlock_t lock;
18779 };
18780 
18781 struct kernfs_iattrs {
18782 	kuid_t ia_uid;
18783 	kgid_t ia_gid;
18784 	struct timespec64 ia_atime;
18785 	struct timespec64 ia_mtime;
18786 	struct timespec64 ia_ctime;
18787 	struct simple_xattrs xattrs;
18788 	atomic_t nr_user_xattrs;
18789 	atomic_t user_xattr_size;
18790 };
18791 
18792 struct kernfs_syscall_ops {
18793 	int (*show_options)(struct seq_file *, struct kernfs_root *);
18794 	int (*mkdir)(struct kernfs_node *, const char *, umode_t);
18795 	int (*rmdir)(struct kernfs_node *);
18796 	int (*rename)(struct kernfs_node *, struct kernfs_node *, const char *);
18797 	int (*show_path)(struct seq_file *, struct kernfs_node *, struct kernfs_root *);
18798 };
18799 
18800 typedef __u16 __le16;
18801 
18802 typedef __u32 __le32;
18803 
18804 struct buffer_head;
18805 
18806 typedef void bh_end_io_t(struct buffer_head *, int);
18807 
18808 struct buffer_head {
18809 	long unsigned int b_state;
18810 	struct buffer_head *b_this_page;
18811 	struct page *b_page;
18812 	sector_t b_blocknr;
18813 	size_t b_size;
18814 	char *b_data;
18815 	struct block_device *b_bdev;
18816 	bh_end_io_t *b_end_io;
18817 	void *b_private;
18818 	struct list_head b_assoc_buffers;
18819 	struct address_space *b_assoc_map;
18820 	atomic_t b_count;
18821 	spinlock_t b_uptodate_lock;
18822 };
18823 
18824 struct bgl_lock {
18825 	spinlock_t lock;
18826 	long: 64;
18827 	long: 64;
18828 	long: 64;
18829 	long: 64;
18830 	long: 64;
18831 	long: 64;
18832 	long: 64;
18833 	long: 64;
18834 	long: 64;
18835 	long: 64;
18836 	long: 64;
18837 	long: 64;
18838 	long: 64;
18839 	long: 64;
18840 	long: 64;
18841 };
18842 
18843 struct blockgroup_lock {
18844 	struct bgl_lock locks[128];
18845 };
18846 
18847 typedef int ext2_grpblk_t;
18848 
18849 typedef long unsigned int ext2_fsblk_t;
18850 
18851 struct ext2_reserve_window {
18852 	ext2_fsblk_t _rsv_start;
18853 	ext2_fsblk_t _rsv_end;
18854 };
18855 
18856 struct ext2_reserve_window_node {
18857 	struct rb_node rsv_node;
18858 	__u32 rsv_goal_size;
18859 	__u32 rsv_alloc_hit;
18860 	struct ext2_reserve_window rsv_window;
18861 };
18862 
18863 struct ext2_block_alloc_info {
18864 	struct ext2_reserve_window_node rsv_window_node;
18865 	__u32 last_alloc_logical_block;
18866 	ext2_fsblk_t last_alloc_physical_block;
18867 };
18868 
18869 struct mb_cache;
18870 
18871 struct ext2_super_block;
18872 
18873 struct dax_device;
18874 
18875 struct ext2_sb_info {
18876 	long unsigned int s_frag_size;
18877 	long unsigned int s_frags_per_block;
18878 	long unsigned int s_inodes_per_block;
18879 	long unsigned int s_frags_per_group;
18880 	long unsigned int s_blocks_per_group;
18881 	long unsigned int s_inodes_per_group;
18882 	long unsigned int s_itb_per_group;
18883 	long unsigned int s_gdb_count;
18884 	long unsigned int s_desc_per_block;
18885 	long unsigned int s_groups_count;
18886 	long unsigned int s_overhead_last;
18887 	long unsigned int s_blocks_last;
18888 	struct buffer_head *s_sbh;
18889 	struct ext2_super_block *s_es;
18890 	struct buffer_head **s_group_desc;
18891 	long unsigned int s_mount_opt;
18892 	long unsigned int s_sb_block;
18893 	kuid_t s_resuid;
18894 	kgid_t s_resgid;
18895 	short unsigned int s_mount_state;
18896 	short unsigned int s_pad;
18897 	int s_addr_per_block_bits;
18898 	int s_desc_per_block_bits;
18899 	int s_inode_size;
18900 	int s_first_ino;
18901 	spinlock_t s_next_gen_lock;
18902 	u32 s_next_generation;
18903 	long unsigned int s_dir_count;
18904 	u8 *s_debts;
18905 	struct percpu_counter s_freeblocks_counter;
18906 	struct percpu_counter s_freeinodes_counter;
18907 	struct percpu_counter s_dirs_counter;
18908 	struct blockgroup_lock *s_blockgroup_lock;
18909 	spinlock_t s_rsv_window_lock;
18910 	struct rb_root s_rsv_window_root;
18911 	struct ext2_reserve_window_node s_rsv_window_head;
18912 	spinlock_t s_lock;
18913 	struct mb_cache *s_ea_block_cache;
18914 	struct dax_device *s_daxdev;
18915 	u64 s_dax_part_off;
18916 };
18917 
18918 struct ext2_super_block {
18919 	__le32 s_inodes_count;
18920 	__le32 s_blocks_count;
18921 	__le32 s_r_blocks_count;
18922 	__le32 s_free_blocks_count;
18923 	__le32 s_free_inodes_count;
18924 	__le32 s_first_data_block;
18925 	__le32 s_log_block_size;
18926 	__le32 s_log_frag_size;
18927 	__le32 s_blocks_per_group;
18928 	__le32 s_frags_per_group;
18929 	__le32 s_inodes_per_group;
18930 	__le32 s_mtime;
18931 	__le32 s_wtime;
18932 	__le16 s_mnt_count;
18933 	__le16 s_max_mnt_count;
18934 	__le16 s_magic;
18935 	__le16 s_state;
18936 	__le16 s_errors;
18937 	__le16 s_minor_rev_level;
18938 	__le32 s_lastcheck;
18939 	__le32 s_checkinterval;
18940 	__le32 s_creator_os;
18941 	__le32 s_rev_level;
18942 	__le16 s_def_resuid;
18943 	__le16 s_def_resgid;
18944 	__le32 s_first_ino;
18945 	__le16 s_inode_size;
18946 	__le16 s_block_group_nr;
18947 	__le32 s_feature_compat;
18948 	__le32 s_feature_incompat;
18949 	__le32 s_feature_ro_compat;
18950 	__u8 s_uuid[16];
18951 	char s_volume_name[16];
18952 	char s_last_mounted[64];
18953 	__le32 s_algorithm_usage_bitmap;
18954 	__u8 s_prealloc_blocks;
18955 	__u8 s_prealloc_dir_blocks;
18956 	__u16 s_padding1;
18957 	__u8 s_journal_uuid[16];
18958 	__u32 s_journal_inum;
18959 	__u32 s_journal_dev;
18960 	__u32 s_last_orphan;
18961 	__u32 s_hash_seed[4];
18962 	__u8 s_def_hash_version;
18963 	__u8 s_reserved_char_pad;
18964 	__u16 s_reserved_word_pad;
18965 	__le32 s_default_mount_opts;
18966 	__le32 s_first_meta_bg;
18967 	__u32 s_reserved[190];
18968 };
18969 
18970 struct ext2_group_desc {
18971 	__le32 bg_block_bitmap;
18972 	__le32 bg_inode_bitmap;
18973 	__le32 bg_inode_table;
18974 	__le16 bg_free_blocks_count;
18975 	__le16 bg_free_inodes_count;
18976 	__le16 bg_used_dirs_count;
18977 	__le16 bg_pad;
18978 	__le32 bg_reserved[3];
18979 };
18980 
18981 struct ext2_inode_info {
18982 	__le32 i_data[15];
18983 	__u32 i_flags;
18984 	__u32 i_faddr;
18985 	__u8 i_frag_no;
18986 	__u8 i_frag_size;
18987 	__u16 i_state;
18988 	__u32 i_file_acl;
18989 	__u32 i_dir_acl;
18990 	__u32 i_dtime;
18991 	__u32 i_block_group;
18992 	struct ext2_block_alloc_info *i_block_alloc_info;
18993 	__u32 i_dir_start_lookup;
18994 	struct rw_semaphore xattr_sem;
18995 	rwlock_t i_meta_lock;
18996 	struct mutex truncate_mutex;
18997 	struct inode vfs_inode;
18998 	struct list_head i_orphan;
18999 };
19000 
19001 typedef u16 wchar_t;
19002 
19003 struct nls_table {
19004 	const char *charset;
19005 	const char *alias;
19006 	int (*uni2char)(wchar_t, unsigned char *, int);
19007 	int (*char2uni)(const unsigned char *, int, wchar_t *);
19008 	const unsigned char *charset2lower;
19009 	const unsigned char *charset2upper;
19010 	struct module *owner;
19011 	struct nls_table *next;
19012 };
19013 
19014 struct fat_mount_options {
19015 	kuid_t fs_uid;
19016 	kgid_t fs_gid;
19017 	short unsigned int fs_fmask;
19018 	short unsigned int fs_dmask;
19019 	short unsigned int codepage;
19020 	int time_offset;
19021 	char *iocharset;
19022 	short unsigned int shortname;
19023 	unsigned char name_check;
19024 	unsigned char errors;
19025 	unsigned char nfs;
19026 	short unsigned int allow_utime;
19027 	unsigned int quiet: 1;
19028 	unsigned int showexec: 1;
19029 	unsigned int sys_immutable: 1;
19030 	unsigned int dotsOK: 1;
19031 	unsigned int isvfat: 1;
19032 	unsigned int utf8: 1;
19033 	unsigned int unicode_xlate: 1;
19034 	unsigned int numtail: 1;
19035 	unsigned int flush: 1;
19036 	unsigned int nocase: 1;
19037 	unsigned int usefree: 1;
19038 	unsigned int tz_set: 1;
19039 	unsigned int rodir: 1;
19040 	unsigned int discard: 1;
19041 	unsigned int dos1xfloppy: 1;
19042 };
19043 
19044 struct fatent_operations;
19045 
19046 struct msdos_sb_info {
19047 	short unsigned int sec_per_clus;
19048 	short unsigned int cluster_bits;
19049 	unsigned int cluster_size;
19050 	unsigned char fats;
19051 	unsigned char fat_bits;
19052 	short unsigned int fat_start;
19053 	long unsigned int fat_length;
19054 	long unsigned int dir_start;
19055 	short unsigned int dir_entries;
19056 	long unsigned int data_start;
19057 	long unsigned int max_cluster;
19058 	long unsigned int root_cluster;
19059 	long unsigned int fsinfo_sector;
19060 	struct mutex fat_lock;
19061 	struct mutex nfs_build_inode_lock;
19062 	struct mutex s_lock;
19063 	unsigned int prev_free;
19064 	unsigned int free_clusters;
19065 	unsigned int free_clus_valid;
19066 	struct fat_mount_options options;
19067 	struct nls_table *nls_disk;
19068 	struct nls_table *nls_io;
19069 	const void *dir_ops;
19070 	int dir_per_block;
19071 	int dir_per_block_bits;
19072 	unsigned int vol_id;
19073 	int fatent_shift;
19074 	const struct fatent_operations *fatent_ops;
19075 	struct inode *fat_inode;
19076 	struct inode *fsinfo_inode;
19077 	struct ratelimit_state ratelimit;
19078 	spinlock_t inode_hash_lock;
19079 	struct hlist_head inode_hashtable[256];
19080 	spinlock_t dir_hash_lock;
19081 	struct hlist_head dir_hashtable[256];
19082 	unsigned int dirty;
19083 	struct callback_head rcu;
19084 };
19085 
19086 struct fat_entry;
19087 
19088 struct fatent_operations {
19089 	void (*ent_blocknr)(struct super_block *, int, int *, sector_t *);
19090 	void (*ent_set_ptr)(struct fat_entry *, int);
19091 	int (*ent_bread)(struct super_block *, struct fat_entry *, int, sector_t);
19092 	int (*ent_get)(struct fat_entry *);
19093 	void (*ent_put)(struct fat_entry *, int);
19094 	int (*ent_next)(struct fat_entry *);
19095 };
19096 
19097 struct msdos_inode_info {
19098 	spinlock_t cache_lru_lock;
19099 	struct list_head cache_lru;
19100 	int nr_caches;
19101 	unsigned int cache_valid_id;
19102 	loff_t mmu_private;
19103 	int i_start;
19104 	int i_logstart;
19105 	int i_attrs;
19106 	loff_t i_pos;
19107 	struct hlist_node i_fat_hash;
19108 	struct hlist_node i_dir_hash;
19109 	struct rw_semaphore truncate_lock;
19110 	struct timespec64 i_crtime;
19111 	struct inode vfs_inode;
19112 };
19113 
19114 struct fat_entry {
19115 	int entry;
19116 	union {
19117 		u8 *ent12_p[2];
19118 		__le16 *ent16_p;
19119 		__le32 *ent32_p;
19120 	} u;
19121 	int nr_bhs;
19122 	struct buffer_head *bhs[2];
19123 	struct inode *fat_inode;
19124 };
19125 
19126 struct fat_cache {
19127 	struct list_head cache_list;
19128 	int nr_contig;
19129 	int fcluster;
19130 	int dcluster;
19131 };
19132 
19133 struct fat_cache_id {
19134 	unsigned int id;
19135 	int nr_contig;
19136 	int fcluster;
19137 	int dcluster;
19138 };
19139 
19140 enum kobject_action {
19141 	KOBJ_ADD = 0,
19142 	KOBJ_REMOVE = 1,
19143 	KOBJ_CHANGE = 2,
19144 	KOBJ_MOVE = 3,
19145 	KOBJ_ONLINE = 4,
19146 	KOBJ_OFFLINE = 5,
19147 	KOBJ_BIND = 6,
19148 	KOBJ_UNBIND = 7,
19149 };
19150 
19151 struct posix_acl_entry {
19152 	short int e_tag;
19153 	short unsigned int e_perm;
19154 	union {
19155 		kuid_t e_uid;
19156 		kgid_t e_gid;
19157 	};
19158 };
19159 
19160 struct posix_acl {
19161 	refcount_t a_refcount;
19162 	struct callback_head a_rcu;
19163 	unsigned int a_count;
19164 	struct posix_acl_entry a_entries[0];
19165 };
19166 
19167 struct rpc_timer {
19168 	struct list_head list;
19169 	long unsigned int expires;
19170 	struct delayed_work dwork;
19171 };
19172 
19173 struct rpc_wait_queue {
19174 	spinlock_t lock;
19175 	struct list_head tasks[4];
19176 	unsigned char maxpriority;
19177 	unsigned char priority;
19178 	unsigned char nr;
19179 	short unsigned int qlen;
19180 	struct rpc_timer timer_list;
19181 	const char *name;
19182 };
19183 
19184 struct nfs_seqid_counter {
19185 	ktime_t create_time;
19186 	int owner_id;
19187 	int flags;
19188 	u32 counter;
19189 	spinlock_t lock;
19190 	struct list_head list;
19191 	struct rpc_wait_queue wait;
19192 };
19193 
19194 struct nfs4_stateid_struct {
19195 	union {
19196 		char data[16];
19197 		struct {
19198 			__be32 seqid;
19199 			char other[12];
19200 		};
19201 	};
19202 	enum {
19203 		NFS4_INVALID_STATEID_TYPE = 0,
19204 		NFS4_SPECIAL_STATEID_TYPE = 1,
19205 		NFS4_OPEN_STATEID_TYPE = 2,
19206 		NFS4_LOCK_STATEID_TYPE = 3,
19207 		NFS4_DELEGATION_STATEID_TYPE = 4,
19208 		NFS4_LAYOUT_STATEID_TYPE = 5,
19209 		NFS4_PNFS_DS_STATEID_TYPE = 6,
19210 		NFS4_REVOKED_STATEID_TYPE = 7,
19211 	} type;
19212 };
19213 
19214 typedef struct nfs4_stateid_struct nfs4_stateid;
19215 
19216 struct nfs4_state;
19217 
19218 struct nfs4_lock_state {
19219 	struct list_head ls_locks;
19220 	struct nfs4_state *ls_state;
19221 	long unsigned int ls_flags;
19222 	struct nfs_seqid_counter ls_seqid;
19223 	nfs4_stateid ls_stateid;
19224 	refcount_t ls_count;
19225 	fl_owner_t ls_owner;
19226 };
19227 
19228 struct __kernel_sockaddr_storage {
19229 	union {
19230 		struct {
19231 			__kernel_sa_family_t ss_family;
19232 			char __data[126];
19233 		};
19234 		void *__align;
19235 	};
19236 };
19237 
19238 enum {
19239 	IPPROTO_IP = 0,
19240 	IPPROTO_ICMP = 1,
19241 	IPPROTO_IGMP = 2,
19242 	IPPROTO_IPIP = 4,
19243 	IPPROTO_TCP = 6,
19244 	IPPROTO_EGP = 8,
19245 	IPPROTO_PUP = 12,
19246 	IPPROTO_UDP = 17,
19247 	IPPROTO_IDP = 22,
19248 	IPPROTO_TP = 29,
19249 	IPPROTO_DCCP = 33,
19250 	IPPROTO_IPV6 = 41,
19251 	IPPROTO_RSVP = 46,
19252 	IPPROTO_GRE = 47,
19253 	IPPROTO_ESP = 50,
19254 	IPPROTO_AH = 51,
19255 	IPPROTO_MTP = 92,
19256 	IPPROTO_BEETPH = 94,
19257 	IPPROTO_ENCAP = 98,
19258 	IPPROTO_PIM = 103,
19259 	IPPROTO_COMP = 108,
19260 	IPPROTO_SCTP = 132,
19261 	IPPROTO_UDPLITE = 136,
19262 	IPPROTO_MPLS = 137,
19263 	IPPROTO_ETHERNET = 143,
19264 	IPPROTO_RAW = 255,
19265 	IPPROTO_MPTCP = 262,
19266 	IPPROTO_MAX = 263,
19267 };
19268 
19269 struct net_generic {
19270 	union {
19271 		struct {
19272 			unsigned int len;
19273 			struct callback_head rcu;
19274 		} s;
19275 		void *ptr[0];
19276 	};
19277 };
19278 
19279 struct xdr_buf {
19280 	struct kvec head[1];
19281 	struct kvec tail[1];
19282 	struct bio_vec *bvec;
19283 	struct page **pages;
19284 	unsigned int page_base;
19285 	unsigned int page_len;
19286 	unsigned int flags;
19287 	unsigned int buflen;
19288 	unsigned int len;
19289 };
19290 
19291 struct rpc_rqst;
19292 
19293 struct xdr_stream {
19294 	__be32 *p;
19295 	struct xdr_buf *buf;
19296 	__be32 *end;
19297 	struct kvec *iov;
19298 	struct kvec scratch;
19299 	struct page **page_ptr;
19300 	unsigned int nwords;
19301 	struct rpc_rqst *rqst;
19302 };
19303 
19304 struct rpc_xprt;
19305 
19306 struct rpc_task;
19307 
19308 struct rpc_cred;
19309 
19310 struct rpc_rqst {
19311 	struct rpc_xprt *rq_xprt;
19312 	struct xdr_buf rq_snd_buf;
19313 	struct xdr_buf rq_rcv_buf;
19314 	struct rpc_task *rq_task;
19315 	struct rpc_cred *rq_cred;
19316 	__be32 rq_xid;
19317 	int rq_cong;
19318 	u32 rq_seqno;
19319 	int rq_enc_pages_num;
19320 	struct page **rq_enc_pages;
19321 	void (*rq_release_snd_buf)(struct rpc_rqst *);
19322 	union {
19323 		struct list_head rq_list;
19324 		struct rb_node rq_recv;
19325 	};
19326 	struct list_head rq_xmit;
19327 	struct list_head rq_xmit2;
19328 	void *rq_buffer;
19329 	size_t rq_callsize;
19330 	void *rq_rbuffer;
19331 	size_t rq_rcvsize;
19332 	size_t rq_xmit_bytes_sent;
19333 	size_t rq_reply_bytes_recvd;
19334 	struct xdr_buf rq_private_buf;
19335 	long unsigned int rq_majortimeo;
19336 	long unsigned int rq_minortimeo;
19337 	long unsigned int rq_timeout;
19338 	ktime_t rq_rtt;
19339 	unsigned int rq_retries;
19340 	unsigned int rq_connect_cookie;
19341 	atomic_t rq_pin;
19342 	u32 rq_bytes_sent;
19343 	ktime_t rq_xtime;
19344 	int rq_ntrans;
19345 };
19346 
19347 typedef void (*kxdreproc_t)(struct rpc_rqst *, struct xdr_stream *, const void *);
19348 
19349 typedef int (*kxdrdproc_t)(struct rpc_rqst *, struct xdr_stream *, void *);
19350 
19351 struct rpc_procinfo;
19352 
19353 struct rpc_message {
19354 	const struct rpc_procinfo *rpc_proc;
19355 	void *rpc_argp;
19356 	void *rpc_resp;
19357 	const struct cred *rpc_cred;
19358 };
19359 
19360 struct rpc_procinfo {
19361 	u32 p_proc;
19362 	kxdreproc_t p_encode;
19363 	kxdrdproc_t p_decode;
19364 	unsigned int p_arglen;
19365 	unsigned int p_replen;
19366 	unsigned int p_timer;
19367 	u32 p_statidx;
19368 	const char *p_name;
19369 };
19370 
19371 struct rpc_wait {
19372 	struct list_head list;
19373 	struct list_head links;
19374 	struct list_head timer_list;
19375 };
19376 
19377 struct rpc_call_ops;
19378 
19379 struct rpc_clnt;
19380 
19381 struct rpc_task {
19382 	atomic_t tk_count;
19383 	int tk_status;
19384 	struct list_head tk_task;
19385 	void (*tk_callback)(struct rpc_task *);
19386 	void (*tk_action)(struct rpc_task *);
19387 	long unsigned int tk_timeout;
19388 	long unsigned int tk_runstate;
19389 	struct rpc_wait_queue *tk_waitqueue;
19390 	union {
19391 		struct work_struct tk_work;
19392 		struct rpc_wait tk_wait;
19393 	} u;
19394 	struct rpc_message tk_msg;
19395 	void *tk_calldata;
19396 	const struct rpc_call_ops *tk_ops;
19397 	struct rpc_clnt *tk_client;
19398 	struct rpc_xprt *tk_xprt;
19399 	struct rpc_cred *tk_op_cred;
19400 	struct rpc_rqst *tk_rqstp;
19401 	struct workqueue_struct *tk_workqueue;
19402 	ktime_t tk_start;
19403 	pid_t tk_owner;
19404 	int tk_rpc_status;
19405 	short unsigned int tk_flags;
19406 	short unsigned int tk_timeouts;
19407 	short unsigned int tk_pid;
19408 	unsigned char tk_priority: 2;
19409 	unsigned char tk_garb_retry: 2;
19410 	unsigned char tk_cred_retry: 2;
19411 	unsigned char tk_rebind_retry: 2;
19412 };
19413 
19414 struct rpc_call_ops {
19415 	void (*rpc_call_prepare)(struct rpc_task *, void *);
19416 	void (*rpc_call_done)(struct rpc_task *, void *);
19417 	void (*rpc_count_stats)(struct rpc_task *, void *);
19418 	void (*rpc_release)(void *);
19419 };
19420 
19421 struct rpc_pipe_dir_head {
19422 	struct list_head pdh_entries;
19423 	struct dentry *pdh_dentry;
19424 };
19425 
19426 struct rpc_rtt {
19427 	long unsigned int timeo;
19428 	long unsigned int srtt[5];
19429 	long unsigned int sdrtt[5];
19430 	int ntimeouts[5];
19431 };
19432 
19433 struct rpc_timeout {
19434 	long unsigned int to_initval;
19435 	long unsigned int to_maxval;
19436 	long unsigned int to_increment;
19437 	unsigned int to_retries;
19438 	unsigned char to_exponential;
19439 };
19440 
19441 struct rpc_xprt_switch;
19442 
19443 struct rpc_xprt_iter_ops;
19444 
19445 struct rpc_xprt_iter {
19446 	struct rpc_xprt_switch *xpi_xpswitch;
19447 	struct rpc_xprt *xpi_cursor;
19448 	const struct rpc_xprt_iter_ops *xpi_ops;
19449 };
19450 
19451 struct rpc_auth;
19452 
19453 struct rpc_stat;
19454 
19455 struct rpc_iostats;
19456 
19457 struct rpc_program;
19458 
19459 struct rpc_sysfs_client;
19460 
19461 struct rpc_clnt {
19462 	refcount_t cl_count;
19463 	unsigned int cl_clid;
19464 	struct list_head cl_clients;
19465 	struct list_head cl_tasks;
19466 	atomic_t cl_pid;
19467 	spinlock_t cl_lock;
19468 	struct rpc_xprt *cl_xprt;
19469 	const struct rpc_procinfo *cl_procinfo;
19470 	u32 cl_prog;
19471 	u32 cl_vers;
19472 	u32 cl_maxproc;
19473 	struct rpc_auth *cl_auth;
19474 	struct rpc_stat *cl_stats;
19475 	struct rpc_iostats *cl_metrics;
19476 	unsigned int cl_softrtry: 1;
19477 	unsigned int cl_softerr: 1;
19478 	unsigned int cl_discrtry: 1;
19479 	unsigned int cl_noretranstimeo: 1;
19480 	unsigned int cl_autobind: 1;
19481 	unsigned int cl_chatty: 1;
19482 	struct rpc_rtt *cl_rtt;
19483 	const struct rpc_timeout *cl_timeout;
19484 	atomic_t cl_swapper;
19485 	int cl_nodelen;
19486 	char cl_nodename[65];
19487 	struct rpc_pipe_dir_head cl_pipedir_objects;
19488 	struct rpc_clnt *cl_parent;
19489 	struct rpc_rtt cl_rtt_default;
19490 	struct rpc_timeout cl_timeout_default;
19491 	const struct rpc_program *cl_program;
19492 	const char *cl_principal;
19493 	struct rpc_sysfs_client *cl_sysfs;
19494 	union {
19495 		struct rpc_xprt_iter cl_xpi;
19496 		struct work_struct cl_work;
19497 	};
19498 	const struct cred *cl_cred;
19499 	unsigned int cl_max_connect;
19500 };
19501 
19502 struct rpc_xprt_ops;
19503 
19504 struct svc_xprt;
19505 
19506 struct xprt_class;
19507 
19508 struct rpc_sysfs_xprt;
19509 
19510 struct rpc_xprt {
19511 	struct kref kref;
19512 	const struct rpc_xprt_ops *ops;
19513 	unsigned int id;
19514 	const struct rpc_timeout *timeout;
19515 	struct __kernel_sockaddr_storage addr;
19516 	size_t addrlen;
19517 	int prot;
19518 	long unsigned int cong;
19519 	long unsigned int cwnd;
19520 	size_t max_payload;
19521 	struct rpc_wait_queue binding;
19522 	struct rpc_wait_queue sending;
19523 	struct rpc_wait_queue pending;
19524 	struct rpc_wait_queue backlog;
19525 	struct list_head free;
19526 	unsigned int max_reqs;
19527 	unsigned int min_reqs;
19528 	unsigned int num_reqs;
19529 	long unsigned int state;
19530 	unsigned char resvport: 1;
19531 	unsigned char reuseport: 1;
19532 	atomic_t swapper;
19533 	unsigned int bind_index;
19534 	struct list_head xprt_switch;
19535 	long unsigned int bind_timeout;
19536 	long unsigned int reestablish_timeout;
19537 	unsigned int connect_cookie;
19538 	struct work_struct task_cleanup;
19539 	struct timer_list timer;
19540 	long unsigned int last_used;
19541 	long unsigned int idle_timeout;
19542 	long unsigned int connect_timeout;
19543 	long unsigned int max_reconnect_timeout;
19544 	atomic_long_t queuelen;
19545 	spinlock_t transport_lock;
19546 	spinlock_t reserve_lock;
19547 	spinlock_t queue_lock;
19548 	u32 xid;
19549 	struct rpc_task *snd_task;
19550 	struct list_head xmit_queue;
19551 	atomic_long_t xmit_queuelen;
19552 	struct svc_xprt *bc_xprt;
19553 	struct rb_root recv_queue;
19554 	struct {
19555 		long unsigned int bind_count;
19556 		long unsigned int connect_count;
19557 		long unsigned int connect_start;
19558 		long unsigned int connect_time;
19559 		long unsigned int sends;
19560 		long unsigned int recvs;
19561 		long unsigned int bad_xids;
19562 		long unsigned int max_slots;
19563 		long long unsigned int req_u;
19564 		long long unsigned int bklog_u;
19565 		long long unsigned int sending_u;
19566 		long long unsigned int pending_u;
19567 	} stat;
19568 	struct net *xprt_net;
19569 	netns_tracker ns_tracker;
19570 	const char *servername;
19571 	const char *address_strings[6];
19572 	struct callback_head rcu;
19573 	const struct xprt_class *xprt_class;
19574 	struct rpc_sysfs_xprt *xprt_sysfs;
19575 	bool main;
19576 };
19577 
19578 struct rpc_credops;
19579 
19580 struct rpc_cred {
19581 	struct hlist_node cr_hash;
19582 	struct list_head cr_lru;
19583 	struct callback_head cr_rcu;
19584 	struct rpc_auth *cr_auth;
19585 	const struct rpc_credops *cr_ops;
19586 	long unsigned int cr_expire;
19587 	long unsigned int cr_flags;
19588 	refcount_t cr_count;
19589 	const struct cred *cr_cred;
19590 };
19591 
19592 typedef u32 rpc_authflavor_t;
19593 
19594 struct auth_cred {
19595 	const struct cred *cred;
19596 	const char *principal;
19597 };
19598 
19599 struct rpc_authops;
19600 
19601 struct rpc_cred_cache;
19602 
19603 struct rpc_auth {
19604 	unsigned int au_cslack;
19605 	unsigned int au_rslack;
19606 	unsigned int au_verfsize;
19607 	unsigned int au_ralign;
19608 	long unsigned int au_flags;
19609 	const struct rpc_authops *au_ops;
19610 	rpc_authflavor_t au_flavor;
19611 	refcount_t au_count;
19612 	struct rpc_cred_cache *au_credcache;
19613 };
19614 
19615 struct rpc_credops {
19616 	const char *cr_name;
19617 	int (*cr_init)(struct rpc_auth *, struct rpc_cred *);
19618 	void (*crdestroy)(struct rpc_cred *);
19619 	int (*crmatch)(struct auth_cred *, struct rpc_cred *, int);
19620 	int (*crmarshal)(struct rpc_task *, struct xdr_stream *);
19621 	int (*crrefresh)(struct rpc_task *);
19622 	int (*crvalidate)(struct rpc_task *, struct xdr_stream *);
19623 	int (*crwrap_req)(struct rpc_task *, struct xdr_stream *);
19624 	int (*crunwrap_resp)(struct rpc_task *, struct xdr_stream *);
19625 	int (*crkey_timeout)(struct rpc_cred *);
19626 	char * (*crstringify_acceptor)(struct rpc_cred *);
19627 	bool (*crneed_reencode)(struct rpc_task *);
19628 };
19629 
19630 struct rpc_auth_create_args;
19631 
19632 struct rpcsec_gss_info;
19633 
19634 struct rpc_authops {
19635 	struct module *owner;
19636 	rpc_authflavor_t au_flavor;
19637 	char *au_name;
19638 	struct rpc_auth * (*create)(const struct rpc_auth_create_args *, struct rpc_clnt *);
19639 	void (*destroy)(struct rpc_auth *);
19640 	int (*hash_cred)(struct auth_cred *, unsigned int);
19641 	struct rpc_cred * (*lookup_cred)(struct rpc_auth *, struct auth_cred *, int);
19642 	struct rpc_cred * (*crcreate)(struct rpc_auth *, struct auth_cred *, int, gfp_t);
19643 	rpc_authflavor_t (*info2flavor)(struct rpcsec_gss_info *);
19644 	int (*flavor2info)(rpc_authflavor_t, struct rpcsec_gss_info *);
19645 	int (*key_timeout)(struct rpc_auth *, struct rpc_cred *);
19646 };
19647 
19648 struct rpc_auth_create_args {
19649 	rpc_authflavor_t pseudoflavor;
19650 	const char *target_name;
19651 };
19652 
19653 struct rpcsec_gss_oid {
19654 	unsigned int len;
19655 	u8 data[32];
19656 };
19657 
19658 struct rpcsec_gss_info {
19659 	struct rpcsec_gss_oid oid;
19660 	u32 qop;
19661 	u32 service;
19662 };
19663 
19664 enum rpc_display_format_t {
19665 	RPC_DISPLAY_ADDR = 0,
19666 	RPC_DISPLAY_PORT = 1,
19667 	RPC_DISPLAY_PROTO = 2,
19668 	RPC_DISPLAY_HEX_ADDR = 3,
19669 	RPC_DISPLAY_HEX_PORT = 4,
19670 	RPC_DISPLAY_NETID = 5,
19671 	RPC_DISPLAY_MAX = 6,
19672 };
19673 
19674 struct rpc_xprt_ops {
19675 	void (*set_buffer_size)(struct rpc_xprt *, size_t, size_t);
19676 	int (*reserve_xprt)(struct rpc_xprt *, struct rpc_task *);
19677 	void (*release_xprt)(struct rpc_xprt *, struct rpc_task *);
19678 	void (*alloc_slot)(struct rpc_xprt *, struct rpc_task *);
19679 	void (*free_slot)(struct rpc_xprt *, struct rpc_rqst *);
19680 	void (*rpcbind)(struct rpc_task *);
19681 	void (*set_port)(struct rpc_xprt *, short unsigned int);
19682 	void (*connect)(struct rpc_xprt *, struct rpc_task *);
19683 	int (*get_srcaddr)(struct rpc_xprt *, char *, size_t);
19684 	short unsigned int (*get_srcport)(struct rpc_xprt *);
19685 	int (*buf_alloc)(struct rpc_task *);
19686 	void (*buf_free)(struct rpc_task *);
19687 	int (*prepare_request)(struct rpc_rqst *, struct xdr_buf *);
19688 	int (*send_request)(struct rpc_rqst *);
19689 	void (*wait_for_reply_request)(struct rpc_task *);
19690 	void (*timer)(struct rpc_xprt *, struct rpc_task *);
19691 	void (*release_request)(struct rpc_task *);
19692 	void (*close)(struct rpc_xprt *);
19693 	void (*destroy)(struct rpc_xprt *);
19694 	void (*set_connect_timeout)(struct rpc_xprt *, long unsigned int, long unsigned int);
19695 	void (*print_stats)(struct rpc_xprt *, struct seq_file *);
19696 	int (*enable_swap)(struct rpc_xprt *);
19697 	void (*disable_swap)(struct rpc_xprt *);
19698 	void (*inject_disconnect)(struct rpc_xprt *);
19699 	int (*bc_setup)(struct rpc_xprt *, unsigned int);
19700 	size_t (*bc_maxpayload)(struct rpc_xprt *);
19701 	unsigned int (*bc_num_slots)(struct rpc_xprt *);
19702 	void (*bc_free_rqst)(struct rpc_rqst *);
19703 	void (*bc_destroy)(struct rpc_xprt *, unsigned int);
19704 };
19705 
19706 struct xprt_create;
19707 
19708 struct xprt_class {
19709 	struct list_head list;
19710 	int ident;
19711 	struct rpc_xprt * (*setup)(struct xprt_create *);
19712 	struct module *owner;
19713 	char name[32];
19714 	const char *netid[0];
19715 };
19716 
19717 struct xprt_create {
19718 	int ident;
19719 	struct net *net;
19720 	struct sockaddr *srcaddr;
19721 	struct sockaddr *dstaddr;
19722 	size_t addrlen;
19723 	const char *servername;
19724 	struct svc_xprt *bc_xprt;
19725 	struct rpc_xprt_switch *bc_xps;
19726 	unsigned int flags;
19727 };
19728 
19729 struct rpc_sysfs_xprt_switch;
19730 
19731 struct rpc_xprt_switch {
19732 	spinlock_t xps_lock;
19733 	struct kref xps_kref;
19734 	unsigned int xps_id;
19735 	unsigned int xps_nxprts;
19736 	unsigned int xps_nactive;
19737 	unsigned int xps_nunique_destaddr_xprts;
19738 	atomic_long_t xps_queuelen;
19739 	struct list_head xps_xprt_list;
19740 	struct net *xps_net;
19741 	const struct rpc_xprt_iter_ops *xps_iter_ops;
19742 	struct rpc_sysfs_xprt_switch *xps_sysfs;
19743 	struct callback_head xps_rcu;
19744 };
19745 
19746 struct rpc_stat {
19747 	const struct rpc_program *program;
19748 	unsigned int netcnt;
19749 	unsigned int netudpcnt;
19750 	unsigned int nettcpcnt;
19751 	unsigned int nettcpconn;
19752 	unsigned int netreconn;
19753 	unsigned int rpccnt;
19754 	unsigned int rpcretrans;
19755 	unsigned int rpcauthrefresh;
19756 	unsigned int rpcgarbage;
19757 };
19758 
19759 struct rpc_version;
19760 
19761 struct rpc_program {
19762 	const char *name;
19763 	u32 number;
19764 	unsigned int nrvers;
19765 	const struct rpc_version **version;
19766 	struct rpc_stat *stats;
19767 	const char *pipe_dir_name;
19768 };
19769 
19770 struct rpc_pipe_msg {
19771 	struct list_head list;
19772 	void *data;
19773 	size_t len;
19774 	size_t copied;
19775 	int errno;
19776 };
19777 
19778 struct rpc_pipe_ops {
19779 	ssize_t (*upcall)(struct file *, struct rpc_pipe_msg *, char *, size_t);
19780 	ssize_t (*downcall)(struct file *, const char *, size_t);
19781 	void (*release_pipe)(struct inode *);
19782 	int (*open_pipe)(struct inode *);
19783 	void (*destroy_msg)(struct rpc_pipe_msg *);
19784 };
19785 
19786 struct rpc_pipe {
19787 	struct list_head pipe;
19788 	struct list_head in_upcall;
19789 	struct list_head in_downcall;
19790 	int pipelen;
19791 	int nreaders;
19792 	int nwriters;
19793 	int flags;
19794 	struct delayed_work queue_timeout;
19795 	const struct rpc_pipe_ops *ops;
19796 	spinlock_t lock;
19797 	struct dentry *dentry;
19798 };
19799 
19800 struct rpc_xprt_iter_ops {
19801 	void (*xpi_rewind)(struct rpc_xprt_iter *);
19802 	struct rpc_xprt * (*xpi_xprt)(struct rpc_xprt_iter *);
19803 	struct rpc_xprt * (*xpi_next)(struct rpc_xprt_iter *);
19804 };
19805 
19806 struct rpc_version {
19807 	u32 number;
19808 	unsigned int nrprocs;
19809 	const struct rpc_procinfo *procs;
19810 	unsigned int *counts;
19811 };
19812 
19813 struct nfs_fh {
19814 	short unsigned int size;
19815 	unsigned char data[128];
19816 };
19817 
19818 enum nfs3_stable_how {
19819 	NFS_UNSTABLE = 0,
19820 	NFS_DATA_SYNC = 1,
19821 	NFS_FILE_SYNC = 2,
19822 	NFS_INVALID_STABLE_HOW = -1,
19823 };
19824 
19825 struct nfs4_label {
19826 	uint32_t lfs;
19827 	uint32_t pi;
19828 	u32 len;
19829 	char *label;
19830 };
19831 
19832 typedef struct {
19833 	char data[8];
19834 } nfs4_verifier;
19835 
19836 enum nfs_opnum4 {
19837 	OP_ACCESS = 3,
19838 	OP_CLOSE = 4,
19839 	OP_COMMIT = 5,
19840 	OP_CREATE = 6,
19841 	OP_DELEGPURGE = 7,
19842 	OP_DELEGRETURN = 8,
19843 	OP_GETATTR = 9,
19844 	OP_GETFH = 10,
19845 	OP_LINK = 11,
19846 	OP_LOCK = 12,
19847 	OP_LOCKT = 13,
19848 	OP_LOCKU = 14,
19849 	OP_LOOKUP = 15,
19850 	OP_LOOKUPP = 16,
19851 	OP_NVERIFY = 17,
19852 	OP_OPEN = 18,
19853 	OP_OPENATTR = 19,
19854 	OP_OPEN_CONFIRM = 20,
19855 	OP_OPEN_DOWNGRADE = 21,
19856 	OP_PUTFH = 22,
19857 	OP_PUTPUBFH = 23,
19858 	OP_PUTROOTFH = 24,
19859 	OP_READ = 25,
19860 	OP_READDIR = 26,
19861 	OP_READLINK = 27,
19862 	OP_REMOVE = 28,
19863 	OP_RENAME = 29,
19864 	OP_RENEW = 30,
19865 	OP_RESTOREFH = 31,
19866 	OP_SAVEFH = 32,
19867 	OP_SECINFO = 33,
19868 	OP_SETATTR = 34,
19869 	OP_SETCLIENTID = 35,
19870 	OP_SETCLIENTID_CONFIRM = 36,
19871 	OP_VERIFY = 37,
19872 	OP_WRITE = 38,
19873 	OP_RELEASE_LOCKOWNER = 39,
19874 	OP_BACKCHANNEL_CTL = 40,
19875 	OP_BIND_CONN_TO_SESSION = 41,
19876 	OP_EXCHANGE_ID = 42,
19877 	OP_CREATE_SESSION = 43,
19878 	OP_DESTROY_SESSION = 44,
19879 	OP_FREE_STATEID = 45,
19880 	OP_GET_DIR_DELEGATION = 46,
19881 	OP_GETDEVICEINFO = 47,
19882 	OP_GETDEVICELIST = 48,
19883 	OP_LAYOUTCOMMIT = 49,
19884 	OP_LAYOUTGET = 50,
19885 	OP_LAYOUTRETURN = 51,
19886 	OP_SECINFO_NO_NAME = 52,
19887 	OP_SEQUENCE = 53,
19888 	OP_SET_SSV = 54,
19889 	OP_TEST_STATEID = 55,
19890 	OP_WANT_DELEGATION = 56,
19891 	OP_DESTROY_CLIENTID = 57,
19892 	OP_RECLAIM_COMPLETE = 58,
19893 	OP_ALLOCATE = 59,
19894 	OP_COPY = 60,
19895 	OP_COPY_NOTIFY = 61,
19896 	OP_DEALLOCATE = 62,
19897 	OP_IO_ADVISE = 63,
19898 	OP_LAYOUTERROR = 64,
19899 	OP_LAYOUTSTATS = 65,
19900 	OP_OFFLOAD_CANCEL = 66,
19901 	OP_OFFLOAD_STATUS = 67,
19902 	OP_READ_PLUS = 68,
19903 	OP_SEEK = 69,
19904 	OP_WRITE_SAME = 70,
19905 	OP_CLONE = 71,
19906 	OP_GETXATTR = 72,
19907 	OP_SETXATTR = 73,
19908 	OP_LISTXATTRS = 74,
19909 	OP_REMOVEXATTR = 75,
19910 	OP_ILLEGAL = 10044,
19911 };
19912 
19913 enum nfs4_change_attr_type {
19914 	NFS4_CHANGE_TYPE_IS_MONOTONIC_INCR = 0,
19915 	NFS4_CHANGE_TYPE_IS_VERSION_COUNTER = 1,
19916 	NFS4_CHANGE_TYPE_IS_VERSION_COUNTER_NOPNFS = 2,
19917 	NFS4_CHANGE_TYPE_IS_TIME_METADATA = 3,
19918 	NFS4_CHANGE_TYPE_IS_UNDEFINED = 4,
19919 };
19920 
19921 struct nfs4_string {
19922 	unsigned int len;
19923 	char *data;
19924 };
19925 
19926 struct nfs_fsid {
19927 	uint64_t major;
19928 	uint64_t minor;
19929 };
19930 
19931 struct nfs4_threshold {
19932 	__u32 bm;
19933 	__u32 l_type;
19934 	__u64 rd_sz;
19935 	__u64 wr_sz;
19936 	__u64 rd_io_sz;
19937 	__u64 wr_io_sz;
19938 };
19939 
19940 struct nfs_fattr {
19941 	unsigned int valid;
19942 	umode_t mode;
19943 	__u32 nlink;
19944 	kuid_t uid;
19945 	kgid_t gid;
19946 	dev_t rdev;
19947 	__u64 size;
19948 	union {
19949 		struct {
19950 			__u32 blocksize;
19951 			__u32 blocks;
19952 		} nfs2;
19953 		struct {
19954 			__u64 used;
19955 		} nfs3;
19956 	} du;
19957 	struct nfs_fsid fsid;
19958 	__u64 fileid;
19959 	__u64 mounted_on_fileid;
19960 	struct timespec64 atime;
19961 	struct timespec64 mtime;
19962 	struct timespec64 ctime;
19963 	__u64 change_attr;
19964 	__u64 pre_change_attr;
19965 	__u64 pre_size;
19966 	struct timespec64 pre_mtime;
19967 	struct timespec64 pre_ctime;
19968 	long unsigned int time_start;
19969 	long unsigned int gencount;
19970 	struct nfs4_string *owner_name;
19971 	struct nfs4_string *group_name;
19972 	struct nfs4_threshold *mdsthreshold;
19973 	struct nfs4_label *label;
19974 };
19975 
19976 struct nfs_fsinfo {
19977 	struct nfs_fattr *fattr;
19978 	__u32 rtmax;
19979 	__u32 rtpref;
19980 	__u32 rtmult;
19981 	__u32 wtmax;
19982 	__u32 wtpref;
19983 	__u32 wtmult;
19984 	__u32 dtpref;
19985 	__u64 maxfilesize;
19986 	struct timespec64 time_delta;
19987 	__u32 lease_time;
19988 	__u32 nlayouttypes;
19989 	__u32 layouttype[8];
19990 	__u32 blksize;
19991 	__u32 clone_blksize;
19992 	enum nfs4_change_attr_type change_attr_type;
19993 	__u32 xattr_support;
19994 };
19995 
19996 struct nfs_fsstat {
19997 	struct nfs_fattr *fattr;
19998 	__u64 tbytes;
19999 	__u64 fbytes;
20000 	__u64 abytes;
20001 	__u64 tfiles;
20002 	__u64 ffiles;
20003 	__u64 afiles;
20004 };
20005 
20006 struct nfs_pathconf {
20007 	struct nfs_fattr *fattr;
20008 	__u32 max_link;
20009 	__u32 max_namelen;
20010 };
20011 
20012 struct nfs4_change_info {
20013 	u32 atomic;
20014 	u64 before;
20015 	u64 after;
20016 };
20017 
20018 struct nfs4_slot;
20019 
20020 struct nfs4_sequence_args {
20021 	struct nfs4_slot *sa_slot;
20022 	u8 sa_cache_this: 1;
20023 	u8 sa_privileged: 1;
20024 };
20025 
20026 struct nfs4_sequence_res {
20027 	struct nfs4_slot *sr_slot;
20028 	long unsigned int sr_timestamp;
20029 	int sr_status;
20030 	u32 sr_status_flags;
20031 	u32 sr_highest_slotid;
20032 	u32 sr_target_highest_slotid;
20033 };
20034 
20035 struct nfs_open_context;
20036 
20037 struct nfs_lock_context {
20038 	refcount_t count;
20039 	struct list_head list;
20040 	struct nfs_open_context *open_context;
20041 	fl_owner_t lockowner;
20042 	atomic_t io_count;
20043 	struct callback_head callback_head;
20044 };
20045 
20046 struct nfs_open_context {
20047 	struct nfs_lock_context lock_context;
20048 	fl_owner_t flock_owner;
20049 	struct dentry *dentry;
20050 	const struct cred *cred;
20051 	struct rpc_cred *ll_cred;
20052 	struct nfs4_state *state;
20053 	fmode_t mode;
20054 	long unsigned int flags;
20055 	int error;
20056 	struct list_head list;
20057 	struct nfs4_threshold *mdsthreshold;
20058 	struct callback_head callback_head;
20059 };
20060 
20061 struct nlm_host;
20062 
20063 struct nfs_auth_info {
20064 	unsigned int flavor_len;
20065 	rpc_authflavor_t flavors[12];
20066 };
20067 
20068 struct pnfs_layoutdriver_type;
20069 
20070 struct nfs_client;
20071 
20072 struct nfs_iostats;
20073 
20074 struct nfs_server {
20075 	struct nfs_client *nfs_client;
20076 	struct list_head client_link;
20077 	struct list_head master_link;
20078 	struct rpc_clnt *client;
20079 	struct rpc_clnt *client_acl;
20080 	struct nlm_host *nlm_host;
20081 	struct nfs_iostats *io_stats;
20082 	atomic_long_t writeback;
20083 	unsigned int write_congested;
20084 	unsigned int flags;
20085 	unsigned int fattr_valid;
20086 	unsigned int caps;
20087 	unsigned int rsize;
20088 	unsigned int rpages;
20089 	unsigned int wsize;
20090 	unsigned int wpages;
20091 	unsigned int wtmult;
20092 	unsigned int dtsize;
20093 	short unsigned int port;
20094 	unsigned int bsize;
20095 	unsigned int acregmin;
20096 	unsigned int acregmax;
20097 	unsigned int acdirmin;
20098 	unsigned int acdirmax;
20099 	unsigned int namelen;
20100 	unsigned int options;
20101 	unsigned int clone_blksize;
20102 	enum nfs4_change_attr_type change_attr_type;
20103 	struct nfs_fsid fsid;
20104 	__u64 maxfilesize;
20105 	struct timespec64 time_delta;
20106 	long unsigned int mount_time;
20107 	struct super_block *super;
20108 	dev_t s_dev;
20109 	struct nfs_auth_info auth_info;
20110 	u32 pnfs_blksize;
20111 	u32 attr_bitmask[3];
20112 	u32 attr_bitmask_nl[3];
20113 	u32 exclcreat_bitmask[3];
20114 	u32 cache_consistency_bitmask[3];
20115 	u32 acl_bitmask;
20116 	u32 fh_expire_type;
20117 	struct pnfs_layoutdriver_type *pnfs_curr_ld;
20118 	struct rpc_wait_queue roc_rpcwaitq;
20119 	void *pnfs_ld_data;
20120 	struct rb_root state_owners;
20121 	struct ida openowner_id;
20122 	struct ida lockowner_id;
20123 	struct list_head state_owners_lru;
20124 	struct list_head layouts;
20125 	struct list_head delegations;
20126 	struct list_head ss_copies;
20127 	long unsigned int mig_gen;
20128 	long unsigned int mig_status;
20129 	void (*destroy)(struct nfs_server *);
20130 	atomic_t active;
20131 	struct __kernel_sockaddr_storage mountd_address;
20132 	size_t mountd_addrlen;
20133 	u32 mountd_version;
20134 	short unsigned int mountd_port;
20135 	short unsigned int mountd_protocol;
20136 	struct rpc_wait_queue uoc_rpcwaitq;
20137 	unsigned int read_hdrsize;
20138 	const struct cred *cred;
20139 	bool has_sec_mnt_opts;
20140 };
20141 
20142 struct nfs41_server_owner;
20143 
20144 struct nfs41_server_scope;
20145 
20146 struct nfs41_impl_id;
20147 
20148 struct nfs_rpc_ops;
20149 
20150 struct nfs_subversion;
20151 
20152 struct idmap;
20153 
20154 struct nfs4_minor_version_ops;
20155 
20156 struct nfs4_slot_table;
20157 
20158 struct nfs4_session;
20159 
20160 struct nfs_client {
20161 	refcount_t cl_count;
20162 	atomic_t cl_mds_count;
20163 	int cl_cons_state;
20164 	long unsigned int cl_res_state;
20165 	long unsigned int cl_flags;
20166 	struct __kernel_sockaddr_storage cl_addr;
20167 	size_t cl_addrlen;
20168 	char *cl_hostname;
20169 	char *cl_acceptor;
20170 	struct list_head cl_share_link;
20171 	struct list_head cl_superblocks;
20172 	struct rpc_clnt *cl_rpcclient;
20173 	const struct nfs_rpc_ops *rpc_ops;
20174 	int cl_proto;
20175 	struct nfs_subversion *cl_nfs_mod;
20176 	u32 cl_minorversion;
20177 	unsigned int cl_nconnect;
20178 	unsigned int cl_max_connect;
20179 	const char *cl_principal;
20180 	struct list_head cl_ds_clients;
20181 	u64 cl_clientid;
20182 	nfs4_verifier cl_confirm;
20183 	long unsigned int cl_state;
20184 	spinlock_t cl_lock;
20185 	long unsigned int cl_lease_time;
20186 	long unsigned int cl_last_renewal;
20187 	struct delayed_work cl_renewd;
20188 	struct rpc_wait_queue cl_rpcwaitq;
20189 	struct idmap *cl_idmap;
20190 	const char *cl_owner_id;
20191 	u32 cl_cb_ident;
20192 	const struct nfs4_minor_version_ops *cl_mvops;
20193 	long unsigned int cl_mig_gen;
20194 	struct nfs4_slot_table *cl_slot_tbl;
20195 	u32 cl_seqid;
20196 	u32 cl_exchange_flags;
20197 	struct nfs4_session *cl_session;
20198 	bool cl_preserve_clid;
20199 	struct nfs41_server_owner *cl_serverowner;
20200 	struct nfs41_server_scope *cl_serverscope;
20201 	struct nfs41_impl_id *cl_implid;
20202 	long unsigned int cl_sp4_flags;
20203 	char cl_ipaddr[48];
20204 	struct net *cl_net;
20205 	struct list_head pending_cb_stateids;
20206 };
20207 
20208 struct nfs_seqid {
20209 	struct nfs_seqid_counter *sequence;
20210 	struct list_head list;
20211 	struct rpc_task *task;
20212 };
20213 
20214 struct nfs_write_verifier {
20215 	char data[8];
20216 };
20217 
20218 struct nfs_writeverf {
20219 	struct nfs_write_verifier verifier;
20220 	enum nfs3_stable_how committed;
20221 };
20222 
20223 struct nfs_pgio_args {
20224 	struct nfs4_sequence_args seq_args;
20225 	struct nfs_fh *fh;
20226 	struct nfs_open_context *context;
20227 	struct nfs_lock_context *lock_context;
20228 	nfs4_stateid stateid;
20229 	__u64 offset;
20230 	__u32 count;
20231 	unsigned int pgbase;
20232 	struct page **pages;
20233 	union {
20234 		unsigned int replen;
20235 		struct {
20236 			const u32 *bitmask;
20237 			u32 bitmask_store[3];
20238 			enum nfs3_stable_how stable;
20239 		};
20240 	};
20241 };
20242 
20243 struct nfs_pgio_res {
20244 	struct nfs4_sequence_res seq_res;
20245 	struct nfs_fattr *fattr;
20246 	__u64 count;
20247 	__u32 op_status;
20248 	union {
20249 		struct {
20250 			unsigned int replen;
20251 			int eof;
20252 		};
20253 		struct {
20254 			struct nfs_writeverf *verf;
20255 			const struct nfs_server *server;
20256 		};
20257 	};
20258 };
20259 
20260 struct nfs_commitargs {
20261 	struct nfs4_sequence_args seq_args;
20262 	struct nfs_fh *fh;
20263 	__u64 offset;
20264 	__u32 count;
20265 	const u32 *bitmask;
20266 };
20267 
20268 struct nfs_commitres {
20269 	struct nfs4_sequence_res seq_res;
20270 	__u32 op_status;
20271 	struct nfs_fattr *fattr;
20272 	struct nfs_writeverf *verf;
20273 	const struct nfs_server *server;
20274 };
20275 
20276 struct nfs_removeargs {
20277 	struct nfs4_sequence_args seq_args;
20278 	const struct nfs_fh *fh;
20279 	struct qstr name;
20280 };
20281 
20282 struct nfs_removeres {
20283 	struct nfs4_sequence_res seq_res;
20284 	struct nfs_server *server;
20285 	struct nfs_fattr *dir_attr;
20286 	struct nfs4_change_info cinfo;
20287 };
20288 
20289 struct nfs_renameargs {
20290 	struct nfs4_sequence_args seq_args;
20291 	const struct nfs_fh *old_dir;
20292 	const struct nfs_fh *new_dir;
20293 	const struct qstr *old_name;
20294 	const struct qstr *new_name;
20295 };
20296 
20297 struct nfs_renameres {
20298 	struct nfs4_sequence_res seq_res;
20299 	struct nfs_server *server;
20300 	struct nfs4_change_info old_cinfo;
20301 	struct nfs_fattr *old_fattr;
20302 	struct nfs4_change_info new_cinfo;
20303 	struct nfs_fattr *new_fattr;
20304 };
20305 
20306 struct nfs_entry {
20307 	__u64 ino;
20308 	__u64 cookie;
20309 	const char *name;
20310 	unsigned int len;
20311 	int eof;
20312 	struct nfs_fh *fh;
20313 	struct nfs_fattr *fattr;
20314 	unsigned char d_type;
20315 	struct nfs_server *server;
20316 };
20317 
20318 struct nfs_readdir_arg {
20319 	struct dentry *dentry;
20320 	const struct cred *cred;
20321 	__be32 *verf;
20322 	u64 cookie;
20323 	struct page **pages;
20324 	unsigned int page_len;
20325 	bool plus;
20326 };
20327 
20328 struct nfs_readdir_res {
20329 	__be32 *verf;
20330 };
20331 
20332 struct nfs4_pathname {
20333 	unsigned int ncomponents;
20334 	struct nfs4_string components[512];
20335 };
20336 
20337 struct nfs4_fs_location {
20338 	unsigned int nservers;
20339 	struct nfs4_string servers[10];
20340 	struct nfs4_pathname rootpath;
20341 };
20342 
20343 struct nfs4_fs_locations {
20344 	struct nfs_fattr *fattr;
20345 	const struct nfs_server *server;
20346 	struct nfs4_pathname fs_path;
20347 	int nlocations;
20348 	struct nfs4_fs_location locations[10];
20349 };
20350 
20351 struct pnfs_ds_commit_info {};
20352 
20353 struct nfs_page_array {
20354 	struct page **pagevec;
20355 	unsigned int npages;
20356 	struct page *page_array[8];
20357 };
20358 
20359 struct nfs_page;
20360 
20361 struct pnfs_layout_segment;
20362 
20363 struct nfs_pgio_completion_ops;
20364 
20365 struct nfs_rw_ops;
20366 
20367 struct nfs_io_completion;
20368 
20369 struct nfs_direct_req;
20370 
20371 struct nfs_pgio_header {
20372 	struct inode *inode;
20373 	const struct cred *cred;
20374 	struct list_head pages;
20375 	struct nfs_page *req;
20376 	struct nfs_writeverf verf;
20377 	fmode_t rw_mode;
20378 	struct pnfs_layout_segment *lseg;
20379 	loff_t io_start;
20380 	const struct rpc_call_ops *mds_ops;
20381 	void (*release)(struct nfs_pgio_header *);
20382 	const struct nfs_pgio_completion_ops *completion_ops;
20383 	const struct nfs_rw_ops *rw_ops;
20384 	struct nfs_io_completion *io_completion;
20385 	struct nfs_direct_req *dreq;
20386 	int pnfs_error;
20387 	int error;
20388 	unsigned int good_bytes;
20389 	long unsigned int flags;
20390 	struct rpc_task task;
20391 	struct nfs_fattr fattr;
20392 	struct nfs_pgio_args args;
20393 	struct nfs_pgio_res res;
20394 	long unsigned int timestamp;
20395 	int (*pgio_done_cb)(struct rpc_task *, struct nfs_pgio_header *);
20396 	__u64 mds_offset;
20397 	struct nfs_page_array page_array;
20398 	struct nfs_client *ds_clp;
20399 	u32 ds_commit_idx;
20400 	u32 pgio_mirror_idx;
20401 };
20402 
20403 struct nfs_pgio_completion_ops {
20404 	void (*error_cleanup)(struct list_head *, int);
20405 	void (*init_hdr)(struct nfs_pgio_header *);
20406 	void (*completion)(struct nfs_pgio_header *);
20407 	void (*reschedule_io)(struct nfs_pgio_header *);
20408 };
20409 
20410 struct rpc_task_setup;
20411 
20412 struct nfs_rw_ops {
20413 	struct nfs_pgio_header * (*rw_alloc_header)();
20414 	void (*rw_free_header)(struct nfs_pgio_header *);
20415 	int (*rw_done)(struct rpc_task *, struct nfs_pgio_header *, struct inode *);
20416 	void (*rw_result)(struct rpc_task *, struct nfs_pgio_header *);
20417 	void (*rw_initiate)(struct nfs_pgio_header *, struct rpc_message *, const struct nfs_rpc_ops *, struct rpc_task_setup *, int);
20418 };
20419 
20420 struct nfs_mds_commit_info {
20421 	atomic_t rpcs_out;
20422 	atomic_long_t ncommit;
20423 	struct list_head list;
20424 };
20425 
20426 struct nfs_commit_data;
20427 
20428 struct nfs_commit_info;
20429 
20430 struct nfs_commit_completion_ops {
20431 	void (*completion)(struct nfs_commit_data *);
20432 	void (*resched_write)(struct nfs_commit_info *, struct nfs_page *);
20433 };
20434 
20435 struct nfs_commit_data {
20436 	struct rpc_task task;
20437 	struct inode *inode;
20438 	const struct cred *cred;
20439 	struct nfs_fattr fattr;
20440 	struct nfs_writeverf verf;
20441 	struct list_head pages;
20442 	struct list_head list;
20443 	struct nfs_direct_req *dreq;
20444 	struct nfs_commitargs args;
20445 	struct nfs_commitres res;
20446 	struct nfs_open_context *context;
20447 	struct pnfs_layout_segment *lseg;
20448 	struct nfs_client *ds_clp;
20449 	int ds_commit_index;
20450 	loff_t lwb;
20451 	const struct rpc_call_ops *mds_ops;
20452 	const struct nfs_commit_completion_ops *completion_ops;
20453 	int (*commit_done_cb)(struct rpc_task *, struct nfs_commit_data *);
20454 	long unsigned int flags;
20455 };
20456 
20457 struct nfs_commit_info {
20458 	struct inode *inode;
20459 	struct nfs_mds_commit_info *mds;
20460 	struct pnfs_ds_commit_info *ds;
20461 	struct nfs_direct_req *dreq;
20462 	const struct nfs_commit_completion_ops *completion_ops;
20463 };
20464 
20465 struct nfs_unlinkdata {
20466 	struct nfs_removeargs args;
20467 	struct nfs_removeres res;
20468 	struct dentry *dentry;
20469 	wait_queue_head_t wq;
20470 	const struct cred *cred;
20471 	struct nfs_fattr dir_attr;
20472 	long int timeout;
20473 };
20474 
20475 struct nfs_renamedata {
20476 	struct nfs_renameargs args;
20477 	struct nfs_renameres res;
20478 	struct rpc_task task;
20479 	const struct cred *cred;
20480 	struct inode *old_dir;
20481 	struct dentry *old_dentry;
20482 	struct nfs_fattr old_fattr;
20483 	struct inode *new_dir;
20484 	struct dentry *new_dentry;
20485 	struct nfs_fattr new_fattr;
20486 	void (*complete)(struct rpc_task *, struct nfs_renamedata *);
20487 	long int timeout;
20488 	bool cancelled;
20489 };
20490 
20491 struct nlmclnt_operations;
20492 
20493 struct nfs_access_entry;
20494 
20495 struct nfs_client_initdata;
20496 
20497 struct nfs_rpc_ops {
20498 	u32 version;
20499 	const struct dentry_operations *dentry_ops;
20500 	const struct inode_operations *dir_inode_ops;
20501 	const struct inode_operations *file_inode_ops;
20502 	const struct file_operations *file_ops;
20503 	const struct nlmclnt_operations *nlmclnt_ops;
20504 	int (*getroot)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
20505 	int (*submount)(struct fs_context *, struct nfs_server *);
20506 	int (*try_get_tree)(struct fs_context *);
20507 	int (*getattr)(struct nfs_server *, struct nfs_fh *, struct nfs_fattr *, struct inode *);
20508 	int (*setattr)(struct dentry *, struct nfs_fattr *, struct iattr *);
20509 	int (*lookup)(struct inode *, struct dentry *, struct nfs_fh *, struct nfs_fattr *);
20510 	int (*lookupp)(struct inode *, struct nfs_fh *, struct nfs_fattr *);
20511 	int (*access)(struct inode *, struct nfs_access_entry *, const struct cred *);
20512 	int (*readlink)(struct inode *, struct page *, unsigned int, unsigned int);
20513 	int (*create)(struct inode *, struct dentry *, struct iattr *, int);
20514 	int (*remove)(struct inode *, struct dentry *);
20515 	void (*unlink_setup)(struct rpc_message *, struct dentry *, struct inode *);
20516 	void (*unlink_rpc_prepare)(struct rpc_task *, struct nfs_unlinkdata *);
20517 	int (*unlink_done)(struct rpc_task *, struct inode *);
20518 	void (*rename_setup)(struct rpc_message *, struct dentry *, struct dentry *);
20519 	void (*rename_rpc_prepare)(struct rpc_task *, struct nfs_renamedata *);
20520 	int (*rename_done)(struct rpc_task *, struct inode *, struct inode *);
20521 	int (*link)(struct inode *, struct inode *, const struct qstr *);
20522 	int (*symlink)(struct inode *, struct dentry *, struct page *, unsigned int, struct iattr *);
20523 	int (*mkdir)(struct inode *, struct dentry *, struct iattr *);
20524 	int (*rmdir)(struct inode *, const struct qstr *);
20525 	int (*readdir)(struct nfs_readdir_arg *, struct nfs_readdir_res *);
20526 	int (*mknod)(struct inode *, struct dentry *, struct iattr *, dev_t);
20527 	int (*statfs)(struct nfs_server *, struct nfs_fh *, struct nfs_fsstat *);
20528 	int (*fsinfo)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
20529 	int (*pathconf)(struct nfs_server *, struct nfs_fh *, struct nfs_pathconf *);
20530 	int (*set_capabilities)(struct nfs_server *, struct nfs_fh *);
20531 	int (*decode_dirent)(struct xdr_stream *, struct nfs_entry *, bool);
20532 	int (*pgio_rpc_prepare)(struct rpc_task *, struct nfs_pgio_header *);
20533 	void (*read_setup)(struct nfs_pgio_header *, struct rpc_message *);
20534 	int (*read_done)(struct rpc_task *, struct nfs_pgio_header *);
20535 	void (*write_setup)(struct nfs_pgio_header *, struct rpc_message *, struct rpc_clnt **);
20536 	int (*write_done)(struct rpc_task *, struct nfs_pgio_header *);
20537 	void (*commit_setup)(struct nfs_commit_data *, struct rpc_message *, struct rpc_clnt **);
20538 	void (*commit_rpc_prepare)(struct rpc_task *, struct nfs_commit_data *);
20539 	int (*commit_done)(struct rpc_task *, struct nfs_commit_data *);
20540 	int (*lock)(struct file *, int, struct file_lock *);
20541 	int (*lock_check_bounds)(const struct file_lock *);
20542 	void (*clear_acl_cache)(struct inode *);
20543 	void (*close_context)(struct nfs_open_context *, int);
20544 	struct inode * (*open_context)(struct inode *, struct nfs_open_context *, int, struct iattr *, int *);
20545 	int (*have_delegation)(struct inode *, fmode_t);
20546 	struct nfs_client * (*alloc_client)(const struct nfs_client_initdata *);
20547 	struct nfs_client * (*init_client)(struct nfs_client *, const struct nfs_client_initdata *);
20548 	void (*free_client)(struct nfs_client *);
20549 	struct nfs_server * (*create_server)(struct fs_context *);
20550 	struct nfs_server * (*clone_server)(struct nfs_server *, struct nfs_fh *, struct nfs_fattr *, rpc_authflavor_t);
20551 	int (*discover_trunking)(struct nfs_server *, struct nfs_fh *);
20552 	void (*enable_swap)(struct inode *);
20553 	void (*disable_swap)(struct inode *);
20554 };
20555 
20556 struct nlmclnt_operations {
20557 	void (*nlmclnt_alloc_call)(void *);
20558 	bool (*nlmclnt_unlock_prepare)(struct rpc_task *, void *);
20559 	void (*nlmclnt_release_call)(void *);
20560 };
20561 
20562 struct nfs_access_entry {
20563 	struct rb_node rb_node;
20564 	struct list_head lru;
20565 	kuid_t fsuid;
20566 	kgid_t fsgid;
20567 	struct group_info *group_info;
20568 	__u32 mask;
20569 	struct callback_head callback_head;
20570 };
20571 
20572 struct nfs_client_initdata {
20573 	long unsigned int init_flags;
20574 	const char *hostname;
20575 	const struct sockaddr *addr;
20576 	const char *nodename;
20577 	const char *ip_addr;
20578 	size_t addrlen;
20579 	struct nfs_subversion *nfs_mod;
20580 	int proto;
20581 	u32 minorversion;
20582 	unsigned int nconnect;
20583 	unsigned int max_connect;
20584 	struct net *net;
20585 	const struct rpc_timeout *timeparms;
20586 	const struct cred *cred;
20587 };
20588 
20589 struct nfs4_state_recovery_ops;
20590 
20591 struct nfs4_state_maintenance_ops;
20592 
20593 struct nfs4_mig_recovery_ops;
20594 
20595 struct nfs4_minor_version_ops {
20596 	u32 minor_version;
20597 	unsigned int init_caps;
20598 	int (*init_client)(struct nfs_client *);
20599 	void (*shutdown_client)(struct nfs_client *);
20600 	bool (*match_stateid)(const nfs4_stateid *, const nfs4_stateid *);
20601 	int (*find_root_sec)(struct nfs_server *, struct nfs_fh *, struct nfs_fsinfo *);
20602 	void (*free_lock_state)(struct nfs_server *, struct nfs4_lock_state *);
20603 	int (*test_and_free_expired)(struct nfs_server *, nfs4_stateid *, const struct cred *);
20604 	struct nfs_seqid * (*alloc_seqid)(struct nfs_seqid_counter *, gfp_t);
20605 	void (*session_trunk)(struct rpc_clnt *, struct rpc_xprt *, void *);
20606 	const struct rpc_call_ops *call_sync_ops;
20607 	const struct nfs4_state_recovery_ops *reboot_recovery_ops;
20608 	const struct nfs4_state_recovery_ops *nograce_recovery_ops;
20609 	const struct nfs4_state_maintenance_ops *state_renewal_ops;
20610 	const struct nfs4_mig_recovery_ops *mig_recovery_ops;
20611 };
20612 
20613 struct nfs4_state_owner;
20614 
20615 struct nfs4_state {
20616 	struct list_head open_states;
20617 	struct list_head inode_states;
20618 	struct list_head lock_states;
20619 	struct nfs4_state_owner *owner;
20620 	struct inode *inode;
20621 	long unsigned int flags;
20622 	spinlock_t state_lock;
20623 	seqlock_t seqlock;
20624 	nfs4_stateid stateid;
20625 	nfs4_stateid open_stateid;
20626 	unsigned int n_rdonly;
20627 	unsigned int n_wronly;
20628 	unsigned int n_rdwr;
20629 	fmode_t state;
20630 	refcount_t count;
20631 	wait_queue_head_t waitq;
20632 	struct callback_head callback_head;
20633 };
20634 
20635 struct nfs4_state_recovery_ops {
20636 	int owner_flag_bit;
20637 	int state_flag_bit;
20638 	int (*recover_open)(struct nfs4_state_owner *, struct nfs4_state *);
20639 	int (*recover_lock)(struct nfs4_state *, struct file_lock *);
20640 	int (*establish_clid)(struct nfs_client *, const struct cred *);
20641 	int (*reclaim_complete)(struct nfs_client *, const struct cred *);
20642 	int (*detect_trunking)(struct nfs_client *, struct nfs_client **, const struct cred *);
20643 };
20644 
20645 struct nfs4_state_maintenance_ops {
20646 	int (*sched_state_renewal)(struct nfs_client *, const struct cred *, unsigned int);
20647 	const struct cred * (*get_state_renewal_cred)(struct nfs_client *);
20648 	int (*renew_lease)(struct nfs_client *, const struct cred *);
20649 };
20650 
20651 struct nfs4_mig_recovery_ops {
20652 	int (*get_locations)(struct nfs_server *, struct nfs_fh *, struct nfs4_fs_locations *, struct page *, const struct cred *);
20653 	int (*fsid_present)(struct inode *, const struct cred *);
20654 };
20655 
20656 struct nfs4_state_owner {
20657 	struct nfs_server *so_server;
20658 	struct list_head so_lru;
20659 	long unsigned int so_expires;
20660 	struct rb_node so_server_node;
20661 	const struct cred *so_cred;
20662 	spinlock_t so_lock;
20663 	atomic_t so_count;
20664 	long unsigned int so_flags;
20665 	struct list_head so_states;
20666 	struct nfs_seqid_counter so_seqid;
20667 	seqcount_spinlock_t so_reclaim_seqcount;
20668 	struct mutex so_delegreturn_mutex;
20669 };
20670 
20671 struct bl_dev_msg {
20672 	int32_t status;
20673 	uint32_t major;
20674 	uint32_t minor;
20675 };
20676 
20677 struct cache_detail;
20678 
20679 struct nfs_netns_client;
20680 
20681 struct nfs_net {
20682 	struct cache_detail *nfs_dns_resolve;
20683 	struct rpc_pipe *bl_device_pipe;
20684 	struct bl_dev_msg bl_mount_reply;
20685 	wait_queue_head_t bl_wq;
20686 	struct mutex bl_mutex;
20687 	struct list_head nfs_client_list;
20688 	struct list_head nfs_volume_list;
20689 	struct idr cb_ident_idr;
20690 	short unsigned int nfs_callback_tcpport;
20691 	short unsigned int nfs_callback_tcpport6;
20692 	int cb_users[1];
20693 	struct nfs_netns_client *nfs_client;
20694 	spinlock_t nfs_client_lock;
20695 	ktime_t boot_time;
20696 	struct proc_dir_entry *proc_nfsfs;
20697 };
20698 
20699 struct nfs_netns_client {
20700 	struct kobject kobject;
20701 	struct net *net;
20702 	const char *identifier;
20703 };
20704 
20705 struct nlm_host;
20706 
20707 struct nlm_lockowner {
20708 	struct list_head list;
20709 	refcount_t count;
20710 	struct nlm_host *host;
20711 	fl_owner_t owner;
20712 	uint32_t pid;
20713 };
20714 
20715 struct xdr_netobj {
20716 	unsigned int len;
20717 	u8 *data;
20718 };
20719 
20720 enum {
20721 	NLM_LCK_GRANTED = 0,
20722 	NLM_LCK_DENIED = 1,
20723 	NLM_LCK_DENIED_NOLOCKS = 2,
20724 	NLM_LCK_BLOCKED = 3,
20725 	NLM_LCK_DENIED_GRACE_PERIOD = 4,
20726 	NLM_DEADLCK = 5,
20727 	NLM_ROFS = 6,
20728 	NLM_STALE_FH = 7,
20729 	NLM_FBIG = 8,
20730 	NLM_FAILED = 9,
20731 };
20732 
20733 struct nsm_private {
20734 	unsigned char data[16];
20735 };
20736 
20737 struct nlm_lock {
20738 	char *caller;
20739 	unsigned int len;
20740 	struct nfs_fh fh;
20741 	struct xdr_netobj oh;
20742 	u32 svid;
20743 	u64 lock_start;
20744 	u64 lock_len;
20745 	struct file_lock fl;
20746 };
20747 
20748 struct nlm_cookie {
20749 	unsigned char data[32];
20750 	unsigned int len;
20751 };
20752 
20753 struct nlm_args {
20754 	struct nlm_cookie cookie;
20755 	struct nlm_lock lock;
20756 	u32 block;
20757 	u32 reclaim;
20758 	u32 state;
20759 	u32 monitor;
20760 	u32 fsm_access;
20761 	u32 fsm_mode;
20762 };
20763 
20764 struct nlm_res {
20765 	struct nlm_cookie cookie;
20766 	__be32 status;
20767 	struct nlm_lock lock;
20768 };
20769 
20770 struct nsm_handle;
20771 
20772 struct nlm_host {
20773 	struct hlist_node h_hash;
20774 	struct __kernel_sockaddr_storage h_addr;
20775 	size_t h_addrlen;
20776 	struct __kernel_sockaddr_storage h_srcaddr;
20777 	size_t h_srcaddrlen;
20778 	struct rpc_clnt *h_rpcclnt;
20779 	char *h_name;
20780 	u32 h_version;
20781 	short unsigned int h_proto;
20782 	short unsigned int h_reclaiming: 1;
20783 	short unsigned int h_server: 1;
20784 	short unsigned int h_noresvport: 1;
20785 	short unsigned int h_inuse: 1;
20786 	wait_queue_head_t h_gracewait;
20787 	struct rw_semaphore h_rwsem;
20788 	u32 h_state;
20789 	u32 h_nsmstate;
20790 	u32 h_pidcount;
20791 	refcount_t h_count;
20792 	struct mutex h_mutex;
20793 	long unsigned int h_nextrebind;
20794 	long unsigned int h_expires;
20795 	struct list_head h_lockowners;
20796 	spinlock_t h_lock;
20797 	struct list_head h_granted;
20798 	struct list_head h_reclaim;
20799 	struct nsm_handle *h_nsmhandle;
20800 	char *h_addrbuf;
20801 	struct net *net;
20802 	const struct cred *h_cred;
20803 	char nodename[65];
20804 	const struct nlmclnt_operations *h_nlmclnt_ops;
20805 };
20806 
20807 struct nsm_handle {
20808 	struct list_head sm_link;
20809 	refcount_t sm_count;
20810 	char *sm_mon_name;
20811 	char *sm_name;
20812 	struct __kernel_sockaddr_storage sm_addr;
20813 	size_t sm_addrlen;
20814 	unsigned int sm_monitored: 1;
20815 	unsigned int sm_sticky: 1;
20816 	struct nsm_private sm_priv;
20817 	char sm_addrbuf[51];
20818 };
20819 
20820 typedef void (*exitcall_t)();
20821 
20822 typedef struct {
20823 	int val[2];
20824 } __kernel_fsid_t;
20825 
20826 typedef unsigned int uint;
20827 
20828 typedef long long unsigned int xfs_ino_t;
20829 
20830 typedef __s64 xfs_daddr_t;
20831 
20832 typedef __u32 xfs_nlink_t;
20833 
20834 typedef uint32_t xfs_agblock_t;
20835 
20836 typedef uint32_t xfs_agino_t;
20837 
20838 typedef uint32_t xfs_extlen_t;
20839 
20840 typedef uint32_t xfs_agnumber_t;
20841 
20842 typedef int64_t xfs_lsn_t;
20843 
20844 typedef uint64_t xfs_fsblock_t;
20845 
20846 typedef uint64_t xfs_rfsblock_t;
20847 
20848 typedef uint64_t xfs_rtblock_t;
20849 
20850 typedef uint64_t xfs_fileoff_t;
20851 
20852 typedef uint64_t xfs_filblks_t;
20853 
20854 typedef void *xfs_failaddr_t;
20855 
20856 typedef enum {
20857 	XFS_BTNUM_BNOi = 0,
20858 	XFS_BTNUM_CNTi = 1,
20859 	XFS_BTNUM_RMAPi = 2,
20860 	XFS_BTNUM_BMAPi = 3,
20861 	XFS_BTNUM_INOi = 4,
20862 	XFS_BTNUM_FINOi = 5,
20863 	XFS_BTNUM_REFCi = 6,
20864 	XFS_BTNUM_MAX = 7,
20865 } xfs_btnum_t;
20866 
20867 typedef enum {
20868 	XFS_EXT_NORM = 0,
20869 	XFS_EXT_UNWRITTEN = 1,
20870 } xfs_exntst_t;
20871 
20872 struct xfs_bmbt_irec {
20873 	xfs_fileoff_t br_startoff;
20874 	xfs_fsblock_t br_startblock;
20875 	xfs_filblks_t br_blockcount;
20876 	xfs_exntst_t br_state;
20877 };
20878 
20879 enum xfs_ag_resv_type {
20880 	XFS_AG_RESV_NONE = 0,
20881 	XFS_AG_RESV_AGFL = 1,
20882 	XFS_AG_RESV_METADATA = 2,
20883 	XFS_AG_RESV_RMAPBT = 3,
20884 };
20885 
20886 struct rhash_lock_head;
20887 
20888 struct bucket_table {
20889 	unsigned int size;
20890 	unsigned int nest;
20891 	u32 hash_rnd;
20892 	struct list_head walkers;
20893 	struct callback_head rcu;
20894 	struct bucket_table *future_tbl;
20895 	struct lockdep_map dep_map;
20896 	long: 64;
20897 	long: 64;
20898 	long: 64;
20899 	long: 64;
20900 	long: 64;
20901 	long: 64;
20902 	long: 64;
20903 	long: 64;
20904 	long: 64;
20905 	struct rhash_lock_head *buckets[0];
20906 };
20907 
20908 struct request;
20909 
20910 struct blk_plug {
20911 	struct request *mq_list;
20912 	struct request *cached_rq;
20913 	short unsigned int nr_ios;
20914 	short unsigned int rq_count;
20915 	bool multiple_queues;
20916 	bool has_elevator;
20917 	bool nowait;
20918 	struct list_head cb_list;
20919 };
20920 
20921 struct semaphore {
20922 	raw_spinlock_t lock;
20923 	unsigned int count;
20924 	struct list_head wait_list;
20925 };
20926 
20927 enum blk_bounce {
20928 	BLK_BOUNCE_NONE = 0,
20929 	BLK_BOUNCE_HIGH = 1,
20930 };
20931 
20932 enum blk_zoned_model {
20933 	BLK_ZONED_NONE = 0,
20934 	BLK_ZONED_HA = 1,
20935 	BLK_ZONED_HM = 2,
20936 };
20937 
20938 struct queue_limits {
20939 	enum blk_bounce bounce;
20940 	long unsigned int seg_boundary_mask;
20941 	long unsigned int virt_boundary_mask;
20942 	unsigned int max_hw_sectors;
20943 	unsigned int max_dev_sectors;
20944 	unsigned int chunk_sectors;
20945 	unsigned int max_sectors;
20946 	unsigned int max_segment_size;
20947 	unsigned int physical_block_size;
20948 	unsigned int logical_block_size;
20949 	unsigned int alignment_offset;
20950 	unsigned int io_min;
20951 	unsigned int io_opt;
20952 	unsigned int max_discard_sectors;
20953 	unsigned int max_hw_discard_sectors;
20954 	unsigned int max_secure_erase_sectors;
20955 	unsigned int max_write_zeroes_sectors;
20956 	unsigned int max_zone_append_sectors;
20957 	unsigned int discard_granularity;
20958 	unsigned int discard_alignment;
20959 	unsigned int zone_write_granularity;
20960 	short unsigned int max_segments;
20961 	short unsigned int max_integrity_segments;
20962 	short unsigned int max_discard_segments;
20963 	unsigned char misaligned;
20964 	unsigned char discard_misaligned;
20965 	unsigned char raid_partial_stripes_expensive;
20966 	enum blk_zoned_model zoned;
20967 };
20968 
20969 struct elevator_queue;
20970 
20971 struct blk_queue_stats;
20972 
20973 struct rq_qos;
20974 
20975 struct blk_mq_ops;
20976 
20977 struct blk_mq_ctx;
20978 
20979 struct blk_stat_callback;
20980 
20981 struct blk_rq_stat;
20982 
20983 struct blk_mq_tags;
20984 
20985 struct blk_trace;
20986 
20987 struct blk_flush_queue;
20988 
20989 struct blk_mq_tag_set;
20990 
20991 struct request_queue {
20992 	struct request *last_merge;
20993 	struct elevator_queue *elevator;
20994 	struct percpu_ref q_usage_counter;
20995 	struct blk_queue_stats *stats;
20996 	struct rq_qos *rq_qos;
20997 	const struct blk_mq_ops *mq_ops;
20998 	struct blk_mq_ctx *queue_ctx;
20999 	unsigned int queue_depth;
21000 	struct xarray hctx_table;
21001 	unsigned int nr_hw_queues;
21002 	void *queuedata;
21003 	long unsigned int queue_flags;
21004 	atomic_t pm_only;
21005 	int id;
21006 	spinlock_t queue_lock;
21007 	struct gendisk *disk;
21008 	struct kobject kobj;
21009 	struct kobject *mq_kobj;
21010 	struct device *dev;
21011 	enum rpm_status rpm_status;
21012 	long unsigned int nr_requests;
21013 	unsigned int dma_pad_mask;
21014 	unsigned int dma_alignment;
21015 	unsigned int rq_timeout;
21016 	int poll_nsec;
21017 	struct blk_stat_callback *poll_cb;
21018 	struct blk_rq_stat *poll_stat;
21019 	struct timer_list timeout;
21020 	struct work_struct timeout_work;
21021 	atomic_t nr_active_requests_shared_tags;
21022 	struct blk_mq_tags *sched_shared_tags;
21023 	struct list_head icq_list;
21024 	struct queue_limits limits;
21025 	unsigned int required_elevator_features;
21026 	int node;
21027 	struct blk_trace *blk_trace;
21028 	struct blk_flush_queue *fq;
21029 	struct list_head requeue_list;
21030 	spinlock_t requeue_lock;
21031 	struct delayed_work requeue_work;
21032 	struct mutex sysfs_lock;
21033 	struct mutex sysfs_dir_lock;
21034 	struct list_head unused_hctx_list;
21035 	spinlock_t unused_hctx_lock;
21036 	int mq_freeze_depth;
21037 	struct callback_head callback_head;
21038 	wait_queue_head_t mq_freeze_wq;
21039 	struct mutex mq_freeze_lock;
21040 	int quiesce_depth;
21041 	struct blk_mq_tag_set *tag_set;
21042 	struct list_head tag_set_list;
21043 	struct dentry *debugfs_dir;
21044 	struct dentry *sched_debugfs_dir;
21045 	struct dentry *rqos_debugfs_dir;
21046 	struct mutex debugfs_mutex;
21047 	bool mq_sysfs_init_done;
21048 	struct srcu_struct srcu[0];
21049 };
21050 
21051 struct io_comp_batch {
21052 	struct request *req_list;
21053 	bool need_ts;
21054 	void (*complete)(struct io_comp_batch *);
21055 };
21056 
21057 struct kstatfs {
21058 	long int f_type;
21059 	long int f_bsize;
21060 	u64 f_blocks;
21061 	u64 f_bfree;
21062 	u64 f_bavail;
21063 	u64 f_files;
21064 	u64 f_ffree;
21065 	__kernel_fsid_t f_fsid;
21066 	long int f_namelen;
21067 	long int f_frsize;
21068 	long int f_flags;
21069 	long int f_spare[4];
21070 };
21071 
21072 struct block_device_operations;
21073 
21074 struct timer_rand_state;
21075 
21076 struct disk_events;
21077 
21078 struct cdrom_device_info;
21079 
21080 struct badblocks;
21081 
21082 struct blk_independent_access_ranges;
21083 
21084 struct gendisk {
21085 	int major;
21086 	int first_minor;
21087 	int minors;
21088 	char disk_name[32];
21089 	short unsigned int events;
21090 	short unsigned int event_flags;
21091 	struct xarray part_tbl;
21092 	struct block_device *part0;
21093 	const struct block_device_operations *fops;
21094 	struct request_queue *queue;
21095 	void *private_data;
21096 	struct bio_set bio_split;
21097 	int flags;
21098 	long unsigned int state;
21099 	struct mutex open_mutex;
21100 	unsigned int open_partitions;
21101 	struct backing_dev_info *bdi;
21102 	struct kobject *slave_dir;
21103 	struct list_head slave_bdevs;
21104 	struct timer_rand_state *random;
21105 	atomic_t sync_io;
21106 	struct disk_events *ev;
21107 	struct cdrom_device_info *cdi;
21108 	int node_id;
21109 	struct badblocks *bb;
21110 	struct lockdep_map lockdep_map;
21111 	u64 diskseq;
21112 	struct blk_independent_access_ranges *ia_ranges;
21113 };
21114 
21115 struct partition_meta_info {
21116 	char uuid[37];
21117 	u8 volname[64];
21118 };
21119 
21120 enum req_op {
21121 	REQ_OP_READ = 0,
21122 	REQ_OP_WRITE = 1,
21123 	REQ_OP_FLUSH = 2,
21124 	REQ_OP_DISCARD = 3,
21125 	REQ_OP_SECURE_ERASE = 5,
21126 	REQ_OP_WRITE_ZEROES = 9,
21127 	REQ_OP_ZONE_OPEN = 10,
21128 	REQ_OP_ZONE_CLOSE = 11,
21129 	REQ_OP_ZONE_FINISH = 12,
21130 	REQ_OP_ZONE_APPEND = 13,
21131 	REQ_OP_ZONE_RESET = 15,
21132 	REQ_OP_ZONE_RESET_ALL = 17,
21133 	REQ_OP_DRV_IN = 34,
21134 	REQ_OP_DRV_OUT = 35,
21135 	REQ_OP_LAST = 36,
21136 };
21137 
21138 struct blk_rq_stat {
21139 	u64 mean;
21140 	u64 min;
21141 	u64 max;
21142 	u32 nr_samples;
21143 	u64 batch;
21144 };
21145 
21146 struct blk_zone {
21147 	__u64 start;
21148 	__u64 len;
21149 	__u64 wp;
21150 	__u8 type;
21151 	__u8 cond;
21152 	__u8 non_seq;
21153 	__u8 reset;
21154 	__u8 resv[4];
21155 	__u64 capacity;
21156 	__u8 reserved[24];
21157 };
21158 
21159 typedef int (*report_zones_cb)(struct blk_zone *, unsigned int, void *);
21160 
21161 enum blk_unique_id {
21162 	BLK_UID_T10 = 1,
21163 	BLK_UID_EUI64 = 2,
21164 	BLK_UID_NAA = 3,
21165 };
21166 
21167 struct hd_geometry;
21168 
21169 struct pr_ops;
21170 
21171 struct block_device_operations {
21172 	void (*submit_bio)(struct bio *);
21173 	int (*poll_bio)(struct bio *, struct io_comp_batch *, unsigned int);
21174 	int (*open)(struct block_device *, fmode_t);
21175 	void (*release)(struct gendisk *, fmode_t);
21176 	int (*rw_page)(struct block_device *, sector_t, struct page *, enum req_op);
21177 	int (*ioctl)(struct block_device *, fmode_t, unsigned int, long unsigned int);
21178 	int (*compat_ioctl)(struct block_device *, fmode_t, unsigned int, long unsigned int);
21179 	unsigned int (*check_events)(struct gendisk *, unsigned int);
21180 	void (*unlock_native_capacity)(struct gendisk *);
21181 	int (*getgeo)(struct block_device *, struct hd_geometry *);
21182 	int (*set_read_only)(struct block_device *, bool);
21183 	void (*free_disk)(struct gendisk *);
21184 	void (*swap_slot_free_notify)(struct block_device *, long unsigned int);
21185 	int (*report_zones)(struct gendisk *, sector_t, unsigned int, report_zones_cb, void *);
21186 	char * (*devnode)(struct gendisk *, umode_t *);
21187 	int (*get_unique_id)(struct gendisk *, u8 *, enum blk_unique_id);
21188 	struct module *owner;
21189 	const struct pr_ops *pr_ops;
21190 	int (*alternative_gpt_sector)(struct gendisk *, sector_t *);
21191 };
21192 
21193 struct blk_independent_access_range {
21194 	struct kobject kobj;
21195 	sector_t sector;
21196 	sector_t nr_sectors;
21197 };
21198 
21199 struct blk_independent_access_ranges {
21200 	struct kobject kobj;
21201 	bool sysfs_registered;
21202 	unsigned int nr_ia_ranges;
21203 	struct blk_independent_access_range ia_range[0];
21204 };
21205 
21206 enum blk_eh_timer_return {
21207 	BLK_EH_DONE = 0,
21208 	BLK_EH_RESET_TIMER = 1,
21209 };
21210 
21211 struct blk_mq_hw_ctx;
21212 
21213 struct blk_mq_queue_data;
21214 
21215 struct blk_mq_ops {
21216 	blk_status_t (*queue_rq)(struct blk_mq_hw_ctx *, const struct blk_mq_queue_data *);
21217 	void (*commit_rqs)(struct blk_mq_hw_ctx *);
21218 	void (*queue_rqs)(struct request **);
21219 	int (*get_budget)(struct request_queue *);
21220 	void (*put_budget)(struct request_queue *, int);
21221 	void (*set_rq_budget_token)(struct request *, int);
21222 	int (*get_rq_budget_token)(struct request *);
21223 	enum blk_eh_timer_return (*timeout)(struct request *);
21224 	int (*poll)(struct blk_mq_hw_ctx *, struct io_comp_batch *);
21225 	void (*complete)(struct request *);
21226 	int (*init_hctx)(struct blk_mq_hw_ctx *, void *, unsigned int);
21227 	void (*exit_hctx)(struct blk_mq_hw_ctx *, unsigned int);
21228 	int (*init_request)(struct blk_mq_tag_set *, struct request *, unsigned int, unsigned int);
21229 	void (*exit_request)(struct blk_mq_tag_set *, struct request *, unsigned int);
21230 	void (*cleanup_rq)(struct request *);
21231 	bool (*busy)(struct request_queue *);
21232 	int (*map_queues)(struct blk_mq_tag_set *);
21233 	void (*show_rq)(struct seq_file *, struct request *);
21234 };
21235 
21236 enum pr_type {
21237 	PR_WRITE_EXCLUSIVE = 1,
21238 	PR_EXCLUSIVE_ACCESS = 2,
21239 	PR_WRITE_EXCLUSIVE_REG_ONLY = 3,
21240 	PR_EXCLUSIVE_ACCESS_REG_ONLY = 4,
21241 	PR_WRITE_EXCLUSIVE_ALL_REGS = 5,
21242 	PR_EXCLUSIVE_ACCESS_ALL_REGS = 6,
21243 };
21244 
21245 struct pr_ops {
21246 	int (*pr_register)(struct block_device *, u64, u64, u32);
21247 	int (*pr_reserve)(struct block_device *, u64, enum pr_type, u32);
21248 	int (*pr_release)(struct block_device *, u64, enum pr_type);
21249 	int (*pr_preempt)(struct block_device *, u64, u64, enum pr_type, bool);
21250 	int (*pr_clear)(struct block_device *, u64);
21251 };
21252 
21253 struct rhash_lock_head {};
21254 
21255 enum {
21256 	__XBTS_lookup = 0,
21257 	__XBTS_compare = 1,
21258 	__XBTS_insrec = 2,
21259 	__XBTS_delrec = 3,
21260 	__XBTS_newroot = 4,
21261 	__XBTS_killroot = 5,
21262 	__XBTS_increment = 6,
21263 	__XBTS_decrement = 7,
21264 	__XBTS_lshift = 8,
21265 	__XBTS_rshift = 9,
21266 	__XBTS_split = 10,
21267 	__XBTS_join = 11,
21268 	__XBTS_alloc = 12,
21269 	__XBTS_free = 13,
21270 	__XBTS_moves = 14,
21271 	__XBTS_MAX = 15,
21272 };
21273 
21274 struct __xfsstats {
21275 	uint32_t xs_allocx;
21276 	uint32_t xs_allocb;
21277 	uint32_t xs_freex;
21278 	uint32_t xs_freeb;
21279 	uint32_t xs_abt_lookup;
21280 	uint32_t xs_abt_compare;
21281 	uint32_t xs_abt_insrec;
21282 	uint32_t xs_abt_delrec;
21283 	uint32_t xs_blk_mapr;
21284 	uint32_t xs_blk_mapw;
21285 	uint32_t xs_blk_unmap;
21286 	uint32_t xs_add_exlist;
21287 	uint32_t xs_del_exlist;
21288 	uint32_t xs_look_exlist;
21289 	uint32_t xs_cmp_exlist;
21290 	uint32_t xs_bmbt_lookup;
21291 	uint32_t xs_bmbt_compare;
21292 	uint32_t xs_bmbt_insrec;
21293 	uint32_t xs_bmbt_delrec;
21294 	uint32_t xs_dir_lookup;
21295 	uint32_t xs_dir_create;
21296 	uint32_t xs_dir_remove;
21297 	uint32_t xs_dir_getdents;
21298 	uint32_t xs_trans_sync;
21299 	uint32_t xs_trans_async;
21300 	uint32_t xs_trans_empty;
21301 	uint32_t xs_ig_attempts;
21302 	uint32_t xs_ig_found;
21303 	uint32_t xs_ig_frecycle;
21304 	uint32_t xs_ig_missed;
21305 	uint32_t xs_ig_dup;
21306 	uint32_t xs_ig_reclaims;
21307 	uint32_t xs_ig_attrchg;
21308 	uint32_t xs_log_writes;
21309 	uint32_t xs_log_blocks;
21310 	uint32_t xs_log_noiclogs;
21311 	uint32_t xs_log_force;
21312 	uint32_t xs_log_force_sleep;
21313 	uint32_t xs_try_logspace;
21314 	uint32_t xs_sleep_logspace;
21315 	uint32_t xs_push_ail;
21316 	uint32_t xs_push_ail_success;
21317 	uint32_t xs_push_ail_pushbuf;
21318 	uint32_t xs_push_ail_pinned;
21319 	uint32_t xs_push_ail_locked;
21320 	uint32_t xs_push_ail_flushing;
21321 	uint32_t xs_push_ail_restarts;
21322 	uint32_t xs_push_ail_flush;
21323 	uint32_t xs_xstrat_quick;
21324 	uint32_t xs_xstrat_split;
21325 	uint32_t xs_write_calls;
21326 	uint32_t xs_read_calls;
21327 	uint32_t xs_attr_get;
21328 	uint32_t xs_attr_set;
21329 	uint32_t xs_attr_remove;
21330 	uint32_t xs_attr_list;
21331 	uint32_t xs_iflush_count;
21332 	uint32_t xs_icluster_flushcnt;
21333 	uint32_t xs_icluster_flushinode;
21334 	uint32_t vn_active;
21335 	uint32_t vn_alloc;
21336 	uint32_t vn_get;
21337 	uint32_t vn_hold;
21338 	uint32_t vn_rele;
21339 	uint32_t vn_reclaim;
21340 	uint32_t vn_remove;
21341 	uint32_t vn_free;
21342 	uint32_t xb_get;
21343 	uint32_t xb_create;
21344 	uint32_t xb_get_locked;
21345 	uint32_t xb_get_locked_waited;
21346 	uint32_t xb_busy_locked;
21347 	uint32_t xb_miss_locked;
21348 	uint32_t xb_page_retries;
21349 	uint32_t xb_page_found;
21350 	uint32_t xb_get_read;
21351 	uint32_t xs_abtb_2[15];
21352 	uint32_t xs_abtc_2[15];
21353 	uint32_t xs_bmbt_2[15];
21354 	uint32_t xs_ibt_2[15];
21355 	uint32_t xs_fibt_2[15];
21356 	uint32_t xs_rmap_2[15];
21357 	uint32_t xs_refcbt_2[15];
21358 	uint32_t xs_qm_dqreclaims;
21359 	uint32_t xs_qm_dqreclaim_misses;
21360 	uint32_t xs_qm_dquot_dups;
21361 	uint32_t xs_qm_dqcachemisses;
21362 	uint32_t xs_qm_dqcachehits;
21363 	uint32_t xs_qm_dqwants;
21364 	uint32_t xs_qm_dquot;
21365 	uint32_t xs_qm_dquot_unused;
21366 	uint64_t xs_xstrat_bytes;
21367 	uint64_t xs_write_bytes;
21368 	uint64_t xs_read_bytes;
21369 	uint64_t defer_relog;
21370 };
21371 
21372 struct xfsstats {
21373 	union {
21374 		struct __xfsstats s;
21375 		uint32_t a[187];
21376 	};
21377 };
21378 
21379 struct xfs_kobj {
21380 	struct kobject kobject;
21381 	struct completion complete;
21382 };
21383 
21384 struct xstats {
21385 	struct xfsstats *xs_stats;
21386 	struct xfs_kobj xs_kobj;
21387 };
21388 
21389 struct fid {
21390 	union {
21391 		struct {
21392 			u32 ino;
21393 			u32 gen;
21394 			u32 parent_ino;
21395 			u32 parent_gen;
21396 		} i32;
21397 		struct {
21398 			u32 block;
21399 			u16 partref;
21400 			u16 parent_partref;
21401 			u32 generation;
21402 			u32 parent_block;
21403 			u32 parent_generation;
21404 		} udf;
21405 		__u32 raw[0];
21406 	};
21407 };
21408 
21409 typedef unsigned int xfs_buf_flags_t;
21410 
21411 struct xfs_mount;
21412 
21413 struct xfs_buftarg {
21414 	dev_t bt_dev;
21415 	struct block_device *bt_bdev;
21416 	struct dax_device *bt_daxdev;
21417 	u64 bt_dax_part_off;
21418 	struct xfs_mount *bt_mount;
21419 	unsigned int bt_meta_sectorsize;
21420 	size_t bt_meta_sectormask;
21421 	size_t bt_logical_sectorsize;
21422 	size_t bt_logical_sectormask;
21423 	struct shrinker bt_shrinker;
21424 	struct list_lru bt_lru;
21425 	struct percpu_counter bt_io_count;
21426 	struct ratelimit_state bt_ioerror_rl;
21427 };
21428 
21429 struct xfs_sb {
21430 	uint32_t sb_magicnum;
21431 	uint32_t sb_blocksize;
21432 	xfs_rfsblock_t sb_dblocks;
21433 	xfs_rfsblock_t sb_rblocks;
21434 	xfs_rtblock_t sb_rextents;
21435 	uuid_t sb_uuid;
21436 	xfs_fsblock_t sb_logstart;
21437 	xfs_ino_t sb_rootino;
21438 	xfs_ino_t sb_rbmino;
21439 	xfs_ino_t sb_rsumino;
21440 	xfs_agblock_t sb_rextsize;
21441 	xfs_agblock_t sb_agblocks;
21442 	xfs_agnumber_t sb_agcount;
21443 	xfs_extlen_t sb_rbmblocks;
21444 	xfs_extlen_t sb_logblocks;
21445 	uint16_t sb_versionnum;
21446 	uint16_t sb_sectsize;
21447 	uint16_t sb_inodesize;
21448 	uint16_t sb_inopblock;
21449 	char sb_fname[12];
21450 	uint8_t sb_blocklog;
21451 	uint8_t sb_sectlog;
21452 	uint8_t sb_inodelog;
21453 	uint8_t sb_inopblog;
21454 	uint8_t sb_agblklog;
21455 	uint8_t sb_rextslog;
21456 	uint8_t sb_inprogress;
21457 	uint8_t sb_imax_pct;
21458 	uint64_t sb_icount;
21459 	uint64_t sb_ifree;
21460 	uint64_t sb_fdblocks;
21461 	uint64_t sb_frextents;
21462 	xfs_ino_t sb_uquotino;
21463 	xfs_ino_t sb_gquotino;
21464 	uint16_t sb_qflags;
21465 	uint8_t sb_flags;
21466 	uint8_t sb_shared_vn;
21467 	xfs_extlen_t sb_inoalignmt;
21468 	uint32_t sb_unit;
21469 	uint32_t sb_width;
21470 	uint8_t sb_dirblklog;
21471 	uint8_t sb_logsectlog;
21472 	uint16_t sb_logsectsize;
21473 	uint32_t sb_logsunit;
21474 	uint32_t sb_features2;
21475 	uint32_t sb_bad_features2;
21476 	uint32_t sb_features_compat;
21477 	uint32_t sb_features_ro_compat;
21478 	uint32_t sb_features_incompat;
21479 	uint32_t sb_features_log_incompat;
21480 	uint32_t sb_crc;
21481 	xfs_extlen_t sb_spino_align;
21482 	xfs_ino_t sb_pquotino;
21483 	xfs_lsn_t sb_lsn;
21484 	uuid_t sb_meta_uuid;
21485 };
21486 
21487 typedef struct xfs_buftarg xfs_buftarg_t;
21488 
21489 struct xfs_mru_cache;
21490 
21491 struct xfs_ino_geometry {
21492 	uint64_t maxicount;
21493 	unsigned int inode_cluster_size;
21494 	unsigned int inode_cluster_size_raw;
21495 	unsigned int inodes_per_cluster;
21496 	unsigned int blocks_per_cluster;
21497 	unsigned int cluster_align;
21498 	unsigned int cluster_align_inodes;
21499 	unsigned int inoalign_mask;
21500 	unsigned int inobt_mxr[2];
21501 	unsigned int inobt_mnr[2];
21502 	unsigned int inobt_maxlevels;
21503 	unsigned int ialloc_inos;
21504 	unsigned int ialloc_blks;
21505 	unsigned int ialloc_min_blks;
21506 	unsigned int ialloc_align;
21507 	unsigned int agino_log;
21508 	unsigned int attr_fork_offset;
21509 	uint64_t new_diflags2;
21510 };
21511 
21512 struct xfs_trans_res {
21513 	uint tr_logres;
21514 	int tr_logcount;
21515 	int tr_logflags;
21516 };
21517 
21518 struct xfs_trans_resv {
21519 	struct xfs_trans_res tr_write;
21520 	struct xfs_trans_res tr_itruncate;
21521 	struct xfs_trans_res tr_rename;
21522 	struct xfs_trans_res tr_link;
21523 	struct xfs_trans_res tr_remove;
21524 	struct xfs_trans_res tr_symlink;
21525 	struct xfs_trans_res tr_create;
21526 	struct xfs_trans_res tr_create_tmpfile;
21527 	struct xfs_trans_res tr_mkdir;
21528 	struct xfs_trans_res tr_ifree;
21529 	struct xfs_trans_res tr_ichange;
21530 	struct xfs_trans_res tr_growdata;
21531 	struct xfs_trans_res tr_addafork;
21532 	struct xfs_trans_res tr_writeid;
21533 	struct xfs_trans_res tr_attrinval;
21534 	struct xfs_trans_res tr_attrsetm;
21535 	struct xfs_trans_res tr_attrsetrt;
21536 	struct xfs_trans_res tr_attrrm;
21537 	struct xfs_trans_res tr_clearagi;
21538 	struct xfs_trans_res tr_growrtalloc;
21539 	struct xfs_trans_res tr_growrtzero;
21540 	struct xfs_trans_res tr_growrtfree;
21541 	struct xfs_trans_res tr_qm_setqlim;
21542 	struct xfs_trans_res tr_qm_dqalloc;
21543 	struct xfs_trans_res tr_sb;
21544 	struct xfs_trans_res tr_fsyncts;
21545 };
21546 
21547 struct xfs_error_cfg {
21548 	struct xfs_kobj kobj;
21549 	int max_retries;
21550 	long int retry_timeout;
21551 };
21552 
21553 struct xfs_ail;
21554 
21555 struct xfs_buf;
21556 
21557 struct xfs_da_geometry;
21558 
21559 struct xlog;
21560 
21561 struct xfs_inode;
21562 
21563 struct xfs_quotainfo;
21564 
21565 struct xfs_mount {
21566 	struct xfs_sb m_sb;
21567 	struct super_block *m_super;
21568 	struct xfs_ail *m_ail;
21569 	struct xfs_buf *m_sb_bp;
21570 	char *m_rtname;
21571 	char *m_logname;
21572 	struct xfs_da_geometry *m_dir_geo;
21573 	struct xfs_da_geometry *m_attr_geo;
21574 	struct xlog *m_log;
21575 	struct xfs_inode *m_rbmip;
21576 	struct xfs_inode *m_rsumip;
21577 	struct xfs_inode *m_rootip;
21578 	struct xfs_quotainfo *m_quotainfo;
21579 	xfs_buftarg_t *m_ddev_targp;
21580 	xfs_buftarg_t *m_logdev_targp;
21581 	xfs_buftarg_t *m_rtdev_targp;
21582 	struct list_head m_mount_list;
21583 	void *m_inodegc;
21584 	uint8_t *m_rsum_cache;
21585 	struct xfs_mru_cache *m_filestream;
21586 	struct workqueue_struct *m_buf_workqueue;
21587 	struct workqueue_struct *m_unwritten_workqueue;
21588 	struct workqueue_struct *m_reclaim_workqueue;
21589 	struct workqueue_struct *m_sync_workqueue;
21590 	struct workqueue_struct *m_blockgc_wq;
21591 	struct workqueue_struct *m_inodegc_wq;
21592 	int m_bsize;
21593 	uint8_t m_blkbit_log;
21594 	uint8_t m_blkbb_log;
21595 	uint8_t m_agno_log;
21596 	uint8_t m_sectbb_log;
21597 	uint m_blockmask;
21598 	uint m_blockwsize;
21599 	uint m_blockwmask;
21600 	uint m_alloc_mxr[2];
21601 	uint m_alloc_mnr[2];
21602 	uint m_bmap_dmxr[2];
21603 	uint m_bmap_dmnr[2];
21604 	uint m_rmap_mxr[2];
21605 	uint m_rmap_mnr[2];
21606 	uint m_refc_mxr[2];
21607 	uint m_refc_mnr[2];
21608 	uint m_alloc_maxlevels;
21609 	uint m_bm_maxlevels[2];
21610 	uint m_rmap_maxlevels;
21611 	uint m_refc_maxlevels;
21612 	unsigned int m_agbtree_maxlevels;
21613 	xfs_extlen_t m_ag_prealloc_blocks;
21614 	uint m_alloc_set_aside;
21615 	uint m_ag_max_usable;
21616 	int m_dalign;
21617 	int m_swidth;
21618 	xfs_agnumber_t m_maxagi;
21619 	uint m_allocsize_log;
21620 	uint m_allocsize_blocks;
21621 	int m_logbufs;
21622 	int m_logbsize;
21623 	uint m_rsumlevels;
21624 	uint m_rsumsize;
21625 	int m_fixedfsid[2];
21626 	uint m_qflags;
21627 	uint64_t m_features;
21628 	uint64_t m_low_space[5];
21629 	uint64_t m_low_rtexts[5];
21630 	struct xfs_ino_geometry m_ino_geo;
21631 	struct xfs_trans_resv m_resv;
21632 	long unsigned int m_opstate;
21633 	bool m_always_cow;
21634 	bool m_fail_unmount;
21635 	bool m_finobt_nores;
21636 	bool m_update_sb;
21637 	uint8_t m_fs_checked;
21638 	uint8_t m_fs_sick;
21639 	uint8_t m_rt_checked;
21640 	uint8_t m_rt_sick;
21641 	long: 64;
21642 	spinlock_t m_sb_lock;
21643 	struct percpu_counter m_icount;
21644 	struct percpu_counter m_ifree;
21645 	struct percpu_counter m_fdblocks;
21646 	struct percpu_counter m_frextents;
21647 	struct percpu_counter m_delalloc_blks;
21648 	atomic64_t m_allocbt_blks;
21649 	struct xarray m_perag_tree;
21650 	spinlock_t m_perag_lock;
21651 	uint64_t m_resblks;
21652 	uint64_t m_resblks_avail;
21653 	uint64_t m_resblks_save;
21654 	struct delayed_work m_reclaim_work;
21655 	struct xfs_kobj m_kobj;
21656 	struct xfs_kobj m_error_kobj;
21657 	struct xfs_kobj m_error_meta_kobj;
21658 	struct xfs_error_cfg m_error_cfg[4];
21659 	struct xstats m_stats;
21660 	xfs_agnumber_t m_agfrotor;
21661 	xfs_agnumber_t m_agirotor;
21662 	spinlock_t m_agirotor_lock;
21663 	struct shrinker m_inodegc_shrinker;
21664 	struct work_struct m_flush_inodes_work;
21665 	uint32_t m_generation;
21666 	struct mutex m_growlock;
21667 	long: 64;
21668 	long: 64;
21669 	long: 64;
21670 	long: 64;
21671 	long: 64;
21672 	long: 64;
21673 	long: 64;
21674 };
21675 
21676 struct xfs_buf_map {
21677 	xfs_daddr_t bm_bn;
21678 	int bm_len;
21679 };
21680 
21681 struct xfs_buf_ops {
21682 	char *name;
21683 	union {
21684 		__be32 magic[2];
21685 		__be16 magic16[2];
21686 	};
21687 	void (*verify_read)(struct xfs_buf *);
21688 	void (*verify_write)(struct xfs_buf *);
21689 	xfs_failaddr_t (*verify_struct)(struct xfs_buf *);
21690 };
21691 
21692 struct xfs_perag;
21693 
21694 struct xfs_buf_log_item;
21695 
21696 struct xfs_trans;
21697 
21698 struct xfs_buf {
21699 	struct rhash_head b_rhash_head;
21700 	xfs_daddr_t b_rhash_key;
21701 	int b_length;
21702 	atomic_t b_hold;
21703 	atomic_t b_lru_ref;
21704 	xfs_buf_flags_t b_flags;
21705 	struct semaphore b_sema;
21706 	struct list_head b_lru;
21707 	spinlock_t b_lock;
21708 	unsigned int b_state;
21709 	int b_io_error;
21710 	wait_queue_head_t b_waiters;
21711 	struct list_head b_list;
21712 	struct xfs_perag *b_pag;
21713 	struct xfs_mount *b_mount;
21714 	struct xfs_buftarg *b_target;
21715 	void *b_addr;
21716 	struct work_struct b_ioend_work;
21717 	struct completion b_iowait;
21718 	struct xfs_buf_log_item *b_log_item;
21719 	struct list_head b_li_list;
21720 	struct xfs_trans *b_transp;
21721 	struct page **b_pages;
21722 	struct page *b_page_array[2];
21723 	struct xfs_buf_map *b_maps;
21724 	struct xfs_buf_map __b_map;
21725 	int b_map_count;
21726 	atomic_t b_pin_count;
21727 	atomic_t b_io_remaining;
21728 	unsigned int b_page_count;
21729 	unsigned int b_offset;
21730 	int b_error;
21731 	int b_retries;
21732 	long unsigned int b_first_retry_time;
21733 	int b_last_error;
21734 	const struct xfs_buf_ops *b_ops;
21735 	struct callback_head b_rcu;
21736 };
21737 
21738 struct xfs_ag_resv {
21739 	xfs_extlen_t ar_orig_reserved;
21740 	xfs_extlen_t ar_reserved;
21741 	xfs_extlen_t ar_asked;
21742 };
21743 
21744 struct xfs_perag {
21745 	struct xfs_mount *pag_mount;
21746 	xfs_agnumber_t pag_agno;
21747 	atomic_t pag_ref;
21748 	char pagf_init;
21749 	char pagi_init;
21750 	char pagf_metadata;
21751 	char pagi_inodeok;
21752 	uint8_t pagf_levels[3];
21753 	bool pagf_agflreset;
21754 	uint32_t pagf_flcount;
21755 	xfs_extlen_t pagf_freeblks;
21756 	xfs_extlen_t pagf_longest;
21757 	uint32_t pagf_btreeblks;
21758 	xfs_agino_t pagi_freecount;
21759 	xfs_agino_t pagi_count;
21760 	xfs_agino_t pagl_pagino;
21761 	xfs_agino_t pagl_leftrec;
21762 	xfs_agino_t pagl_rightrec;
21763 	int pagb_count;
21764 	uint8_t pagf_refcount_level;
21765 	struct xfs_ag_resv pag_meta_resv;
21766 	struct xfs_ag_resv pag_rmapbt_resv;
21767 	struct callback_head callback_head;
21768 	xfs_agblock_t block_count;
21769 	xfs_agblock_t min_block;
21770 	xfs_agino_t agino_min;
21771 	xfs_agino_t agino_max;
21772 	uint16_t pag_checked;
21773 	uint16_t pag_sick;
21774 	spinlock_t pag_state_lock;
21775 	spinlock_t pagb_lock;
21776 	struct rb_root pagb_tree;
21777 	unsigned int pagb_gen;
21778 	wait_queue_head_t pagb_wait;
21779 	atomic_t pagf_fstrms;
21780 	spinlock_t pag_ici_lock;
21781 	struct xarray pag_ici_root;
21782 	int pag_ici_reclaimable;
21783 	long unsigned int pag_ici_reclaim_cursor;
21784 	spinlock_t pag_buf_lock;
21785 	struct rhashtable pag_buf_hash;
21786 	struct delayed_work pag_blockgc_work;
21787 };
21788 
21789 struct xlog_ticket;
21790 
21791 struct xfs_dquot_acct;
21792 
21793 struct xfs_trans {
21794 	unsigned int t_magic;
21795 	unsigned int t_log_res;
21796 	unsigned int t_log_count;
21797 	unsigned int t_blk_res;
21798 	unsigned int t_blk_res_used;
21799 	unsigned int t_rtx_res;
21800 	unsigned int t_rtx_res_used;
21801 	unsigned int t_flags;
21802 	xfs_fsblock_t t_firstblock;
21803 	struct xlog_ticket *t_ticket;
21804 	struct xfs_mount *t_mountp;
21805 	struct xfs_dquot_acct *t_dqinfo;
21806 	int64_t t_icount_delta;
21807 	int64_t t_ifree_delta;
21808 	int64_t t_fdblocks_delta;
21809 	int64_t t_res_fdblocks_delta;
21810 	int64_t t_frextents_delta;
21811 	int64_t t_res_frextents_delta;
21812 	int64_t t_dblocks_delta;
21813 	int64_t t_agcount_delta;
21814 	int64_t t_imaxpct_delta;
21815 	int64_t t_rextsize_delta;
21816 	int64_t t_rbmblocks_delta;
21817 	int64_t t_rblocks_delta;
21818 	int64_t t_rextents_delta;
21819 	int64_t t_rextslog_delta;
21820 	struct list_head t_items;
21821 	struct list_head t_busy;
21822 	struct list_head t_dfops;
21823 	long unsigned int t_pflags;
21824 };
21825 
21826 struct xfs_agf {
21827 	__be32 agf_magicnum;
21828 	__be32 agf_versionnum;
21829 	__be32 agf_seqno;
21830 	__be32 agf_length;
21831 	__be32 agf_roots[3];
21832 	__be32 agf_levels[3];
21833 	__be32 agf_flfirst;
21834 	__be32 agf_fllast;
21835 	__be32 agf_flcount;
21836 	__be32 agf_freeblks;
21837 	__be32 agf_longest;
21838 	__be32 agf_btreeblks;
21839 	uuid_t agf_uuid;
21840 	__be32 agf_rmap_blocks;
21841 	__be32 agf_refcount_blocks;
21842 	__be32 agf_refcount_root;
21843 	__be32 agf_refcount_level;
21844 	__be64 agf_spare64[14];
21845 	__be64 agf_lsn;
21846 	__be32 agf_crc;
21847 	__be32 agf_spare2;
21848 };
21849 
21850 struct xfs_alloc_rec {
21851 	__be32 ar_startblock;
21852 	__be32 ar_blockcount;
21853 };
21854 
21855 typedef struct xfs_alloc_rec xfs_alloc_key_t;
21856 
21857 struct xfs_alloc_rec_incore {
21858 	xfs_agblock_t ar_startblock;
21859 	xfs_extlen_t ar_blockcount;
21860 };
21861 
21862 typedef uint64_t xfs_inofree_t;
21863 
21864 struct xfs_inobt_rec {
21865 	__be32 ir_startino;
21866 	union {
21867 		struct {
21868 			__be32 ir_freecount;
21869 		} f;
21870 		struct {
21871 			__be16 ir_holemask;
21872 			__u8 ir_count;
21873 			__u8 ir_freecount;
21874 		} sp;
21875 	} ir_u;
21876 	__be64 ir_free;
21877 };
21878 
21879 struct xfs_inobt_rec_incore {
21880 	xfs_agino_t ir_startino;
21881 	uint16_t ir_holemask;
21882 	uint8_t ir_count;
21883 	uint8_t ir_freecount;
21884 	xfs_inofree_t ir_free;
21885 };
21886 
21887 struct xfs_inobt_key {
21888 	__be32 ir_startino;
21889 };
21890 
21891 struct xfs_owner_info {
21892 	uint64_t oi_owner;
21893 	xfs_fileoff_t oi_offset;
21894 	unsigned int oi_flags;
21895 };
21896 
21897 struct xfs_rmap_rec {
21898 	__be32 rm_startblock;
21899 	__be32 rm_blockcount;
21900 	__be64 rm_owner;
21901 	__be64 rm_offset;
21902 };
21903 
21904 struct xfs_rmap_irec {
21905 	xfs_agblock_t rm_startblock;
21906 	xfs_extlen_t rm_blockcount;
21907 	uint64_t rm_owner;
21908 	uint64_t rm_offset;
21909 	unsigned int rm_flags;
21910 };
21911 
21912 struct xfs_rmap_key {
21913 	__be32 rm_startblock;
21914 	__be64 rm_owner;
21915 	__be64 rm_offset;
21916 } __attribute__((packed));
21917 
21918 struct xfs_refcount_rec {
21919 	__be32 rc_startblock;
21920 	__be32 rc_blockcount;
21921 	__be32 rc_refcount;
21922 };
21923 
21924 struct xfs_refcount_key {
21925 	__be32 rc_startblock;
21926 };
21927 
21928 struct xfs_refcount_irec {
21929 	xfs_agblock_t rc_startblock;
21930 	xfs_extlen_t rc_blockcount;
21931 	xfs_nlink_t rc_refcount;
21932 };
21933 
21934 struct xfs_bmbt_rec {
21935 	__be64 l0;
21936 	__be64 l1;
21937 };
21938 
21939 typedef struct xfs_bmbt_rec xfs_bmbt_rec_t;
21940 
21941 typedef xfs_bmbt_rec_t xfs_bmdr_rec_t;
21942 
21943 struct xfs_bmbt_key {
21944 	__be64 br_startoff;
21945 };
21946 
21947 typedef struct xfs_bmbt_key xfs_bmdr_key_t;
21948 
21949 struct xfs_btree_block_shdr {
21950 	__be32 bb_leftsib;
21951 	__be32 bb_rightsib;
21952 	__be64 bb_blkno;
21953 	__be64 bb_lsn;
21954 	uuid_t bb_uuid;
21955 	__be32 bb_owner;
21956 	__le32 bb_crc;
21957 };
21958 
21959 struct xfs_btree_block_lhdr {
21960 	__be64 bb_leftsib;
21961 	__be64 bb_rightsib;
21962 	__be64 bb_blkno;
21963 	__be64 bb_lsn;
21964 	uuid_t bb_uuid;
21965 	__be64 bb_owner;
21966 	__le32 bb_crc;
21967 	__be32 bb_pad;
21968 };
21969 
21970 struct xfs_btree_block {
21971 	__be32 bb_magic;
21972 	__be16 bb_level;
21973 	__be16 bb_numrecs;
21974 	union {
21975 		struct xfs_btree_block_shdr s;
21976 		struct xfs_btree_block_lhdr l;
21977 	} bb_u;
21978 };
21979 
21980 enum {
21981 	XFS_LOWSP_1_PCNT = 0,
21982 	XFS_LOWSP_2_PCNT = 1,
21983 	XFS_LOWSP_3_PCNT = 2,
21984 	XFS_LOWSP_4_PCNT = 3,
21985 	XFS_LOWSP_5_PCNT = 4,
21986 	XFS_LOWSP_MAX = 5,
21987 };
21988 
21989 enum {
21990 	XFS_ERR_METADATA = 0,
21991 	XFS_ERR_CLASS_MAX = 1,
21992 };
21993 
21994 enum {
21995 	XFS_ERR_DEFAULT = 0,
21996 	XFS_ERR_EIO = 1,
21997 	XFS_ERR_ENOSPC = 2,
21998 	XFS_ERR_ENODEV = 3,
21999 	XFS_ERR_ERRNO_MAX = 4,
22000 };
22001 
22002 union xfs_btree_ptr {
22003 	__be32 s;
22004 	__be64 l;
22005 };
22006 
22007 union xfs_btree_key {
22008 	struct xfs_bmbt_key bmbt;
22009 	xfs_bmdr_key_t bmbr;
22010 	xfs_alloc_key_t alloc;
22011 	struct xfs_inobt_key inobt;
22012 	struct xfs_rmap_key rmap;
22013 	struct xfs_rmap_key __rmap_bigkey[2];
22014 	struct xfs_refcount_key refc;
22015 };
22016 
22017 union xfs_btree_rec {
22018 	struct xfs_bmbt_rec bmbt;
22019 	xfs_bmdr_rec_t bmbr;
22020 	struct xfs_alloc_rec alloc;
22021 	struct xfs_inobt_rec inobt;
22022 	struct xfs_rmap_rec rmap;
22023 	struct xfs_refcount_rec refc;
22024 };
22025 
22026 struct xfs_btree_cur;
22027 
22028 struct xfs_btree_ops {
22029 	size_t key_len;
22030 	size_t rec_len;
22031 	struct xfs_btree_cur * (*dup_cursor)(struct xfs_btree_cur *);
22032 	void (*update_cursor)(struct xfs_btree_cur *, struct xfs_btree_cur *);
22033 	void (*set_root)(struct xfs_btree_cur *, const union xfs_btree_ptr *, int);
22034 	int (*alloc_block)(struct xfs_btree_cur *, const union xfs_btree_ptr *, union xfs_btree_ptr *, int *);
22035 	int (*free_block)(struct xfs_btree_cur *, struct xfs_buf *);
22036 	void (*update_lastrec)(struct xfs_btree_cur *, const struct xfs_btree_block *, const union xfs_btree_rec *, int, int);
22037 	int (*get_minrecs)(struct xfs_btree_cur *, int);
22038 	int (*get_maxrecs)(struct xfs_btree_cur *, int);
22039 	int (*get_dmaxrecs)(struct xfs_btree_cur *, int);
22040 	void (*init_key_from_rec)(union xfs_btree_key *, const union xfs_btree_rec *);
22041 	void (*init_rec_from_cur)(struct xfs_btree_cur *, union xfs_btree_rec *);
22042 	void (*init_ptr_from_cur)(struct xfs_btree_cur *, union xfs_btree_ptr *);
22043 	void (*init_high_key_from_rec)(union xfs_btree_key *, const union xfs_btree_rec *);
22044 	int64_t (*key_diff)(struct xfs_btree_cur *, const union xfs_btree_key *);
22045 	int64_t (*diff_two_keys)(struct xfs_btree_cur *, const union xfs_btree_key *, const union xfs_btree_key *);
22046 	const struct xfs_buf_ops *buf_ops;
22047 	int (*keys_inorder)(struct xfs_btree_cur *, const union xfs_btree_key *, const union xfs_btree_key *);
22048 	int (*recs_inorder)(struct xfs_btree_cur *, const union xfs_btree_rec *, const union xfs_btree_rec *);
22049 };
22050 
22051 union xfs_btree_irec {
22052 	struct xfs_alloc_rec_incore a;
22053 	struct xfs_bmbt_irec b;
22054 	struct xfs_inobt_rec_incore i;
22055 	struct xfs_rmap_irec r;
22056 	struct xfs_refcount_irec rc;
22057 };
22058 
22059 struct xbtree_afakeroot;
22060 
22061 struct xfs_btree_cur_ag {
22062 	struct xfs_perag *pag;
22063 	union {
22064 		struct xfs_buf *agbp;
22065 		struct xbtree_afakeroot *afake;
22066 	};
22067 	union {
22068 		struct {
22069 			unsigned int nr_ops;
22070 			unsigned int shape_changes;
22071 		} refc;
22072 		struct {
22073 			bool active;
22074 		} abt;
22075 	};
22076 };
22077 
22078 struct xbtree_ifakeroot;
22079 
22080 struct xfs_btree_cur_ino {
22081 	struct xfs_inode *ip;
22082 	struct xbtree_ifakeroot *ifake;
22083 	int allocated;
22084 	short int forksize;
22085 	char whichfork;
22086 	char flags;
22087 };
22088 
22089 struct xfs_btree_level {
22090 	struct xfs_buf *bp;
22091 	uint16_t ptr;
22092 	uint16_t ra;
22093 };
22094 
22095 struct xfs_btree_cur {
22096 	struct xfs_trans *bc_tp;
22097 	struct xfs_mount *bc_mp;
22098 	const struct xfs_btree_ops *bc_ops;
22099 	struct kmem_cache *bc_cache;
22100 	unsigned int bc_flags;
22101 	xfs_btnum_t bc_btnum;
22102 	union xfs_btree_irec bc_rec;
22103 	uint8_t bc_nlevels;
22104 	uint8_t bc_maxlevels;
22105 	int bc_statoff;
22106 	union {
22107 		struct xfs_btree_cur_ag bc_ag;
22108 		struct xfs_btree_cur_ino bc_ino;
22109 	};
22110 	struct xfs_btree_level bc_levels[0];
22111 };
22112 
22113 struct xbtree_afakeroot {
22114 	xfs_agblock_t af_root;
22115 	unsigned int af_levels;
22116 	unsigned int af_blocks;
22117 };
22118 
22119 struct xfs_ifork;
22120 
22121 struct xbtree_ifakeroot {
22122 	struct xfs_ifork *if_fork;
22123 	int64_t if_blocks;
22124 	unsigned int if_levels;
22125 	unsigned int if_fork_size;
22126 	unsigned int if_format;
22127 	unsigned int if_extents;
22128 };
22129 
22130 typedef unsigned int xfs_alloctype_t;
22131 
22132 struct xfs_alloc_arg {
22133 	struct xfs_trans *tp;
22134 	struct xfs_mount *mp;
22135 	struct xfs_buf *agbp;
22136 	struct xfs_perag *pag;
22137 	xfs_fsblock_t fsbno;
22138 	xfs_agnumber_t agno;
22139 	xfs_agblock_t agbno;
22140 	xfs_extlen_t minlen;
22141 	xfs_extlen_t maxlen;
22142 	xfs_extlen_t mod;
22143 	xfs_extlen_t prod;
22144 	xfs_extlen_t minleft;
22145 	xfs_extlen_t total;
22146 	xfs_extlen_t alignment;
22147 	xfs_extlen_t minalignslop;
22148 	xfs_agblock_t min_agbno;
22149 	xfs_agblock_t max_agbno;
22150 	xfs_extlen_t len;
22151 	xfs_alloctype_t type;
22152 	xfs_alloctype_t otype;
22153 	int datatype;
22154 	char wasdel;
22155 	char wasfromfl;
22156 	struct xfs_owner_info oinfo;
22157 	enum xfs_ag_resv_type resv;
22158 };
22159 
22160 typedef struct xfs_alloc_arg xfs_alloc_arg_t;
22161 
22162 typedef struct xfs_trans xfs_trans_t;
22163 
22164 typedef unsigned int xfs_km_flags_t;
22165 
22166 struct xfs_extent_busy {
22167 	struct rb_node rb_node;
22168 	struct list_head list;
22169 	xfs_agnumber_t agno;
22170 	xfs_agblock_t bno;
22171 	xfs_extlen_t length;
22172 	unsigned int flags;
22173 };
22174 
22175 typedef int64_t xfs_csn_t;
22176 
22177 typedef uint32_t xlog_tid_t;
22178 
22179 struct xlog_rec_header {
22180 	__be32 h_magicno;
22181 	__be32 h_cycle;
22182 	__be32 h_version;
22183 	__be32 h_len;
22184 	__be64 h_lsn;
22185 	__be64 h_tail_lsn;
22186 	__le32 h_crc;
22187 	__be32 h_prev_block;
22188 	__be32 h_num_logops;
22189 	__be32 h_cycle_data[64];
22190 	__be32 h_fmt;
22191 	uuid_t h_fs_uuid;
22192 	__be32 h_size;
22193 };
22194 
22195 typedef struct xlog_rec_header xlog_rec_header_t;
22196 
22197 struct xlog_rec_ext_header {
22198 	__be32 xh_cycle;
22199 	__be32 xh_cycle_data[64];
22200 };
22201 
22202 typedef struct xlog_rec_ext_header xlog_rec_ext_header_t;
22203 
22204 union xlog_in_core2 {
22205 	xlog_rec_header_t hic_header;
22206 	xlog_rec_ext_header_t hic_xheader;
22207 	char hic_sector[512];
22208 };
22209 
22210 typedef union xlog_in_core2 xlog_in_core_2_t;
22211 
22212 struct xfs_log_iovec {
22213 	void *i_addr;
22214 	int i_len;
22215 	uint i_type;
22216 };
22217 
22218 struct xfs_ail {
22219 	struct xlog *ail_log;
22220 	struct task_struct *ail_task;
22221 	struct list_head ail_head;
22222 	xfs_lsn_t ail_target;
22223 	xfs_lsn_t ail_target_prev;
22224 	struct list_head ail_cursors;
22225 	spinlock_t ail_lock;
22226 	xfs_lsn_t ail_last_pushed_lsn;
22227 	int ail_log_flush;
22228 	struct list_head ail_buf_list;
22229 	wait_queue_head_t ail_empty;
22230 };
22231 
22232 struct xlog_grant_head {
22233 	spinlock_t lock;
22234 	struct list_head waiters;
22235 	atomic64_t grant;
22236 	long: 64;
22237 	long: 64;
22238 	long: 64;
22239 	long: 64;
22240 	long: 64;
22241 	long: 64;
22242 	long: 64;
22243 	long: 64;
22244 	long: 64;
22245 	long: 64;
22246 	long: 64;
22247 	long: 64;
22248 };
22249 
22250 struct xfs_cil;
22251 
22252 struct xlog_in_core;
22253 
22254 typedef struct xlog_in_core xlog_in_core_t;
22255 
22256 struct xlog {
22257 	struct xfs_mount *l_mp;
22258 	struct xfs_ail *l_ailp;
22259 	struct xfs_cil *l_cilp;
22260 	struct xfs_buftarg *l_targ;
22261 	struct workqueue_struct *l_ioend_workqueue;
22262 	struct delayed_work l_work;
22263 	long int l_opstate;
22264 	uint l_quotaoffs_flag;
22265 	struct list_head *l_buf_cancel_table;
22266 	int l_iclog_hsize;
22267 	int l_iclog_heads;
22268 	uint l_sectBBsize;
22269 	int l_iclog_size;
22270 	int l_iclog_bufs;
22271 	xfs_daddr_t l_logBBstart;
22272 	int l_logsize;
22273 	int l_logBBsize;
22274 	long: 64;
22275 	long: 64;
22276 	long: 64;
22277 	long: 64;
22278 	long: 64;
22279 	long: 64;
22280 	long: 64;
22281 	long: 64;
22282 	wait_queue_head_t l_flush_wait;
22283 	int l_covered_state;
22284 	xlog_in_core_t *l_iclog;
22285 	spinlock_t l_icloglock;
22286 	int l_curr_cycle;
22287 	int l_prev_cycle;
22288 	int l_curr_block;
22289 	int l_prev_block;
22290 	long: 64;
22291 	long: 64;
22292 	long: 64;
22293 	long: 64;
22294 	long: 64;
22295 	long: 64;
22296 	long: 64;
22297 	long: 64;
22298 	atomic64_t l_last_sync_lsn;
22299 	long: 64;
22300 	long: 64;
22301 	long: 64;
22302 	long: 64;
22303 	long: 64;
22304 	long: 64;
22305 	long: 64;
22306 	long: 64;
22307 	long: 64;
22308 	long: 64;
22309 	long: 64;
22310 	long: 64;
22311 	long: 64;
22312 	long: 64;
22313 	long: 64;
22314 	atomic64_t l_tail_lsn;
22315 	long: 64;
22316 	long: 64;
22317 	long: 64;
22318 	long: 64;
22319 	long: 64;
22320 	long: 64;
22321 	long: 64;
22322 	long: 64;
22323 	long: 64;
22324 	long: 64;
22325 	long: 64;
22326 	long: 64;
22327 	long: 64;
22328 	long: 64;
22329 	long: 64;
22330 	struct xlog_grant_head l_reserve_head;
22331 	struct xlog_grant_head l_write_head;
22332 	struct xfs_kobj l_kobj;
22333 	xfs_lsn_t l_recovery_lsn;
22334 	uint32_t l_iclog_roundoff;
22335 	struct rw_semaphore l_incompat_users;
22336 	long: 64;
22337 	long: 64;
22338 	long: 64;
22339 	long: 64;
22340 	long: 64;
22341 	long: 64;
22342 	long: 64;
22343 	long: 64;
22344 	long: 64;
22345 	long: 64;
22346 	long: 64;
22347 	long: 64;
22348 	long: 64;
22349 };
22350 
22351 typedef struct xfs_mount xfs_mount_t;
22352 
22353 struct xfs_item_ops;
22354 
22355 struct xfs_log_vec;
22356 
22357 struct xfs_log_item {
22358 	struct list_head li_ail;
22359 	struct list_head li_trans;
22360 	xfs_lsn_t li_lsn;
22361 	struct xlog *li_log;
22362 	struct xfs_ail *li_ailp;
22363 	uint li_type;
22364 	long unsigned int li_flags;
22365 	struct xfs_buf *li_buf;
22366 	struct list_head li_bio_list;
22367 	const struct xfs_item_ops *li_ops;
22368 	struct list_head li_cil;
22369 	struct xfs_log_vec *li_lv;
22370 	struct xfs_log_vec *li_lv_shadow;
22371 	xfs_csn_t li_seq;
22372 	uint32_t li_order_id;
22373 };
22374 
22375 struct xfs_item_ops {
22376 	unsigned int flags;
22377 	void (*iop_size)(struct xfs_log_item *, int *, int *);
22378 	void (*iop_format)(struct xfs_log_item *, struct xfs_log_vec *);
22379 	void (*iop_pin)(struct xfs_log_item *);
22380 	void (*iop_unpin)(struct xfs_log_item *, int);
22381 	uint64_t (*iop_sort)(struct xfs_log_item *);
22382 	int (*iop_precommit)(struct xfs_trans *, struct xfs_log_item *);
22383 	void (*iop_committing)(struct xfs_log_item *, xfs_csn_t);
22384 	xfs_lsn_t (*iop_committed)(struct xfs_log_item *, xfs_lsn_t);
22385 	uint (*iop_push)(struct xfs_log_item *, struct list_head *);
22386 	void (*iop_release)(struct xfs_log_item *);
22387 	int (*iop_recover)(struct xfs_log_item *, struct list_head *);
22388 	bool (*iop_match)(struct xfs_log_item *, uint64_t);
22389 	struct xfs_log_item * (*iop_relog)(struct xfs_log_item *, struct xfs_trans *);
22390 	struct xfs_log_item * (*iop_intent)(struct xfs_log_item *);
22391 };
22392 
22393 struct xfs_log_vec {
22394 	struct list_head lv_list;
22395 	uint32_t lv_order_id;
22396 	int lv_niovecs;
22397 	struct xfs_log_iovec *lv_iovecp;
22398 	struct xfs_log_item *lv_item;
22399 	char *lv_buf;
22400 	int lv_bytes;
22401 	int lv_buf_len;
22402 	int lv_size;
22403 };
22404 
22405 struct xlog_ticket {
22406 	struct list_head t_queue;
22407 	struct task_struct *t_task;
22408 	xlog_tid_t t_tid;
22409 	atomic_t t_ref;
22410 	int t_curr_res;
22411 	int t_unit_res;
22412 	char t_ocnt;
22413 	char t_cnt;
22414 	uint8_t t_flags;
22415 	int t_iclog_hdrs;
22416 };
22417 
22418 struct xfs_ail_cursor {
22419 	struct list_head list;
22420 	struct xfs_log_item *item;
22421 };
22422 
22423 enum xlog_iclog_state {
22424 	XLOG_STATE_ACTIVE = 0,
22425 	XLOG_STATE_WANT_SYNC = 1,
22426 	XLOG_STATE_SYNCING = 2,
22427 	XLOG_STATE_DONE_SYNC = 3,
22428 	XLOG_STATE_CALLBACK = 4,
22429 	XLOG_STATE_DIRTY = 5,
22430 };
22431 
22432 struct xlog_in_core {
22433 	wait_queue_head_t ic_force_wait;
22434 	wait_queue_head_t ic_write_wait;
22435 	struct xlog_in_core *ic_next;
22436 	struct xlog_in_core *ic_prev;
22437 	struct xlog *ic_log;
22438 	u32 ic_size;
22439 	u32 ic_offset;
22440 	enum xlog_iclog_state ic_state;
22441 	unsigned int ic_flags;
22442 	void *ic_datap;
22443 	struct list_head ic_callbacks;
22444 	long: 64;
22445 	long: 64;
22446 	atomic_t ic_refcnt;
22447 	xlog_in_core_2_t *ic_data;
22448 	struct semaphore ic_sema;
22449 	struct work_struct ic_end_io_work;
22450 	struct bio ic_bio;
22451 	struct bio_vec ic_bvec[0];
22452 	long: 64;
22453 	long: 64;
22454 	long: 64;
22455 	long: 64;
22456 	long: 64;
22457 	long: 64;
22458 	long: 64;
22459 	long: 64;
22460 	long: 64;
22461 	long: 64;
22462 	long: 64;
22463 };
22464 
22465 struct xfs_cil_ctx {
22466 	struct xfs_cil *cil;
22467 	xfs_csn_t sequence;
22468 	xfs_lsn_t start_lsn;
22469 	xfs_lsn_t commit_lsn;
22470 	struct xlog_in_core *commit_iclog;
22471 	struct xlog_ticket *ticket;
22472 	atomic_t space_used;
22473 	struct list_head busy_extents;
22474 	struct list_head log_items;
22475 	struct list_head lv_chain;
22476 	struct list_head iclog_entry;
22477 	struct list_head committing;
22478 	struct work_struct discard_endio_work;
22479 	struct work_struct push_work;
22480 	atomic_t order_id;
22481 };
22482 
22483 struct xfs_cil {
22484 	struct xlog *xc_log;
22485 	long unsigned int xc_flags;
22486 	atomic_t xc_iclog_hdrs;
22487 	struct workqueue_struct *xc_push_wq;
22488 	long: 64;
22489 	long: 64;
22490 	long: 64;
22491 	long: 64;
22492 	long: 64;
22493 	long: 64;
22494 	long: 64;
22495 	long: 64;
22496 	long: 64;
22497 	long: 64;
22498 	long: 64;
22499 	long: 64;
22500 	struct rw_semaphore xc_ctx_lock;
22501 	struct xfs_cil_ctx *xc_ctx;
22502 	long: 64;
22503 	long: 64;
22504 	long: 64;
22505 	long: 64;
22506 	long: 64;
22507 	long: 64;
22508 	long: 64;
22509 	long: 64;
22510 	long: 64;
22511 	long: 64;
22512 	spinlock_t xc_push_lock;
22513 	xfs_csn_t xc_push_seq;
22514 	bool xc_push_commit_stable;
22515 	struct list_head xc_committing;
22516 	wait_queue_head_t xc_commit_wait;
22517 	wait_queue_head_t xc_start_wait;
22518 	xfs_csn_t xc_current_sequence;
22519 	wait_queue_head_t xc_push_wait;
22520 	void *xc_pcp;
22521 	struct list_head xc_pcp_list;
22522 	long: 64;
22523 	long: 64;
22524 	long: 64;
22525 	long: 64;
22526 	long: 64;
22527 	long: 64;
22528 	long: 64;
22529 	long: 64;
22530 	long: 64;
22531 	long: 64;
22532 	long: 64;
22533 	long: 64;
22534 	long: 64;
22535 	long: 64;
22536 };
22537 
22538 enum key_need_perm {
22539 	KEY_NEED_UNSPECIFIED = 0,
22540 	KEY_NEED_VIEW = 1,
22541 	KEY_NEED_READ = 2,
22542 	KEY_NEED_WRITE = 3,
22543 	KEY_NEED_SEARCH = 4,
22544 	KEY_NEED_LINK = 5,
22545 	KEY_NEED_SETATTR = 6,
22546 	KEY_NEED_UNLINK = 7,
22547 	KEY_SYSADMIN_OVERRIDE = 8,
22548 	KEY_AUTHTOKEN_OVERRIDE = 9,
22549 	KEY_DEFER_PERM_CHECK = 10,
22550 };
22551 
22552 struct __key_reference_with_attributes;
22553 
22554 typedef struct __key_reference_with_attributes *key_ref_t;
22555 
22556 struct key_user {
22557 	struct rb_node node;
22558 	struct mutex cons_lock;
22559 	spinlock_t lock;
22560 	refcount_t usage;
22561 	atomic_t nkeys;
22562 	atomic_t nikeys;
22563 	kuid_t uid;
22564 	int qnkeys;
22565 	int qnbytes;
22566 };
22567 
22568 struct key_preparsed_payload {
22569 	const char *orig_description;
22570 	char *description;
22571 	union key_payload payload;
22572 	const void *data;
22573 	size_t datalen;
22574 	size_t quotalen;
22575 	time64_t expiry;
22576 };
22577 
22578 struct key_match_data {
22579 	bool (*cmp)(const struct key *, const struct key_match_data *);
22580 	const void *raw_data;
22581 	void *preparsed;
22582 	unsigned int lookup_type;
22583 };
22584 
22585 enum kernel_pkey_operation {
22586 	kernel_pkey_encrypt = 0,
22587 	kernel_pkey_decrypt = 1,
22588 	kernel_pkey_sign = 2,
22589 	kernel_pkey_verify = 3,
22590 };
22591 
22592 struct kernel_pkey_params {
22593 	struct key *key;
22594 	const char *encoding;
22595 	const char *hash_algo;
22596 	char *info;
22597 	__u32 in_len;
22598 	union {
22599 		__u32 out_len;
22600 		__u32 in2_len;
22601 	};
22602 	enum kernel_pkey_operation op: 8;
22603 };
22604 
22605 struct kernel_pkey_query {
22606 	__u32 supported_ops;
22607 	__u32 key_size;
22608 	__u16 max_data_size;
22609 	__u16 max_sig_size;
22610 	__u16 max_enc_size;
22611 	__u16 max_dec_size;
22612 };
22613 
22614 struct __call_single_data {
22615 	struct __call_single_node node;
22616 	smp_call_func_t func;
22617 	void *info;
22618 };
22619 
22620 typedef unsigned int xa_mark_t;
22621 
22622 struct io_cq {
22623 	struct request_queue *q;
22624 	struct io_context *ioc;
22625 	union {
22626 		struct list_head q_node;
22627 		struct kmem_cache *__rcu_icq_cache;
22628 	};
22629 	union {
22630 		struct hlist_node ioc_node;
22631 		struct callback_head __rcu_head;
22632 	};
22633 	unsigned int flags;
22634 };
22635 
22636 typedef __u32 blk_mq_req_flags_t;
22637 
22638 enum req_flag_bits {
22639 	__REQ_FAILFAST_DEV = 8,
22640 	__REQ_FAILFAST_TRANSPORT = 9,
22641 	__REQ_FAILFAST_DRIVER = 10,
22642 	__REQ_SYNC = 11,
22643 	__REQ_META = 12,
22644 	__REQ_PRIO = 13,
22645 	__REQ_NOMERGE = 14,
22646 	__REQ_IDLE = 15,
22647 	__REQ_INTEGRITY = 16,
22648 	__REQ_FUA = 17,
22649 	__REQ_PREFLUSH = 18,
22650 	__REQ_RAHEAD = 19,
22651 	__REQ_BACKGROUND = 20,
22652 	__REQ_NOWAIT = 21,
22653 	__REQ_CGROUP_PUNT = 22,
22654 	__REQ_POLLED = 23,
22655 	__REQ_ALLOC_CACHE = 24,
22656 	__REQ_SWAP = 25,
22657 	__REQ_DRV = 26,
22658 	__REQ_NOUNMAP = 27,
22659 	__REQ_NR_BITS = 28,
22660 };
22661 
22662 struct sbitmap_word {
22663 	long unsigned int word;
22664 	long: 64;
22665 	long: 64;
22666 	long: 64;
22667 	long: 64;
22668 	long: 64;
22669 	long: 64;
22670 	long: 64;
22671 	long: 64;
22672 	long: 64;
22673 	long: 64;
22674 	long: 64;
22675 	long: 64;
22676 	long: 64;
22677 	long: 64;
22678 	long: 64;
22679 	long unsigned int cleared;
22680 	long: 64;
22681 	long: 64;
22682 	long: 64;
22683 	long: 64;
22684 	long: 64;
22685 	long: 64;
22686 	long: 64;
22687 	long: 64;
22688 	long: 64;
22689 	long: 64;
22690 	long: 64;
22691 	long: 64;
22692 	long: 64;
22693 	long: 64;
22694 	long: 64;
22695 };
22696 
22697 struct sbitmap {
22698 	unsigned int depth;
22699 	unsigned int shift;
22700 	unsigned int map_nr;
22701 	bool round_robin;
22702 	struct sbitmap_word *map;
22703 	unsigned int *alloc_hint;
22704 };
22705 
22706 struct sbq_wait_state {
22707 	atomic_t wait_cnt;
22708 	wait_queue_head_t wait;
22709 	long: 64;
22710 	long: 64;
22711 	long: 64;
22712 	long: 64;
22713 	long: 64;
22714 	long: 64;
22715 	long: 64;
22716 	long: 64;
22717 	long: 64;
22718 	long: 64;
22719 	long: 64;
22720 	long: 64;
22721 };
22722 
22723 struct sbitmap_queue {
22724 	struct sbitmap sb;
22725 	unsigned int wake_batch;
22726 	atomic_t wake_index;
22727 	struct sbq_wait_state *ws;
22728 	atomic_t ws_active;
22729 	unsigned int min_shallow_depth;
22730 };
22731 
22732 typedef bool (*sb_for_each_fn)(struct sbitmap *, unsigned int, void *);
22733 
22734 struct sbq_wait {
22735 	struct sbitmap_queue *sbq;
22736 	struct wait_queue_entry wait;
22737 };
22738 
22739 typedef __u32 req_flags_t;
22740 
22741 enum mq_rq_state {
22742 	MQ_RQ_IDLE = 0,
22743 	MQ_RQ_IN_FLIGHT = 1,
22744 	MQ_RQ_COMPLETE = 2,
22745 };
22746 
22747 typedef void rq_end_io_fn(struct request *, blk_status_t);
22748 
22749 struct request {
22750 	struct request_queue *q;
22751 	struct blk_mq_ctx *mq_ctx;
22752 	struct blk_mq_hw_ctx *mq_hctx;
22753 	blk_opf_t cmd_flags;
22754 	req_flags_t rq_flags;
22755 	int tag;
22756 	int internal_tag;
22757 	unsigned int timeout;
22758 	unsigned int __data_len;
22759 	sector_t __sector;
22760 	struct bio *bio;
22761 	struct bio *biotail;
22762 	union {
22763 		struct list_head queuelist;
22764 		struct request *rq_next;
22765 	};
22766 	struct block_device *part;
22767 	u64 start_time_ns;
22768 	u64 io_start_time_ns;
22769 	short unsigned int stats_sectors;
22770 	short unsigned int nr_phys_segments;
22771 	short unsigned int write_hint;
22772 	short unsigned int ioprio;
22773 	enum mq_rq_state state;
22774 	atomic_t ref;
22775 	long unsigned int deadline;
22776 	union {
22777 		struct hlist_node hash;
22778 		struct llist_node ipi_list;
22779 	};
22780 	union {
22781 		struct rb_node rb_node;
22782 		struct bio_vec special_vec;
22783 		void *completion_data;
22784 	};
22785 	union {
22786 		struct {
22787 			struct io_cq *icq;
22788 			void *priv[2];
22789 		} elv;
22790 		struct {
22791 			unsigned int seq;
22792 			struct list_head list;
22793 			rq_end_io_fn *saved_end_io;
22794 		} flush;
22795 	};
22796 	union {
22797 		struct __call_single_data csd;
22798 		u64 fifo_time;
22799 	};
22800 	rq_end_io_fn *end_io;
22801 	void *end_io_data;
22802 };
22803 
22804 struct elevator_type;
22805 
22806 struct elevator_queue {
22807 	struct elevator_type *type;
22808 	void *elevator_data;
22809 	struct kobject kobj;
22810 	struct mutex sysfs_lock;
22811 	unsigned int registered: 1;
22812 	struct hlist_head hash[64];
22813 };
22814 
22815 struct blk_mq_ctxs;
22816 
22817 struct blk_mq_ctx {
22818 	struct {
22819 		spinlock_t lock;
22820 		struct list_head rq_lists[3];
22821 		long: 64;
22822 		long: 64;
22823 		long: 64;
22824 		long: 64;
22825 		long: 64;
22826 		long: 64;
22827 		long: 64;
22828 		long: 64;
22829 		long: 64;
22830 	};
22831 	unsigned int cpu;
22832 	short unsigned int index_hw[3];
22833 	struct blk_mq_hw_ctx *hctxs[3];
22834 	struct request_queue *queue;
22835 	struct blk_mq_ctxs *ctxs;
22836 	struct kobject kobj;
22837 	long: 64;
22838 };
22839 
22840 struct blk_stat_callback {
22841 	struct list_head list;
22842 	struct timer_list timer;
22843 	struct blk_rq_stat *cpu_stat;
22844 	int (*bucket_fn)(const struct request *);
22845 	unsigned int buckets;
22846 	struct blk_rq_stat *stat;
22847 	void (*timer_fn)(struct blk_stat_callback *);
22848 	void *data;
22849 	struct callback_head rcu;
22850 };
22851 
22852 struct blk_mq_tags {
22853 	unsigned int nr_tags;
22854 	unsigned int nr_reserved_tags;
22855 	atomic_t active_queues;
22856 	struct sbitmap_queue bitmap_tags;
22857 	struct sbitmap_queue breserved_tags;
22858 	struct request **rqs;
22859 	struct request **static_rqs;
22860 	struct list_head page_list;
22861 	spinlock_t lock;
22862 };
22863 
22864 struct blk_flush_queue {
22865 	unsigned int flush_pending_idx: 1;
22866 	unsigned int flush_running_idx: 1;
22867 	blk_status_t rq_status;
22868 	long unsigned int flush_pending_since;
22869 	struct list_head flush_queue[2];
22870 	struct list_head flush_data_in_flight;
22871 	struct request *flush_rq;
22872 	spinlock_t mq_flush_lock;
22873 };
22874 
22875 struct blk_mq_queue_map {
22876 	unsigned int *mq_map;
22877 	unsigned int nr_queues;
22878 	unsigned int queue_offset;
22879 };
22880 
22881 struct blk_mq_tag_set {
22882 	struct blk_mq_queue_map map[3];
22883 	unsigned int nr_maps;
22884 	const struct blk_mq_ops *ops;
22885 	unsigned int nr_hw_queues;
22886 	unsigned int queue_depth;
22887 	unsigned int reserved_tags;
22888 	unsigned int cmd_size;
22889 	int numa_node;
22890 	unsigned int timeout;
22891 	unsigned int flags;
22892 	void *driver_data;
22893 	struct blk_mq_tags **tags;
22894 	struct blk_mq_tags *shared_tags;
22895 	struct mutex tag_list_lock;
22896 	struct list_head tag_list;
22897 };
22898 
22899 struct blk_mq_hw_ctx {
22900 	struct {
22901 		spinlock_t lock;
22902 		struct list_head dispatch;
22903 		long unsigned int state;
22904 		long: 64;
22905 		long: 64;
22906 		long: 64;
22907 		long: 64;
22908 		long: 64;
22909 		long: 64;
22910 		long: 64;
22911 		long: 64;
22912 		long: 64;
22913 		long: 64;
22914 		long: 64;
22915 		long: 64;
22916 	};
22917 	struct delayed_work run_work;
22918 	cpumask_var_t cpumask;
22919 	int next_cpu;
22920 	int next_cpu_batch;
22921 	long unsigned int flags;
22922 	void *sched_data;
22923 	struct request_queue *queue;
22924 	struct blk_flush_queue *fq;
22925 	void *driver_data;
22926 	struct sbitmap ctx_map;
22927 	struct blk_mq_ctx *dispatch_from;
22928 	unsigned int dispatch_busy;
22929 	short unsigned int type;
22930 	short unsigned int nr_ctx;
22931 	struct blk_mq_ctx **ctxs;
22932 	spinlock_t dispatch_wait_lock;
22933 	wait_queue_entry_t dispatch_wait;
22934 	atomic_t wait_index;
22935 	struct blk_mq_tags *tags;
22936 	struct blk_mq_tags *sched_tags;
22937 	long unsigned int queued;
22938 	long unsigned int run;
22939 	unsigned int numa_node;
22940 	unsigned int queue_num;
22941 	atomic_t nr_active;
22942 	struct hlist_node cpuhp_online;
22943 	struct hlist_node cpuhp_dead;
22944 	struct kobject kobj;
22945 	struct dentry *debugfs_dir;
22946 	struct dentry *sched_debugfs_dir;
22947 	struct list_head hctx_list;
22948 	long: 64;
22949 	long: 64;
22950 	long: 64;
22951 	long: 64;
22952 	long: 64;
22953 	long: 64;
22954 	long: 64;
22955 	long: 64;
22956 	long: 64;
22957 	long: 64;
22958 	long: 64;
22959 };
22960 
22961 enum hctx_type {
22962 	HCTX_TYPE_DEFAULT = 0,
22963 	HCTX_TYPE_READ = 1,
22964 	HCTX_TYPE_POLL = 2,
22965 	HCTX_MAX_TYPES = 3,
22966 };
22967 
22968 struct blk_mq_queue_data {
22969 	struct request *rq;
22970 	bool last;
22971 };
22972 
22973 typedef bool busy_tag_iter_fn(struct request *, void *);
22974 
22975 enum {
22976 	BLK_MQ_F_SHOULD_MERGE = 1,
22977 	BLK_MQ_F_TAG_QUEUE_SHARED = 2,
22978 	BLK_MQ_F_STACKING = 4,
22979 	BLK_MQ_F_TAG_HCTX_SHARED = 8,
22980 	BLK_MQ_F_BLOCKING = 32,
22981 	BLK_MQ_F_NO_SCHED = 64,
22982 	BLK_MQ_F_NO_SCHED_BY_DEFAULT = 128,
22983 	BLK_MQ_F_ALLOC_POLICY_START_BIT = 8,
22984 	BLK_MQ_F_ALLOC_POLICY_BITS = 1,
22985 	BLK_MQ_S_STOPPED = 0,
22986 	BLK_MQ_S_TAG_ACTIVE = 1,
22987 	BLK_MQ_S_SCHED_RESTART = 2,
22988 	BLK_MQ_S_INACTIVE = 3,
22989 	BLK_MQ_MAX_DEPTH = 10240,
22990 	BLK_MQ_CPU_WORK_BATCH = 8,
22991 };
22992 
22993 enum {
22994 	BLK_MQ_REQ_NOWAIT = 1,
22995 	BLK_MQ_REQ_RESERVED = 2,
22996 	BLK_MQ_REQ_PM = 4,
22997 };
22998 
22999 enum {
23000 	BLK_MQ_UNIQUE_TAG_BITS = 16,
23001 	BLK_MQ_UNIQUE_TAG_MASK = 65535,
23002 };
23003 
23004 enum {
23005 	BLK_MQ_NO_TAG = 4294967295,
23006 	BLK_MQ_TAG_MIN = 1,
23007 	BLK_MQ_TAG_MAX = 4294967294,
23008 };
23009 
23010 struct blk_mq_ctxs {
23011 	struct kobject kobj;
23012 	struct blk_mq_ctx *queue_ctx;
23013 };
23014 
23015 struct blk_mq_alloc_data {
23016 	struct request_queue *q;
23017 	blk_mq_req_flags_t flags;
23018 	unsigned int shallow_depth;
23019 	blk_opf_t cmd_flags;
23020 	req_flags_t rq_flags;
23021 	unsigned int nr_tags;
23022 	struct request **cached_rq;
23023 	struct blk_mq_ctx *ctx;
23024 	struct blk_mq_hw_ctx *hctx;
23025 };
23026 
23027 enum elv_merge {
23028 	ELEVATOR_NO_MERGE = 0,
23029 	ELEVATOR_FRONT_MERGE = 1,
23030 	ELEVATOR_BACK_MERGE = 2,
23031 	ELEVATOR_DISCARD_MERGE = 3,
23032 };
23033 
23034 struct elevator_mq_ops {
23035 	int (*init_sched)(struct request_queue *, struct elevator_type *);
23036 	void (*exit_sched)(struct elevator_queue *);
23037 	int (*init_hctx)(struct blk_mq_hw_ctx *, unsigned int);
23038 	void (*exit_hctx)(struct blk_mq_hw_ctx *, unsigned int);
23039 	void (*depth_updated)(struct blk_mq_hw_ctx *);
23040 	bool (*allow_merge)(struct request_queue *, struct request *, struct bio *);
23041 	bool (*bio_merge)(struct request_queue *, struct bio *, unsigned int);
23042 	int (*request_merge)(struct request_queue *, struct request **, struct bio *);
23043 	void (*request_merged)(struct request_queue *, struct request *, enum elv_merge);
23044 	void (*requests_merged)(struct request_queue *, struct request *, struct request *);
23045 	void (*limit_depth)(blk_opf_t, struct blk_mq_alloc_data *);
23046 	void (*prepare_request)(struct request *);
23047 	void (*finish_request)(struct request *);
23048 	void (*insert_requests)(struct blk_mq_hw_ctx *, struct list_head *, bool);
23049 	struct request * (*dispatch_request)(struct blk_mq_hw_ctx *);
23050 	bool (*has_work)(struct blk_mq_hw_ctx *);
23051 	void (*completed_request)(struct request *, u64);
23052 	void (*requeue_request)(struct request *);
23053 	struct request * (*former_request)(struct request_queue *, struct request *);
23054 	struct request * (*next_request)(struct request_queue *, struct request *);
23055 	void (*init_icq)(struct io_cq *);
23056 	void (*exit_icq)(struct io_cq *);
23057 };
23058 
23059 struct elv_fs_entry;
23060 
23061 struct blk_mq_debugfs_attr;
23062 
23063 struct elevator_type {
23064 	struct kmem_cache *icq_cache;
23065 	struct elevator_mq_ops ops;
23066 	size_t icq_size;
23067 	size_t icq_align;
23068 	struct elv_fs_entry *elevator_attrs;
23069 	const char *elevator_name;
23070 	const char *elevator_alias;
23071 	const unsigned int elevator_features;
23072 	struct module *elevator_owner;
23073 	const struct blk_mq_debugfs_attr *queue_debugfs_attrs;
23074 	const struct blk_mq_debugfs_attr *hctx_debugfs_attrs;
23075 	char icq_cache_name[22];
23076 	struct list_head list;
23077 };
23078 
23079 struct elv_fs_entry {
23080 	struct attribute attr;
23081 	ssize_t (*show)(struct elevator_queue *, char *);
23082 	ssize_t (*store)(struct elevator_queue *, const char *, size_t);
23083 };
23084 
23085 struct blk_mq_debugfs_attr {
23086 	const char *name;
23087 	umode_t mode;
23088 	int (*show)(void *, struct seq_file *);
23089 	ssize_t (*write)(void *, const char *, size_t, loff_t *);
23090 	const struct seq_operations *seq_ops;
23091 };
23092 
23093 struct bt_iter_data {
23094 	struct blk_mq_hw_ctx *hctx;
23095 	struct request_queue *q;
23096 	busy_tag_iter_fn *fn;
23097 	void *data;
23098 	bool reserved;
23099 };
23100 
23101 struct bt_tags_iter_data {
23102 	struct blk_mq_tags *tags;
23103 	busy_tag_iter_fn *fn;
23104 	void *data;
23105 	unsigned int flags;
23106 };
23107 
23108 struct blk_ia_range_sysfs_entry {
23109 	struct attribute attr;
23110 	ssize_t (*show)(struct blk_independent_access_range *, char *);
23111 };
23112 
23113 struct io_ring_ctx;
23114 
23115 struct io_wq;
23116 
23117 struct io_uring_task {
23118 	int cached_refs;
23119 	const struct io_ring_ctx *last;
23120 	struct io_wq *io_wq;
23121 	struct file *registered_rings[16];
23122 	struct xarray xa;
23123 	struct wait_queue_head wait;
23124 	atomic_t in_idle;
23125 	atomic_t inflight_tracked;
23126 	struct percpu_counter inflight;
23127 	long: 64;
23128 	long: 64;
23129 	struct {
23130 		struct llist_head task_list;
23131 		struct callback_head task_work;
23132 		long: 64;
23133 		long: 64;
23134 		long: 64;
23135 		long: 64;
23136 		long: 64;
23137 		long: 64;
23138 		long: 64;
23139 		long: 64;
23140 		long: 64;
23141 		long: 64;
23142 		long: 64;
23143 		long: 64;
23144 		long: 64;
23145 	};
23146 };
23147 
23148 typedef int __kernel_rwf_t;
23149 
23150 typedef struct fsnotify_mark_connector *fsnotify_connp_t;
23151 
23152 struct fsnotify_mark_connector {
23153 	spinlock_t lock;
23154 	short unsigned int type;
23155 	short unsigned int flags;
23156 	__kernel_fsid_t fsid;
23157 	union {
23158 		fsnotify_connp_t *obj;
23159 		struct fsnotify_mark_connector *destroy_next;
23160 	};
23161 	struct hlist_head list;
23162 };
23163 
23164 struct io_uring_cmd {
23165 	struct file *file;
23166 	const void *cmd;
23167 	void (*task_work_cb)(struct io_uring_cmd *);
23168 	u32 cmd_op;
23169 	u32 pad;
23170 	u8 pdu[32];
23171 };
23172 
23173 enum io_uring_cmd_flags {
23174 	IO_URING_F_COMPLETE_DEFER = 1,
23175 	IO_URING_F_UNLOCKED = 2,
23176 	IO_URING_F_NONBLOCK = -2147483648,
23177 	IO_URING_F_SQE128 = 4,
23178 	IO_URING_F_CQE32 = 8,
23179 	IO_URING_F_IOPOLL = 16,
23180 };
23181 
23182 enum fsnotify_data_type {
23183 	FSNOTIFY_EVENT_NONE = 0,
23184 	FSNOTIFY_EVENT_PATH = 1,
23185 	FSNOTIFY_EVENT_INODE = 2,
23186 	FSNOTIFY_EVENT_DENTRY = 3,
23187 	FSNOTIFY_EVENT_ERROR = 4,
23188 };
23189 
23190 struct io_uring_sqe {
23191 	__u8 opcode;
23192 	__u8 flags;
23193 	__u16 ioprio;
23194 	__s32 fd;
23195 	union {
23196 		__u64 off;
23197 		__u64 addr2;
23198 		struct {
23199 			__u32 cmd_op;
23200 			__u32 __pad1;
23201 		};
23202 	};
23203 	union {
23204 		__u64 addr;
23205 		__u64 splice_off_in;
23206 	};
23207 	__u32 len;
23208 	union {
23209 		__kernel_rwf_t rw_flags;
23210 		__u32 fsync_flags;
23211 		__u16 poll_events;
23212 		__u32 poll32_events;
23213 		__u32 sync_range_flags;
23214 		__u32 msg_flags;
23215 		__u32 timeout_flags;
23216 		__u32 accept_flags;
23217 		__u32 cancel_flags;
23218 		__u32 open_flags;
23219 		__u32 statx_flags;
23220 		__u32 fadvise_advice;
23221 		__u32 splice_flags;
23222 		__u32 rename_flags;
23223 		__u32 unlink_flags;
23224 		__u32 hardlink_flags;
23225 		__u32 xattr_flags;
23226 		__u32 msg_ring_flags;
23227 	};
23228 	__u64 user_data;
23229 	union {
23230 		__u16 buf_index;
23231 		__u16 buf_group;
23232 	};
23233 	__u16 personality;
23234 	union {
23235 		__s32 splice_fd_in;
23236 		__u32 file_index;
23237 		struct {
23238 			__u16 addr_len;
23239 			__u16 __pad3[1];
23240 		};
23241 	};
23242 	union {
23243 		struct {
23244 			__u64 addr3;
23245 			__u64 __pad2[1];
23246 		};
23247 		__u8 cmd[0];
23248 	};
23249 };
23250 
23251 struct io_uring_cqe {
23252 	__u64 user_data;
23253 	__s32 res;
23254 	__u32 flags;
23255 	__u64 big_cqe[0];
23256 };
23257 
23258 enum task_work_notify_mode {
23259 	TWA_NONE = 0,
23260 	TWA_RESUME = 1,
23261 	TWA_SIGNAL = 2,
23262 	TWA_SIGNAL_NO_IPI = 3,
23263 };
23264 
23265 struct io_wq_work_node {
23266 	struct io_wq_work_node *next;
23267 };
23268 
23269 struct io_wq_work_list {
23270 	struct io_wq_work_node *first;
23271 	struct io_wq_work_node *last;
23272 };
23273 
23274 struct io_wq_work {
23275 	struct io_wq_work_node list;
23276 	unsigned int flags;
23277 	int cancel_seq;
23278 };
23279 
23280 struct io_fixed_file {
23281 	long unsigned int file_ptr;
23282 };
23283 
23284 struct io_file_table {
23285 	struct io_fixed_file *files;
23286 	long unsigned int *bitmap;
23287 	unsigned int alloc_hint;
23288 };
23289 
23290 struct io_hash_bucket {
23291 	spinlock_t lock;
23292 	struct hlist_head list;
23293 	long: 64;
23294 	long: 64;
23295 	long: 64;
23296 	long: 64;
23297 	long: 64;
23298 	long: 64;
23299 	long: 64;
23300 	long: 64;
23301 	long: 64;
23302 	long: 64;
23303 	long: 64;
23304 	long: 64;
23305 	long: 64;
23306 	long: 64;
23307 };
23308 
23309 struct io_hash_table {
23310 	struct io_hash_bucket *hbs;
23311 	unsigned int hash_bits;
23312 };
23313 
23314 struct io_notif_slot;
23315 
23316 struct io_kiocb;
23317 
23318 struct io_submit_link {
23319 	struct io_kiocb *head;
23320 	struct io_kiocb *last;
23321 };
23322 
23323 struct io_submit_state {
23324 	struct io_wq_work_node free_list;
23325 	struct io_wq_work_list compl_reqs;
23326 	struct io_submit_link link;
23327 	bool plug_started;
23328 	bool need_plug;
23329 	short unsigned int submit_nr;
23330 	struct blk_plug plug;
23331 };
23332 
23333 struct io_alloc_cache {
23334 	struct hlist_head list;
23335 	unsigned int nr_cached;
23336 };
23337 
23338 struct io_restriction {
23339 	long unsigned int register_op[1];
23340 	long unsigned int sqe_op[1];
23341 	u8 sqe_flags_allowed;
23342 	u8 sqe_flags_required;
23343 	bool registered;
23344 };
23345 
23346 struct io_rings;
23347 
23348 struct io_rsrc_node;
23349 
23350 struct io_mapped_ubuf;
23351 
23352 struct io_buffer_list;
23353 
23354 struct io_sq_data;
23355 
23356 struct io_ev_fd;
23357 
23358 struct io_rsrc_data;
23359 
23360 struct io_wq_hash;
23361 
23362 struct io_ring_ctx {
23363 	struct {
23364 		struct percpu_ref refs;
23365 		struct io_rings *rings;
23366 		unsigned int flags;
23367 		enum task_work_notify_mode notify_method;
23368 		unsigned int compat: 1;
23369 		unsigned int drain_next: 1;
23370 		unsigned int restricted: 1;
23371 		unsigned int off_timeout_used: 1;
23372 		unsigned int drain_active: 1;
23373 		unsigned int drain_disabled: 1;
23374 		unsigned int has_evfd: 1;
23375 		unsigned int syscall_iopoll: 1;
23376 		long: 64;
23377 		long: 64;
23378 		long: 64;
23379 		long: 64;
23380 		long: 64;
23381 		long: 64;
23382 		long: 64;
23383 		long: 64;
23384 		long: 64;
23385 		long: 64;
23386 		long: 64;
23387 	};
23388 	struct {
23389 		struct mutex uring_lock;
23390 		u32 *sq_array;
23391 		struct io_uring_sqe *sq_sqes;
23392 		unsigned int cached_sq_head;
23393 		unsigned int sq_entries;
23394 		struct io_rsrc_node *rsrc_node;
23395 		int rsrc_cached_refs;
23396 		atomic_t cancel_seq;
23397 		struct io_file_table file_table;
23398 		unsigned int nr_user_files;
23399 		unsigned int nr_user_bufs;
23400 		struct io_mapped_ubuf **user_bufs;
23401 		struct io_notif_slot *notif_slots;
23402 		unsigned int nr_notif_slots;
23403 		struct io_submit_state submit_state;
23404 		struct io_buffer_list *io_bl;
23405 		struct xarray io_bl_xa;
23406 		struct list_head io_buffers_cache;
23407 		struct io_hash_table cancel_table_locked;
23408 		struct list_head cq_overflow_list;
23409 		struct io_alloc_cache apoll_cache;
23410 		struct io_alloc_cache netmsg_cache;
23411 		long: 64;
23412 		long: 64;
23413 		long: 64;
23414 		long: 64;
23415 		long: 64;
23416 		long: 64;
23417 		long: 64;
23418 	};
23419 	struct io_wq_work_list locked_free_list;
23420 	unsigned int locked_free_nr;
23421 	const struct cred *sq_creds;
23422 	struct io_sq_data *sq_data;
23423 	struct wait_queue_head sqo_sq_wait;
23424 	struct list_head sqd_list;
23425 	long unsigned int check_cq;
23426 	unsigned int file_alloc_start;
23427 	unsigned int file_alloc_end;
23428 	struct xarray personalities;
23429 	u32 pers_next;
23430 	long: 64;
23431 	struct {
23432 		struct io_uring_cqe *cqe_cached;
23433 		struct io_uring_cqe *cqe_sentinel;
23434 		unsigned int cached_cq_tail;
23435 		unsigned int cq_entries;
23436 		struct io_ev_fd *io_ev_fd;
23437 		struct wait_queue_head cq_wait;
23438 		unsigned int cq_extra;
23439 		long: 64;
23440 		long: 64;
23441 		long: 64;
23442 		long: 64;
23443 		long: 64;
23444 		long: 64;
23445 		long: 64;
23446 		long: 64;
23447 	};
23448 	struct {
23449 		spinlock_t completion_lock;
23450 		struct io_wq_work_list iopoll_list;
23451 		struct io_hash_table cancel_table;
23452 		bool poll_multi_queue;
23453 		struct list_head io_buffers_comp;
23454 		long: 64;
23455 		long: 64;
23456 		long: 64;
23457 		long: 64;
23458 		long: 64;
23459 		long: 64;
23460 		long: 64;
23461 		long: 64;
23462 	};
23463 	struct {
23464 		spinlock_t timeout_lock;
23465 		atomic_t cq_timeouts;
23466 		struct list_head timeout_list;
23467 		struct list_head ltimeout_list;
23468 		unsigned int cq_last_tm_flush;
23469 		long: 64;
23470 		long: 64;
23471 		long: 64;
23472 		long: 64;
23473 		long: 64;
23474 		long: 64;
23475 		long: 64;
23476 		long: 64;
23477 		long: 64;
23478 		long: 64;
23479 	};
23480 	struct io_restriction restrictions;
23481 	struct task_struct *submitter_task;
23482 	struct io_rsrc_node *rsrc_backup_node;
23483 	struct io_mapped_ubuf *dummy_ubuf;
23484 	struct io_rsrc_data *file_data;
23485 	struct io_rsrc_data *buf_data;
23486 	struct delayed_work rsrc_put_work;
23487 	struct llist_head rsrc_put_llist;
23488 	struct list_head rsrc_ref_list;
23489 	spinlock_t rsrc_ref_lock;
23490 	struct list_head io_buffers_pages;
23491 	struct socket *ring_sock;
23492 	struct io_wq_hash *hash_map;
23493 	struct user_struct *user;
23494 	struct mm_struct *mm_account;
23495 	struct llist_head fallback_llist;
23496 	struct delayed_work fallback_work;
23497 	struct work_struct exit_work;
23498 	struct list_head tctx_list;
23499 	struct completion ref_comp;
23500 	u32 iowq_limits[2];
23501 	bool iowq_limits_set;
23502 	struct list_head defer_list;
23503 	unsigned int sq_thread_idle;
23504 	unsigned int evfd_last_cq_tail;
23505 	long: 64;
23506 	long: 64;
23507 	long: 64;
23508 	long: 64;
23509 	long: 64;
23510 	long: 64;
23511 	long: 64;
23512 	long: 64;
23513 };
23514 
23515 struct io_uring {
23516 	u32 head;
23517 	long: 64;
23518 	long: 64;
23519 	long: 64;
23520 	long: 64;
23521 	long: 64;
23522 	long: 64;
23523 	long: 64;
23524 	long: 64;
23525 	long: 64;
23526 	long: 64;
23527 	long: 64;
23528 	long: 64;
23529 	long: 64;
23530 	long: 64;
23531 	long: 64;
23532 	u32 tail;
23533 	long: 64;
23534 	long: 64;
23535 	long: 64;
23536 	long: 64;
23537 	long: 64;
23538 	long: 64;
23539 	long: 64;
23540 	long: 64;
23541 	long: 64;
23542 	long: 64;
23543 	long: 64;
23544 	long: 64;
23545 	long: 64;
23546 	long: 64;
23547 	long: 64;
23548 };
23549 
23550 struct io_rings {
23551 	struct io_uring sq;
23552 	struct io_uring cq;
23553 	u32 sq_ring_mask;
23554 	u32 cq_ring_mask;
23555 	u32 sq_ring_entries;
23556 	u32 cq_ring_entries;
23557 	u32 sq_dropped;
23558 	atomic_t sq_flags;
23559 	u32 cq_flags;
23560 	u32 cq_overflow;
23561 	long: 64;
23562 	long: 64;
23563 	long: 64;
23564 	long: 64;
23565 	long: 64;
23566 	long: 64;
23567 	long: 64;
23568 	long: 64;
23569 	long: 64;
23570 	long: 64;
23571 	long: 64;
23572 	long: 64;
23573 	struct io_uring_cqe cqes[0];
23574 };
23575 
23576 struct io_cmd_data {
23577 	struct file *file;
23578 	__u8 data[56];
23579 };
23580 
23581 struct io_cqe {
23582 	__u64 user_data;
23583 	__s32 res;
23584 	union {
23585 		__u32 flags;
23586 		int fd;
23587 	};
23588 };
23589 
23590 typedef void (*io_req_tw_func_t)(struct io_kiocb *, bool *);
23591 
23592 struct io_task_work {
23593 	struct llist_node node;
23594 	io_req_tw_func_t func;
23595 };
23596 
23597 struct io_buffer;
23598 
23599 struct async_poll;
23600 
23601 struct io_kiocb {
23602 	union {
23603 		struct file *file;
23604 		struct io_cmd_data cmd;
23605 	};
23606 	u8 opcode;
23607 	u8 iopoll_completed;
23608 	u16 buf_index;
23609 	unsigned int flags;
23610 	struct io_cqe cqe;
23611 	struct io_ring_ctx *ctx;
23612 	struct task_struct *task;
23613 	struct io_rsrc_node *rsrc_node;
23614 	union {
23615 		struct io_mapped_ubuf *imu;
23616 		struct io_buffer *kbuf;
23617 		struct io_buffer_list *buf_list;
23618 	};
23619 	union {
23620 		struct io_wq_work_node comp_list;
23621 		__poll_t apoll_events;
23622 	};
23623 	atomic_t refs;
23624 	atomic_t poll_refs;
23625 	struct io_task_work io_task_work;
23626 	union {
23627 		struct hlist_node hash_node;
23628 		struct {
23629 			u64 extra1;
23630 			u64 extra2;
23631 		};
23632 	};
23633 	struct async_poll *apoll;
23634 	void *async_data;
23635 	struct io_kiocb *link;
23636 	const struct cred *creds;
23637 	struct io_wq_work work;
23638 };
23639 
23640 struct io_ev_fd {
23641 	struct eventfd_ctx *cq_ev_fd;
23642 	unsigned int eventfd_async: 1;
23643 	struct callback_head rcu;
23644 };
23645 
23646 struct io_wq_hash {
23647 	refcount_t refs;
23648 	long unsigned int map;
23649 	struct wait_queue_head wait;
23650 };
23651 
23652 enum {
23653 	IOU_OK = 0,
23654 	IOU_ISSUE_SKIP_COMPLETE = -529,
23655 	IOU_STOP_MULTISHOT = -125,
23656 };
23657 
23658 struct io_sync {
23659 	struct file *file;
23660 	loff_t len;
23661 	loff_t off;
23662 	int flags;
23663 	int mode;
23664 };
23665 
23666 enum io_uring_op {
23667 	IORING_OP_NOP = 0,
23668 	IORING_OP_READV = 1,
23669 	IORING_OP_WRITEV = 2,
23670 	IORING_OP_FSYNC = 3,
23671 	IORING_OP_READ_FIXED = 4,
23672 	IORING_OP_WRITE_FIXED = 5,
23673 	IORING_OP_POLL_ADD = 6,
23674 	IORING_OP_POLL_REMOVE = 7,
23675 	IORING_OP_SYNC_FILE_RANGE = 8,
23676 	IORING_OP_SENDMSG = 9,
23677 	IORING_OP_RECVMSG = 10,
23678 	IORING_OP_TIMEOUT = 11,
23679 	IORING_OP_TIMEOUT_REMOVE = 12,
23680 	IORING_OP_ACCEPT = 13,
23681 	IORING_OP_ASYNC_CANCEL = 14,
23682 	IORING_OP_LINK_TIMEOUT = 15,
23683 	IORING_OP_CONNECT = 16,
23684 	IORING_OP_FALLOCATE = 17,
23685 	IORING_OP_OPENAT = 18,
23686 	IORING_OP_CLOSE = 19,
23687 	IORING_OP_FILES_UPDATE = 20,
23688 	IORING_OP_STATX = 21,
23689 	IORING_OP_READ = 22,
23690 	IORING_OP_WRITE = 23,
23691 	IORING_OP_FADVISE = 24,
23692 	IORING_OP_MADVISE = 25,
23693 	IORING_OP_SEND = 26,
23694 	IORING_OP_RECV = 27,
23695 	IORING_OP_OPENAT2 = 28,
23696 	IORING_OP_EPOLL_CTL = 29,
23697 	IORING_OP_SPLICE = 30,
23698 	IORING_OP_PROVIDE_BUFFERS = 31,
23699 	IORING_OP_REMOVE_BUFFERS = 32,
23700 	IORING_OP_TEE = 33,
23701 	IORING_OP_SHUTDOWN = 34,
23702 	IORING_OP_RENAMEAT = 35,
23703 	IORING_OP_UNLINKAT = 36,
23704 	IORING_OP_MKDIRAT = 37,
23705 	IORING_OP_SYMLINKAT = 38,
23706 	IORING_OP_LINKAT = 39,
23707 	IORING_OP_MSG_RING = 40,
23708 	IORING_OP_FSETXATTR = 41,
23709 	IORING_OP_SETXATTR = 42,
23710 	IORING_OP_FGETXATTR = 43,
23711 	IORING_OP_GETXATTR = 44,
23712 	IORING_OP_SOCKET = 45,
23713 	IORING_OP_URING_CMD = 46,
23714 	IORING_OP_SEND_ZC = 47,
23715 	IORING_OP_LAST = 48,
23716 };
23717 
23718 struct io_uring_buf {
23719 	__u64 addr;
23720 	__u32 len;
23721 	__u16 bid;
23722 	__u16 resv;
23723 };
23724 
23725 struct io_uring_buf_ring {
23726 	union {
23727 		struct {
23728 			__u64 resv1;
23729 			__u32 resv2;
23730 			__u16 resv3;
23731 			__u16 tail;
23732 		};
23733 		struct io_uring_buf bufs[0];
23734 	};
23735 };
23736 
23737 struct io_buffer_list {
23738 	union {
23739 		struct list_head buf_list;
23740 		struct {
23741 			struct page **buf_pages;
23742 			struct io_uring_buf_ring *buf_ring;
23743 		};
23744 	};
23745 	__u16 bgid;
23746 	__u16 buf_nr_pages;
23747 	__u16 nr_entries;
23748 	__u16 head;
23749 	__u16 mask;
23750 };
23751 
23752 enum {
23753 	REQ_F_FIXED_FILE = 1,
23754 	REQ_F_IO_DRAIN = 2,
23755 	REQ_F_LINK = 4,
23756 	REQ_F_HARDLINK = 8,
23757 	REQ_F_FORCE_ASYNC = 16,
23758 	REQ_F_BUFFER_SELECT = 32,
23759 	REQ_F_CQE_SKIP = 64,
23760 	REQ_F_FAIL = 256,
23761 	REQ_F_INFLIGHT = 512,
23762 	REQ_F_CUR_POS = 1024,
23763 	REQ_F_NOWAIT = 2048,
23764 	REQ_F_LINK_TIMEOUT = 4096,
23765 	REQ_F_NEED_CLEANUP = 8192,
23766 	REQ_F_POLLED = 16384,
23767 	REQ_F_BUFFER_SELECTED = 32768,
23768 	REQ_F_BUFFER_RING = 65536,
23769 	REQ_F_REISSUE = 131072,
23770 	REQ_F_SUPPORT_NOWAIT = 1073741824,
23771 	REQ_F_ISREG = 2147483648,
23772 	REQ_F_CREDS = 262144,
23773 	REQ_F_REFCOUNT = 524288,
23774 	REQ_F_ARM_LTIMEOUT = 1048576,
23775 	REQ_F_ASYNC_DATA = 2097152,
23776 	REQ_F_SKIP_LINK_CQES = 4194304,
23777 	REQ_F_SINGLE_POLL = 8388608,
23778 	REQ_F_DOUBLE_POLL = 16777216,
23779 	REQ_F_PARTIAL_IO = 33554432,
23780 	REQ_F_APOLL_MULTISHOT = 134217728,
23781 	REQ_F_CQE32_INIT = 67108864,
23782 	REQ_F_CLEAR_POLLIN = 268435456,
23783 	REQ_F_HASH_LOCKED = 536870912,
23784 };
23785 
23786 struct io_buffer {
23787 	struct list_head list;
23788 	__u64 addr;
23789 	__u32 len;
23790 	__u16 bid;
23791 	__u16 bgid;
23792 };
23793 
23794 struct io_poll {
23795 	struct file *file;
23796 	struct wait_queue_head *head;
23797 	__poll_t events;
23798 	struct wait_queue_entry wait;
23799 };
23800 
23801 struct io_cache_entry {
23802 	struct hlist_node node;
23803 };
23804 
23805 struct async_poll {
23806 	union {
23807 		struct io_poll poll;
23808 		struct io_cache_entry cache;
23809 	};
23810 	struct io_poll *double_poll;
23811 };
23812 
23813 struct io_op_def {
23814 	unsigned int needs_file: 1;
23815 	unsigned int plug: 1;
23816 	unsigned int hash_reg_file: 1;
23817 	unsigned int unbound_nonreg_file: 1;
23818 	unsigned int pollin: 1;
23819 	unsigned int pollout: 1;
23820 	unsigned int poll_exclusive: 1;
23821 	unsigned int buffer_select: 1;
23822 	unsigned int not_supported: 1;
23823 	unsigned int audit_skip: 1;
23824 	unsigned int ioprio: 1;
23825 	unsigned int iopoll: 1;
23826 	unsigned int manual_alloc: 1;
23827 	short unsigned int async_size;
23828 	const char *name;
23829 	int (*prep)(struct io_kiocb *, const struct io_uring_sqe *);
23830 	int (*issue)(struct io_kiocb *, unsigned int);
23831 	int (*prep_async)(struct io_kiocb *);
23832 	void (*cleanup)(struct io_kiocb *);
23833 };
23834 
23835 enum {
23836 	IO_APOLL_OK = 0,
23837 	IO_APOLL_ABORTED = 1,
23838 	IO_APOLL_READY = 2,
23839 };
23840 
23841 struct io_cancel_data {
23842 	struct io_ring_ctx *ctx;
23843 	union {
23844 		u64 data;
23845 		struct file *file;
23846 	};
23847 	u32 flags;
23848 	int seq;
23849 };
23850 
23851 struct io_poll_update {
23852 	struct file *file;
23853 	u64 old_user_data;
23854 	u64 new_user_data;
23855 	__poll_t events;
23856 	bool update_events;
23857 	bool update_user_data;
23858 };
23859 
23860 struct io_poll_table {
23861 	struct poll_table_struct pt;
23862 	struct io_kiocb *req;
23863 	int nr_entries;
23864 	int error;
23865 	bool owning;
23866 	__poll_t result_mask;
23867 };
23868 
23869 enum {
23870 	IOU_POLL_DONE = 0,
23871 	IOU_POLL_NO_ACTION = 1,
23872 	IOU_POLL_REMOVE_POLL_USE_RES = 2,
23873 };
23874 
23875 struct crypto_async_request;
23876 
23877 typedef void (*crypto_completion_t)(struct crypto_async_request *, int);
23878 
23879 struct crypto_tfm;
23880 
23881 struct crypto_async_request {
23882 	struct list_head list;
23883 	crypto_completion_t complete;
23884 	void *data;
23885 	struct crypto_tfm *tfm;
23886 	u32 flags;
23887 };
23888 
23889 struct crypto_alg;
23890 
23891 struct crypto_tfm {
23892 	u32 crt_flags;
23893 	int node;
23894 	void (*exit)(struct crypto_tfm *);
23895 	struct crypto_alg *__crt_alg;
23896 	void *__crt_ctx[0];
23897 };
23898 
23899 struct cipher_alg {
23900 	unsigned int cia_min_keysize;
23901 	unsigned int cia_max_keysize;
23902 	int (*cia_setkey)(struct crypto_tfm *, const u8 *, unsigned int);
23903 	void (*cia_encrypt)(struct crypto_tfm *, u8 *, const u8 *);
23904 	void (*cia_decrypt)(struct crypto_tfm *, u8 *, const u8 *);
23905 };
23906 
23907 struct compress_alg {
23908 	int (*coa_compress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
23909 	int (*coa_decompress)(struct crypto_tfm *, const u8 *, unsigned int, u8 *, unsigned int *);
23910 };
23911 
23912 struct crypto_type;
23913 
23914 struct crypto_alg {
23915 	struct list_head cra_list;
23916 	struct list_head cra_users;
23917 	u32 cra_flags;
23918 	unsigned int cra_blocksize;
23919 	unsigned int cra_ctxsize;
23920 	unsigned int cra_alignmask;
23921 	int cra_priority;
23922 	refcount_t cra_refcnt;
23923 	char cra_name[128];
23924 	char cra_driver_name[128];
23925 	const struct crypto_type *cra_type;
23926 	union {
23927 		struct cipher_alg cipher;
23928 		struct compress_alg compress;
23929 	} cra_u;
23930 	int (*cra_init)(struct crypto_tfm *);
23931 	void (*cra_exit)(struct crypto_tfm *);
23932 	void (*cra_destroy)(struct crypto_alg *);
23933 	struct module *cra_module;
23934 };
23935 
23936 struct crypto_instance;
23937 
23938 struct crypto_type {
23939 	unsigned int (*ctxsize)(struct crypto_alg *, u32, u32);
23940 	unsigned int (*extsize)(struct crypto_alg *);
23941 	int (*init)(struct crypto_tfm *, u32, u32);
23942 	int (*init_tfm)(struct crypto_tfm *);
23943 	void (*show)(struct seq_file *, struct crypto_alg *);
23944 	int (*report)(struct sk_buff *, struct crypto_alg *);
23945 	void (*free)(struct crypto_instance *);
23946 	unsigned int type;
23947 	unsigned int maskclear;
23948 	unsigned int maskset;
23949 	unsigned int tfmsize;
23950 };
23951 
23952 struct ahash_request {
23953 	struct crypto_async_request base;
23954 	unsigned int nbytes;
23955 	struct scatterlist *src;
23956 	u8 *result;
23957 	void *priv;
23958 	void *__ctx[0];
23959 };
23960 
23961 struct crypto_ahash {
23962 	int (*init)(struct ahash_request *);
23963 	int (*update)(struct ahash_request *);
23964 	int (*final)(struct ahash_request *);
23965 	int (*finup)(struct ahash_request *);
23966 	int (*digest)(struct ahash_request *);
23967 	int (*export)(struct ahash_request *, void *);
23968 	int (*import)(struct ahash_request *, const void *);
23969 	int (*setkey)(struct crypto_ahash *, const u8 *, unsigned int);
23970 	unsigned int reqsize;
23971 	struct crypto_tfm base;
23972 };
23973 
23974 struct xa_node {
23975 	unsigned char shift;
23976 	unsigned char offset;
23977 	unsigned char count;
23978 	unsigned char nr_values;
23979 	struct xa_node *parent;
23980 	struct xarray *array;
23981 	union {
23982 		struct list_head private_list;
23983 		struct callback_head callback_head;
23984 	};
23985 	void *slots[64];
23986 	union {
23987 		long unsigned int tags[3];
23988 		long unsigned int marks[3];
23989 	};
23990 };
23991 
23992 typedef void (*xa_update_node_t)(struct xa_node *);
23993 
23994 struct xa_state {
23995 	struct xarray *xa;
23996 	long unsigned int xa_index;
23997 	unsigned char xa_shift;
23998 	unsigned char xa_sibs;
23999 	unsigned char xa_offset;
24000 	unsigned char xa_pad;
24001 	struct xa_node *xa_node;
24002 	struct xa_node *xa_alloc;
24003 	xa_update_node_t xa_update;
24004 	struct list_lru *xa_lru;
24005 };
24006 
24007 enum iter_type {
24008 	ITER_IOVEC = 0,
24009 	ITER_KVEC = 1,
24010 	ITER_BVEC = 2,
24011 	ITER_PIPE = 3,
24012 	ITER_XARRAY = 4,
24013 	ITER_DISCARD = 5,
24014 	ITER_UBUF = 6,
24015 };
24016 
24017 struct iov_iter_state {
24018 	size_t iov_offset;
24019 	size_t count;
24020 	long unsigned int nr_segs;
24021 };
24022 
24023 struct csum_state {
24024 	__wsum csum;
24025 	size_t off;
24026 };
24027 
24028 typedef u32 compat_size_t;
24029 
24030 typedef s32 compat_ssize_t;
24031 
24032 typedef u32 compat_uptr_t;
24033 
24034 struct compat_iovec {
24035 	compat_uptr_t iov_base;
24036 	compat_size_t iov_len;
24037 };
24038 
24039 typedef unsigned char Byte;
24040 
24041 typedef unsigned int uInt;
24042 
24043 typedef long unsigned int uLong;
24044 
24045 struct internal_state;
24046 
24047 struct z_stream_s {
24048 	const Byte *next_in;
24049 	uLong avail_in;
24050 	uLong total_in;
24051 	Byte *next_out;
24052 	uLong avail_out;
24053 	uLong total_out;
24054 	char *msg;
24055 	struct internal_state *state;
24056 	void *workspace;
24057 	int data_type;
24058 	uLong adler;
24059 	uLong reserved;
24060 };
24061 
24062 typedef struct z_stream_s z_stream;
24063 
24064 typedef z_stream *z_streamp;
24065 
24066 typedef struct {
24067 	unsigned char op;
24068 	unsigned char bits;
24069 	short unsigned int val;
24070 } code;
24071 
24072 typedef enum {
24073 	CODES = 0,
24074 	LENS = 1,
24075 	DISTS = 2,
24076 } codetype;
24077 
24078 typedef enum {
24079 	HEAD = 0,
24080 	FLAGS = 1,
24081 	TIME = 2,
24082 	OS = 3,
24083 	EXLEN = 4,
24084 	EXTRA = 5,
24085 	NAME = 6,
24086 	COMMENT = 7,
24087 	HCRC = 8,
24088 	DICTID = 9,
24089 	DICT = 10,
24090 	TYPE = 11,
24091 	TYPEDO = 12,
24092 	STORED = 13,
24093 	COPY = 14,
24094 	TABLE = 15,
24095 	LENLENS = 16,
24096 	CODELENS = 17,
24097 	LEN = 18,
24098 	LENEXT = 19,
24099 	DIST = 20,
24100 	DISTEXT = 21,
24101 	MATCH = 22,
24102 	LIT = 23,
24103 	CHECK = 24,
24104 	LENGTH = 25,
24105 	DONE = 26,
24106 	BAD = 27,
24107 	MEM = 28,
24108 	SYNC = 29,
24109 } inflate_mode;
24110 
24111 struct inflate_state {
24112 	inflate_mode mode;
24113 	int last;
24114 	int wrap;
24115 	int havedict;
24116 	int flags;
24117 	unsigned int dmax;
24118 	long unsigned int check;
24119 	long unsigned int total;
24120 	unsigned int wbits;
24121 	unsigned int wsize;
24122 	unsigned int whave;
24123 	unsigned int write;
24124 	unsigned char *window;
24125 	long unsigned int hold;
24126 	unsigned int bits;
24127 	unsigned int length;
24128 	unsigned int offset;
24129 	unsigned int extra;
24130 	const code *lencode;
24131 	const code *distcode;
24132 	unsigned int lenbits;
24133 	unsigned int distbits;
24134 	unsigned int ncode;
24135 	unsigned int nlen;
24136 	unsigned int ndist;
24137 	unsigned int have;
24138 	code *next;
24139 	short unsigned int lens[320];
24140 	short unsigned int work[288];
24141 	code codes[2048];
24142 };
24143 
24144 struct inflate_workspace {
24145 	struct inflate_state inflate_state;
24146 	unsigned char working_window[32768];
24147 };
24148 
24149 struct internal_state {
24150 	int dummy;
24151 };
24152 
24153 typedef __kernel_long_t __kernel_ptrdiff_t;
24154 
24155 typedef __u64 __le64;
24156 
24157 typedef __kernel_ptrdiff_t ptrdiff_t;
24158 
24159 typedef s16 int16_t;
24160 
24161 typedef uint8_t BYTE;
24162 
24163 typedef uint16_t U16;
24164 
24165 typedef int16_t S16;
24166 
24167 typedef uint32_t U32;
24168 
24169 typedef uint64_t U64;
24170 
24171 typedef struct {
24172 	size_t bitContainer;
24173 	unsigned int bitsConsumed;
24174 	const char *ptr;
24175 	const char *start;
24176 	const char *limitPtr;
24177 } BIT_DStream_t;
24178 
24179 typedef enum {
24180 	BIT_DStream_unfinished = 0,
24181 	BIT_DStream_endOfBuffer = 1,
24182 	BIT_DStream_completed = 2,
24183 	BIT_DStream_overflow = 3,
24184 } BIT_DStream_status;
24185 
24186 typedef U32 HUF_DTable;
24187 
24188 typedef struct {
24189 	U16 nextState;
24190 	BYTE nbAdditionalBits;
24191 	BYTE nbBits;
24192 	U32 baseValue;
24193 } ZSTD_seqSymbol;
24194 
24195 typedef struct {
24196 	ZSTD_seqSymbol LLTable[513];
24197 	ZSTD_seqSymbol OFTable[257];
24198 	ZSTD_seqSymbol MLTable[513];
24199 	HUF_DTable hufTable[4097];
24200 	U32 rep[3];
24201 	U32 workspace[157];
24202 } ZSTD_entropyDTables_t;
24203 
24204 typedef enum {
24205 	ZSTD_frame = 0,
24206 	ZSTD_skippableFrame = 1,
24207 } ZSTD_frameType_e;
24208 
24209 typedef struct {
24210 	long long unsigned int frameContentSize;
24211 	long long unsigned int windowSize;
24212 	unsigned int blockSizeMax;
24213 	ZSTD_frameType_e frameType;
24214 	unsigned int headerSize;
24215 	unsigned int dictID;
24216 	unsigned int checksumFlag;
24217 } ZSTD_frameHeader;
24218 
24219 typedef enum {
24220 	bt_raw = 0,
24221 	bt_rle = 1,
24222 	bt_compressed = 2,
24223 	bt_reserved = 3,
24224 } blockType_e;
24225 
24226 typedef enum {
24227 	ZSTDds_getFrameHeaderSize = 0,
24228 	ZSTDds_decodeFrameHeader = 1,
24229 	ZSTDds_decodeBlockHeader = 2,
24230 	ZSTDds_decompressBlock = 3,
24231 	ZSTDds_decompressLastBlock = 4,
24232 	ZSTDds_checkChecksum = 5,
24233 	ZSTDds_decodeSkippableHeader = 6,
24234 	ZSTDds_skipFrame = 7,
24235 } ZSTD_dStage;
24236 
24237 struct xxh64_state {
24238 	uint64_t total_len;
24239 	uint64_t v1;
24240 	uint64_t v2;
24241 	uint64_t v3;
24242 	uint64_t v4;
24243 	uint64_t mem64[4];
24244 	uint32_t memsize;
24245 };
24246 
24247 typedef enum {
24248 	ZSTD_f_zstd1 = 0,
24249 	ZSTD_f_zstd1_magicless = 1,
24250 } ZSTD_format_e;
24251 
24252 typedef enum {
24253 	ZSTD_d_validateChecksum = 0,
24254 	ZSTD_d_ignoreChecksum = 1,
24255 } ZSTD_forceIgnoreChecksum_e;
24256 
24257 typedef void * (*ZSTD_allocFunction)(void *, size_t);
24258 
24259 typedef void (*ZSTD_freeFunction)(void *, void *);
24260 
24261 typedef struct {
24262 	ZSTD_allocFunction customAlloc;
24263 	ZSTD_freeFunction customFree;
24264 	void *opaque;
24265 } ZSTD_customMem;
24266 
24267 typedef enum {
24268 	ZSTD_use_indefinitely = -1,
24269 	ZSTD_dont_use = 0,
24270 	ZSTD_use_once = 1,
24271 } ZSTD_dictUses_e;
24272 
24273 struct ZSTD_DDict_s;
24274 
24275 typedef struct ZSTD_DDict_s ZSTD_DDict;
24276 
24277 typedef struct {
24278 	const ZSTD_DDict **ddictPtrTable;
24279 	size_t ddictPtrTableSize;
24280 	size_t ddictPtrCount;
24281 } ZSTD_DDictHashSet;
24282 
24283 typedef enum {
24284 	ZSTD_rmd_refSingleDDict = 0,
24285 	ZSTD_rmd_refMultipleDDicts = 1,
24286 } ZSTD_refMultipleDDicts_e;
24287 
24288 typedef enum {
24289 	zdss_init = 0,
24290 	zdss_loadHeader = 1,
24291 	zdss_read = 2,
24292 	zdss_load = 3,
24293 	zdss_flush = 4,
24294 } ZSTD_dStreamStage;
24295 
24296 typedef enum {
24297 	ZSTD_bm_buffered = 0,
24298 	ZSTD_bm_stable = 1,
24299 } ZSTD_bufferMode_e;
24300 
24301 struct ZSTD_outBuffer_s {
24302 	void *dst;
24303 	size_t size;
24304 	size_t pos;
24305 };
24306 
24307 typedef struct ZSTD_outBuffer_s ZSTD_outBuffer;
24308 
24309 struct ZSTD_DCtx_s {
24310 	const ZSTD_seqSymbol *LLTptr;
24311 	const ZSTD_seqSymbol *MLTptr;
24312 	const ZSTD_seqSymbol *OFTptr;
24313 	const HUF_DTable *HUFptr;
24314 	ZSTD_entropyDTables_t entropy;
24315 	U32 workspace[640];
24316 	const void *previousDstEnd;
24317 	const void *prefixStart;
24318 	const void *virtualStart;
24319 	const void *dictEnd;
24320 	size_t expected;
24321 	ZSTD_frameHeader fParams;
24322 	U64 processedCSize;
24323 	U64 decodedSize;
24324 	blockType_e bType;
24325 	ZSTD_dStage stage;
24326 	U32 litEntropy;
24327 	U32 fseEntropy;
24328 	struct xxh64_state xxhState;
24329 	size_t headerSize;
24330 	ZSTD_format_e format;
24331 	ZSTD_forceIgnoreChecksum_e forceIgnoreChecksum;
24332 	U32 validateChecksum;
24333 	const BYTE *litPtr;
24334 	ZSTD_customMem customMem;
24335 	size_t litSize;
24336 	size_t rleSize;
24337 	size_t staticSize;
24338 	int bmi2;
24339 	ZSTD_DDict *ddictLocal;
24340 	const ZSTD_DDict *ddict;
24341 	U32 dictID;
24342 	int ddictIsCold;
24343 	ZSTD_dictUses_e dictUses;
24344 	ZSTD_DDictHashSet *ddictSet;
24345 	ZSTD_refMultipleDDicts_e refMultipleDDicts;
24346 	ZSTD_dStreamStage streamStage;
24347 	char *inBuff;
24348 	size_t inBuffSize;
24349 	size_t inPos;
24350 	size_t maxWindowSize;
24351 	char *outBuff;
24352 	size_t outBuffSize;
24353 	size_t outStart;
24354 	size_t outEnd;
24355 	size_t lhSize;
24356 	void *legacyContext;
24357 	U32 previousLegacyVersion;
24358 	U32 legacyVersion;
24359 	U32 hostageByte;
24360 	int noForwardProgress;
24361 	ZSTD_bufferMode_e outBufferMode;
24362 	ZSTD_outBuffer expectedOutBuffer;
24363 	BYTE litBuffer[131104];
24364 	BYTE headerBuffer[18];
24365 	size_t oversizedDuration;
24366 };
24367 
24368 typedef struct ZSTD_DCtx_s ZSTD_DCtx;
24369 
24370 struct ZSTD_DDict_s {
24371 	void *dictBuffer;
24372 	const void *dictContent;
24373 	size_t dictSize;
24374 	ZSTD_entropyDTables_t entropy;
24375 	U32 dictID;
24376 	U32 entropyPresent;
24377 	ZSTD_customMem cMem;
24378 };
24379 
24380 typedef enum {
24381 	set_basic = 0,
24382 	set_rle = 1,
24383 	set_compressed = 2,
24384 	set_repeat = 3,
24385 } symbolEncodingType_e;
24386 
24387 typedef enum {
24388 	ZSTD_no_overlap = 0,
24389 	ZSTD_overlap_src_before_dst = 1,
24390 } ZSTD_overlap_e;
24391 
24392 typedef struct {
24393 	blockType_e blockType;
24394 	U32 lastBlock;
24395 	U32 origSize;
24396 } blockProperties_t;
24397 
24398 typedef struct {
24399 	U32 fastMode;
24400 	U32 tableLog;
24401 } ZSTD_seqSymbol_header;
24402 
24403 typedef struct {
24404 	size_t litLength;
24405 	size_t matchLength;
24406 	size_t offset;
24407 	const BYTE *match;
24408 } seq_t;
24409 
24410 typedef struct {
24411 	size_t state;
24412 	const ZSTD_seqSymbol *table;
24413 } ZSTD_fseState;
24414 
24415 typedef struct {
24416 	BIT_DStream_t DStream;
24417 	ZSTD_fseState stateLL;
24418 	ZSTD_fseState stateOffb;
24419 	ZSTD_fseState stateML;
24420 	size_t prevOffset[3];
24421 	const BYTE *prefixStart;
24422 	const BYTE *dictEnd;
24423 	size_t pos;
24424 } seqState_t;
24425 
24426 typedef enum {
24427 	ZSTD_lo_isRegularOffset = 0,
24428 	ZSTD_lo_isLongOffset = 1,
24429 } ZSTD_longOffset_e;
24430 
24431 typedef enum {
24432 	ZSTD_p_noPrefetch = 0,
24433 	ZSTD_p_prefetch = 1,
24434 } ZSTD_prefetch_e;
24435 
24436 struct dim_sample {
24437 	ktime_t time;
24438 	u32 pkt_ctr;
24439 	u32 byte_ctr;
24440 	u16 event_ctr;
24441 	u32 comp_ctr;
24442 };
24443 
24444 struct dim_stats {
24445 	int ppms;
24446 	int bpms;
24447 	int epms;
24448 	int cpms;
24449 	int cpe_ratio;
24450 };
24451 
24452 struct dim {
24453 	u8 state;
24454 	struct dim_stats prev_stats;
24455 	struct dim_sample start_sample;
24456 	struct dim_sample measuring_sample;
24457 	struct work_struct work;
24458 	void *priv;
24459 	u8 profile_ix;
24460 	u8 mode;
24461 	u8 tune_state;
24462 	u8 steps_right;
24463 	u8 steps_left;
24464 	u8 tired;
24465 };
24466 
24467 enum dim_state {
24468 	DIM_START_MEASURE = 0,
24469 	DIM_MEASURE_IN_PROGRESS = 1,
24470 	DIM_APPLY_NEW_PROFILE = 2,
24471 };
24472 
24473 enum dim_tune_state {
24474 	DIM_PARKING_ON_TOP = 0,
24475 	DIM_PARKING_TIRED = 1,
24476 	DIM_GOING_RIGHT = 2,
24477 	DIM_GOING_LEFT = 3,
24478 };
24479 
24480 enum dim_stats_state {
24481 	DIM_STATS_WORSE = 0,
24482 	DIM_STATS_SAME = 1,
24483 	DIM_STATS_BETTER = 2,
24484 };
24485 
24486 enum dim_step_result {
24487 	DIM_STEPPED = 0,
24488 	DIM_TOO_TIRED = 1,
24489 	DIM_ON_EDGE = 2,
24490 };
24491 
24492 struct platform_driver {
24493 	int (*probe)(struct platform_device *);
24494 	int (*remove)(struct platform_device *);
24495 	void (*shutdown)(struct platform_device *);
24496 	int (*suspend)(struct platform_device *, pm_message_t);
24497 	int (*resume)(struct platform_device *);
24498 	struct device_driver driver;
24499 	const struct platform_device_id *id_table;
24500 	bool prevent_deferred_probe;
24501 	bool driver_managed_dma;
24502 };
24503 
24504 struct of_dev_auxdata {
24505 	char *compatible;
24506 	resource_size_t phys_addr;
24507 	char *name;
24508 	void *platform_data;
24509 };
24510 
24511 typedef u64 pci_bus_addr_t;
24512 
24513 struct pci_bus_region {
24514 	pci_bus_addr_t start;
24515 	pci_bus_addr_t end;
24516 };
24517 
24518 enum pci_mmap_state {
24519 	pci_mmap_io = 0,
24520 	pci_mmap_mem = 1,
24521 };
24522 
24523 enum lockdown_reason {
24524 	LOCKDOWN_NONE = 0,
24525 	LOCKDOWN_MODULE_SIGNATURE = 1,
24526 	LOCKDOWN_DEV_MEM = 2,
24527 	LOCKDOWN_EFI_TEST = 3,
24528 	LOCKDOWN_KEXEC = 4,
24529 	LOCKDOWN_HIBERNATION = 5,
24530 	LOCKDOWN_PCI_ACCESS = 6,
24531 	LOCKDOWN_IOPORT = 7,
24532 	LOCKDOWN_MSR = 8,
24533 	LOCKDOWN_ACPI_TABLES = 9,
24534 	LOCKDOWN_PCMCIA_CIS = 10,
24535 	LOCKDOWN_TIOCSSERIAL = 11,
24536 	LOCKDOWN_MODULE_PARAMETERS = 12,
24537 	LOCKDOWN_MMIOTRACE = 13,
24538 	LOCKDOWN_DEBUGFS = 14,
24539 	LOCKDOWN_XMON_WR = 15,
24540 	LOCKDOWN_BPF_WRITE_USER = 16,
24541 	LOCKDOWN_DBG_WRITE_KERNEL = 17,
24542 	LOCKDOWN_INTEGRITY_MAX = 18,
24543 	LOCKDOWN_KCORE = 19,
24544 	LOCKDOWN_KPROBES = 20,
24545 	LOCKDOWN_BPF_READ_KERNEL = 21,
24546 	LOCKDOWN_DBG_READ_KERNEL = 22,
24547 	LOCKDOWN_PERF = 23,
24548 	LOCKDOWN_TRACEFS = 24,
24549 	LOCKDOWN_XMON_RW = 25,
24550 	LOCKDOWN_XFRM_SECRET = 26,
24551 	LOCKDOWN_CONFIDENTIALITY_MAX = 27,
24552 };
24553 
24554 enum pci_mmap_api {
24555 	PCI_MMAP_SYSFS = 0,
24556 	PCI_MMAP_PROCFS = 1,
24557 };
24558 
24559 struct pci_filp_private {
24560 	enum pci_mmap_state mmap_state;
24561 	int write_combine;
24562 };
24563 
24564 struct fb_fix_screeninfo {
24565 	char id[16];
24566 	long unsigned int smem_start;
24567 	__u32 smem_len;
24568 	__u32 type;
24569 	__u32 type_aux;
24570 	__u32 visual;
24571 	__u16 xpanstep;
24572 	__u16 ypanstep;
24573 	__u16 ywrapstep;
24574 	__u32 line_length;
24575 	long unsigned int mmio_start;
24576 	__u32 mmio_len;
24577 	__u32 accel;
24578 	__u16 capabilities;
24579 	__u16 reserved[2];
24580 };
24581 
24582 struct fb_bitfield {
24583 	__u32 offset;
24584 	__u32 length;
24585 	__u32 msb_right;
24586 };
24587 
24588 struct fb_var_screeninfo {
24589 	__u32 xres;
24590 	__u32 yres;
24591 	__u32 xres_virtual;
24592 	__u32 yres_virtual;
24593 	__u32 xoffset;
24594 	__u32 yoffset;
24595 	__u32 bits_per_pixel;
24596 	__u32 grayscale;
24597 	struct fb_bitfield red;
24598 	struct fb_bitfield green;
24599 	struct fb_bitfield blue;
24600 	struct fb_bitfield transp;
24601 	__u32 nonstd;
24602 	__u32 activate;
24603 	__u32 height;
24604 	__u32 width;
24605 	__u32 accel_flags;
24606 	__u32 pixclock;
24607 	__u32 left_margin;
24608 	__u32 right_margin;
24609 	__u32 upper_margin;
24610 	__u32 lower_margin;
24611 	__u32 hsync_len;
24612 	__u32 vsync_len;
24613 	__u32 sync;
24614 	__u32 vmode;
24615 	__u32 rotate;
24616 	__u32 colorspace;
24617 	__u32 reserved[4];
24618 };
24619 
24620 struct fb_cmap {
24621 	__u32 start;
24622 	__u32 len;
24623 	__u16 *red;
24624 	__u16 *green;
24625 	__u16 *blue;
24626 	__u16 *transp;
24627 };
24628 
24629 struct fb_copyarea {
24630 	__u32 dx;
24631 	__u32 dy;
24632 	__u32 width;
24633 	__u32 height;
24634 	__u32 sx;
24635 	__u32 sy;
24636 };
24637 
24638 struct fb_fillrect {
24639 	__u32 dx;
24640 	__u32 dy;
24641 	__u32 width;
24642 	__u32 height;
24643 	__u32 color;
24644 	__u32 rop;
24645 };
24646 
24647 struct fb_image {
24648 	__u32 dx;
24649 	__u32 dy;
24650 	__u32 width;
24651 	__u32 height;
24652 	__u32 fg_color;
24653 	__u32 bg_color;
24654 	__u8 depth;
24655 	const char *data;
24656 	struct fb_cmap cmap;
24657 };
24658 
24659 struct fbcurpos {
24660 	__u16 x;
24661 	__u16 y;
24662 };
24663 
24664 struct fb_cursor {
24665 	__u16 set;
24666 	__u16 enable;
24667 	__u16 rop;
24668 	const char *mask;
24669 	struct fbcurpos hot;
24670 	struct fb_image image;
24671 };
24672 
24673 enum backlight_type {
24674 	BACKLIGHT_RAW = 1,
24675 	BACKLIGHT_PLATFORM = 2,
24676 	BACKLIGHT_FIRMWARE = 3,
24677 	BACKLIGHT_TYPE_MAX = 4,
24678 };
24679 
24680 enum backlight_scale {
24681 	BACKLIGHT_SCALE_UNKNOWN = 0,
24682 	BACKLIGHT_SCALE_LINEAR = 1,
24683 	BACKLIGHT_SCALE_NON_LINEAR = 2,
24684 };
24685 
24686 struct backlight_device;
24687 
24688 struct fb_info;
24689 
24690 struct backlight_ops {
24691 	unsigned int options;
24692 	int (*update_status)(struct backlight_device *);
24693 	int (*get_brightness)(struct backlight_device *);
24694 	int (*check_fb)(struct backlight_device *, struct fb_info *);
24695 };
24696 
24697 struct backlight_properties {
24698 	int brightness;
24699 	int max_brightness;
24700 	int power;
24701 	int fb_blank;
24702 	enum backlight_type type;
24703 	unsigned int state;
24704 	enum backlight_scale scale;
24705 };
24706 
24707 struct backlight_device {
24708 	struct backlight_properties props;
24709 	struct mutex update_lock;
24710 	struct mutex ops_lock;
24711 	const struct backlight_ops *ops;
24712 	struct notifier_block fb_notif;
24713 	struct list_head entry;
24714 	struct device dev;
24715 	bool fb_bl_on[32];
24716 	int use_count;
24717 };
24718 
24719 struct fb_chroma {
24720 	__u32 redx;
24721 	__u32 greenx;
24722 	__u32 bluex;
24723 	__u32 whitex;
24724 	__u32 redy;
24725 	__u32 greeny;
24726 	__u32 bluey;
24727 	__u32 whitey;
24728 };
24729 
24730 struct fb_videomode;
24731 
24732 struct fb_monspecs {
24733 	struct fb_chroma chroma;
24734 	struct fb_videomode *modedb;
24735 	__u8 manufacturer[4];
24736 	__u8 monitor[14];
24737 	__u8 serial_no[14];
24738 	__u8 ascii[14];
24739 	__u32 modedb_len;
24740 	__u32 model;
24741 	__u32 serial;
24742 	__u32 year;
24743 	__u32 week;
24744 	__u32 hfmin;
24745 	__u32 hfmax;
24746 	__u32 dclkmin;
24747 	__u32 dclkmax;
24748 	__u16 input;
24749 	__u16 dpms;
24750 	__u16 signal;
24751 	__u16 vfmin;
24752 	__u16 vfmax;
24753 	__u16 gamma;
24754 	__u16 gtf: 1;
24755 	__u16 misc;
24756 	__u8 version;
24757 	__u8 revision;
24758 	__u8 max_x;
24759 	__u8 max_y;
24760 };
24761 
24762 struct fb_pixmap {
24763 	u8 *addr;
24764 	u32 size;
24765 	u32 offset;
24766 	u32 buf_align;
24767 	u32 scan_align;
24768 	u32 access_align;
24769 	u32 flags;
24770 	u32 blit_x;
24771 	u32 blit_y;
24772 	void (*writeio)(struct fb_info *, void *, void *, unsigned int);
24773 	void (*readio)(struct fb_info *, void *, void *, unsigned int);
24774 };
24775 
24776 struct fb_ops;
24777 
24778 struct fb_tile_ops;
24779 
24780 struct apertures_struct;
24781 
24782 struct fb_info {
24783 	refcount_t count;
24784 	int node;
24785 	int flags;
24786 	int fbcon_rotate_hint;
24787 	struct mutex lock;
24788 	struct mutex mm_lock;
24789 	struct fb_var_screeninfo var;
24790 	struct fb_fix_screeninfo fix;
24791 	struct fb_monspecs monspecs;
24792 	struct fb_pixmap pixmap;
24793 	struct fb_pixmap sprite;
24794 	struct fb_cmap cmap;
24795 	struct list_head modelist;
24796 	struct fb_videomode *mode;
24797 	struct backlight_device *bl_dev;
24798 	struct mutex bl_curve_mutex;
24799 	u8 bl_curve[128];
24800 	const struct fb_ops *fbops;
24801 	struct device *device;
24802 	struct device *dev;
24803 	int class_flag;
24804 	struct fb_tile_ops *tileops;
24805 	union {
24806 		char *screen_base;
24807 		char *screen_buffer;
24808 	};
24809 	long unsigned int screen_size;
24810 	void *pseudo_palette;
24811 	u32 state;
24812 	void *fbcon_par;
24813 	void *par;
24814 	struct apertures_struct *apertures;
24815 	bool skip_vt_switch;
24816 };
24817 
24818 struct fb_videomode {
24819 	const char *name;
24820 	u32 refresh;
24821 	u32 xres;
24822 	u32 yres;
24823 	u32 pixclock;
24824 	u32 left_margin;
24825 	u32 right_margin;
24826 	u32 upper_margin;
24827 	u32 lower_margin;
24828 	u32 hsync_len;
24829 	u32 vsync_len;
24830 	u32 sync;
24831 	u32 vmode;
24832 	u32 flag;
24833 };
24834 
24835 struct fb_blit_caps {
24836 	u32 x;
24837 	u32 y;
24838 	u32 len;
24839 	u32 flags;
24840 };
24841 
24842 struct fb_ops {
24843 	struct module *owner;
24844 	int (*fb_open)(struct fb_info *, int);
24845 	int (*fb_release)(struct fb_info *, int);
24846 	ssize_t (*fb_read)(struct fb_info *, char *, size_t, loff_t *);
24847 	ssize_t (*fb_write)(struct fb_info *, const char *, size_t, loff_t *);
24848 	int (*fb_check_var)(struct fb_var_screeninfo *, struct fb_info *);
24849 	int (*fb_set_par)(struct fb_info *);
24850 	int (*fb_setcolreg)(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, struct fb_info *);
24851 	int (*fb_setcmap)(struct fb_cmap *, struct fb_info *);
24852 	int (*fb_blank)(int, struct fb_info *);
24853 	int (*fb_pan_display)(struct fb_var_screeninfo *, struct fb_info *);
24854 	void (*fb_fillrect)(struct fb_info *, const struct fb_fillrect *);
24855 	void (*fb_copyarea)(struct fb_info *, const struct fb_copyarea *);
24856 	void (*fb_imageblit)(struct fb_info *, const struct fb_image *);
24857 	int (*fb_cursor)(struct fb_info *, struct fb_cursor *);
24858 	int (*fb_sync)(struct fb_info *);
24859 	int (*fb_ioctl)(struct fb_info *, unsigned int, long unsigned int);
24860 	int (*fb_compat_ioctl)(struct fb_info *, unsigned int, long unsigned int);
24861 	int (*fb_mmap)(struct fb_info *, struct vm_area_struct *);
24862 	void (*fb_get_caps)(struct fb_info *, struct fb_blit_caps *, struct fb_var_screeninfo *);
24863 	void (*fb_destroy)(struct fb_info *);
24864 	int (*fb_debug_enter)(struct fb_info *);
24865 	int (*fb_debug_leave)(struct fb_info *);
24866 };
24867 
24868 struct fb_tilemap {
24869 	__u32 width;
24870 	__u32 height;
24871 	__u32 depth;
24872 	__u32 length;
24873 	const __u8 *data;
24874 };
24875 
24876 struct fb_tilerect {
24877 	__u32 sx;
24878 	__u32 sy;
24879 	__u32 width;
24880 	__u32 height;
24881 	__u32 index;
24882 	__u32 fg;
24883 	__u32 bg;
24884 	__u32 rop;
24885 };
24886 
24887 struct fb_tilearea {
24888 	__u32 sx;
24889 	__u32 sy;
24890 	__u32 dx;
24891 	__u32 dy;
24892 	__u32 width;
24893 	__u32 height;
24894 };
24895 
24896 struct fb_tileblit {
24897 	__u32 sx;
24898 	__u32 sy;
24899 	__u32 width;
24900 	__u32 height;
24901 	__u32 fg;
24902 	__u32 bg;
24903 	__u32 length;
24904 	__u32 *indices;
24905 };
24906 
24907 struct fb_tilecursor {
24908 	__u32 sx;
24909 	__u32 sy;
24910 	__u32 mode;
24911 	__u32 shape;
24912 	__u32 fg;
24913 	__u32 bg;
24914 };
24915 
24916 struct fb_tile_ops {
24917 	void (*fb_settile)(struct fb_info *, struct fb_tilemap *);
24918 	void (*fb_tilecopy)(struct fb_info *, struct fb_tilearea *);
24919 	void (*fb_tilefill)(struct fb_info *, struct fb_tilerect *);
24920 	void (*fb_tileblit)(struct fb_info *, struct fb_tileblit *);
24921 	void (*fb_tilecursor)(struct fb_info *, struct fb_tilecursor *);
24922 	int (*fb_get_tilemax)(struct fb_info *);
24923 };
24924 
24925 struct aperture {
24926 	resource_size_t base;
24927 	resource_size_t size;
24928 };
24929 
24930 struct apertures_struct {
24931 	unsigned int count;
24932 	struct aperture ranges[0];
24933 };
24934 
24935 struct fb_modelist {
24936 	struct list_head list;
24937 	struct fb_videomode mode;
24938 };
24939 
24940 typedef u16 u_int16_t;
24941 
24942 typedef u32 u_int32_t;
24943 
24944 typedef struct {
24945 	void *vaddr;
24946 } vaddr_t;
24947 
24948 struct my_timming {
24949 	unsigned int pixclock;
24950 	int mnp;
24951 	unsigned int crtc;
24952 	unsigned int HDisplay;
24953 	unsigned int HSyncStart;
24954 	unsigned int HSyncEnd;
24955 	unsigned int HTotal;
24956 	unsigned int VDisplay;
24957 	unsigned int VSyncStart;
24958 	unsigned int VSyncEnd;
24959 	unsigned int VTotal;
24960 	unsigned int sync;
24961 	int dblscan;
24962 	int interlaced;
24963 	unsigned int delay;
24964 };
24965 
24966 struct matrox_pll_cache {
24967 	unsigned int valid;
24968 	struct {
24969 		unsigned int mnp_key;
24970 		unsigned int mnp_value;
24971 	} data[4];
24972 };
24973 
24974 struct matrox_pll_limits {
24975 	unsigned int vcomin;
24976 	unsigned int vcomax;
24977 };
24978 
24979 struct matrox_pll_features {
24980 	unsigned int vco_freq_min;
24981 	unsigned int ref_freq;
24982 	unsigned int feed_div_min;
24983 	unsigned int feed_div_max;
24984 	unsigned int in_div_min;
24985 	unsigned int in_div_max;
24986 	unsigned int post_shift_max;
24987 };
24988 
24989 struct matroxfb_par {
24990 	unsigned int final_bppShift;
24991 	unsigned int cmap_len;
24992 	struct {
24993 		unsigned int bytes;
24994 		unsigned int pixels;
24995 		unsigned int chunks;
24996 	} ydstorg;
24997 };
24998 
24999 struct matrox_DAC1064_features {
25000 	u_int8_t xvrefctrl;
25001 	u_int8_t xmiscctrl;
25002 };
25003 
25004 struct mavenregs {
25005 	u_int8_t regs[256];
25006 	int mode;
25007 	int vlines;
25008 	int xtal;
25009 	int fv;
25010 	u_int16_t htotal;
25011 	u_int16_t hcorr;
25012 };
25013 
25014 struct matrox_crtc2 {
25015 	u_int32_t ctl;
25016 };
25017 
25018 struct matrox_hw_state {
25019 	u_int32_t MXoptionReg;
25020 	unsigned char DACclk[6];
25021 	unsigned char DACreg[80];
25022 	unsigned char MiscOutReg;
25023 	unsigned char DACpal[768];
25024 	unsigned char CRTC[25];
25025 	unsigned char CRTCEXT[9];
25026 	unsigned char SEQ[5];
25027 	unsigned char GCTL[9];
25028 	unsigned char ATTR[21];
25029 	struct mavenregs maven;
25030 	struct matrox_crtc2 crtc2;
25031 };
25032 
25033 struct matrox_accel_data {
25034 	unsigned char ramdac_rev;
25035 	u_int32_t m_dwg_rect;
25036 	u_int32_t m_opmode;
25037 	u_int32_t m_access;
25038 	u_int32_t m_pitch;
25039 };
25040 
25041 struct v4l2_queryctrl;
25042 
25043 struct v4l2_control;
25044 
25045 struct matrox_altout {
25046 	const char *name;
25047 	int (*compute)(void *, struct my_timming *);
25048 	int (*program)(void *);
25049 	int (*start)(void *);
25050 	int (*verifymode)(void *, u_int32_t);
25051 	int (*getqueryctrl)(void *, struct v4l2_queryctrl *);
25052 	int (*getctrl)(void *, struct v4l2_control *);
25053 	int (*setctrl)(void *, struct v4l2_control *);
25054 };
25055 
25056 struct v4l2_queryctrl {
25057 	__u32 id;
25058 	__u32 type;
25059 	__u8 name[32];
25060 	__s32 minimum;
25061 	__s32 maximum;
25062 	__s32 step;
25063 	__s32 default_value;
25064 	__u32 flags;
25065 	__u32 reserved[2];
25066 };
25067 
25068 struct v4l2_control {
25069 	__u32 id;
25070 	__s32 value;
25071 };
25072 
25073 enum mga_chip {
25074 	MGA_2064 = 0,
25075 	MGA_2164 = 1,
25076 	MGA_1064 = 2,
25077 	MGA_1164 = 3,
25078 	MGA_G100 = 4,
25079 	MGA_G200 = 5,
25080 	MGA_G400 = 6,
25081 	MGA_G450 = 7,
25082 	MGA_G550 = 8,
25083 };
25084 
25085 struct matrox_bios {
25086 	unsigned int bios_valid: 1;
25087 	unsigned int pins_len;
25088 	unsigned char pins[128];
25089 	struct {
25090 		unsigned char vMaj;
25091 		unsigned char vMin;
25092 		unsigned char vRev;
25093 	} version;
25094 	struct {
25095 		unsigned char state;
25096 		unsigned char tvout;
25097 	} output;
25098 };
25099 
25100 struct matrox_vsync {
25101 	wait_queue_head_t wait;
25102 	unsigned int cnt;
25103 };
25104 
25105 struct matroxfb_dh_fb_info;
25106 
25107 struct matroxfb_driver;
25108 
25109 struct matrox_switch;
25110 
25111 struct matrox_fb_info {
25112 	struct fb_info fbcon;
25113 	struct list_head next_fb;
25114 	int dead;
25115 	int initialized;
25116 	unsigned int usecount;
25117 	unsigned int userusecount;
25118 	long unsigned int irq_flags;
25119 	struct matroxfb_par curr;
25120 	struct matrox_hw_state hw;
25121 	struct matrox_accel_data accel;
25122 	struct pci_dev *pcidev;
25123 	struct {
25124 		struct matrox_vsync vsync;
25125 		unsigned int pixclock;
25126 		int mnp;
25127 		int panpos;
25128 	} crtc1;
25129 	struct {
25130 		struct matrox_vsync vsync;
25131 		unsigned int pixclock;
25132 		int mnp;
25133 		struct matroxfb_dh_fb_info *info;
25134 		struct rw_semaphore lock;
25135 	} crtc2;
25136 	struct {
25137 		struct rw_semaphore lock;
25138 		struct {
25139 			int brightness;
25140 			int contrast;
25141 			int saturation;
25142 			int hue;
25143 			int gamma;
25144 			int testout;
25145 			int deflicker;
25146 		} tvo_params;
25147 	} altout;
25148 	struct {
25149 		unsigned int src;
25150 		struct matrox_altout *output;
25151 		void *data;
25152 		unsigned int mode;
25153 		unsigned int default_src;
25154 	} outputs[3];
25155 	struct matroxfb_driver *drivers[5];
25156 	void *drivers_data[5];
25157 	unsigned int drivers_count;
25158 	struct {
25159 		long unsigned int base;
25160 		vaddr_t vbase;
25161 		unsigned int len;
25162 		unsigned int len_usable;
25163 		unsigned int len_maximum;
25164 	} video;
25165 	struct {
25166 		long unsigned int base;
25167 		vaddr_t vbase;
25168 		unsigned int len;
25169 	} mmio;
25170 	unsigned int max_pixel_clock;
25171 	unsigned int max_pixel_clock_panellink;
25172 	struct matrox_switch *hw_switch;
25173 	struct {
25174 		struct matrox_pll_features pll;
25175 		struct matrox_DAC1064_features DAC1064;
25176 	} features;
25177 	struct {
25178 		spinlock_t DAC;
25179 		spinlock_t accel;
25180 	} lock;
25181 	enum mga_chip chip;
25182 	int interleave;
25183 	int millenium;
25184 	int milleniumII;
25185 	struct {
25186 		int cfb4;
25187 		const int *vxres;
25188 		int cross4MB;
25189 		int text;
25190 		int plnwt;
25191 		int srcorg;
25192 	} capable;
25193 	int wc_cookie;
25194 	struct {
25195 		int precise_width;
25196 		int mga_24bpp_fix;
25197 		int novga;
25198 		int nobios;
25199 		int nopciretry;
25200 		int noinit;
25201 		int sgram;
25202 		int support32MB;
25203 		int accelerator;
25204 		int text_type_aux;
25205 		int video64bits;
25206 		int crtc2;
25207 		int maven_capable;
25208 		unsigned int vgastep;
25209 		unsigned int textmode;
25210 		unsigned int textstep;
25211 		unsigned int textvram;
25212 		unsigned int ydstorg;
25213 		int memtype;
25214 		int g450dac;
25215 		int dfp_type;
25216 		int panellink;
25217 		int dualhead;
25218 		unsigned int fbResource;
25219 	} devflags;
25220 	struct fb_ops fbops;
25221 	struct matrox_bios bios;
25222 	struct {
25223 		struct matrox_pll_limits pixel;
25224 		struct matrox_pll_limits system;
25225 		struct matrox_pll_limits video;
25226 	} limits;
25227 	struct {
25228 		struct matrox_pll_cache pixel;
25229 		struct matrox_pll_cache system;
25230 		struct matrox_pll_cache video;
25231 	} cache;
25232 	struct {
25233 		struct {
25234 			unsigned int video;
25235 			unsigned int system;
25236 		} pll;
25237 		struct {
25238 			u_int32_t opt;
25239 			u_int32_t opt2;
25240 			u_int32_t opt3;
25241 			u_int32_t mctlwtst;
25242 			u_int32_t mctlwtst_core;
25243 			u_int32_t memmisc;
25244 			u_int32_t memrdbk;
25245 			u_int32_t maccess;
25246 		} reg;
25247 		struct {
25248 			unsigned int ddr: 1;
25249 			unsigned int emrswen: 1;
25250 			unsigned int dll: 1;
25251 		} memory;
25252 	} values;
25253 	u_int32_t cmap[16];
25254 };
25255 
25256 struct matroxfb_driver {
25257 	struct list_head node;
25258 	char *name;
25259 	void * (*probe)(struct matrox_fb_info *);
25260 	void (*remove)(struct matrox_fb_info *, void *);
25261 };
25262 
25263 struct matrox_switch {
25264 	int (*preinit)(struct matrox_fb_info *);
25265 	void (*reset)(struct matrox_fb_info *);
25266 	int (*init)(struct matrox_fb_info *, struct my_timming *);
25267 	void (*restore)(struct matrox_fb_info *);
25268 };
25269 
25270 enum v4l2_preemphasis {
25271 	V4L2_PREEMPHASIS_DISABLED = 0,
25272 	V4L2_PREEMPHASIS_50_uS = 1,
25273 	V4L2_PREEMPHASIS_75_uS = 2,
25274 };
25275 
25276 struct virtio_device_id {
25277 	__u32 device;
25278 	__u32 vendor;
25279 };
25280 
25281 struct vringh_config_ops;
25282 
25283 struct virtio_config_ops;
25284 
25285 struct virtio_device {
25286 	int index;
25287 	bool failed;
25288 	bool config_enabled;
25289 	bool config_change_pending;
25290 	spinlock_t config_lock;
25291 	spinlock_t vqs_list_lock;
25292 	struct device dev;
25293 	struct virtio_device_id id;
25294 	const struct virtio_config_ops *config;
25295 	const struct vringh_config_ops *vringh_config;
25296 	struct list_head vqs;
25297 	u64 features;
25298 	void *priv;
25299 };
25300 
25301 struct virtqueue;
25302 
25303 typedef void vq_callback_t(struct virtqueue *);
25304 
25305 struct irq_affinity;
25306 
25307 struct virtio_shm_region;
25308 
25309 struct virtio_config_ops {
25310 	void (*get)(struct virtio_device *, unsigned int, void *, unsigned int);
25311 	void (*set)(struct virtio_device *, unsigned int, const void *, unsigned int);
25312 	u32 (*generation)(struct virtio_device *);
25313 	u8 (*get_status)(struct virtio_device *);
25314 	void (*set_status)(struct virtio_device *, u8);
25315 	void (*reset)(struct virtio_device *);
25316 	int (*find_vqs)(struct virtio_device *, unsigned int, struct virtqueue **, vq_callback_t **, const char * const *, const bool *, struct irq_affinity *);
25317 	void (*del_vqs)(struct virtio_device *);
25318 	void (*synchronize_cbs)(struct virtio_device *);
25319 	u64 (*get_features)(struct virtio_device *);
25320 	int (*finalize_features)(struct virtio_device *);
25321 	const char * (*bus_name)(struct virtio_device *);
25322 	int (*set_vq_affinity)(struct virtqueue *, const struct cpumask *);
25323 	const struct cpumask * (*get_vq_affinity)(struct virtio_device *, int);
25324 	bool (*get_shm_region)(struct virtio_device *, struct virtio_shm_region *, u8);
25325 	int (*disable_vq_and_reset)(struct virtqueue *);
25326 	int (*enable_vq_after_reset)(struct virtqueue *);
25327 };
25328 
25329 struct vt_mode {
25330 	char mode;
25331 	char waitv;
25332 	short int relsig;
25333 	short int acqsig;
25334 	short int frsig;
25335 };
25336 
25337 struct console_font {
25338 	unsigned int width;
25339 	unsigned int height;
25340 	unsigned int charcount;
25341 	unsigned char *data;
25342 };
25343 
25344 enum vc_intensity {
25345 	VCI_HALF_BRIGHT = 0,
25346 	VCI_NORMAL = 1,
25347 	VCI_BOLD = 2,
25348 	VCI_MASK = 3,
25349 };
25350 
25351 struct vc_state {
25352 	unsigned int x;
25353 	unsigned int y;
25354 	unsigned char color;
25355 	unsigned char Gx_charset[2];
25356 	unsigned int charset: 1;
25357 	enum vc_intensity intensity;
25358 	bool italic;
25359 	bool underline;
25360 	bool blink;
25361 	bool reverse;
25362 };
25363 
25364 struct consw;
25365 
25366 struct uni_pagedict;
25367 
25368 struct uni_screen;
25369 
25370 struct vc_data {
25371 	struct tty_port port;
25372 	struct vc_state state;
25373 	struct vc_state saved_state;
25374 	short unsigned int vc_num;
25375 	unsigned int vc_cols;
25376 	unsigned int vc_rows;
25377 	unsigned int vc_size_row;
25378 	unsigned int vc_scan_lines;
25379 	unsigned int vc_cell_height;
25380 	long unsigned int vc_origin;
25381 	long unsigned int vc_scr_end;
25382 	long unsigned int vc_visible_origin;
25383 	unsigned int vc_top;
25384 	unsigned int vc_bottom;
25385 	const struct consw *vc_sw;
25386 	short unsigned int *vc_screenbuf;
25387 	unsigned int vc_screenbuf_size;
25388 	unsigned char vc_mode;
25389 	unsigned char vc_attr;
25390 	unsigned char vc_def_color;
25391 	unsigned char vc_ulcolor;
25392 	unsigned char vc_itcolor;
25393 	unsigned char vc_halfcolor;
25394 	unsigned int vc_cursor_type;
25395 	short unsigned int vc_complement_mask;
25396 	short unsigned int vc_s_complement_mask;
25397 	long unsigned int vc_pos;
25398 	short unsigned int vc_hi_font_mask;
25399 	struct console_font vc_font;
25400 	short unsigned int vc_video_erase_char;
25401 	unsigned int vc_state;
25402 	unsigned int vc_npar;
25403 	unsigned int vc_par[16];
25404 	struct vt_mode vt_mode;
25405 	struct pid *vt_pid;
25406 	int vt_newvt;
25407 	wait_queue_head_t paste_wait;
25408 	unsigned int vc_disp_ctrl: 1;
25409 	unsigned int vc_toggle_meta: 1;
25410 	unsigned int vc_decscnm: 1;
25411 	unsigned int vc_decom: 1;
25412 	unsigned int vc_decawm: 1;
25413 	unsigned int vc_deccm: 1;
25414 	unsigned int vc_decim: 1;
25415 	unsigned int vc_priv: 3;
25416 	unsigned int vc_need_wrap: 1;
25417 	unsigned int vc_can_do_color: 1;
25418 	unsigned int vc_report_mouse: 2;
25419 	unsigned char vc_utf: 1;
25420 	unsigned char vc_utf_count;
25421 	int vc_utf_char;
25422 	long unsigned int vc_tab_stop[4];
25423 	unsigned char vc_palette[48];
25424 	short unsigned int *vc_translate;
25425 	unsigned int vc_resize_user;
25426 	unsigned int vc_bell_pitch;
25427 	unsigned int vc_bell_duration;
25428 	short unsigned int vc_cur_blink_ms;
25429 	struct vc_data **vc_display_fg;
25430 	struct uni_pagedict *uni_pagedict;
25431 	struct uni_pagedict **uni_pagedict_loc;
25432 	struct uni_screen *vc_uni_screen;
25433 };
25434 
25435 enum con_scroll {
25436 	SM_UP = 0,
25437 	SM_DOWN = 1,
25438 };
25439 
25440 struct consw {
25441 	struct module *owner;
25442 	const char * (*con_startup)();
25443 	void (*con_init)(struct vc_data *, int);
25444 	void (*con_deinit)(struct vc_data *);
25445 	void (*con_clear)(struct vc_data *, int, int, int, int);
25446 	void (*con_putc)(struct vc_data *, int, int, int);
25447 	void (*con_putcs)(struct vc_data *, const short unsigned int *, int, int, int);
25448 	void (*con_cursor)(struct vc_data *, int);
25449 	bool (*con_scroll)(struct vc_data *, unsigned int, unsigned int, enum con_scroll, unsigned int);
25450 	int (*con_switch)(struct vc_data *);
25451 	int (*con_blank)(struct vc_data *, int, int);
25452 	int (*con_font_set)(struct vc_data *, struct console_font *, unsigned int);
25453 	int (*con_font_get)(struct vc_data *, struct console_font *);
25454 	int (*con_font_default)(struct vc_data *, struct console_font *, char *);
25455 	int (*con_resize)(struct vc_data *, unsigned int, unsigned int, unsigned int);
25456 	void (*con_set_palette)(struct vc_data *, const unsigned char *);
25457 	void (*con_scrolldelta)(struct vc_data *, int);
25458 	int (*con_set_origin)(struct vc_data *);
25459 	void (*con_save_screen)(struct vc_data *);
25460 	u8 (*con_build_attr)(struct vc_data *, u8, enum vc_intensity, bool, bool, bool, bool);
25461 	void (*con_invert_region)(struct vc_data *, u16 *, int);
25462 	u16 * (*con_screen_pos)(const struct vc_data *, int);
25463 	long unsigned int (*con_getxy)(struct vc_data *, long unsigned int, int *, int *);
25464 	void (*con_flush_scrollback)(struct vc_data *);
25465 	int (*con_debug_enter)(struct vc_data *);
25466 	int (*con_debug_leave)(struct vc_data *);
25467 };
25468 
25469 struct vc {
25470 	struct vc_data *d;
25471 	struct work_struct SAK_work;
25472 };
25473 
25474 struct vt_notifier_param {
25475 	struct vc_data *vc;
25476 	unsigned int c;
25477 };
25478 
25479 struct vcs_poll_data {
25480 	struct notifier_block notifier;
25481 	unsigned int cons_num;
25482 	int event;
25483 	wait_queue_head_t waitq;
25484 	struct fasync_struct *fasync;
25485 };
25486 
25487 enum {
25488 	KERNEL_PARAM_FL_UNSAFE = 1,
25489 	KERNEL_PARAM_FL_HWPARAM = 2,
25490 };
25491 
25492 enum hwparam_type {
25493 	hwparam_ioport = 0,
25494 	hwparam_iomem = 1,
25495 	hwparam_ioport_or_iomem = 2,
25496 	hwparam_irq = 3,
25497 	hwparam_dma = 4,
25498 	hwparam_dma_addr = 5,
25499 	hwparam_other = 6,
25500 };
25501 
25502 struct console {
25503 	char name[16];
25504 	void (*write)(struct console *, const char *, unsigned int);
25505 	int (*read)(struct console *, char *, unsigned int);
25506 	struct tty_driver * (*device)(struct console *, int *);
25507 	void (*unblank)();
25508 	int (*setup)(struct console *, char *);
25509 	int (*exit)(struct console *);
25510 	int (*match)(struct console *, char *, int, char *);
25511 	short int flags;
25512 	short int index;
25513 	int cflag;
25514 	uint ispeed;
25515 	uint ospeed;
25516 	u64 seq;
25517 	long unsigned int dropped;
25518 	void *data;
25519 	struct console *next;
25520 };
25521 
25522 struct serial_icounter_struct {
25523 	int cts;
25524 	int dsr;
25525 	int rng;
25526 	int dcd;
25527 	int rx;
25528 	int tx;
25529 	int frame;
25530 	int overrun;
25531 	int parity;
25532 	int brk;
25533 	int buf_overrun;
25534 	int reserved[9];
25535 };
25536 
25537 struct serial_struct {
25538 	int type;
25539 	int line;
25540 	unsigned int port;
25541 	int irq;
25542 	int flags;
25543 	int xmit_fifo_size;
25544 	int custom_divisor;
25545 	int baud_base;
25546 	short unsigned int close_delay;
25547 	char io_type;
25548 	char reserved_char[1];
25549 	int hub6;
25550 	short unsigned int closing_wait;
25551 	short unsigned int closing_wait2;
25552 	unsigned char *iomem_base;
25553 	short unsigned int iomem_reg_shift;
25554 	unsigned int port_high;
25555 	long unsigned int iomap_base;
25556 };
25557 
25558 struct serial_rs485 {
25559 	__u32 flags;
25560 	__u32 delay_rts_before_send;
25561 	__u32 delay_rts_after_send;
25562 	union {
25563 		__u32 padding[5];
25564 		struct {
25565 			__u8 addr_recv;
25566 			__u8 addr_dest;
25567 			__u8 padding0[2];
25568 			__u32 padding1[4];
25569 		};
25570 	};
25571 };
25572 
25573 struct serial_iso7816 {
25574 	__u32 flags;
25575 	__u32 tg;
25576 	__u32 sc_fi;
25577 	__u32 sc_di;
25578 	__u32 clk;
25579 	__u32 reserved[5];
25580 };
25581 
25582 struct circ_buf {
25583 	char *buf;
25584 	int head;
25585 	int tail;
25586 };
25587 
25588 struct uart_port;
25589 
25590 struct uart_ops {
25591 	unsigned int (*tx_empty)(struct uart_port *);
25592 	void (*set_mctrl)(struct uart_port *, unsigned int);
25593 	unsigned int (*get_mctrl)(struct uart_port *);
25594 	void (*stop_tx)(struct uart_port *);
25595 	void (*start_tx)(struct uart_port *);
25596 	void (*throttle)(struct uart_port *);
25597 	void (*unthrottle)(struct uart_port *);
25598 	void (*send_xchar)(struct uart_port *, char);
25599 	void (*stop_rx)(struct uart_port *);
25600 	void (*start_rx)(struct uart_port *);
25601 	void (*enable_ms)(struct uart_port *);
25602 	void (*break_ctl)(struct uart_port *, int);
25603 	int (*startup)(struct uart_port *);
25604 	void (*shutdown)(struct uart_port *);
25605 	void (*flush_buffer)(struct uart_port *);
25606 	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
25607 	void (*set_ldisc)(struct uart_port *, struct ktermios *);
25608 	void (*pm)(struct uart_port *, unsigned int, unsigned int);
25609 	const char * (*type)(struct uart_port *);
25610 	void (*release_port)(struct uart_port *);
25611 	int (*request_port)(struct uart_port *);
25612 	void (*config_port)(struct uart_port *, int);
25613 	int (*verify_port)(struct uart_port *, struct serial_struct *);
25614 	int (*ioctl)(struct uart_port *, unsigned int, long unsigned int);
25615 };
25616 
25617 struct uart_icount {
25618 	__u32 cts;
25619 	__u32 dsr;
25620 	__u32 rng;
25621 	__u32 dcd;
25622 	__u32 rx;
25623 	__u32 tx;
25624 	__u32 frame;
25625 	__u32 overrun;
25626 	__u32 parity;
25627 	__u32 brk;
25628 	__u32 buf_overrun;
25629 };
25630 
25631 typedef unsigned int upf_t;
25632 
25633 typedef unsigned int upstat_t;
25634 
25635 struct gpio_desc;
25636 
25637 struct uart_state;
25638 
25639 struct uart_port {
25640 	spinlock_t lock;
25641 	long unsigned int iobase;
25642 	unsigned char *membase;
25643 	unsigned int (*serial_in)(struct uart_port *, int);
25644 	void (*serial_out)(struct uart_port *, int, int);
25645 	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
25646 	void (*set_ldisc)(struct uart_port *, struct ktermios *);
25647 	unsigned int (*get_mctrl)(struct uart_port *);
25648 	void (*set_mctrl)(struct uart_port *, unsigned int);
25649 	unsigned int (*get_divisor)(struct uart_port *, unsigned int, unsigned int *);
25650 	void (*set_divisor)(struct uart_port *, unsigned int, unsigned int, unsigned int);
25651 	int (*startup)(struct uart_port *);
25652 	void (*shutdown)(struct uart_port *);
25653 	void (*throttle)(struct uart_port *);
25654 	void (*unthrottle)(struct uart_port *);
25655 	int (*handle_irq)(struct uart_port *);
25656 	void (*pm)(struct uart_port *, unsigned int, unsigned int);
25657 	void (*handle_break)(struct uart_port *);
25658 	int (*rs485_config)(struct uart_port *, struct ktermios *, struct serial_rs485 *);
25659 	int (*iso7816_config)(struct uart_port *, struct serial_iso7816 *);
25660 	unsigned int irq;
25661 	long unsigned int irqflags;
25662 	unsigned int uartclk;
25663 	unsigned int fifosize;
25664 	unsigned char x_char;
25665 	unsigned char regshift;
25666 	unsigned char iotype;
25667 	unsigned char quirks;
25668 	unsigned int read_status_mask;
25669 	unsigned int ignore_status_mask;
25670 	struct uart_state *state;
25671 	struct uart_icount icount;
25672 	struct console *cons;
25673 	upf_t flags;
25674 	upstat_t status;
25675 	int hw_stopped;
25676 	unsigned int mctrl;
25677 	unsigned int frame_time;
25678 	unsigned int type;
25679 	const struct uart_ops *ops;
25680 	unsigned int custom_divisor;
25681 	unsigned int line;
25682 	unsigned int minor;
25683 	resource_size_t mapbase;
25684 	resource_size_t mapsize;
25685 	struct device *dev;
25686 	long unsigned int sysrq;
25687 	unsigned int sysrq_ch;
25688 	unsigned char has_sysrq;
25689 	unsigned char sysrq_seq;
25690 	unsigned char hub6;
25691 	unsigned char suspended;
25692 	unsigned char console_reinit;
25693 	const char *name;
25694 	struct attribute_group *attr_group;
25695 	const struct attribute_group **tty_groups;
25696 	struct serial_rs485 rs485;
25697 	struct serial_rs485 rs485_supported;
25698 	struct gpio_desc *rs485_term_gpio;
25699 	struct serial_iso7816 iso7816;
25700 	void *private_data;
25701 };
25702 
25703 enum uart_pm_state {
25704 	UART_PM_STATE_ON = 0,
25705 	UART_PM_STATE_OFF = 3,
25706 	UART_PM_STATE_UNDEFINED = 4,
25707 };
25708 
25709 struct uart_state {
25710 	struct tty_port port;
25711 	enum uart_pm_state pm_state;
25712 	struct circ_buf xmit;
25713 	atomic_t refcount;
25714 	wait_queue_head_t remove_wait;
25715 	struct uart_port *uart_port;
25716 };
25717 
25718 struct uart_driver {
25719 	struct module *owner;
25720 	const char *driver_name;
25721 	const char *dev_name;
25722 	int major;
25723 	int minor;
25724 	int nr;
25725 	struct console *cons;
25726 	struct uart_state *state;
25727 	struct tty_driver *tty_driver;
25728 };
25729 
25730 struct plat_serial8250_port {
25731 	long unsigned int iobase;
25732 	void *membase;
25733 	resource_size_t mapbase;
25734 	unsigned int irq;
25735 	long unsigned int irqflags;
25736 	unsigned int uartclk;
25737 	void *private_data;
25738 	unsigned char regshift;
25739 	unsigned char iotype;
25740 	unsigned char hub6;
25741 	unsigned char has_sysrq;
25742 	upf_t flags;
25743 	unsigned int type;
25744 	unsigned int (*serial_in)(struct uart_port *, int);
25745 	void (*serial_out)(struct uart_port *, int, int);
25746 	void (*set_termios)(struct uart_port *, struct ktermios *, struct ktermios *);
25747 	void (*set_ldisc)(struct uart_port *, struct ktermios *);
25748 	unsigned int (*get_mctrl)(struct uart_port *);
25749 	int (*handle_irq)(struct uart_port *);
25750 	void (*pm)(struct uart_port *, unsigned int, unsigned int);
25751 	void (*handle_break)(struct uart_port *);
25752 };
25753 
25754 enum {
25755 	PLAT8250_DEV_LEGACY = -1,
25756 	PLAT8250_DEV_PLATFORM = 0,
25757 	PLAT8250_DEV_PLATFORM1 = 1,
25758 	PLAT8250_DEV_PLATFORM2 = 2,
25759 	PLAT8250_DEV_FOURPORT = 3,
25760 	PLAT8250_DEV_ACCENT = 4,
25761 	PLAT8250_DEV_BOCA = 5,
25762 	PLAT8250_DEV_EXAR_ST16C554 = 6,
25763 	PLAT8250_DEV_HUB6 = 7,
25764 	PLAT8250_DEV_AU1X00 = 8,
25765 	PLAT8250_DEV_SM501 = 9,
25766 };
25767 
25768 struct uart_8250_port;
25769 
25770 struct uart_8250_ops {
25771 	int (*setup_irq)(struct uart_8250_port *);
25772 	void (*release_irq)(struct uart_8250_port *);
25773 };
25774 
25775 struct mctrl_gpios;
25776 
25777 struct uart_8250_dma;
25778 
25779 struct uart_8250_em485;
25780 
25781 struct uart_8250_port {
25782 	struct uart_port port;
25783 	struct timer_list timer;
25784 	struct list_head list;
25785 	u32 capabilities;
25786 	short unsigned int bugs;
25787 	bool fifo_bug;
25788 	unsigned int tx_loadsz;
25789 	unsigned char acr;
25790 	unsigned char fcr;
25791 	unsigned char ier;
25792 	unsigned char lcr;
25793 	unsigned char mcr;
25794 	unsigned char cur_iotype;
25795 	unsigned int rpm_tx_active;
25796 	unsigned char canary;
25797 	unsigned char probe;
25798 	struct mctrl_gpios *gpios;
25799 	u16 lsr_saved_flags;
25800 	u16 lsr_save_mask;
25801 	unsigned char msr_saved_flags;
25802 	struct uart_8250_dma *dma;
25803 	const struct uart_8250_ops *ops;
25804 	int (*dl_read)(struct uart_8250_port *);
25805 	void (*dl_write)(struct uart_8250_port *, int);
25806 	struct uart_8250_em485 *em485;
25807 	void (*rs485_start_tx)(struct uart_8250_port *);
25808 	void (*rs485_stop_tx)(struct uart_8250_port *);
25809 	struct delayed_work overrun_backoff;
25810 	u32 overrun_backoff_time_ms;
25811 };
25812 
25813 struct uart_8250_em485 {
25814 	struct hrtimer start_tx_timer;
25815 	struct hrtimer stop_tx_timer;
25816 	struct hrtimer *active_timer;
25817 	struct uart_8250_port *port;
25818 	unsigned int tx_stopped: 1;
25819 };
25820 
25821 struct dma_chan;
25822 
25823 typedef bool (*dma_filter_fn)(struct dma_chan *, void *);
25824 
25825 enum dma_transfer_direction {
25826 	DMA_MEM_TO_MEM = 0,
25827 	DMA_MEM_TO_DEV = 1,
25828 	DMA_DEV_TO_MEM = 2,
25829 	DMA_DEV_TO_DEV = 3,
25830 	DMA_TRANS_NONE = 4,
25831 };
25832 
25833 enum dma_slave_buswidth {
25834 	DMA_SLAVE_BUSWIDTH_UNDEFINED = 0,
25835 	DMA_SLAVE_BUSWIDTH_1_BYTE = 1,
25836 	DMA_SLAVE_BUSWIDTH_2_BYTES = 2,
25837 	DMA_SLAVE_BUSWIDTH_3_BYTES = 3,
25838 	DMA_SLAVE_BUSWIDTH_4_BYTES = 4,
25839 	DMA_SLAVE_BUSWIDTH_8_BYTES = 8,
25840 	DMA_SLAVE_BUSWIDTH_16_BYTES = 16,
25841 	DMA_SLAVE_BUSWIDTH_32_BYTES = 32,
25842 	DMA_SLAVE_BUSWIDTH_64_BYTES = 64,
25843 	DMA_SLAVE_BUSWIDTH_128_BYTES = 128,
25844 };
25845 
25846 struct dma_slave_config {
25847 	enum dma_transfer_direction direction;
25848 	phys_addr_t src_addr;
25849 	phys_addr_t dst_addr;
25850 	enum dma_slave_buswidth src_addr_width;
25851 	enum dma_slave_buswidth dst_addr_width;
25852 	u32 src_maxburst;
25853 	u32 dst_maxburst;
25854 	u32 src_port_window_size;
25855 	u32 dst_port_window_size;
25856 	bool device_fc;
25857 	void *peripheral_config;
25858 	size_t peripheral_size;
25859 };
25860 
25861 typedef s32 dma_cookie_t;
25862 
25863 struct uart_8250_dma {
25864 	int (*tx_dma)(struct uart_8250_port *);
25865 	int (*rx_dma)(struct uart_8250_port *);
25866 	void (*prepare_tx_dma)(struct uart_8250_port *);
25867 	void (*prepare_rx_dma)(struct uart_8250_port *);
25868 	dma_filter_fn fn;
25869 	void *rx_param;
25870 	void *tx_param;
25871 	struct dma_slave_config rxconf;
25872 	struct dma_slave_config txconf;
25873 	struct dma_chan *rxchan;
25874 	struct dma_chan *txchan;
25875 	phys_addr_t rx_dma_addr;
25876 	phys_addr_t tx_dma_addr;
25877 	dma_addr_t rx_addr;
25878 	dma_addr_t tx_addr;
25879 	dma_cookie_t rx_cookie;
25880 	dma_cookie_t tx_cookie;
25881 	void *rx_buf;
25882 	size_t rx_size;
25883 	size_t tx_size;
25884 	unsigned char tx_running;
25885 	unsigned char tx_err;
25886 	unsigned char rx_running;
25887 };
25888 
25889 enum dma_status {
25890 	DMA_COMPLETE = 0,
25891 	DMA_IN_PROGRESS = 1,
25892 	DMA_PAUSED = 2,
25893 	DMA_ERROR = 3,
25894 	DMA_OUT_OF_ORDER = 4,
25895 };
25896 
25897 enum dma_transaction_type {
25898 	DMA_MEMCPY = 0,
25899 	DMA_XOR = 1,
25900 	DMA_PQ = 2,
25901 	DMA_XOR_VAL = 3,
25902 	DMA_PQ_VAL = 4,
25903 	DMA_MEMSET = 5,
25904 	DMA_MEMSET_SG = 6,
25905 	DMA_INTERRUPT = 7,
25906 	DMA_PRIVATE = 8,
25907 	DMA_ASYNC_TX = 9,
25908 	DMA_SLAVE = 10,
25909 	DMA_CYCLIC = 11,
25910 	DMA_INTERLEAVE = 12,
25911 	DMA_COMPLETION_NO_ORDER = 13,
25912 	DMA_REPEAT = 14,
25913 	DMA_LOAD_EOT = 15,
25914 	DMA_TX_TYPE_END = 16,
25915 };
25916 
25917 struct data_chunk {
25918 	size_t size;
25919 	size_t icg;
25920 	size_t dst_icg;
25921 	size_t src_icg;
25922 };
25923 
25924 struct dma_interleaved_template {
25925 	dma_addr_t src_start;
25926 	dma_addr_t dst_start;
25927 	enum dma_transfer_direction dir;
25928 	bool src_inc;
25929 	bool dst_inc;
25930 	bool src_sgl;
25931 	bool dst_sgl;
25932 	size_t numf;
25933 	size_t frame_size;
25934 	struct data_chunk sgl[0];
25935 };
25936 
25937 enum dma_ctrl_flags {
25938 	DMA_PREP_INTERRUPT = 1,
25939 	DMA_CTRL_ACK = 2,
25940 	DMA_PREP_PQ_DISABLE_P = 4,
25941 	DMA_PREP_PQ_DISABLE_Q = 8,
25942 	DMA_PREP_CONTINUE = 16,
25943 	DMA_PREP_FENCE = 32,
25944 	DMA_CTRL_REUSE = 64,
25945 	DMA_PREP_CMD = 128,
25946 	DMA_PREP_REPEAT = 256,
25947 	DMA_PREP_LOAD_EOT = 512,
25948 };
25949 
25950 enum sum_check_bits {
25951 	SUM_CHECK_P = 0,
25952 	SUM_CHECK_Q = 1,
25953 };
25954 
25955 enum sum_check_flags {
25956 	SUM_CHECK_P_RESULT = 1,
25957 	SUM_CHECK_Q_RESULT = 2,
25958 };
25959 
25960 typedef struct {
25961 	long unsigned int bits[1];
25962 } dma_cap_mask_t;
25963 
25964 enum dma_desc_metadata_mode {
25965 	DESC_METADATA_NONE = 0,
25966 	DESC_METADATA_CLIENT = 1,
25967 	DESC_METADATA_ENGINE = 2,
25968 };
25969 
25970 struct dma_chan_percpu {
25971 	long unsigned int memcpy_count;
25972 	long unsigned int bytes_transferred;
25973 };
25974 
25975 struct dma_router {
25976 	struct device *dev;
25977 	void (*route_free)(struct device *, void *);
25978 };
25979 
25980 struct dma_device;
25981 
25982 struct dma_chan_dev;
25983 
25984 struct dma_chan {
25985 	struct dma_device *device;
25986 	struct device *slave;
25987 	dma_cookie_t cookie;
25988 	dma_cookie_t completed_cookie;
25989 	int chan_id;
25990 	struct dma_chan_dev *dev;
25991 	const char *name;
25992 	char *dbg_client_name;
25993 	struct list_head device_node;
25994 	struct dma_chan_percpu *local;
25995 	int client_count;
25996 	int table_count;
25997 	struct dma_router *router;
25998 	void *route_data;
25999 	void *private;
26000 };
26001 
26002 struct dma_slave_map;
26003 
26004 struct dma_filter {
26005 	dma_filter_fn fn;
26006 	int mapcnt;
26007 	const struct dma_slave_map *map;
26008 };
26009 
26010 enum dmaengine_alignment {
26011 	DMAENGINE_ALIGN_1_BYTE = 0,
26012 	DMAENGINE_ALIGN_2_BYTES = 1,
26013 	DMAENGINE_ALIGN_4_BYTES = 2,
26014 	DMAENGINE_ALIGN_8_BYTES = 3,
26015 	DMAENGINE_ALIGN_16_BYTES = 4,
26016 	DMAENGINE_ALIGN_32_BYTES = 5,
26017 	DMAENGINE_ALIGN_64_BYTES = 6,
26018 	DMAENGINE_ALIGN_128_BYTES = 7,
26019 	DMAENGINE_ALIGN_256_BYTES = 8,
26020 };
26021 
26022 enum dma_residue_granularity {
26023 	DMA_RESIDUE_GRANULARITY_DESCRIPTOR = 0,
26024 	DMA_RESIDUE_GRANULARITY_SEGMENT = 1,
26025 	DMA_RESIDUE_GRANULARITY_BURST = 2,
26026 };
26027 
26028 struct dma_async_tx_descriptor;
26029 
26030 struct dma_slave_caps;
26031 
26032 struct dma_tx_state;
26033 
26034 struct dma_device {
26035 	struct kref ref;
26036 	unsigned int chancnt;
26037 	unsigned int privatecnt;
26038 	struct list_head channels;
26039 	struct list_head global_node;
26040 	struct dma_filter filter;
26041 	dma_cap_mask_t cap_mask;
26042 	enum dma_desc_metadata_mode desc_metadata_modes;
26043 	short unsigned int max_xor;
26044 	short unsigned int max_pq;
26045 	enum dmaengine_alignment copy_align;
26046 	enum dmaengine_alignment xor_align;
26047 	enum dmaengine_alignment pq_align;
26048 	enum dmaengine_alignment fill_align;
26049 	int dev_id;
26050 	struct device *dev;
26051 	struct module *owner;
26052 	struct ida chan_ida;
26053 	u32 src_addr_widths;
26054 	u32 dst_addr_widths;
26055 	u32 directions;
26056 	u32 min_burst;
26057 	u32 max_burst;
26058 	u32 max_sg_burst;
26059 	bool descriptor_reuse;
26060 	enum dma_residue_granularity residue_granularity;
26061 	int (*device_alloc_chan_resources)(struct dma_chan *);
26062 	int (*device_router_config)(struct dma_chan *);
26063 	void (*device_free_chan_resources)(struct dma_chan *);
26064 	struct dma_async_tx_descriptor * (*device_prep_dma_memcpy)(struct dma_chan *, dma_addr_t, dma_addr_t, size_t, long unsigned int);
26065 	struct dma_async_tx_descriptor * (*device_prep_dma_xor)(struct dma_chan *, dma_addr_t, dma_addr_t *, unsigned int, size_t, long unsigned int);
26066 	struct dma_async_tx_descriptor * (*device_prep_dma_xor_val)(struct dma_chan *, dma_addr_t *, unsigned int, size_t, enum sum_check_flags *, long unsigned int);
26067 	struct dma_async_tx_descriptor * (*device_prep_dma_pq)(struct dma_chan *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, long unsigned int);
26068 	struct dma_async_tx_descriptor * (*device_prep_dma_pq_val)(struct dma_chan *, dma_addr_t *, dma_addr_t *, unsigned int, const unsigned char *, size_t, enum sum_check_flags *, long unsigned int);
26069 	struct dma_async_tx_descriptor * (*device_prep_dma_memset)(struct dma_chan *, dma_addr_t, int, size_t, long unsigned int);
26070 	struct dma_async_tx_descriptor * (*device_prep_dma_memset_sg)(struct dma_chan *, struct scatterlist *, unsigned int, int, long unsigned int);
26071 	struct dma_async_tx_descriptor * (*device_prep_dma_interrupt)(struct dma_chan *, long unsigned int);
26072 	struct dma_async_tx_descriptor * (*device_prep_slave_sg)(struct dma_chan *, struct scatterlist *, unsigned int, enum dma_transfer_direction, long unsigned int, void *);
26073 	struct dma_async_tx_descriptor * (*device_prep_dma_cyclic)(struct dma_chan *, dma_addr_t, size_t, size_t, enum dma_transfer_direction, long unsigned int);
26074 	struct dma_async_tx_descriptor * (*device_prep_interleaved_dma)(struct dma_chan *, struct dma_interleaved_template *, long unsigned int);
26075 	struct dma_async_tx_descriptor * (*device_prep_dma_imm_data)(struct dma_chan *, dma_addr_t, u64, long unsigned int);
26076 	void (*device_caps)(struct dma_chan *, struct dma_slave_caps *);
26077 	int (*device_config)(struct dma_chan *, struct dma_slave_config *);
26078 	int (*device_pause)(struct dma_chan *);
26079 	int (*device_resume)(struct dma_chan *);
26080 	int (*device_terminate_all)(struct dma_chan *);
26081 	void (*device_synchronize)(struct dma_chan *);
26082 	enum dma_status (*device_tx_status)(struct dma_chan *, dma_cookie_t, struct dma_tx_state *);
26083 	void (*device_issue_pending)(struct dma_chan *);
26084 	void (*device_release)(struct dma_device *);
26085 	void (*dbg_summary_show)(struct seq_file *, struct dma_device *);
26086 	struct dentry *dbg_dev_root;
26087 };
26088 
26089 struct dma_chan_dev {
26090 	struct dma_chan *chan;
26091 	struct device device;
26092 	int dev_id;
26093 	bool chan_dma_dev;
26094 };
26095 
26096 struct dma_slave_caps {
26097 	u32 src_addr_widths;
26098 	u32 dst_addr_widths;
26099 	u32 directions;
26100 	u32 min_burst;
26101 	u32 max_burst;
26102 	u32 max_sg_burst;
26103 	bool cmd_pause;
26104 	bool cmd_resume;
26105 	bool cmd_terminate;
26106 	enum dma_residue_granularity residue_granularity;
26107 	bool descriptor_reuse;
26108 };
26109 
26110 typedef void (*dma_async_tx_callback)(void *);
26111 
26112 enum dmaengine_tx_result {
26113 	DMA_TRANS_NOERROR = 0,
26114 	DMA_TRANS_READ_FAILED = 1,
26115 	DMA_TRANS_WRITE_FAILED = 2,
26116 	DMA_TRANS_ABORTED = 3,
26117 };
26118 
26119 struct dmaengine_result {
26120 	enum dmaengine_tx_result result;
26121 	u32 residue;
26122 };
26123 
26124 typedef void (*dma_async_tx_callback_result)(void *, const struct dmaengine_result *);
26125 
26126 struct dmaengine_unmap_data {
26127 	u8 map_cnt;
26128 	u8 to_cnt;
26129 	u8 from_cnt;
26130 	u8 bidi_cnt;
26131 	struct device *dev;
26132 	struct kref kref;
26133 	size_t len;
26134 	dma_addr_t addr[0];
26135 };
26136 
26137 struct dma_descriptor_metadata_ops {
26138 	int (*attach)(struct dma_async_tx_descriptor *, void *, size_t);
26139 	void * (*get_ptr)(struct dma_async_tx_descriptor *, size_t *, size_t *);
26140 	int (*set_len)(struct dma_async_tx_descriptor *, size_t);
26141 };
26142 
26143 struct dma_async_tx_descriptor {
26144 	dma_cookie_t cookie;
26145 	enum dma_ctrl_flags flags;
26146 	dma_addr_t phys;
26147 	struct dma_chan *chan;
26148 	dma_cookie_t (*tx_submit)(struct dma_async_tx_descriptor *);
26149 	int (*desc_free)(struct dma_async_tx_descriptor *);
26150 	dma_async_tx_callback callback;
26151 	dma_async_tx_callback_result callback_result;
26152 	void *callback_param;
26153 	struct dmaengine_unmap_data *unmap;
26154 	enum dma_desc_metadata_mode desc_metadata_mode;
26155 	struct dma_descriptor_metadata_ops *metadata_ops;
26156 };
26157 
26158 struct dma_tx_state {
26159 	dma_cookie_t last;
26160 	dma_cookie_t used;
26161 	u32 residue;
26162 	u32 in_flight_bytes;
26163 };
26164 
26165 struct dma_slave_map {
26166 	const char *devname;
26167 	const char *slave;
26168 	void *param;
26169 };
26170 
26171 struct old_serial_port {
26172 	unsigned int uart;
26173 	unsigned int baud_base;
26174 	unsigned int port;
26175 	unsigned int irq;
26176 	upf_t flags;
26177 	unsigned char io_type;
26178 	unsigned char *iomem_base;
26179 	short unsigned int iomem_reg_shift;
26180 };
26181 
26182 struct irq_info {
26183 	struct hlist_node node;
26184 	int irq;
26185 	spinlock_t lock;
26186 	struct list_head *head;
26187 };
26188 
26189 struct component_ops {
26190 	int (*bind)(struct device *, struct device *, void *);
26191 	void (*unbind)(struct device *, struct device *, void *);
26192 };
26193 
26194 struct component_master_ops {
26195 	int (*bind)(struct device *);
26196 	void (*unbind)(struct device *);
26197 };
26198 
26199 typedef void (*dr_release_t)(struct device *, void *);
26200 
26201 struct component;
26202 
26203 struct component_match_array {
26204 	void *data;
26205 	int (*compare)(struct device *, void *);
26206 	int (*compare_typed)(struct device *, int, void *);
26207 	void (*release)(struct device *, void *);
26208 	struct component *component;
26209 	bool duplicate;
26210 };
26211 
26212 struct aggregate_device;
26213 
26214 struct component {
26215 	struct list_head node;
26216 	struct aggregate_device *adev;
26217 	bool bound;
26218 	const struct component_ops *ops;
26219 	int subcomponent;
26220 	struct device *dev;
26221 };
26222 
26223 struct component_match {
26224 	size_t alloc;
26225 	size_t num;
26226 	struct component_match_array *compare;
26227 };
26228 
26229 struct aggregate_device {
26230 	struct list_head node;
26231 	bool bound;
26232 	const struct component_master_ops *ops;
26233 	struct device *parent;
26234 	struct component_match *match;
26235 };
26236 
26237 enum cache_type {
26238 	CACHE_TYPE_NOCACHE = 0,
26239 	CACHE_TYPE_INST = 1,
26240 	CACHE_TYPE_DATA = 2,
26241 	CACHE_TYPE_SEPARATE = 3,
26242 	CACHE_TYPE_UNIFIED = 4,
26243 };
26244 
26245 struct cacheinfo {
26246 	unsigned int id;
26247 	enum cache_type type;
26248 	unsigned int level;
26249 	unsigned int coherency_line_size;
26250 	unsigned int number_of_sets;
26251 	unsigned int ways_of_associativity;
26252 	unsigned int physical_line_partition;
26253 	unsigned int size;
26254 	cpumask_t shared_cpu_map;
26255 	unsigned int attributes;
26256 	void *fw_token;
26257 	bool disable_sysfs;
26258 	void *priv;
26259 };
26260 
26261 struct cpu_cacheinfo {
26262 	struct cacheinfo *info_list;
26263 	unsigned int num_levels;
26264 	unsigned int num_leaves;
26265 	bool cpu_map_populated;
26266 };
26267 
26268 struct cache_type_info {
26269 	const char *size_prop;
26270 	const char *line_size_props[2];
26271 	const char *nr_sets_prop;
26272 };
26273 
26274 struct firmware {
26275 	size_t size;
26276 	const u8 *data;
26277 	void *priv;
26278 };
26279 
26280 struct builtin_fw {
26281 	char *name;
26282 	void *data;
26283 	long unsigned int size;
26284 };
26285 
26286 struct klist_node;
26287 
26288 struct klist {
26289 	spinlock_t k_lock;
26290 	struct list_head k_list;
26291 	void (*get)(struct klist_node *);
26292 	void (*put)(struct klist_node *);
26293 };
26294 
26295 struct klist_node {
26296 	void *n_klist;
26297 	struct list_head n_node;
26298 	struct kref n_ref;
26299 };
26300 
26301 struct subsys_private {
26302 	struct kset subsys;
26303 	struct kset *devices_kset;
26304 	struct list_head interfaces;
26305 	struct mutex mutex;
26306 	struct kset *drivers_kset;
26307 	struct klist klist_devices;
26308 	struct klist klist_drivers;
26309 	struct blocking_notifier_head bus_notifier;
26310 	unsigned int drivers_autoprobe: 1;
26311 	struct bus_type *bus;
26312 	struct kset glue_dirs;
26313 	struct class *class;
26314 };
26315 
26316 struct driver_private {
26317 	struct kobject kobj;
26318 	struct klist klist_devices;
26319 	struct klist_node knode_bus;
26320 	struct module_kobject *mkobj;
26321 	struct device_driver *driver;
26322 };
26323 
26324 struct device_private {
26325 	struct klist klist_children;
26326 	struct klist_node knode_parent;
26327 	struct klist_node knode_driver;
26328 	struct klist_node knode_bus;
26329 	struct klist_node knode_class;
26330 	struct list_head deferred_probe;
26331 	struct device_driver *async_driver;
26332 	char *deferred_probe_reason;
26333 	struct device *device;
26334 	u8 dead: 1;
26335 };
26336 
26337 enum regcache_type {
26338 	REGCACHE_NONE = 0,
26339 	REGCACHE_RBTREE = 1,
26340 	REGCACHE_COMPRESSED = 2,
26341 	REGCACHE_FLAT = 3,
26342 };
26343 
26344 struct reg_default {
26345 	unsigned int reg;
26346 	unsigned int def;
26347 };
26348 
26349 struct reg_sequence {
26350 	unsigned int reg;
26351 	unsigned int def;
26352 	unsigned int delay_us;
26353 };
26354 
26355 enum regmap_endian {
26356 	REGMAP_ENDIAN_DEFAULT = 0,
26357 	REGMAP_ENDIAN_BIG = 1,
26358 	REGMAP_ENDIAN_LITTLE = 2,
26359 	REGMAP_ENDIAN_NATIVE = 3,
26360 };
26361 
26362 struct regmap_range {
26363 	unsigned int range_min;
26364 	unsigned int range_max;
26365 };
26366 
26367 struct regmap_access_table {
26368 	const struct regmap_range *yes_ranges;
26369 	unsigned int n_yes_ranges;
26370 	const struct regmap_range *no_ranges;
26371 	unsigned int n_no_ranges;
26372 };
26373 
26374 typedef void (*regmap_lock)(void *);
26375 
26376 typedef void (*regmap_unlock)(void *);
26377 
26378 struct regmap_range_cfg;
26379 
26380 struct regmap_config {
26381 	const char *name;
26382 	int reg_bits;
26383 	int reg_stride;
26384 	int reg_downshift;
26385 	unsigned int reg_base;
26386 	int pad_bits;
26387 	int val_bits;
26388 	bool (*writeable_reg)(struct device *, unsigned int);
26389 	bool (*readable_reg)(struct device *, unsigned int);
26390 	bool (*volatile_reg)(struct device *, unsigned int);
26391 	bool (*precious_reg)(struct device *, unsigned int);
26392 	bool (*writeable_noinc_reg)(struct device *, unsigned int);
26393 	bool (*readable_noinc_reg)(struct device *, unsigned int);
26394 	bool disable_locking;
26395 	regmap_lock lock;
26396 	regmap_unlock unlock;
26397 	void *lock_arg;
26398 	int (*reg_read)(void *, unsigned int, unsigned int *);
26399 	int (*reg_write)(void *, unsigned int, unsigned int);
26400 	int (*reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
26401 	int (*read)(void *, const void *, size_t, void *, size_t);
26402 	int (*write)(void *, const void *, size_t);
26403 	size_t max_raw_read;
26404 	size_t max_raw_write;
26405 	bool fast_io;
26406 	unsigned int max_register;
26407 	const struct regmap_access_table *wr_table;
26408 	const struct regmap_access_table *rd_table;
26409 	const struct regmap_access_table *volatile_table;
26410 	const struct regmap_access_table *precious_table;
26411 	const struct regmap_access_table *wr_noinc_table;
26412 	const struct regmap_access_table *rd_noinc_table;
26413 	const struct reg_default *reg_defaults;
26414 	unsigned int num_reg_defaults;
26415 	enum regcache_type cache_type;
26416 	const void *reg_defaults_raw;
26417 	unsigned int num_reg_defaults_raw;
26418 	long unsigned int read_flag_mask;
26419 	long unsigned int write_flag_mask;
26420 	bool zero_flag_mask;
26421 	bool use_single_read;
26422 	bool use_single_write;
26423 	bool use_relaxed_mmio;
26424 	bool can_multi_write;
26425 	enum regmap_endian reg_format_endian;
26426 	enum regmap_endian val_format_endian;
26427 	const struct regmap_range_cfg *ranges;
26428 	unsigned int num_ranges;
26429 	bool use_hwlock;
26430 	bool use_raw_spinlock;
26431 	unsigned int hwlock_id;
26432 	unsigned int hwlock_mode;
26433 	bool can_sleep;
26434 };
26435 
26436 struct regmap_range_cfg {
26437 	const char *name;
26438 	unsigned int range_min;
26439 	unsigned int range_max;
26440 	unsigned int selector_reg;
26441 	unsigned int selector_mask;
26442 	int selector_shift;
26443 	unsigned int window_start;
26444 	unsigned int window_len;
26445 };
26446 
26447 typedef int (*regmap_hw_write)(void *, const void *, size_t);
26448 
26449 typedef int (*regmap_hw_gather_write)(void *, const void *, size_t, const void *, size_t);
26450 
26451 struct regmap_async;
26452 
26453 typedef int (*regmap_hw_async_write)(void *, const void *, size_t, const void *, size_t, struct regmap_async *);
26454 
26455 struct regmap;
26456 
26457 struct regmap_async {
26458 	struct list_head list;
26459 	struct regmap *map;
26460 	void *work_buf;
26461 };
26462 
26463 typedef int (*regmap_hw_read)(void *, const void *, size_t, void *, size_t);
26464 
26465 typedef int (*regmap_hw_reg_read)(void *, unsigned int, unsigned int *);
26466 
26467 typedef int (*regmap_hw_reg_write)(void *, unsigned int, unsigned int);
26468 
26469 typedef int (*regmap_hw_reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
26470 
26471 typedef struct regmap_async * (*regmap_hw_async_alloc)();
26472 
26473 typedef void (*regmap_hw_free_context)(void *);
26474 
26475 struct regmap_bus {
26476 	bool fast_io;
26477 	regmap_hw_write write;
26478 	regmap_hw_gather_write gather_write;
26479 	regmap_hw_async_write async_write;
26480 	regmap_hw_reg_write reg_write;
26481 	regmap_hw_reg_update_bits reg_update_bits;
26482 	regmap_hw_read read;
26483 	regmap_hw_reg_read reg_read;
26484 	regmap_hw_free_context free_context;
26485 	regmap_hw_async_alloc async_alloc;
26486 	u8 read_flag_mask;
26487 	enum regmap_endian reg_format_endian_default;
26488 	enum regmap_endian val_format_endian_default;
26489 	size_t max_raw_read;
26490 	size_t max_raw_write;
26491 	bool free_on_exit;
26492 };
26493 
26494 struct regulator;
26495 
26496 struct rt_mutex {
26497 	struct rt_mutex_base rtmutex;
26498 };
26499 
26500 struct i2c_msg {
26501 	__u16 addr;
26502 	__u16 flags;
26503 	__u16 len;
26504 	__u8 *buf;
26505 };
26506 
26507 union i2c_smbus_data {
26508 	__u8 byte;
26509 	__u16 word;
26510 	__u8 block[34];
26511 };
26512 
26513 struct i2c_adapter;
26514 
26515 struct i2c_client {
26516 	short unsigned int flags;
26517 	short unsigned int addr;
26518 	char name[20];
26519 	struct i2c_adapter *adapter;
26520 	struct device dev;
26521 	int init_irq;
26522 	int irq;
26523 	struct list_head detected;
26524 	void *devres_group_id;
26525 };
26526 
26527 struct i2c_algorithm;
26528 
26529 struct i2c_lock_operations;
26530 
26531 struct i2c_bus_recovery_info;
26532 
26533 struct i2c_adapter_quirks;
26534 
26535 struct i2c_adapter {
26536 	struct module *owner;
26537 	unsigned int class;
26538 	const struct i2c_algorithm *algo;
26539 	void *algo_data;
26540 	const struct i2c_lock_operations *lock_ops;
26541 	struct rt_mutex bus_lock;
26542 	struct rt_mutex mux_lock;
26543 	int timeout;
26544 	int retries;
26545 	struct device dev;
26546 	long unsigned int locked_flags;
26547 	int nr;
26548 	char name[48];
26549 	struct completion dev_released;
26550 	struct mutex userspace_clients_lock;
26551 	struct list_head userspace_clients;
26552 	struct i2c_bus_recovery_info *bus_recovery_info;
26553 	const struct i2c_adapter_quirks *quirks;
26554 	struct irq_domain *host_notify_domain;
26555 	struct regulator *bus_regulator;
26556 };
26557 
26558 struct i2c_algorithm {
26559 	int (*master_xfer)(struct i2c_adapter *, struct i2c_msg *, int);
26560 	int (*master_xfer_atomic)(struct i2c_adapter *, struct i2c_msg *, int);
26561 	int (*smbus_xfer)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
26562 	int (*smbus_xfer_atomic)(struct i2c_adapter *, u16, short unsigned int, char, u8, int, union i2c_smbus_data *);
26563 	u32 (*functionality)(struct i2c_adapter *);
26564 };
26565 
26566 struct i2c_lock_operations {
26567 	void (*lock_bus)(struct i2c_adapter *, unsigned int);
26568 	int (*trylock_bus)(struct i2c_adapter *, unsigned int);
26569 	void (*unlock_bus)(struct i2c_adapter *, unsigned int);
26570 };
26571 
26572 struct pinctrl;
26573 
26574 struct pinctrl_state;
26575 
26576 struct i2c_bus_recovery_info {
26577 	int (*recover_bus)(struct i2c_adapter *);
26578 	int (*get_scl)(struct i2c_adapter *);
26579 	void (*set_scl)(struct i2c_adapter *, int);
26580 	int (*get_sda)(struct i2c_adapter *);
26581 	void (*set_sda)(struct i2c_adapter *, int);
26582 	int (*get_bus_free)(struct i2c_adapter *);
26583 	void (*prepare_recovery)(struct i2c_adapter *);
26584 	void (*unprepare_recovery)(struct i2c_adapter *);
26585 	struct gpio_desc *scl_gpiod;
26586 	struct gpio_desc *sda_gpiod;
26587 	struct pinctrl *pinctrl;
26588 	struct pinctrl_state *pins_default;
26589 	struct pinctrl_state *pins_gpio;
26590 };
26591 
26592 struct i2c_adapter_quirks {
26593 	u64 flags;
26594 	int max_num_msgs;
26595 	u16 max_write_len;
26596 	u16 max_read_len;
26597 	u16 max_comb_1st_msg_len;
26598 	u16 max_comb_2nd_msg_len;
26599 };
26600 
26601 struct regmap_format {
26602 	size_t buf_size;
26603 	size_t reg_bytes;
26604 	size_t pad_bytes;
26605 	size_t reg_downshift;
26606 	size_t val_bytes;
26607 	void (*format_write)(struct regmap *, unsigned int, unsigned int);
26608 	void (*format_reg)(void *, unsigned int, unsigned int);
26609 	void (*format_val)(void *, unsigned int, unsigned int);
26610 	unsigned int (*parse_val)(const void *);
26611 	void (*parse_inplace)(void *);
26612 };
26613 
26614 struct hwspinlock;
26615 
26616 struct regcache_ops;
26617 
26618 struct regmap {
26619 	union {
26620 		struct mutex mutex;
26621 		struct {
26622 			spinlock_t spinlock;
26623 			long unsigned int spinlock_flags;
26624 		};
26625 		struct {
26626 			raw_spinlock_t raw_spinlock;
26627 			long unsigned int raw_spinlock_flags;
26628 		};
26629 	};
26630 	regmap_lock lock;
26631 	regmap_unlock unlock;
26632 	void *lock_arg;
26633 	gfp_t alloc_flags;
26634 	unsigned int reg_base;
26635 	struct device *dev;
26636 	void *work_buf;
26637 	struct regmap_format format;
26638 	const struct regmap_bus *bus;
26639 	void *bus_context;
26640 	const char *name;
26641 	bool async;
26642 	spinlock_t async_lock;
26643 	wait_queue_head_t async_waitq;
26644 	struct list_head async_list;
26645 	struct list_head async_free;
26646 	int async_ret;
26647 	bool debugfs_disable;
26648 	struct dentry *debugfs;
26649 	const char *debugfs_name;
26650 	unsigned int debugfs_reg_len;
26651 	unsigned int debugfs_val_len;
26652 	unsigned int debugfs_tot_len;
26653 	struct list_head debugfs_off_cache;
26654 	struct mutex cache_lock;
26655 	unsigned int max_register;
26656 	bool (*writeable_reg)(struct device *, unsigned int);
26657 	bool (*readable_reg)(struct device *, unsigned int);
26658 	bool (*volatile_reg)(struct device *, unsigned int);
26659 	bool (*precious_reg)(struct device *, unsigned int);
26660 	bool (*writeable_noinc_reg)(struct device *, unsigned int);
26661 	bool (*readable_noinc_reg)(struct device *, unsigned int);
26662 	const struct regmap_access_table *wr_table;
26663 	const struct regmap_access_table *rd_table;
26664 	const struct regmap_access_table *volatile_table;
26665 	const struct regmap_access_table *precious_table;
26666 	const struct regmap_access_table *wr_noinc_table;
26667 	const struct regmap_access_table *rd_noinc_table;
26668 	int (*reg_read)(void *, unsigned int, unsigned int *);
26669 	int (*reg_write)(void *, unsigned int, unsigned int);
26670 	int (*reg_update_bits)(void *, unsigned int, unsigned int, unsigned int);
26671 	int (*read)(void *, const void *, size_t, void *, size_t);
26672 	int (*write)(void *, const void *, size_t);
26673 	bool defer_caching;
26674 	long unsigned int read_flag_mask;
26675 	long unsigned int write_flag_mask;
26676 	int reg_shift;
26677 	int reg_stride;
26678 	int reg_stride_order;
26679 	const struct regcache_ops *cache_ops;
26680 	enum regcache_type cache_type;
26681 	unsigned int cache_size_raw;
26682 	unsigned int cache_word_size;
26683 	unsigned int num_reg_defaults;
26684 	unsigned int num_reg_defaults_raw;
26685 	bool cache_only;
26686 	bool cache_bypass;
26687 	bool cache_free;
26688 	struct reg_default *reg_defaults;
26689 	const void *reg_defaults_raw;
26690 	void *cache;
26691 	bool cache_dirty;
26692 	bool no_sync_defaults;
26693 	struct reg_sequence *patch;
26694 	int patch_regs;
26695 	bool use_single_read;
26696 	bool use_single_write;
26697 	bool can_multi_write;
26698 	size_t max_raw_read;
26699 	size_t max_raw_write;
26700 	struct rb_root range_tree;
26701 	void *selector_work_buf;
26702 	struct hwspinlock *hwlock;
26703 	bool can_sleep;
26704 };
26705 
26706 struct regcache_ops {
26707 	const char *name;
26708 	enum regcache_type type;
26709 	int (*init)(struct regmap *);
26710 	int (*exit)(struct regmap *);
26711 	void (*debugfs_init)(struct regmap *);
26712 	int (*read)(struct regmap *, unsigned int, unsigned int *);
26713 	int (*write)(struct regmap *, unsigned int, unsigned int);
26714 	int (*sync)(struct regmap *, unsigned int, unsigned int);
26715 	int (*drop)(struct regmap *, unsigned int, unsigned int);
26716 };
26717 
26718 struct badblocks {
26719 	struct device *dev;
26720 	int count;
26721 	int unacked_exist;
26722 	int shift;
26723 	u64 *page;
26724 	int changed;
26725 	seqlock_t lock;
26726 	sector_t sector;
26727 	sector_t size;
26728 };
26729 
26730 typedef struct {
26731 	__u8 b[16];
26732 } guid_t;
26733 
26734 enum {
26735 	MEMREMAP_WB = 1,
26736 	MEMREMAP_WT = 2,
26737 	MEMREMAP_WC = 4,
26738 	MEMREMAP_ENC = 8,
26739 	MEMREMAP_DEC = 16,
26740 };
26741 
26742 struct badrange {
26743 	struct list_head list;
26744 	spinlock_t lock;
26745 };
26746 
26747 struct nvdimm_bus_descriptor;
26748 
26749 struct nvdimm;
26750 
26751 typedef int (*ndctl_fn)(struct nvdimm_bus_descriptor *, struct nvdimm *, unsigned int, void *, unsigned int, int *);
26752 
26753 struct nvdimm_bus_fw_ops;
26754 
26755 struct nvdimm_bus_descriptor {
26756 	const struct attribute_group **attr_groups;
26757 	long unsigned int cmd_mask;
26758 	long unsigned int dimm_family_mask;
26759 	long unsigned int bus_family_mask;
26760 	struct module *module;
26761 	char *provider_name;
26762 	struct device_node *of_node;
26763 	ndctl_fn ndctl;
26764 	int (*flush_probe)(struct nvdimm_bus_descriptor *);
26765 	int (*clear_to_send)(struct nvdimm_bus_descriptor *, struct nvdimm *, unsigned int, void *);
26766 	const struct nvdimm_bus_fw_ops *fw_ops;
26767 };
26768 
26769 struct nvdimm_security_ops;
26770 
26771 struct nvdimm_fw_ops;
26772 
26773 struct nvdimm {
26774 	long unsigned int flags;
26775 	void *provider_data;
26776 	long unsigned int cmd_mask;
26777 	struct device dev;
26778 	atomic_t busy;
26779 	int id;
26780 	int num_flush;
26781 	struct resource *flush_wpq;
26782 	const char *dimm_id;
26783 	struct {
26784 		const struct nvdimm_security_ops *ops;
26785 		long unsigned int flags;
26786 		long unsigned int ext_flags;
26787 		unsigned int overwrite_tmo;
26788 		struct kernfs_node *overwrite_state;
26789 	} sec;
26790 	struct delayed_work dwork;
26791 	const struct nvdimm_fw_ops *fw_ops;
26792 };
26793 
26794 enum nvdimm_fwa_state {
26795 	NVDIMM_FWA_INVALID = 0,
26796 	NVDIMM_FWA_IDLE = 1,
26797 	NVDIMM_FWA_ARMED = 2,
26798 	NVDIMM_FWA_BUSY = 3,
26799 	NVDIMM_FWA_ARM_OVERFLOW = 4,
26800 };
26801 
26802 enum nvdimm_fwa_capability {
26803 	NVDIMM_FWA_CAP_INVALID = 0,
26804 	NVDIMM_FWA_CAP_NONE = 1,
26805 	NVDIMM_FWA_CAP_QUIESCE = 2,
26806 	NVDIMM_FWA_CAP_LIVE = 3,
26807 };
26808 
26809 struct nvdimm_bus_fw_ops {
26810 	enum nvdimm_fwa_state (*activate_state)(struct nvdimm_bus_descriptor *);
26811 	enum nvdimm_fwa_capability (*capability)(struct nvdimm_bus_descriptor *);
26812 	int (*activate)(struct nvdimm_bus_descriptor *);
26813 };
26814 
26815 struct nd_interleave_set {
26816 	u64 cookie1;
26817 	u64 cookie2;
26818 	u64 altcookie;
26819 	guid_t type_guid;
26820 };
26821 
26822 struct nvdimm_drvdata;
26823 
26824 struct nd_mapping {
26825 	struct nvdimm *nvdimm;
26826 	u64 start;
26827 	u64 size;
26828 	int position;
26829 	struct list_head labels;
26830 	struct mutex lock;
26831 	struct nvdimm_drvdata *ndd;
26832 };
26833 
26834 struct nd_percpu_lane;
26835 
26836 struct nd_region {
26837 	struct device dev;
26838 	struct ida ns_ida;
26839 	struct ida btt_ida;
26840 	struct ida pfn_ida;
26841 	struct ida dax_ida;
26842 	long unsigned int flags;
26843 	struct device *ns_seed;
26844 	struct device *btt_seed;
26845 	struct device *pfn_seed;
26846 	struct device *dax_seed;
26847 	long unsigned int align;
26848 	u16 ndr_mappings;
26849 	u64 ndr_size;
26850 	u64 ndr_start;
26851 	int id;
26852 	int num_lanes;
26853 	int ro;
26854 	int numa_node;
26855 	int target_node;
26856 	void *provider_data;
26857 	struct kernfs_node *bb_state;
26858 	struct badblocks bb;
26859 	struct nd_interleave_set *nd_set;
26860 	struct nd_percpu_lane *lane;
26861 	int (*flush)(struct nd_region *, struct bio *);
26862 	struct nd_mapping mapping[0];
26863 };
26864 
26865 struct nvdimm_key_data {
26866 	u8 data[32];
26867 };
26868 
26869 enum nvdimm_passphrase_type {
26870 	NVDIMM_USER = 0,
26871 	NVDIMM_MASTER = 1,
26872 };
26873 
26874 struct nvdimm_security_ops {
26875 	long unsigned int (*get_flags)(struct nvdimm *, enum nvdimm_passphrase_type);
26876 	int (*freeze)(struct nvdimm *);
26877 	int (*change_key)(struct nvdimm *, const struct nvdimm_key_data *, const struct nvdimm_key_data *, enum nvdimm_passphrase_type);
26878 	int (*unlock)(struct nvdimm *, const struct nvdimm_key_data *);
26879 	int (*disable)(struct nvdimm *, const struct nvdimm_key_data *);
26880 	int (*erase)(struct nvdimm *, const struct nvdimm_key_data *, enum nvdimm_passphrase_type);
26881 	int (*overwrite)(struct nvdimm *, const struct nvdimm_key_data *);
26882 	int (*query_overwrite)(struct nvdimm *);
26883 };
26884 
26885 enum nvdimm_fwa_trigger {
26886 	NVDIMM_FWA_ARM = 0,
26887 	NVDIMM_FWA_DISARM = 1,
26888 };
26889 
26890 enum nvdimm_fwa_result {
26891 	NVDIMM_FWA_RESULT_INVALID = 0,
26892 	NVDIMM_FWA_RESULT_NONE = 1,
26893 	NVDIMM_FWA_RESULT_SUCCESS = 2,
26894 	NVDIMM_FWA_RESULT_NOTSTAGED = 3,
26895 	NVDIMM_FWA_RESULT_NEEDRESET = 4,
26896 	NVDIMM_FWA_RESULT_FAIL = 5,
26897 };
26898 
26899 struct nvdimm_fw_ops {
26900 	enum nvdimm_fwa_state (*activate_state)(struct nvdimm *);
26901 	enum nvdimm_fwa_result (*activate_result)(struct nvdimm *);
26902 	int (*arm)(struct nvdimm *, enum nvdimm_fwa_trigger);
26903 };
26904 
26905 struct nd_cmd_get_config_size {
26906 	__u32 status;
26907 	__u32 config_size;
26908 	__u32 max_xfer;
26909 };
26910 
26911 enum nvdimm_claim_class {
26912 	NVDIMM_CCLASS_NONE = 0,
26913 	NVDIMM_CCLASS_BTT = 1,
26914 	NVDIMM_CCLASS_BTT2 = 2,
26915 	NVDIMM_CCLASS_PFN = 3,
26916 	NVDIMM_CCLASS_DAX = 4,
26917 	NVDIMM_CCLASS_UNKNOWN = 5,
26918 };
26919 
26920 struct nd_namespace_common {
26921 	int force_raw;
26922 	struct device dev;
26923 	struct device *claim;
26924 	enum nvdimm_claim_class claim_class;
26925 	int (*rw_bytes)(struct nd_namespace_common *, resource_size_t, void *, size_t, int, long unsigned int);
26926 };
26927 
26928 struct nd_namespace_io {
26929 	struct nd_namespace_common common;
26930 	struct resource res;
26931 	resource_size_t size;
26932 	void *addr;
26933 	struct badblocks bb;
26934 };
26935 
26936 enum {
26937 	NSINDEX_SIG_LEN = 16,
26938 	NSINDEX_ALIGN = 256,
26939 	NSINDEX_SEQ_MASK = 3,
26940 	NSLABEL_UUID_LEN = 16,
26941 	NSLABEL_NAME_LEN = 64,
26942 	NSLABEL_FLAG_ROLABEL = 1,
26943 	NSLABEL_FLAG_LOCAL = 2,
26944 	NSLABEL_FLAG_BTT = 4,
26945 	NSLABEL_FLAG_UPDATING = 8,
26946 	BTT_ALIGN = 4096,
26947 	BTTINFO_SIG_LEN = 16,
26948 	BTTINFO_UUID_LEN = 16,
26949 	BTTINFO_FLAG_ERROR = 1,
26950 	BTTINFO_MAJOR_VERSION = 1,
26951 	ND_LABEL_MIN_SIZE = 1024,
26952 	ND_LABEL_ID_SIZE = 50,
26953 	ND_NSINDEX_INIT = 1,
26954 };
26955 
26956 enum {
26957 	ND_MAX_LANES = 256,
26958 	INT_LBASIZE_ALIGNMENT = 64,
26959 	NVDIMM_IO_ATOMIC = 1,
26960 };
26961 
26962 struct nvdimm_drvdata {
26963 	struct device *dev;
26964 	int nslabel_size;
26965 	struct nd_cmd_get_config_size nsarea;
26966 	void *data;
26967 	bool cxl;
26968 	int ns_current;
26969 	int ns_next;
26970 	struct resource dpa;
26971 	struct kref kref;
26972 };
26973 
26974 struct nd_percpu_lane {
26975 	int count;
26976 	spinlock_t lock;
26977 };
26978 
26979 struct btt;
26980 
26981 struct nd_btt {
26982 	struct device dev;
26983 	struct nd_namespace_common *ndns;
26984 	struct btt *btt;
26985 	long unsigned int lbasize;
26986 	u64 size;
26987 	uuid_t *uuid;
26988 	int id;
26989 	int initial_offset;
26990 	u16 version_major;
26991 	u16 version_minor;
26992 };
26993 
26994 struct btt {
26995 	struct gendisk *btt_disk;
26996 	struct list_head arena_list;
26997 	struct dentry *debugfs_dir;
26998 	struct nd_btt *nd_btt;
26999 	u64 nlba;
27000 	long long unsigned int rawsize;
27001 	u32 lbasize;
27002 	u32 sector_size;
27003 	struct nd_region *nd_region;
27004 	struct mutex init_lock;
27005 	int init_state;
27006 	int num_arenas;
27007 	struct badblocks *phys_bb;
27008 };
27009 
27010 enum nd_pfn_mode {
27011 	PFN_MODE_NONE = 0,
27012 	PFN_MODE_RAM = 1,
27013 	PFN_MODE_PMEM = 2,
27014 };
27015 
27016 struct nd_pfn_sb;
27017 
27018 struct nd_pfn {
27019 	int id;
27020 	uuid_t *uuid;
27021 	struct device dev;
27022 	long unsigned int align;
27023 	long unsigned int npfns;
27024 	enum nd_pfn_mode mode;
27025 	struct nd_pfn_sb *pfn_sb;
27026 	struct nd_namespace_common *ndns;
27027 };
27028 
27029 struct nd_pfn_sb {
27030 	u8 signature[16];
27031 	u8 uuid[16];
27032 	u8 parent_uuid[16];
27033 	__le32 flags;
27034 	__le16 version_major;
27035 	__le16 version_minor;
27036 	__le64 dataoff;
27037 	__le64 npfns;
27038 	__le32 mode;
27039 	__le32 start_pad;
27040 	__le32 end_trunc;
27041 	__le32 align;
27042 	__le32 page_size;
27043 	__le16 page_struct_size;
27044 	u8 padding[3994];
27045 	__le64 checksum;
27046 };
27047 
27048 struct nd_dax {
27049 	struct nd_pfn nd_pfn;
27050 };
27051 
27052 enum nd_async_mode {
27053 	ND_SYNC = 0,
27054 	ND_ASYNC = 1,
27055 };
27056 
27057 struct nd_gen_sb {
27058 	char reserved[4088];
27059 	__le64 checksum;
27060 };
27061 
27062 struct nvdimm_bus {
27063 	struct nvdimm_bus_descriptor *nd_desc;
27064 	wait_queue_head_t wait;
27065 	struct list_head list;
27066 	struct device dev;
27067 	int id;
27068 	int probe_active;
27069 	atomic_t ioctl_active;
27070 	struct list_head mapping_list;
27071 	struct mutex reconfig_mutex;
27072 	struct badrange badrange;
27073 };
27074 
27075 typedef int filler_t(struct file *, struct folio *);
27076 
27077 struct msdos_partition {
27078 	u8 boot_ind;
27079 	u8 head;
27080 	u8 sector;
27081 	u8 cyl;
27082 	u8 sys_ind;
27083 	u8 end_head;
27084 	u8 end_sector;
27085 	u8 end_cyl;
27086 	__le32 start_sect;
27087 	__le32 nr_sects;
27088 };
27089 
27090 struct execute_work {
27091 	struct work_struct work;
27092 };
27093 
27094 struct scsi_varlen_cdb_hdr {
27095 	__u8 opcode;
27096 	__u8 control;
27097 	__u8 misc[5];
27098 	__u8 additional_cdb_length;
27099 	__be16 service_action;
27100 };
27101 
27102 struct scsi_sense_hdr {
27103 	u8 response_code;
27104 	u8 sense_key;
27105 	u8 asc;
27106 	u8 ascq;
27107 	u8 byte4;
27108 	u8 byte5;
27109 	u8 byte6;
27110 	u8 additional_length;
27111 };
27112 
27113 typedef __u64 blist_flags_t;
27114 
27115 enum scsi_device_state {
27116 	SDEV_CREATED = 1,
27117 	SDEV_RUNNING = 2,
27118 	SDEV_CANCEL = 3,
27119 	SDEV_DEL = 4,
27120 	SDEV_QUIESCE = 5,
27121 	SDEV_OFFLINE = 6,
27122 	SDEV_TRANSPORT_OFFLINE = 7,
27123 	SDEV_BLOCK = 8,
27124 	SDEV_CREATED_BLOCK = 9,
27125 };
27126 
27127 enum scsi_device_event {
27128 	SDEV_EVT_MEDIA_CHANGE = 1,
27129 	SDEV_EVT_INQUIRY_CHANGE_REPORTED = 2,
27130 	SDEV_EVT_CAPACITY_CHANGE_REPORTED = 3,
27131 	SDEV_EVT_SOFT_THRESHOLD_REACHED_REPORTED = 4,
27132 	SDEV_EVT_MODE_PARAMETER_CHANGE_REPORTED = 5,
27133 	SDEV_EVT_LUN_CHANGE_REPORTED = 6,
27134 	SDEV_EVT_ALUA_STATE_CHANGE_REPORTED = 7,
27135 	SDEV_EVT_POWER_ON_RESET_OCCURRED = 8,
27136 	SDEV_EVT_FIRST = 1,
27137 	SDEV_EVT_LAST = 8,
27138 	SDEV_EVT_MAXBITS = 9,
27139 };
27140 
27141 struct scsi_vpd {
27142 	struct callback_head rcu;
27143 	int len;
27144 	unsigned char data[0];
27145 };
27146 
27147 struct bsg_device;
27148 
27149 struct Scsi_Host;
27150 
27151 struct scsi_target;
27152 
27153 struct scsi_device_handler;
27154 
27155 struct scsi_device {
27156 	struct Scsi_Host *host;
27157 	struct request_queue *request_queue;
27158 	struct list_head siblings;
27159 	struct list_head same_target_siblings;
27160 	struct sbitmap budget_map;
27161 	atomic_t device_blocked;
27162 	atomic_t restarts;
27163 	spinlock_t list_lock;
27164 	struct list_head starved_entry;
27165 	short unsigned int queue_depth;
27166 	short unsigned int max_queue_depth;
27167 	short unsigned int last_queue_full_depth;
27168 	short unsigned int last_queue_full_count;
27169 	long unsigned int last_queue_full_time;
27170 	long unsigned int queue_ramp_up_period;
27171 	long unsigned int last_queue_ramp_up;
27172 	unsigned int id;
27173 	unsigned int channel;
27174 	u64 lun;
27175 	unsigned int manufacturer;
27176 	unsigned int sector_size;
27177 	void *hostdata;
27178 	unsigned char type;
27179 	char scsi_level;
27180 	char inq_periph_qual;
27181 	struct mutex inquiry_mutex;
27182 	unsigned char inquiry_len;
27183 	unsigned char *inquiry;
27184 	const char *vendor;
27185 	const char *model;
27186 	const char *rev;
27187 	struct scsi_vpd *vpd_pg0;
27188 	struct scsi_vpd *vpd_pg83;
27189 	struct scsi_vpd *vpd_pg80;
27190 	struct scsi_vpd *vpd_pg89;
27191 	struct scsi_vpd *vpd_pgb0;
27192 	struct scsi_vpd *vpd_pgb1;
27193 	struct scsi_vpd *vpd_pgb2;
27194 	struct scsi_target *sdev_target;
27195 	blist_flags_t sdev_bflags;
27196 	unsigned int eh_timeout;
27197 	unsigned int removable: 1;
27198 	unsigned int changed: 1;
27199 	unsigned int busy: 1;
27200 	unsigned int lockable: 1;
27201 	unsigned int locked: 1;
27202 	unsigned int borken: 1;
27203 	unsigned int disconnect: 1;
27204 	unsigned int soft_reset: 1;
27205 	unsigned int sdtr: 1;
27206 	unsigned int wdtr: 1;
27207 	unsigned int ppr: 1;
27208 	unsigned int tagged_supported: 1;
27209 	unsigned int simple_tags: 1;
27210 	unsigned int was_reset: 1;
27211 	unsigned int expecting_cc_ua: 1;
27212 	unsigned int use_10_for_rw: 1;
27213 	unsigned int use_10_for_ms: 1;
27214 	unsigned int set_dbd_for_ms: 1;
27215 	unsigned int no_report_opcodes: 1;
27216 	unsigned int no_write_same: 1;
27217 	unsigned int use_16_for_rw: 1;
27218 	unsigned int skip_ms_page_8: 1;
27219 	unsigned int skip_ms_page_3f: 1;
27220 	unsigned int skip_vpd_pages: 1;
27221 	unsigned int try_vpd_pages: 1;
27222 	unsigned int use_192_bytes_for_3f: 1;
27223 	unsigned int no_start_on_add: 1;
27224 	unsigned int allow_restart: 1;
27225 	unsigned int manage_start_stop: 1;
27226 	unsigned int start_stop_pwr_cond: 1;
27227 	unsigned int no_uld_attach: 1;
27228 	unsigned int select_no_atn: 1;
27229 	unsigned int fix_capacity: 1;
27230 	unsigned int guess_capacity: 1;
27231 	unsigned int retry_hwerror: 1;
27232 	unsigned int last_sector_bug: 1;
27233 	unsigned int no_read_disc_info: 1;
27234 	unsigned int no_read_capacity_16: 1;
27235 	unsigned int try_rc_10_first: 1;
27236 	unsigned int security_supported: 1;
27237 	unsigned int is_visible: 1;
27238 	unsigned int wce_default_on: 1;
27239 	unsigned int no_dif: 1;
27240 	unsigned int broken_fua: 1;
27241 	unsigned int lun_in_cdb: 1;
27242 	unsigned int unmap_limit_for_ws: 1;
27243 	unsigned int rpm_autosuspend: 1;
27244 	unsigned int ignore_media_change: 1;
27245 	unsigned int silence_suspend: 1;
27246 	unsigned int queue_stopped;
27247 	bool offline_already;
27248 	atomic_t disk_events_disable_depth;
27249 	long unsigned int supported_events[1];
27250 	long unsigned int pending_events[1];
27251 	struct list_head event_list;
27252 	struct work_struct event_work;
27253 	unsigned int max_device_blocked;
27254 	atomic_t iorequest_cnt;
27255 	atomic_t iodone_cnt;
27256 	atomic_t ioerr_cnt;
27257 	struct device sdev_gendev;
27258 	struct device sdev_dev;
27259 	struct execute_work ew;
27260 	struct work_struct requeue_work;
27261 	struct scsi_device_handler *handler;
27262 	void *handler_data;
27263 	size_t dma_drain_len;
27264 	void *dma_drain_buf;
27265 	unsigned int sg_timeout;
27266 	unsigned int sg_reserved_size;
27267 	struct bsg_device *bsg_dev;
27268 	unsigned char access_state;
27269 	struct mutex state_mutex;
27270 	enum scsi_device_state sdev_state;
27271 	struct task_struct *quiesced_by;
27272 	long unsigned int sdev_data[0];
27273 };
27274 
27275 enum scsi_target_state {
27276 	STARGET_CREATED = 1,
27277 	STARGET_RUNNING = 2,
27278 	STARGET_REMOVE = 3,
27279 	STARGET_CREATED_REMOVE = 4,
27280 	STARGET_DEL = 5,
27281 };
27282 
27283 struct scsi_target {
27284 	struct scsi_device *starget_sdev_user;
27285 	struct list_head siblings;
27286 	struct list_head devices;
27287 	struct device dev;
27288 	struct kref reap_ref;
27289 	unsigned int channel;
27290 	unsigned int id;
27291 	unsigned int create: 1;
27292 	unsigned int single_lun: 1;
27293 	unsigned int pdt_1f_for_no_lun: 1;
27294 	unsigned int no_report_luns: 1;
27295 	unsigned int expecting_lun_change: 1;
27296 	atomic_t target_busy;
27297 	atomic_t target_blocked;
27298 	unsigned int can_queue;
27299 	unsigned int max_target_blocked;
27300 	char scsi_level;
27301 	enum scsi_target_state state;
27302 	void *hostdata;
27303 	long unsigned int starget_data[0];
27304 };
27305 
27306 struct scsi_data_buffer {
27307 	struct sg_table table;
27308 	unsigned int length;
27309 };
27310 
27311 enum scsi_cmnd_submitter {
27312 	SUBMITTED_BY_BLOCK_LAYER = 0,
27313 	SUBMITTED_BY_SCSI_ERROR_HANDLER = 1,
27314 	SUBMITTED_BY_SCSI_RESET_IOCTL = 2,
27315 } __attribute__((mode(byte)));
27316 
27317 struct scsi_cmnd {
27318 	struct scsi_device *device;
27319 	struct list_head eh_entry;
27320 	struct delayed_work abort_work;
27321 	struct callback_head rcu;
27322 	int eh_eflags;
27323 	int budget_token;
27324 	long unsigned int jiffies_at_alloc;
27325 	int retries;
27326 	int allowed;
27327 	unsigned char prot_op;
27328 	unsigned char prot_type;
27329 	unsigned char prot_flags;
27330 	enum scsi_cmnd_submitter submitter;
27331 	short unsigned int cmd_len;
27332 	enum dma_data_direction sc_data_direction;
27333 	unsigned char cmnd[32];
27334 	struct scsi_data_buffer sdb;
27335 	struct scsi_data_buffer *prot_sdb;
27336 	unsigned int underflow;
27337 	unsigned int transfersize;
27338 	unsigned int resid_len;
27339 	unsigned int sense_len;
27340 	unsigned char *sense_buffer;
27341 	int flags;
27342 	long unsigned int state;
27343 	unsigned int extra_len;
27344 	unsigned char *host_scribble;
27345 	int result;
27346 };
27347 
27348 struct cdrom_device_ops;
27349 
27350 struct cdrom_device_info {
27351 	const struct cdrom_device_ops *ops;
27352 	struct list_head list;
27353 	struct gendisk *disk;
27354 	void *handle;
27355 	int mask;
27356 	int speed;
27357 	int capacity;
27358 	unsigned int options: 30;
27359 	unsigned int mc_flags: 2;
27360 	unsigned int vfs_events;
27361 	unsigned int ioctl_events;
27362 	int use_count;
27363 	char name[20];
27364 	__u8 sanyo_slot: 2;
27365 	__u8 keeplocked: 1;
27366 	__u8 reserved: 5;
27367 	int cdda_method;
27368 	__u8 last_sense;
27369 	__u8 media_written;
27370 	short unsigned int mmc3_profile;
27371 	int for_data;
27372 	int (*exit)(struct cdrom_device_info *);
27373 	int mrw_mode_page;
27374 	__s64 last_media_change_ms;
27375 };
27376 
27377 enum scsi_disposition {
27378 	NEEDS_RETRY = 8193,
27379 	SUCCESS = 8194,
27380 	FAILED = 8195,
27381 	QUEUED = 8196,
27382 	SOFT_ERROR = 8197,
27383 	ADD_TO_MLQUEUE = 8198,
27384 	TIMEOUT_ERROR = 8199,
27385 	SCSI_RETURN_NOT_HANDLED = 8200,
27386 	FAST_IO_FAIL = 8201,
27387 };
27388 
27389 struct scsi_host_template {
27390 	unsigned int cmd_size;
27391 	int (*queuecommand)(struct Scsi_Host *, struct scsi_cmnd *);
27392 	void (*commit_rqs)(struct Scsi_Host *, u16);
27393 	struct module *module;
27394 	const char *name;
27395 	const char * (*info)(struct Scsi_Host *);
27396 	int (*ioctl)(struct scsi_device *, unsigned int, void *);
27397 	int (*init_cmd_priv)(struct Scsi_Host *, struct scsi_cmnd *);
27398 	int (*exit_cmd_priv)(struct Scsi_Host *, struct scsi_cmnd *);
27399 	int (*eh_abort_handler)(struct scsi_cmnd *);
27400 	int (*eh_device_reset_handler)(struct scsi_cmnd *);
27401 	int (*eh_target_reset_handler)(struct scsi_cmnd *);
27402 	int (*eh_bus_reset_handler)(struct scsi_cmnd *);
27403 	int (*eh_host_reset_handler)(struct scsi_cmnd *);
27404 	int (*slave_alloc)(struct scsi_device *);
27405 	int (*slave_configure)(struct scsi_device *);
27406 	void (*slave_destroy)(struct scsi_device *);
27407 	int (*target_alloc)(struct scsi_target *);
27408 	void (*target_destroy)(struct scsi_target *);
27409 	int (*scan_finished)(struct Scsi_Host *, long unsigned int);
27410 	void (*scan_start)(struct Scsi_Host *);
27411 	int (*change_queue_depth)(struct scsi_device *, int);
27412 	int (*map_queues)(struct Scsi_Host *);
27413 	int (*mq_poll)(struct Scsi_Host *, unsigned int);
27414 	bool (*dma_need_drain)(struct request *);
27415 	int (*bios_param)(struct scsi_device *, struct block_device *, sector_t, int *);
27416 	void (*unlock_native_capacity)(struct scsi_device *);
27417 	int (*show_info)(struct seq_file *, struct Scsi_Host *);
27418 	int (*write_info)(struct Scsi_Host *, char *, int);
27419 	enum blk_eh_timer_return (*eh_timed_out)(struct scsi_cmnd *);
27420 	bool (*eh_should_retry_cmd)(struct scsi_cmnd *);
27421 	int (*host_reset)(struct Scsi_Host *, int);
27422 	const char *proc_name;
27423 	struct proc_dir_entry *proc_dir;
27424 	int can_queue;
27425 	int this_id;
27426 	short unsigned int sg_tablesize;
27427 	short unsigned int sg_prot_tablesize;
27428 	unsigned int max_sectors;
27429 	unsigned int max_segment_size;
27430 	long unsigned int dma_boundary;
27431 	long unsigned int virt_boundary_mask;
27432 	short int cmd_per_lun;
27433 	unsigned char present;
27434 	int tag_alloc_policy;
27435 	unsigned int track_queue_depth: 1;
27436 	unsigned int supported_mode: 2;
27437 	unsigned int emulated: 1;
27438 	unsigned int skip_settle_delay: 1;
27439 	unsigned int no_write_same: 1;
27440 	unsigned int host_tagset: 1;
27441 	unsigned int max_host_blocked;
27442 	const struct attribute_group **shost_groups;
27443 	const struct attribute_group **sdev_groups;
27444 	u64 vendor_id;
27445 	int rpm_autosuspend_delay;
27446 };
27447 
27448 enum scsi_host_state {
27449 	SHOST_CREATED = 1,
27450 	SHOST_RUNNING = 2,
27451 	SHOST_CANCEL = 3,
27452 	SHOST_DEL = 4,
27453 	SHOST_RECOVERY = 5,
27454 	SHOST_CANCEL_RECOVERY = 6,
27455 	SHOST_DEL_RECOVERY = 7,
27456 };
27457 
27458 struct scsi_transport_template;
27459 
27460 struct Scsi_Host {
27461 	struct list_head __devices;
27462 	struct list_head __targets;
27463 	struct list_head starved_list;
27464 	spinlock_t default_lock;
27465 	spinlock_t *host_lock;
27466 	struct mutex scan_mutex;
27467 	struct list_head eh_abort_list;
27468 	struct list_head eh_cmd_q;
27469 	struct task_struct *ehandler;
27470 	struct completion *eh_action;
27471 	wait_queue_head_t host_wait;
27472 	struct scsi_host_template *hostt;
27473 	struct scsi_transport_template *transportt;
27474 	struct kref tagset_refcnt;
27475 	struct completion tagset_freed;
27476 	struct blk_mq_tag_set tag_set;
27477 	atomic_t host_blocked;
27478 	unsigned int host_failed;
27479 	unsigned int host_eh_scheduled;
27480 	unsigned int host_no;
27481 	int eh_deadline;
27482 	long unsigned int last_reset;
27483 	unsigned int max_channel;
27484 	unsigned int max_id;
27485 	u64 max_lun;
27486 	unsigned int unique_id;
27487 	short unsigned int max_cmd_len;
27488 	int this_id;
27489 	int can_queue;
27490 	short int cmd_per_lun;
27491 	short unsigned int sg_tablesize;
27492 	short unsigned int sg_prot_tablesize;
27493 	unsigned int max_sectors;
27494 	unsigned int opt_sectors;
27495 	unsigned int max_segment_size;
27496 	long unsigned int dma_boundary;
27497 	long unsigned int virt_boundary_mask;
27498 	unsigned int nr_hw_queues;
27499 	unsigned int nr_maps;
27500 	unsigned int active_mode: 2;
27501 	unsigned int host_self_blocked: 1;
27502 	unsigned int reverse_ordering: 1;
27503 	unsigned int tmf_in_progress: 1;
27504 	unsigned int async_scan: 1;
27505 	unsigned int eh_noresume: 1;
27506 	unsigned int no_write_same: 1;
27507 	unsigned int host_tagset: 1;
27508 	unsigned int short_inquiry: 1;
27509 	unsigned int no_scsi2_lun_in_cdb: 1;
27510 	char work_q_name[20];
27511 	struct workqueue_struct *work_q;
27512 	struct workqueue_struct *tmf_work_q;
27513 	unsigned int max_host_blocked;
27514 	unsigned int prot_capabilities;
27515 	unsigned char prot_guard_type;
27516 	long unsigned int base;
27517 	long unsigned int io_port;
27518 	unsigned char n_io_port;
27519 	unsigned char dma_channel;
27520 	unsigned int irq;
27521 	enum scsi_host_state shost_state;
27522 	struct device shost_gendev;
27523 	struct device shost_dev;
27524 	void *shost_data;
27525 	struct device *dma_dev;
27526 	long unsigned int hostdata[0];
27527 };
27528 
27529 enum {
27530 	ATA_MAX_DEVICES = 2,
27531 	ATA_MAX_PRD = 256,
27532 	ATA_SECT_SIZE = 512,
27533 	ATA_MAX_SECTORS_128 = 128,
27534 	ATA_MAX_SECTORS = 256,
27535 	ATA_MAX_SECTORS_1024 = 1024,
27536 	ATA_MAX_SECTORS_LBA48 = 65535,
27537 	ATA_MAX_SECTORS_TAPE = 65535,
27538 	ATA_MAX_TRIM_RNUM = 64,
27539 	ATA_ID_WORDS = 256,
27540 	ATA_ID_CONFIG = 0,
27541 	ATA_ID_CYLS = 1,
27542 	ATA_ID_HEADS = 3,
27543 	ATA_ID_SECTORS = 6,
27544 	ATA_ID_SERNO = 10,
27545 	ATA_ID_BUF_SIZE = 21,
27546 	ATA_ID_FW_REV = 23,
27547 	ATA_ID_PROD = 27,
27548 	ATA_ID_MAX_MULTSECT = 47,
27549 	ATA_ID_DWORD_IO = 48,
27550 	ATA_ID_TRUSTED = 48,
27551 	ATA_ID_CAPABILITY = 49,
27552 	ATA_ID_OLD_PIO_MODES = 51,
27553 	ATA_ID_OLD_DMA_MODES = 52,
27554 	ATA_ID_FIELD_VALID = 53,
27555 	ATA_ID_CUR_CYLS = 54,
27556 	ATA_ID_CUR_HEADS = 55,
27557 	ATA_ID_CUR_SECTORS = 56,
27558 	ATA_ID_MULTSECT = 59,
27559 	ATA_ID_LBA_CAPACITY = 60,
27560 	ATA_ID_SWDMA_MODES = 62,
27561 	ATA_ID_MWDMA_MODES = 63,
27562 	ATA_ID_PIO_MODES = 64,
27563 	ATA_ID_EIDE_DMA_MIN = 65,
27564 	ATA_ID_EIDE_DMA_TIME = 66,
27565 	ATA_ID_EIDE_PIO = 67,
27566 	ATA_ID_EIDE_PIO_IORDY = 68,
27567 	ATA_ID_ADDITIONAL_SUPP = 69,
27568 	ATA_ID_QUEUE_DEPTH = 75,
27569 	ATA_ID_SATA_CAPABILITY = 76,
27570 	ATA_ID_SATA_CAPABILITY_2 = 77,
27571 	ATA_ID_FEATURE_SUPP = 78,
27572 	ATA_ID_MAJOR_VER = 80,
27573 	ATA_ID_COMMAND_SET_1 = 82,
27574 	ATA_ID_COMMAND_SET_2 = 83,
27575 	ATA_ID_CFSSE = 84,
27576 	ATA_ID_CFS_ENABLE_1 = 85,
27577 	ATA_ID_CFS_ENABLE_2 = 86,
27578 	ATA_ID_CSF_DEFAULT = 87,
27579 	ATA_ID_UDMA_MODES = 88,
27580 	ATA_ID_HW_CONFIG = 93,
27581 	ATA_ID_SPG = 98,
27582 	ATA_ID_LBA_CAPACITY_2 = 100,
27583 	ATA_ID_SECTOR_SIZE = 106,
27584 	ATA_ID_WWN = 108,
27585 	ATA_ID_LOGICAL_SECTOR_SIZE = 117,
27586 	ATA_ID_COMMAND_SET_3 = 119,
27587 	ATA_ID_COMMAND_SET_4 = 120,
27588 	ATA_ID_LAST_LUN = 126,
27589 	ATA_ID_DLF = 128,
27590 	ATA_ID_CSFO = 129,
27591 	ATA_ID_CFA_POWER = 160,
27592 	ATA_ID_CFA_KEY_MGMT = 162,
27593 	ATA_ID_CFA_MODES = 163,
27594 	ATA_ID_DATA_SET_MGMT = 169,
27595 	ATA_ID_SCT_CMD_XPORT = 206,
27596 	ATA_ID_ROT_SPEED = 217,
27597 	ATA_ID_PIO4 = 2,
27598 	ATA_ID_SERNO_LEN = 20,
27599 	ATA_ID_FW_REV_LEN = 8,
27600 	ATA_ID_PROD_LEN = 40,
27601 	ATA_ID_WWN_LEN = 8,
27602 	ATA_PCI_CTL_OFS = 2,
27603 	ATA_PIO0 = 1,
27604 	ATA_PIO1 = 3,
27605 	ATA_PIO2 = 7,
27606 	ATA_PIO3 = 15,
27607 	ATA_PIO4 = 31,
27608 	ATA_PIO5 = 63,
27609 	ATA_PIO6 = 127,
27610 	ATA_PIO4_ONLY = 16,
27611 	ATA_SWDMA0 = 1,
27612 	ATA_SWDMA1 = 3,
27613 	ATA_SWDMA2 = 7,
27614 	ATA_SWDMA2_ONLY = 4,
27615 	ATA_MWDMA0 = 1,
27616 	ATA_MWDMA1 = 3,
27617 	ATA_MWDMA2 = 7,
27618 	ATA_MWDMA3 = 15,
27619 	ATA_MWDMA4 = 31,
27620 	ATA_MWDMA12_ONLY = 6,
27621 	ATA_MWDMA2_ONLY = 4,
27622 	ATA_UDMA0 = 1,
27623 	ATA_UDMA1 = 3,
27624 	ATA_UDMA2 = 7,
27625 	ATA_UDMA3 = 15,
27626 	ATA_UDMA4 = 31,
27627 	ATA_UDMA5 = 63,
27628 	ATA_UDMA6 = 127,
27629 	ATA_UDMA7 = 255,
27630 	ATA_UDMA24_ONLY = 20,
27631 	ATA_UDMA_MASK_40C = 7,
27632 	ATA_PRD_SZ = 8,
27633 	ATA_PRD_TBL_SZ = 2048,
27634 	ATA_PRD_EOT = -2147483648,
27635 	ATA_DMA_TABLE_OFS = 4,
27636 	ATA_DMA_STATUS = 2,
27637 	ATA_DMA_CMD = 0,
27638 	ATA_DMA_WR = 8,
27639 	ATA_DMA_START = 1,
27640 	ATA_DMA_INTR = 4,
27641 	ATA_DMA_ERR = 2,
27642 	ATA_DMA_ACTIVE = 1,
27643 	ATA_HOB = 128,
27644 	ATA_NIEN = 2,
27645 	ATA_LBA = 64,
27646 	ATA_DEV1 = 16,
27647 	ATA_DEVICE_OBS = 160,
27648 	ATA_DEVCTL_OBS = 8,
27649 	ATA_BUSY = 128,
27650 	ATA_DRDY = 64,
27651 	ATA_DF = 32,
27652 	ATA_DSC = 16,
27653 	ATA_DRQ = 8,
27654 	ATA_CORR = 4,
27655 	ATA_SENSE = 2,
27656 	ATA_ERR = 1,
27657 	ATA_SRST = 4,
27658 	ATA_ICRC = 128,
27659 	ATA_BBK = 128,
27660 	ATA_UNC = 64,
27661 	ATA_MC = 32,
27662 	ATA_IDNF = 16,
27663 	ATA_MCR = 8,
27664 	ATA_ABORTED = 4,
27665 	ATA_TRK0NF = 2,
27666 	ATA_AMNF = 1,
27667 	ATAPI_LFS = 240,
27668 	ATAPI_EOM = 2,
27669 	ATAPI_ILI = 1,
27670 	ATAPI_IO = 2,
27671 	ATAPI_COD = 1,
27672 	ATA_REG_DATA = 0,
27673 	ATA_REG_ERR = 1,
27674 	ATA_REG_NSECT = 2,
27675 	ATA_REG_LBAL = 3,
27676 	ATA_REG_LBAM = 4,
27677 	ATA_REG_LBAH = 5,
27678 	ATA_REG_DEVICE = 6,
27679 	ATA_REG_STATUS = 7,
27680 	ATA_REG_FEATURE = 1,
27681 	ATA_REG_CMD = 7,
27682 	ATA_REG_BYTEL = 4,
27683 	ATA_REG_BYTEH = 5,
27684 	ATA_REG_DEVSEL = 6,
27685 	ATA_REG_IRQ = 2,
27686 	ATA_CMD_DEV_RESET = 8,
27687 	ATA_CMD_CHK_POWER = 229,
27688 	ATA_CMD_STANDBY = 226,
27689 	ATA_CMD_IDLE = 227,
27690 	ATA_CMD_EDD = 144,
27691 	ATA_CMD_DOWNLOAD_MICRO = 146,
27692 	ATA_CMD_DOWNLOAD_MICRO_DMA = 147,
27693 	ATA_CMD_NOP = 0,
27694 	ATA_CMD_FLUSH = 231,
27695 	ATA_CMD_FLUSH_EXT = 234,
27696 	ATA_CMD_ID_ATA = 236,
27697 	ATA_CMD_ID_ATAPI = 161,
27698 	ATA_CMD_SERVICE = 162,
27699 	ATA_CMD_READ = 200,
27700 	ATA_CMD_READ_EXT = 37,
27701 	ATA_CMD_READ_QUEUED = 38,
27702 	ATA_CMD_READ_STREAM_EXT = 43,
27703 	ATA_CMD_READ_STREAM_DMA_EXT = 42,
27704 	ATA_CMD_WRITE = 202,
27705 	ATA_CMD_WRITE_EXT = 53,
27706 	ATA_CMD_WRITE_QUEUED = 54,
27707 	ATA_CMD_WRITE_STREAM_EXT = 59,
27708 	ATA_CMD_WRITE_STREAM_DMA_EXT = 58,
27709 	ATA_CMD_WRITE_FUA_EXT = 61,
27710 	ATA_CMD_WRITE_QUEUED_FUA_EXT = 62,
27711 	ATA_CMD_FPDMA_READ = 96,
27712 	ATA_CMD_FPDMA_WRITE = 97,
27713 	ATA_CMD_NCQ_NON_DATA = 99,
27714 	ATA_CMD_FPDMA_SEND = 100,
27715 	ATA_CMD_FPDMA_RECV = 101,
27716 	ATA_CMD_PIO_READ = 32,
27717 	ATA_CMD_PIO_READ_EXT = 36,
27718 	ATA_CMD_PIO_WRITE = 48,
27719 	ATA_CMD_PIO_WRITE_EXT = 52,
27720 	ATA_CMD_READ_MULTI = 196,
27721 	ATA_CMD_READ_MULTI_EXT = 41,
27722 	ATA_CMD_WRITE_MULTI = 197,
27723 	ATA_CMD_WRITE_MULTI_EXT = 57,
27724 	ATA_CMD_WRITE_MULTI_FUA_EXT = 206,
27725 	ATA_CMD_SET_FEATURES = 239,
27726 	ATA_CMD_SET_MULTI = 198,
27727 	ATA_CMD_PACKET = 160,
27728 	ATA_CMD_VERIFY = 64,
27729 	ATA_CMD_VERIFY_EXT = 66,
27730 	ATA_CMD_WRITE_UNCORR_EXT = 69,
27731 	ATA_CMD_STANDBYNOW1 = 224,
27732 	ATA_CMD_IDLEIMMEDIATE = 225,
27733 	ATA_CMD_SLEEP = 230,
27734 	ATA_CMD_INIT_DEV_PARAMS = 145,
27735 	ATA_CMD_READ_NATIVE_MAX = 248,
27736 	ATA_CMD_READ_NATIVE_MAX_EXT = 39,
27737 	ATA_CMD_SET_MAX = 249,
27738 	ATA_CMD_SET_MAX_EXT = 55,
27739 	ATA_CMD_READ_LOG_EXT = 47,
27740 	ATA_CMD_WRITE_LOG_EXT = 63,
27741 	ATA_CMD_READ_LOG_DMA_EXT = 71,
27742 	ATA_CMD_WRITE_LOG_DMA_EXT = 87,
27743 	ATA_CMD_TRUSTED_NONDATA = 91,
27744 	ATA_CMD_TRUSTED_RCV = 92,
27745 	ATA_CMD_TRUSTED_RCV_DMA = 93,
27746 	ATA_CMD_TRUSTED_SND = 94,
27747 	ATA_CMD_TRUSTED_SND_DMA = 95,
27748 	ATA_CMD_PMP_READ = 228,
27749 	ATA_CMD_PMP_READ_DMA = 233,
27750 	ATA_CMD_PMP_WRITE = 232,
27751 	ATA_CMD_PMP_WRITE_DMA = 235,
27752 	ATA_CMD_CONF_OVERLAY = 177,
27753 	ATA_CMD_SEC_SET_PASS = 241,
27754 	ATA_CMD_SEC_UNLOCK = 242,
27755 	ATA_CMD_SEC_ERASE_PREP = 243,
27756 	ATA_CMD_SEC_ERASE_UNIT = 244,
27757 	ATA_CMD_SEC_FREEZE_LOCK = 245,
27758 	ATA_CMD_SEC_DISABLE_PASS = 246,
27759 	ATA_CMD_CONFIG_STREAM = 81,
27760 	ATA_CMD_SMART = 176,
27761 	ATA_CMD_MEDIA_LOCK = 222,
27762 	ATA_CMD_MEDIA_UNLOCK = 223,
27763 	ATA_CMD_DSM = 6,
27764 	ATA_CMD_CHK_MED_CRD_TYP = 209,
27765 	ATA_CMD_CFA_REQ_EXT_ERR = 3,
27766 	ATA_CMD_CFA_WRITE_NE = 56,
27767 	ATA_CMD_CFA_TRANS_SECT = 135,
27768 	ATA_CMD_CFA_ERASE = 192,
27769 	ATA_CMD_CFA_WRITE_MULT_NE = 205,
27770 	ATA_CMD_REQ_SENSE_DATA = 11,
27771 	ATA_CMD_SANITIZE_DEVICE = 180,
27772 	ATA_CMD_ZAC_MGMT_IN = 74,
27773 	ATA_CMD_ZAC_MGMT_OUT = 159,
27774 	ATA_CMD_RESTORE = 16,
27775 	ATA_SUBCMD_FPDMA_RECV_RD_LOG_DMA_EXT = 1,
27776 	ATA_SUBCMD_FPDMA_RECV_ZAC_MGMT_IN = 2,
27777 	ATA_SUBCMD_FPDMA_SEND_DSM = 0,
27778 	ATA_SUBCMD_FPDMA_SEND_WR_LOG_DMA_EXT = 2,
27779 	ATA_SUBCMD_NCQ_NON_DATA_ABORT_QUEUE = 0,
27780 	ATA_SUBCMD_NCQ_NON_DATA_SET_FEATURES = 5,
27781 	ATA_SUBCMD_NCQ_NON_DATA_ZERO_EXT = 6,
27782 	ATA_SUBCMD_NCQ_NON_DATA_ZAC_MGMT_OUT = 7,
27783 	ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES = 0,
27784 	ATA_SUBCMD_ZAC_MGMT_OUT_CLOSE_ZONE = 1,
27785 	ATA_SUBCMD_ZAC_MGMT_OUT_FINISH_ZONE = 2,
27786 	ATA_SUBCMD_ZAC_MGMT_OUT_OPEN_ZONE = 3,
27787 	ATA_SUBCMD_ZAC_MGMT_OUT_RESET_WRITE_POINTER = 4,
27788 	ATA_LOG_DIRECTORY = 0,
27789 	ATA_LOG_SATA_NCQ = 16,
27790 	ATA_LOG_NCQ_NON_DATA = 18,
27791 	ATA_LOG_NCQ_SEND_RECV = 19,
27792 	ATA_LOG_IDENTIFY_DEVICE = 48,
27793 	ATA_LOG_CONCURRENT_POSITIONING_RANGES = 71,
27794 	ATA_LOG_SECURITY = 6,
27795 	ATA_LOG_SATA_SETTINGS = 8,
27796 	ATA_LOG_ZONED_INFORMATION = 9,
27797 	ATA_LOG_DEVSLP_OFFSET = 48,
27798 	ATA_LOG_DEVSLP_SIZE = 8,
27799 	ATA_LOG_DEVSLP_MDAT = 0,
27800 	ATA_LOG_DEVSLP_MDAT_MASK = 31,
27801 	ATA_LOG_DEVSLP_DETO = 1,
27802 	ATA_LOG_DEVSLP_VALID = 7,
27803 	ATA_LOG_DEVSLP_VALID_MASK = 128,
27804 	ATA_LOG_NCQ_PRIO_OFFSET = 9,
27805 	ATA_LOG_NCQ_SEND_RECV_SUBCMDS_OFFSET = 0,
27806 	ATA_LOG_NCQ_SEND_RECV_SUBCMDS_DSM = 1,
27807 	ATA_LOG_NCQ_SEND_RECV_DSM_OFFSET = 4,
27808 	ATA_LOG_NCQ_SEND_RECV_DSM_TRIM = 1,
27809 	ATA_LOG_NCQ_SEND_RECV_RD_LOG_OFFSET = 8,
27810 	ATA_LOG_NCQ_SEND_RECV_RD_LOG_SUPPORTED = 1,
27811 	ATA_LOG_NCQ_SEND_RECV_WR_LOG_OFFSET = 12,
27812 	ATA_LOG_NCQ_SEND_RECV_WR_LOG_SUPPORTED = 1,
27813 	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OFFSET = 16,
27814 	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_OUT_SUPPORTED = 1,
27815 	ATA_LOG_NCQ_SEND_RECV_ZAC_MGMT_IN_SUPPORTED = 2,
27816 	ATA_LOG_NCQ_SEND_RECV_SIZE = 20,
27817 	ATA_LOG_NCQ_NON_DATA_SUBCMDS_OFFSET = 0,
27818 	ATA_LOG_NCQ_NON_DATA_ABORT_OFFSET = 0,
27819 	ATA_LOG_NCQ_NON_DATA_ABORT_NCQ = 1,
27820 	ATA_LOG_NCQ_NON_DATA_ABORT_ALL = 2,
27821 	ATA_LOG_NCQ_NON_DATA_ABORT_STREAMING = 4,
27822 	ATA_LOG_NCQ_NON_DATA_ABORT_NON_STREAMING = 8,
27823 	ATA_LOG_NCQ_NON_DATA_ABORT_SELECTED = 16,
27824 	ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OFFSET = 28,
27825 	ATA_LOG_NCQ_NON_DATA_ZAC_MGMT_OUT = 1,
27826 	ATA_LOG_NCQ_NON_DATA_SIZE = 64,
27827 	ATA_CMD_READ_LONG = 34,
27828 	ATA_CMD_READ_LONG_ONCE = 35,
27829 	ATA_CMD_WRITE_LONG = 50,
27830 	ATA_CMD_WRITE_LONG_ONCE = 51,
27831 	SETFEATURES_XFER = 3,
27832 	XFER_UDMA_7 = 71,
27833 	XFER_UDMA_6 = 70,
27834 	XFER_UDMA_5 = 69,
27835 	XFER_UDMA_4 = 68,
27836 	XFER_UDMA_3 = 67,
27837 	XFER_UDMA_2 = 66,
27838 	XFER_UDMA_1 = 65,
27839 	XFER_UDMA_0 = 64,
27840 	XFER_MW_DMA_4 = 36,
27841 	XFER_MW_DMA_3 = 35,
27842 	XFER_MW_DMA_2 = 34,
27843 	XFER_MW_DMA_1 = 33,
27844 	XFER_MW_DMA_0 = 32,
27845 	XFER_SW_DMA_2 = 18,
27846 	XFER_SW_DMA_1 = 17,
27847 	XFER_SW_DMA_0 = 16,
27848 	XFER_PIO_6 = 14,
27849 	XFER_PIO_5 = 13,
27850 	XFER_PIO_4 = 12,
27851 	XFER_PIO_3 = 11,
27852 	XFER_PIO_2 = 10,
27853 	XFER_PIO_1 = 9,
27854 	XFER_PIO_0 = 8,
27855 	XFER_PIO_SLOW = 0,
27856 	SETFEATURES_WC_ON = 2,
27857 	SETFEATURES_WC_OFF = 130,
27858 	SETFEATURES_RA_ON = 170,
27859 	SETFEATURES_RA_OFF = 85,
27860 	SETFEATURES_AAM_ON = 66,
27861 	SETFEATURES_AAM_OFF = 194,
27862 	SETFEATURES_SPINUP = 7,
27863 	SETFEATURES_SPINUP_TIMEOUT = 30000,
27864 	SETFEATURES_SATA_ENABLE = 16,
27865 	SETFEATURES_SATA_DISABLE = 144,
27866 	SATA_FPDMA_OFFSET = 1,
27867 	SATA_FPDMA_AA = 2,
27868 	SATA_DIPM = 3,
27869 	SATA_FPDMA_IN_ORDER = 4,
27870 	SATA_AN = 5,
27871 	SATA_SSP = 6,
27872 	SATA_DEVSLP = 9,
27873 	SETFEATURE_SENSE_DATA = 195,
27874 	ATA_SET_MAX_ADDR = 0,
27875 	ATA_SET_MAX_PASSWD = 1,
27876 	ATA_SET_MAX_LOCK = 2,
27877 	ATA_SET_MAX_UNLOCK = 3,
27878 	ATA_SET_MAX_FREEZE_LOCK = 4,
27879 	ATA_SET_MAX_PASSWD_DMA = 5,
27880 	ATA_SET_MAX_UNLOCK_DMA = 6,
27881 	ATA_DCO_RESTORE = 192,
27882 	ATA_DCO_FREEZE_LOCK = 193,
27883 	ATA_DCO_IDENTIFY = 194,
27884 	ATA_DCO_SET = 195,
27885 	ATA_SMART_ENABLE = 216,
27886 	ATA_SMART_READ_VALUES = 208,
27887 	ATA_SMART_READ_THRESHOLDS = 209,
27888 	ATA_DSM_TRIM = 1,
27889 	ATA_SMART_LBAM_PASS = 79,
27890 	ATA_SMART_LBAH_PASS = 194,
27891 	ATAPI_PKT_DMA = 1,
27892 	ATAPI_DMADIR = 4,
27893 	ATAPI_CDB_LEN = 16,
27894 	SATA_PMP_MAX_PORTS = 15,
27895 	SATA_PMP_CTRL_PORT = 15,
27896 	SATA_PMP_GSCR_DWORDS = 128,
27897 	SATA_PMP_GSCR_PROD_ID = 0,
27898 	SATA_PMP_GSCR_REV = 1,
27899 	SATA_PMP_GSCR_PORT_INFO = 2,
27900 	SATA_PMP_GSCR_ERROR = 32,
27901 	SATA_PMP_GSCR_ERROR_EN = 33,
27902 	SATA_PMP_GSCR_FEAT = 64,
27903 	SATA_PMP_GSCR_FEAT_EN = 96,
27904 	SATA_PMP_PSCR_STATUS = 0,
27905 	SATA_PMP_PSCR_ERROR = 1,
27906 	SATA_PMP_PSCR_CONTROL = 2,
27907 	SATA_PMP_FEAT_BIST = 1,
27908 	SATA_PMP_FEAT_PMREQ = 2,
27909 	SATA_PMP_FEAT_DYNSSC = 4,
27910 	SATA_PMP_FEAT_NOTIFY = 8,
27911 	ATA_CBL_NONE = 0,
27912 	ATA_CBL_PATA40 = 1,
27913 	ATA_CBL_PATA80 = 2,
27914 	ATA_CBL_PATA40_SHORT = 3,
27915 	ATA_CBL_PATA_UNK = 4,
27916 	ATA_CBL_PATA_IGN = 5,
27917 	ATA_CBL_SATA = 6,
27918 	SCR_STATUS = 0,
27919 	SCR_ERROR = 1,
27920 	SCR_CONTROL = 2,
27921 	SCR_ACTIVE = 3,
27922 	SCR_NOTIFICATION = 4,
27923 	SERR_DATA_RECOVERED = 1,
27924 	SERR_COMM_RECOVERED = 2,
27925 	SERR_DATA = 256,
27926 	SERR_PERSISTENT = 512,
27927 	SERR_PROTOCOL = 1024,
27928 	SERR_INTERNAL = 2048,
27929 	SERR_PHYRDY_CHG = 65536,
27930 	SERR_PHY_INT_ERR = 131072,
27931 	SERR_COMM_WAKE = 262144,
27932 	SERR_10B_8B_ERR = 524288,
27933 	SERR_DISPARITY = 1048576,
27934 	SERR_CRC = 2097152,
27935 	SERR_HANDSHAKE = 4194304,
27936 	SERR_LINK_SEQ_ERR = 8388608,
27937 	SERR_TRANS_ST_ERROR = 16777216,
27938 	SERR_UNRECOG_FIS = 33554432,
27939 	SERR_DEV_XCHG = 67108864,
27940 };
27941 
27942 enum ata_prot_flags {
27943 	ATA_PROT_FLAG_PIO = 1,
27944 	ATA_PROT_FLAG_DMA = 2,
27945 	ATA_PROT_FLAG_NCQ = 4,
27946 	ATA_PROT_FLAG_ATAPI = 8,
27947 	ATA_PROT_UNKNOWN = 255,
27948 	ATA_PROT_NODATA = 0,
27949 	ATA_PROT_PIO = 1,
27950 	ATA_PROT_DMA = 2,
27951 	ATA_PROT_NCQ_NODATA = 4,
27952 	ATA_PROT_NCQ = 6,
27953 	ATAPI_PROT_NODATA = 8,
27954 	ATAPI_PROT_PIO = 9,
27955 	ATAPI_PROT_DMA = 10,
27956 };
27957 
27958 struct ata_bmdma_prd {
27959 	__le32 addr;
27960 	__le32 flags_len;
27961 };
27962 
27963 struct cdrom_msf0 {
27964 	__u8 minute;
27965 	__u8 second;
27966 	__u8 frame;
27967 };
27968 
27969 union cdrom_addr {
27970 	struct cdrom_msf0 msf;
27971 	int lba;
27972 };
27973 
27974 struct cdrom_multisession {
27975 	union cdrom_addr addr;
27976 	__u8 xa_flag;
27977 	__u8 addr_format;
27978 };
27979 
27980 struct cdrom_mcn {
27981 	__u8 medium_catalog_number[14];
27982 };
27983 
27984 struct packet_command {
27985 	unsigned char cmd[12];
27986 	unsigned char *buffer;
27987 	unsigned int buflen;
27988 	int stat;
27989 	struct scsi_sense_hdr *sshdr;
27990 	unsigned char data_direction;
27991 	int quiet;
27992 	int timeout;
27993 	void *reserved[1];
27994 };
27995 
27996 struct cdrom_device_ops {
27997 	int (*open)(struct cdrom_device_info *, int);
27998 	void (*release)(struct cdrom_device_info *);
27999 	int (*drive_status)(struct cdrom_device_info *, int);
28000 	unsigned int (*check_events)(struct cdrom_device_info *, unsigned int, int);
28001 	int (*tray_move)(struct cdrom_device_info *, int);
28002 	int (*lock_door)(struct cdrom_device_info *, int);
28003 	int (*select_speed)(struct cdrom_device_info *, int);
28004 	int (*get_last_session)(struct cdrom_device_info *, struct cdrom_multisession *);
28005 	int (*get_mcn)(struct cdrom_device_info *, struct cdrom_mcn *);
28006 	int (*reset)(struct cdrom_device_info *);
28007 	int (*audio_ioctl)(struct cdrom_device_info *, unsigned int, void *);
28008 	int (*generic_packet)(struct cdrom_device_info *, struct packet_command *);
28009 	int (*read_cdda_bpc)(struct cdrom_device_info *, void *, u32, u32, u8 *);
28010 	const int capability;
28011 };
28012 
28013 typedef u64 async_cookie_t;
28014 
28015 enum {
28016 	LIBATA_MAX_PRD = 128,
28017 	LIBATA_DUMB_MAX_PRD = 64,
28018 	ATA_DEF_QUEUE = 1,
28019 	ATA_MAX_QUEUE = 32,
28020 	ATA_TAG_INTERNAL = 32,
28021 	ATA_SHORT_PAUSE = 16,
28022 	ATAPI_MAX_DRAIN = 16384,
28023 	ATA_ALL_DEVICES = 3,
28024 	ATA_SHT_EMULATED = 1,
28025 	ATA_SHT_THIS_ID = -1,
28026 	ATA_TFLAG_LBA48 = 1,
28027 	ATA_TFLAG_ISADDR = 2,
28028 	ATA_TFLAG_DEVICE = 4,
28029 	ATA_TFLAG_WRITE = 8,
28030 	ATA_TFLAG_LBA = 16,
28031 	ATA_TFLAG_FUA = 32,
28032 	ATA_TFLAG_POLLING = 64,
28033 	ATA_DFLAG_LBA = 1,
28034 	ATA_DFLAG_LBA48 = 2,
28035 	ATA_DFLAG_CDB_INTR = 4,
28036 	ATA_DFLAG_NCQ = 8,
28037 	ATA_DFLAG_FLUSH_EXT = 16,
28038 	ATA_DFLAG_ACPI_PENDING = 32,
28039 	ATA_DFLAG_ACPI_FAILED = 64,
28040 	ATA_DFLAG_AN = 128,
28041 	ATA_DFLAG_TRUSTED = 256,
28042 	ATA_DFLAG_DMADIR = 1024,
28043 	ATA_DFLAG_CFG_MASK = 4095,
28044 	ATA_DFLAG_PIO = 4096,
28045 	ATA_DFLAG_NCQ_OFF = 8192,
28046 	ATA_DFLAG_SLEEPING = 32768,
28047 	ATA_DFLAG_DUBIOUS_XFER = 65536,
28048 	ATA_DFLAG_NO_UNLOAD = 131072,
28049 	ATA_DFLAG_UNLOCK_HPA = 262144,
28050 	ATA_DFLAG_NCQ_SEND_RECV = 524288,
28051 	ATA_DFLAG_NCQ_PRIO = 1048576,
28052 	ATA_DFLAG_NCQ_PRIO_ENABLE = 2097152,
28053 	ATA_DFLAG_INIT_MASK = 16777215,
28054 	ATA_DFLAG_DETACH = 16777216,
28055 	ATA_DFLAG_DETACHED = 33554432,
28056 	ATA_DFLAG_DA = 67108864,
28057 	ATA_DFLAG_DEVSLP = 134217728,
28058 	ATA_DFLAG_ACPI_DISABLED = 268435456,
28059 	ATA_DFLAG_D_SENSE = 536870912,
28060 	ATA_DFLAG_ZAC = 1073741824,
28061 	ATA_DFLAG_FEATURES_MASK = 202899712,
28062 	ATA_DEV_UNKNOWN = 0,
28063 	ATA_DEV_ATA = 1,
28064 	ATA_DEV_ATA_UNSUP = 2,
28065 	ATA_DEV_ATAPI = 3,
28066 	ATA_DEV_ATAPI_UNSUP = 4,
28067 	ATA_DEV_PMP = 5,
28068 	ATA_DEV_PMP_UNSUP = 6,
28069 	ATA_DEV_SEMB = 7,
28070 	ATA_DEV_SEMB_UNSUP = 8,
28071 	ATA_DEV_ZAC = 9,
28072 	ATA_DEV_ZAC_UNSUP = 10,
28073 	ATA_DEV_NONE = 11,
28074 	ATA_LFLAG_NO_HRST = 2,
28075 	ATA_LFLAG_NO_SRST = 4,
28076 	ATA_LFLAG_ASSUME_ATA = 8,
28077 	ATA_LFLAG_ASSUME_SEMB = 16,
28078 	ATA_LFLAG_ASSUME_CLASS = 24,
28079 	ATA_LFLAG_NO_RETRY = 32,
28080 	ATA_LFLAG_DISABLED = 64,
28081 	ATA_LFLAG_SW_ACTIVITY = 128,
28082 	ATA_LFLAG_NO_LPM = 256,
28083 	ATA_LFLAG_RST_ONCE = 512,
28084 	ATA_LFLAG_CHANGED = 1024,
28085 	ATA_LFLAG_NO_DEBOUNCE_DELAY = 2048,
28086 	ATA_FLAG_SLAVE_POSS = 1,
28087 	ATA_FLAG_SATA = 2,
28088 	ATA_FLAG_NO_LPM = 4,
28089 	ATA_FLAG_NO_LOG_PAGE = 32,
28090 	ATA_FLAG_NO_ATAPI = 64,
28091 	ATA_FLAG_PIO_DMA = 128,
28092 	ATA_FLAG_PIO_LBA48 = 256,
28093 	ATA_FLAG_PIO_POLLING = 512,
28094 	ATA_FLAG_NCQ = 1024,
28095 	ATA_FLAG_NO_POWEROFF_SPINDOWN = 2048,
28096 	ATA_FLAG_NO_HIBERNATE_SPINDOWN = 4096,
28097 	ATA_FLAG_DEBUGMSG = 8192,
28098 	ATA_FLAG_FPDMA_AA = 16384,
28099 	ATA_FLAG_IGN_SIMPLEX = 32768,
28100 	ATA_FLAG_NO_IORDY = 65536,
28101 	ATA_FLAG_ACPI_SATA = 131072,
28102 	ATA_FLAG_AN = 262144,
28103 	ATA_FLAG_PMP = 524288,
28104 	ATA_FLAG_FPDMA_AUX = 1048576,
28105 	ATA_FLAG_EM = 2097152,
28106 	ATA_FLAG_SW_ACTIVITY = 4194304,
28107 	ATA_FLAG_NO_DIPM = 8388608,
28108 	ATA_FLAG_SAS_HOST = 16777216,
28109 	ATA_PFLAG_EH_PENDING = 1,
28110 	ATA_PFLAG_EH_IN_PROGRESS = 2,
28111 	ATA_PFLAG_FROZEN = 4,
28112 	ATA_PFLAG_RECOVERED = 8,
28113 	ATA_PFLAG_LOADING = 16,
28114 	ATA_PFLAG_SCSI_HOTPLUG = 64,
28115 	ATA_PFLAG_INITIALIZING = 128,
28116 	ATA_PFLAG_RESETTING = 256,
28117 	ATA_PFLAG_UNLOADING = 512,
28118 	ATA_PFLAG_UNLOADED = 1024,
28119 	ATA_PFLAG_SUSPENDED = 131072,
28120 	ATA_PFLAG_PM_PENDING = 262144,
28121 	ATA_PFLAG_INIT_GTM_VALID = 524288,
28122 	ATA_PFLAG_PIO32 = 1048576,
28123 	ATA_PFLAG_PIO32CHANGE = 2097152,
28124 	ATA_PFLAG_EXTERNAL = 4194304,
28125 	ATA_QCFLAG_ACTIVE = 1,
28126 	ATA_QCFLAG_DMAMAP = 2,
28127 	ATA_QCFLAG_IO = 8,
28128 	ATA_QCFLAG_RESULT_TF = 16,
28129 	ATA_QCFLAG_CLEAR_EXCL = 32,
28130 	ATA_QCFLAG_QUIET = 64,
28131 	ATA_QCFLAG_RETRY = 128,
28132 	ATA_QCFLAG_FAILED = 65536,
28133 	ATA_QCFLAG_SENSE_VALID = 131072,
28134 	ATA_QCFLAG_EH_SCHEDULED = 262144,
28135 	ATA_HOST_SIMPLEX = 1,
28136 	ATA_HOST_STARTED = 2,
28137 	ATA_HOST_PARALLEL_SCAN = 4,
28138 	ATA_HOST_IGNORE_ATA = 8,
28139 	ATA_TMOUT_BOOT = 30000,
28140 	ATA_TMOUT_BOOT_QUICK = 7000,
28141 	ATA_TMOUT_INTERNAL_QUICK = 5000,
28142 	ATA_TMOUT_MAX_PARK = 30000,
28143 	ATA_TMOUT_FF_WAIT_LONG = 2000,
28144 	ATA_TMOUT_FF_WAIT = 800,
28145 	ATA_WAIT_AFTER_RESET = 150,
28146 	ATA_TMOUT_PMP_SRST_WAIT = 5000,
28147 	ATA_TMOUT_SPURIOUS_PHY = 10000,
28148 	BUS_UNKNOWN = 0,
28149 	BUS_DMA = 1,
28150 	BUS_IDLE = 2,
28151 	BUS_NOINTR = 3,
28152 	BUS_NODATA = 4,
28153 	BUS_TIMER = 5,
28154 	BUS_PIO = 6,
28155 	BUS_EDD = 7,
28156 	BUS_IDENTIFY = 8,
28157 	BUS_PACKET = 9,
28158 	PORT_UNKNOWN = 0,
28159 	PORT_ENABLED = 1,
28160 	PORT_DISABLED = 2,
28161 	ATA_NR_PIO_MODES = 7,
28162 	ATA_NR_MWDMA_MODES = 5,
28163 	ATA_NR_UDMA_MODES = 8,
28164 	ATA_SHIFT_PIO = 0,
28165 	ATA_SHIFT_MWDMA = 7,
28166 	ATA_SHIFT_UDMA = 12,
28167 	ATA_SHIFT_PRIO = 6,
28168 	ATA_PRIO_HIGH = 2,
28169 	ATA_DMA_PAD_SZ = 4,
28170 	ATA_ERING_SIZE = 32,
28171 	ATA_DEFER_LINK = 1,
28172 	ATA_DEFER_PORT = 2,
28173 	ATA_EH_DESC_LEN = 80,
28174 	ATA_EH_REVALIDATE = 1,
28175 	ATA_EH_SOFTRESET = 2,
28176 	ATA_EH_HARDRESET = 4,
28177 	ATA_EH_RESET = 6,
28178 	ATA_EH_ENABLE_LINK = 8,
28179 	ATA_EH_PARK = 32,
28180 	ATA_EH_PERDEV_MASK = 33,
28181 	ATA_EH_ALL_ACTIONS = 15,
28182 	ATA_EHI_HOTPLUGGED = 1,
28183 	ATA_EHI_NO_AUTOPSY = 4,
28184 	ATA_EHI_QUIET = 8,
28185 	ATA_EHI_NO_RECOVERY = 16,
28186 	ATA_EHI_DID_SOFTRESET = 65536,
28187 	ATA_EHI_DID_HARDRESET = 131072,
28188 	ATA_EHI_PRINTINFO = 262144,
28189 	ATA_EHI_SETMODE = 524288,
28190 	ATA_EHI_POST_SETMODE = 1048576,
28191 	ATA_EHI_DID_RESET = 196608,
28192 	ATA_EHI_TO_SLAVE_MASK = 12,
28193 	ATA_EH_MAX_TRIES = 5,
28194 	ATA_LINK_RESUME_TRIES = 5,
28195 	ATA_PROBE_MAX_TRIES = 3,
28196 	ATA_EH_DEV_TRIES = 3,
28197 	ATA_EH_PMP_TRIES = 5,
28198 	ATA_EH_PMP_LINK_TRIES = 3,
28199 	SATA_PMP_RW_TIMEOUT = 3000,
28200 	ATA_EH_CMD_TIMEOUT_TABLE_SIZE = 7,
28201 	ATA_HORKAGE_DIAGNOSTIC = 1,
28202 	ATA_HORKAGE_NODMA = 2,
28203 	ATA_HORKAGE_NONCQ = 4,
28204 	ATA_HORKAGE_MAX_SEC_128 = 8,
28205 	ATA_HORKAGE_BROKEN_HPA = 16,
28206 	ATA_HORKAGE_DISABLE = 32,
28207 	ATA_HORKAGE_HPA_SIZE = 64,
28208 	ATA_HORKAGE_IVB = 256,
28209 	ATA_HORKAGE_STUCK_ERR = 512,
28210 	ATA_HORKAGE_BRIDGE_OK = 1024,
28211 	ATA_HORKAGE_ATAPI_MOD16_DMA = 2048,
28212 	ATA_HORKAGE_FIRMWARE_WARN = 4096,
28213 	ATA_HORKAGE_1_5_GBPS = 8192,
28214 	ATA_HORKAGE_NOSETXFER = 16384,
28215 	ATA_HORKAGE_BROKEN_FPDMA_AA = 32768,
28216 	ATA_HORKAGE_DUMP_ID = 65536,
28217 	ATA_HORKAGE_MAX_SEC_LBA48 = 131072,
28218 	ATA_HORKAGE_ATAPI_DMADIR = 262144,
28219 	ATA_HORKAGE_NO_NCQ_TRIM = 524288,
28220 	ATA_HORKAGE_NOLPM = 1048576,
28221 	ATA_HORKAGE_WD_BROKEN_LPM = 2097152,
28222 	ATA_HORKAGE_ZERO_AFTER_TRIM = 4194304,
28223 	ATA_HORKAGE_NO_DMA_LOG = 8388608,
28224 	ATA_HORKAGE_NOTRIM = 16777216,
28225 	ATA_HORKAGE_MAX_SEC_1024 = 33554432,
28226 	ATA_HORKAGE_MAX_TRIM_128M = 67108864,
28227 	ATA_HORKAGE_NO_NCQ_ON_ATI = 134217728,
28228 	ATA_HORKAGE_NO_ID_DEV_LOG = 268435456,
28229 	ATA_HORKAGE_NO_LOG_DIR = 536870912,
28230 	ATA_DMA_MASK_ATA = 1,
28231 	ATA_DMA_MASK_ATAPI = 2,
28232 	ATA_DMA_MASK_CFA = 4,
28233 	ATAPI_READ = 0,
28234 	ATAPI_WRITE = 1,
28235 	ATAPI_READ_CD = 2,
28236 	ATAPI_PASS_THRU = 3,
28237 	ATAPI_MISC = 4,
28238 	ATA_TIMING_SETUP = 1,
28239 	ATA_TIMING_ACT8B = 2,
28240 	ATA_TIMING_REC8B = 4,
28241 	ATA_TIMING_CYC8B = 8,
28242 	ATA_TIMING_8BIT = 14,
28243 	ATA_TIMING_ACTIVE = 16,
28244 	ATA_TIMING_RECOVER = 32,
28245 	ATA_TIMING_DMACK_HOLD = 64,
28246 	ATA_TIMING_CYCLE = 128,
28247 	ATA_TIMING_UDMA = 256,
28248 	ATA_TIMING_ALL = 511,
28249 	ATA_ACPI_FILTER_SETXFER = 1,
28250 	ATA_ACPI_FILTER_LOCK = 2,
28251 	ATA_ACPI_FILTER_DIPM = 4,
28252 	ATA_ACPI_FILTER_FPDMA_OFFSET = 8,
28253 	ATA_ACPI_FILTER_FPDMA_AA = 16,
28254 	ATA_ACPI_FILTER_DEFAULT = 7,
28255 };
28256 
28257 enum ata_completion_errors {
28258 	AC_ERR_OK = 0,
28259 	AC_ERR_DEV = 1,
28260 	AC_ERR_HSM = 2,
28261 	AC_ERR_TIMEOUT = 4,
28262 	AC_ERR_MEDIA = 8,
28263 	AC_ERR_ATA_BUS = 16,
28264 	AC_ERR_HOST_BUS = 32,
28265 	AC_ERR_SYSTEM = 64,
28266 	AC_ERR_INVALID = 128,
28267 	AC_ERR_OTHER = 256,
28268 	AC_ERR_NODEV_HINT = 512,
28269 	AC_ERR_NCQ = 1024,
28270 };
28271 
28272 enum ata_lpm_policy {
28273 	ATA_LPM_UNKNOWN = 0,
28274 	ATA_LPM_MAX_POWER = 1,
28275 	ATA_LPM_MED_POWER = 2,
28276 	ATA_LPM_MED_POWER_WITH_DIPM = 3,
28277 	ATA_LPM_MIN_POWER_WITH_PARTIAL = 4,
28278 	ATA_LPM_MIN_POWER = 5,
28279 };
28280 
28281 enum ata_lpm_hints {
28282 	ATA_LPM_EMPTY = 1,
28283 	ATA_LPM_HIPM = 2,
28284 	ATA_LPM_WAKE_ONLY = 4,
28285 };
28286 
28287 struct ata_queued_cmd;
28288 
28289 typedef void (*ata_qc_cb_t)(struct ata_queued_cmd *);
28290 
28291 struct ata_taskfile {
28292 	long unsigned int flags;
28293 	u8 protocol;
28294 	u8 ctl;
28295 	u8 hob_feature;
28296 	u8 hob_nsect;
28297 	u8 hob_lbal;
28298 	u8 hob_lbam;
28299 	u8 hob_lbah;
28300 	union {
28301 		u8 error;
28302 		u8 feature;
28303 	};
28304 	u8 nsect;
28305 	u8 lbal;
28306 	u8 lbam;
28307 	u8 lbah;
28308 	u8 device;
28309 	union {
28310 		u8 status;
28311 		u8 command;
28312 	};
28313 	u32 auxiliary;
28314 };
28315 
28316 struct ata_port;
28317 
28318 struct ata_device;
28319 
28320 struct ata_queued_cmd {
28321 	struct ata_port *ap;
28322 	struct ata_device *dev;
28323 	struct scsi_cmnd *scsicmd;
28324 	void (*scsidone)(struct scsi_cmnd *);
28325 	struct ata_taskfile tf;
28326 	u8 cdb[16];
28327 	long unsigned int flags;
28328 	unsigned int tag;
28329 	unsigned int hw_tag;
28330 	unsigned int n_elem;
28331 	unsigned int orig_n_elem;
28332 	int dma_dir;
28333 	unsigned int sect_size;
28334 	unsigned int nbytes;
28335 	unsigned int extrabytes;
28336 	unsigned int curbytes;
28337 	struct scatterlist sgent;
28338 	struct scatterlist *sg;
28339 	struct scatterlist *cursg;
28340 	unsigned int cursg_ofs;
28341 	unsigned int err_mask;
28342 	struct ata_taskfile result_tf;
28343 	ata_qc_cb_t complete_fn;
28344 	void *private_data;
28345 	void *lldd_task;
28346 };
28347 
28348 struct ata_link;
28349 
28350 typedef int (*ata_prereset_fn_t)(struct ata_link *, long unsigned int);
28351 
28352 struct ata_eh_info {
28353 	struct ata_device *dev;
28354 	u32 serror;
28355 	unsigned int err_mask;
28356 	unsigned int action;
28357 	unsigned int dev_action[2];
28358 	unsigned int flags;
28359 	unsigned int probe_mask;
28360 	char desc[80];
28361 	int desc_len;
28362 };
28363 
28364 struct ata_eh_context {
28365 	struct ata_eh_info i;
28366 	int tries[2];
28367 	int cmd_timeout_idx[14];
28368 	unsigned int classes[2];
28369 	unsigned int did_probe_mask;
28370 	unsigned int unloaded_mask;
28371 	unsigned int saved_ncq_enabled;
28372 	u8 saved_xfer_mode[2];
28373 	long unsigned int last_reset;
28374 };
28375 
28376 struct ata_ering_entry {
28377 	unsigned int eflags;
28378 	unsigned int err_mask;
28379 	u64 timestamp;
28380 };
28381 
28382 struct ata_ering {
28383 	int cursor;
28384 	struct ata_ering_entry ring[32];
28385 };
28386 
28387 struct ata_cpr_log;
28388 
28389 struct ata_device {
28390 	struct ata_link *link;
28391 	unsigned int devno;
28392 	unsigned int horkage;
28393 	long unsigned int flags;
28394 	struct scsi_device *sdev;
28395 	void *private_data;
28396 	struct device tdev;
28397 	u64 n_sectors;
28398 	u64 n_native_sectors;
28399 	unsigned int class;
28400 	long unsigned int unpark_deadline;
28401 	u8 pio_mode;
28402 	u8 dma_mode;
28403 	u8 xfer_mode;
28404 	unsigned int xfer_shift;
28405 	unsigned int multi_count;
28406 	unsigned int max_sectors;
28407 	unsigned int cdb_len;
28408 	unsigned int pio_mask;
28409 	unsigned int mwdma_mask;
28410 	unsigned int udma_mask;
28411 	u16 cylinders;
28412 	u16 heads;
28413 	u16 sectors;
28414 	union {
28415 		u16 id[256];
28416 		u32 gscr[128];
28417 	};
28418 	u8 devslp_timing[8];
28419 	u8 ncq_send_recv_cmds[20];
28420 	u8 ncq_non_data_cmds[64];
28421 	u32 zac_zoned_cap;
28422 	u32 zac_zones_optimal_open;
28423 	u32 zac_zones_optimal_nonseq;
28424 	u32 zac_zones_max_open;
28425 	struct ata_cpr_log *cpr_log;
28426 	int spdn_cnt;
28427 	struct ata_ering ering;
28428 	long: 64;
28429 	long: 64;
28430 	long: 64;
28431 	long: 64;
28432 	long: 64;
28433 	long: 64;
28434 	long: 64;
28435 	long: 64;
28436 	long: 64;
28437 	long: 64;
28438 	long: 64;
28439 	long: 64;
28440 	long: 64;
28441 	long: 64;
28442 	long: 64;
28443 };
28444 
28445 struct ata_link {
28446 	struct ata_port *ap;
28447 	int pmp;
28448 	struct device tdev;
28449 	unsigned int active_tag;
28450 	u32 sactive;
28451 	unsigned int flags;
28452 	u32 saved_scontrol;
28453 	unsigned int hw_sata_spd_limit;
28454 	unsigned int sata_spd_limit;
28455 	unsigned int sata_spd;
28456 	enum ata_lpm_policy lpm_policy;
28457 	struct ata_eh_info eh_info;
28458 	struct ata_eh_context eh_context;
28459 	long: 64;
28460 	long: 64;
28461 	long: 64;
28462 	long: 64;
28463 	long: 64;
28464 	long: 64;
28465 	long: 64;
28466 	long: 64;
28467 	long: 64;
28468 	long: 64;
28469 	long: 64;
28470 	long: 64;
28471 	long: 64;
28472 	long: 64;
28473 	struct ata_device device[2];
28474 	long unsigned int last_lpm_change;
28475 	long: 64;
28476 	long: 64;
28477 	long: 64;
28478 	long: 64;
28479 	long: 64;
28480 	long: 64;
28481 	long: 64;
28482 	long: 64;
28483 	long: 64;
28484 	long: 64;
28485 	long: 64;
28486 	long: 64;
28487 	long: 64;
28488 	long: 64;
28489 	long: 64;
28490 };
28491 
28492 typedef int (*ata_reset_fn_t)(struct ata_link *, unsigned int *, long unsigned int);
28493 
28494 typedef void (*ata_postreset_fn_t)(struct ata_link *, unsigned int *);
28495 
28496 enum sw_activity {
28497 	OFF = 0,
28498 	BLINK_ON = 1,
28499 	BLINK_OFF = 2,
28500 };
28501 
28502 struct ata_ioports {
28503 	void *cmd_addr;
28504 	void *data_addr;
28505 	void *error_addr;
28506 	void *feature_addr;
28507 	void *nsect_addr;
28508 	void *lbal_addr;
28509 	void *lbam_addr;
28510 	void *lbah_addr;
28511 	void *device_addr;
28512 	void *status_addr;
28513 	void *command_addr;
28514 	void *altstatus_addr;
28515 	void *ctl_addr;
28516 	void *bmdma_addr;
28517 	void *scr_addr;
28518 };
28519 
28520 struct ata_port_operations;
28521 
28522 struct ata_host {
28523 	spinlock_t lock;
28524 	struct device *dev;
28525 	void * const *iomap;
28526 	unsigned int n_ports;
28527 	unsigned int n_tags;
28528 	void *private_data;
28529 	struct ata_port_operations *ops;
28530 	long unsigned int flags;
28531 	struct kref kref;
28532 	struct mutex eh_mutex;
28533 	struct task_struct *eh_owner;
28534 	struct ata_port *simplex_claimed;
28535 	struct ata_port *ports[0];
28536 };
28537 
28538 struct ata_port_operations {
28539 	int (*qc_defer)(struct ata_queued_cmd *);
28540 	int (*check_atapi_dma)(struct ata_queued_cmd *);
28541 	enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *);
28542 	unsigned int (*qc_issue)(struct ata_queued_cmd *);
28543 	bool (*qc_fill_rtf)(struct ata_queued_cmd *);
28544 	int (*cable_detect)(struct ata_port *);
28545 	unsigned int (*mode_filter)(struct ata_device *, unsigned int);
28546 	void (*set_piomode)(struct ata_port *, struct ata_device *);
28547 	void (*set_dmamode)(struct ata_port *, struct ata_device *);
28548 	int (*set_mode)(struct ata_link *, struct ata_device **);
28549 	unsigned int (*read_id)(struct ata_device *, struct ata_taskfile *, __le16 *);
28550 	void (*dev_config)(struct ata_device *);
28551 	void (*freeze)(struct ata_port *);
28552 	void (*thaw)(struct ata_port *);
28553 	ata_prereset_fn_t prereset;
28554 	ata_reset_fn_t softreset;
28555 	ata_reset_fn_t hardreset;
28556 	ata_postreset_fn_t postreset;
28557 	ata_prereset_fn_t pmp_prereset;
28558 	ata_reset_fn_t pmp_softreset;
28559 	ata_reset_fn_t pmp_hardreset;
28560 	ata_postreset_fn_t pmp_postreset;
28561 	void (*error_handler)(struct ata_port *);
28562 	void (*lost_interrupt)(struct ata_port *);
28563 	void (*post_internal_cmd)(struct ata_queued_cmd *);
28564 	void (*sched_eh)(struct ata_port *);
28565 	void (*end_eh)(struct ata_port *);
28566 	int (*scr_read)(struct ata_link *, unsigned int, u32 *);
28567 	int (*scr_write)(struct ata_link *, unsigned int, u32);
28568 	void (*pmp_attach)(struct ata_port *);
28569 	void (*pmp_detach)(struct ata_port *);
28570 	int (*set_lpm)(struct ata_link *, enum ata_lpm_policy, unsigned int);
28571 	int (*port_suspend)(struct ata_port *, pm_message_t);
28572 	int (*port_resume)(struct ata_port *);
28573 	int (*port_start)(struct ata_port *);
28574 	void (*port_stop)(struct ata_port *);
28575 	void (*host_stop)(struct ata_host *);
28576 	void (*sff_dev_select)(struct ata_port *, unsigned int);
28577 	void (*sff_set_devctl)(struct ata_port *, u8);
28578 	u8 (*sff_check_status)(struct ata_port *);
28579 	u8 (*sff_check_altstatus)(struct ata_port *);
28580 	void (*sff_tf_load)(struct ata_port *, const struct ata_taskfile *);
28581 	void (*sff_tf_read)(struct ata_port *, struct ata_taskfile *);
28582 	void (*sff_exec_command)(struct ata_port *, const struct ata_taskfile *);
28583 	unsigned int (*sff_data_xfer)(struct ata_queued_cmd *, unsigned char *, unsigned int, int);
28584 	void (*sff_irq_on)(struct ata_port *);
28585 	bool (*sff_irq_check)(struct ata_port *);
28586 	void (*sff_irq_clear)(struct ata_port *);
28587 	void (*sff_drain_fifo)(struct ata_queued_cmd *);
28588 	void (*bmdma_setup)(struct ata_queued_cmd *);
28589 	void (*bmdma_start)(struct ata_queued_cmd *);
28590 	void (*bmdma_stop)(struct ata_queued_cmd *);
28591 	u8 (*bmdma_status)(struct ata_port *);
28592 	ssize_t (*em_show)(struct ata_port *, char *);
28593 	ssize_t (*em_store)(struct ata_port *, const char *, size_t);
28594 	ssize_t (*sw_activity_show)(struct ata_device *, char *);
28595 	ssize_t (*sw_activity_store)(struct ata_device *, enum sw_activity);
28596 	ssize_t (*transmit_led_message)(struct ata_port *, u32, ssize_t);
28597 	void (*phy_reset)(struct ata_port *);
28598 	void (*eng_timeout)(struct ata_port *);
28599 	const struct ata_port_operations *inherits;
28600 };
28601 
28602 struct ata_port_stats {
28603 	long unsigned int unhandled_irq;
28604 	long unsigned int idle_irq;
28605 	long unsigned int rw_reqbuf;
28606 };
28607 
28608 struct ata_port {
28609 	struct Scsi_Host *scsi_host;
28610 	struct ata_port_operations *ops;
28611 	spinlock_t *lock;
28612 	long unsigned int flags;
28613 	unsigned int pflags;
28614 	unsigned int print_id;
28615 	unsigned int local_port_no;
28616 	unsigned int port_no;
28617 	struct ata_ioports ioaddr;
28618 	u8 ctl;
28619 	u8 last_ctl;
28620 	struct ata_link *sff_pio_task_link;
28621 	struct delayed_work sff_pio_task;
28622 	struct ata_bmdma_prd *bmdma_prd;
28623 	dma_addr_t bmdma_prd_dma;
28624 	unsigned int pio_mask;
28625 	unsigned int mwdma_mask;
28626 	unsigned int udma_mask;
28627 	unsigned int cbl;
28628 	struct ata_queued_cmd qcmd[33];
28629 	u64 qc_active;
28630 	int nr_active_links;
28631 	long: 64;
28632 	long: 64;
28633 	long: 64;
28634 	long: 64;
28635 	long: 64;
28636 	long: 64;
28637 	long: 64;
28638 	long: 64;
28639 	long: 64;
28640 	long: 64;
28641 	struct ata_link link;
28642 	struct ata_link *slave_link;
28643 	int nr_pmp_links;
28644 	struct ata_link *pmp_link;
28645 	struct ata_link *excl_link;
28646 	struct ata_port_stats stats;
28647 	struct ata_host *host;
28648 	struct device *dev;
28649 	struct device tdev;
28650 	struct mutex scsi_scan_mutex;
28651 	struct delayed_work hotplug_task;
28652 	struct work_struct scsi_rescan_task;
28653 	unsigned int hsm_task_state;
28654 	struct list_head eh_done_q;
28655 	wait_queue_head_t eh_wait_q;
28656 	int eh_tries;
28657 	struct completion park_req_pending;
28658 	pm_message_t pm_mesg;
28659 	enum ata_lpm_policy target_lpm_policy;
28660 	struct timer_list fastdrain_timer;
28661 	unsigned int fastdrain_cnt;
28662 	async_cookie_t cookie;
28663 	int em_message_type;
28664 	void *private_data;
28665 	long: 64;
28666 	long: 64;
28667 	long: 64;
28668 	long: 64;
28669 	long: 64;
28670 	long: 64;
28671 	long: 64;
28672 	long: 64;
28673 	long: 64;
28674 	long: 64;
28675 	long: 64;
28676 	long: 64;
28677 	u8 sector_buf[512];
28678 };
28679 
28680 struct ata_cpr {
28681 	u8 num;
28682 	u8 num_storage_elements;
28683 	u64 start_lba;
28684 	u64 num_lbas;
28685 };
28686 
28687 struct ata_cpr_log {
28688 	u8 nr_cpr;
28689 	struct ata_cpr cpr[0];
28690 };
28691 
28692 enum ata_link_iter_mode {
28693 	ATA_LITER_EDGE = 0,
28694 	ATA_LITER_HOST_FIRST = 1,
28695 	ATA_LITER_PMP_FIRST = 2,
28696 };
28697 
28698 enum ata_dev_iter_mode {
28699 	ATA_DITER_ENABLED = 0,
28700 	ATA_DITER_ENABLED_REVERSE = 1,
28701 	ATA_DITER_ALL = 2,
28702 	ATA_DITER_ALL_REVERSE = 3,
28703 };
28704 
28705 enum {
28706 	ATA_READID_POSTRESET = 1,
28707 	ATA_DNXFER_PIO = 0,
28708 	ATA_DNXFER_DMA = 1,
28709 	ATA_DNXFER_40C = 2,
28710 	ATA_DNXFER_FORCE_PIO = 3,
28711 	ATA_DNXFER_FORCE_PIO0 = 4,
28712 	ATA_DNXFER_QUIET = -2147483648,
28713 };
28714 
28715 enum {
28716 	ATA_EH_SPDN_NCQ_OFF = 1,
28717 	ATA_EH_SPDN_SPEED_DOWN = 2,
28718 	ATA_EH_SPDN_FALLBACK_TO_PIO = 4,
28719 	ATA_EH_SPDN_KEEP_ERRORS = 8,
28720 	ATA_EFLAG_IS_IO = 1,
28721 	ATA_EFLAG_DUBIOUS_XFER = 2,
28722 	ATA_EFLAG_OLD_ER = -2147483648,
28723 	ATA_ECAT_NONE = 0,
28724 	ATA_ECAT_ATA_BUS = 1,
28725 	ATA_ECAT_TOUT_HSM = 2,
28726 	ATA_ECAT_UNK_DEV = 3,
28727 	ATA_ECAT_DUBIOUS_NONE = 4,
28728 	ATA_ECAT_DUBIOUS_ATA_BUS = 5,
28729 	ATA_ECAT_DUBIOUS_TOUT_HSM = 6,
28730 	ATA_ECAT_DUBIOUS_UNK_DEV = 7,
28731 	ATA_ECAT_NR = 8,
28732 	ATA_EH_CMD_DFL_TIMEOUT = 5000,
28733 	ATA_EH_RESET_COOL_DOWN = 5000,
28734 	ATA_EH_PRERESET_TIMEOUT = 10000,
28735 	ATA_EH_FASTDRAIN_INTERVAL = 3000,
28736 	ATA_EH_UA_TRIES = 5,
28737 	ATA_EH_PROBE_TRIAL_INTERVAL = 60000,
28738 	ATA_EH_PROBE_TRIALS = 2,
28739 };
28740 
28741 struct ata_eh_cmd_timeout_ent {
28742 	const u8 *commands;
28743 	const unsigned int *timeouts;
28744 };
28745 
28746 struct speed_down_verdict_arg {
28747 	u64 since;
28748 	int xfer_ok;
28749 	int nr_errors[8];
28750 };
28751 
28752 struct in_addr {
28753 	__be32 s_addr;
28754 };
28755 
28756 enum netdev_state_t {
28757 	__LINK_STATE_START = 0,
28758 	__LINK_STATE_PRESENT = 1,
28759 	__LINK_STATE_NOCARRIER = 2,
28760 	__LINK_STATE_LINKWATCH_PENDING = 3,
28761 	__LINK_STATE_DORMANT = 4,
28762 	__LINK_STATE_TESTING = 5,
28763 };
28764 
28765 struct netpoll;
28766 
28767 struct netpoll_info {
28768 	refcount_t refcnt;
28769 	struct semaphore dev_lock;
28770 	struct sk_buff_head txq;
28771 	struct delayed_work tx_work;
28772 	struct netpoll *netpoll;
28773 	struct callback_head rcu;
28774 };
28775 
28776 enum netdev_cmd {
28777 	NETDEV_UP = 1,
28778 	NETDEV_DOWN = 2,
28779 	NETDEV_REBOOT = 3,
28780 	NETDEV_CHANGE = 4,
28781 	NETDEV_REGISTER = 5,
28782 	NETDEV_UNREGISTER = 6,
28783 	NETDEV_CHANGEMTU = 7,
28784 	NETDEV_CHANGEADDR = 8,
28785 	NETDEV_PRE_CHANGEADDR = 9,
28786 	NETDEV_GOING_DOWN = 10,
28787 	NETDEV_CHANGENAME = 11,
28788 	NETDEV_FEAT_CHANGE = 12,
28789 	NETDEV_BONDING_FAILOVER = 13,
28790 	NETDEV_PRE_UP = 14,
28791 	NETDEV_PRE_TYPE_CHANGE = 15,
28792 	NETDEV_POST_TYPE_CHANGE = 16,
28793 	NETDEV_POST_INIT = 17,
28794 	NETDEV_RELEASE = 18,
28795 	NETDEV_NOTIFY_PEERS = 19,
28796 	NETDEV_JOIN = 20,
28797 	NETDEV_CHANGEUPPER = 21,
28798 	NETDEV_RESEND_IGMP = 22,
28799 	NETDEV_PRECHANGEMTU = 23,
28800 	NETDEV_CHANGEINFODATA = 24,
28801 	NETDEV_BONDING_INFO = 25,
28802 	NETDEV_PRECHANGEUPPER = 26,
28803 	NETDEV_CHANGELOWERSTATE = 27,
28804 	NETDEV_UDP_TUNNEL_PUSH_INFO = 28,
28805 	NETDEV_UDP_TUNNEL_DROP_INFO = 29,
28806 	NETDEV_CHANGE_TX_QUEUE_LEN = 30,
28807 	NETDEV_CVLAN_FILTER_PUSH_INFO = 31,
28808 	NETDEV_CVLAN_FILTER_DROP_INFO = 32,
28809 	NETDEV_SVLAN_FILTER_PUSH_INFO = 33,
28810 	NETDEV_SVLAN_FILTER_DROP_INFO = 34,
28811 	NETDEV_OFFLOAD_XSTATS_ENABLE = 35,
28812 	NETDEV_OFFLOAD_XSTATS_DISABLE = 36,
28813 	NETDEV_OFFLOAD_XSTATS_REPORT_USED = 37,
28814 	NETDEV_OFFLOAD_XSTATS_REPORT_DELTA = 38,
28815 };
28816 
28817 struct netdev_notifier_info {
28818 	struct net_device *dev;
28819 	struct netlink_ext_ack *extack;
28820 };
28821 
28822 union inet_addr {
28823 	__u32 all[4];
28824 	__be32 ip;
28825 	__be32 ip6[4];
28826 	struct in_addr in;
28827 	struct in6_addr in6;
28828 };
28829 
28830 struct netpoll {
28831 	struct net_device *dev;
28832 	netdevice_tracker dev_tracker;
28833 	char dev_name[16];
28834 	const char *name;
28835 	union inet_addr local_ip;
28836 	union inet_addr remote_ip;
28837 	bool ipv6;
28838 	u16 local_port;
28839 	u16 remote_port;
28840 	u8 remote_mac[6];
28841 };
28842 
28843 struct netconsole_target {
28844 	struct list_head list;
28845 	bool enabled;
28846 	bool extended;
28847 	struct netpoll np;
28848 };
28849 
28850 enum {
28851 	pci_channel_io_normal = 1,
28852 	pci_channel_io_frozen = 2,
28853 	pci_channel_io_perm_failure = 3,
28854 };
28855 
28856 enum pci_ers_result {
28857 	PCI_ERS_RESULT_NONE = 1,
28858 	PCI_ERS_RESULT_CAN_RECOVER = 2,
28859 	PCI_ERS_RESULT_NEED_RESET = 3,
28860 	PCI_ERS_RESULT_DISCONNECT = 4,
28861 	PCI_ERS_RESULT_RECOVERED = 5,
28862 	PCI_ERS_RESULT_NO_AER_DRIVER = 6,
28863 };
28864 
28865 struct ethhdr {
28866 	unsigned char h_dest[6];
28867 	unsigned char h_source[6];
28868 	__be16 h_proto;
28869 };
28870 
28871 enum {
28872 	NETIF_F_SG_BIT = 0,
28873 	NETIF_F_IP_CSUM_BIT = 1,
28874 	__UNUSED_NETIF_F_1 = 2,
28875 	NETIF_F_HW_CSUM_BIT = 3,
28876 	NETIF_F_IPV6_CSUM_BIT = 4,
28877 	NETIF_F_HIGHDMA_BIT = 5,
28878 	NETIF_F_FRAGLIST_BIT = 6,
28879 	NETIF_F_HW_VLAN_CTAG_TX_BIT = 7,
28880 	NETIF_F_HW_VLAN_CTAG_RX_BIT = 8,
28881 	NETIF_F_HW_VLAN_CTAG_FILTER_BIT = 9,
28882 	NETIF_F_VLAN_CHALLENGED_BIT = 10,
28883 	NETIF_F_GSO_BIT = 11,
28884 	NETIF_F_LLTX_BIT = 12,
28885 	NETIF_F_NETNS_LOCAL_BIT = 13,
28886 	NETIF_F_GRO_BIT = 14,
28887 	NETIF_F_LRO_BIT = 15,
28888 	NETIF_F_GSO_SHIFT = 16,
28889 	NETIF_F_TSO_BIT = 16,
28890 	NETIF_F_GSO_ROBUST_BIT = 17,
28891 	NETIF_F_TSO_ECN_BIT = 18,
28892 	NETIF_F_TSO_MANGLEID_BIT = 19,
28893 	NETIF_F_TSO6_BIT = 20,
28894 	NETIF_F_FSO_BIT = 21,
28895 	NETIF_F_GSO_GRE_BIT = 22,
28896 	NETIF_F_GSO_GRE_CSUM_BIT = 23,
28897 	NETIF_F_GSO_IPXIP4_BIT = 24,
28898 	NETIF_F_GSO_IPXIP6_BIT = 25,
28899 	NETIF_F_GSO_UDP_TUNNEL_BIT = 26,
28900 	NETIF_F_GSO_UDP_TUNNEL_CSUM_BIT = 27,
28901 	NETIF_F_GSO_PARTIAL_BIT = 28,
28902 	NETIF_F_GSO_TUNNEL_REMCSUM_BIT = 29,
28903 	NETIF_F_GSO_SCTP_BIT = 30,
28904 	NETIF_F_GSO_ESP_BIT = 31,
28905 	NETIF_F_GSO_UDP_BIT = 32,
28906 	NETIF_F_GSO_UDP_L4_BIT = 33,
28907 	NETIF_F_GSO_FRAGLIST_BIT = 34,
28908 	NETIF_F_GSO_LAST = 34,
28909 	NETIF_F_FCOE_CRC_BIT = 35,
28910 	NETIF_F_SCTP_CRC_BIT = 36,
28911 	NETIF_F_FCOE_MTU_BIT = 37,
28912 	NETIF_F_NTUPLE_BIT = 38,
28913 	NETIF_F_RXHASH_BIT = 39,
28914 	NETIF_F_RXCSUM_BIT = 40,
28915 	NETIF_F_NOCACHE_COPY_BIT = 41,
28916 	NETIF_F_LOOPBACK_BIT = 42,
28917 	NETIF_F_RXFCS_BIT = 43,
28918 	NETIF_F_RXALL_BIT = 44,
28919 	NETIF_F_HW_VLAN_STAG_TX_BIT = 45,
28920 	NETIF_F_HW_VLAN_STAG_RX_BIT = 46,
28921 	NETIF_F_HW_VLAN_STAG_FILTER_BIT = 47,
28922 	NETIF_F_HW_L2FW_DOFFLOAD_BIT = 48,
28923 	NETIF_F_HW_TC_BIT = 49,
28924 	NETIF_F_HW_ESP_BIT = 50,
28925 	NETIF_F_HW_ESP_TX_CSUM_BIT = 51,
28926 	NETIF_F_RX_UDP_TUNNEL_PORT_BIT = 52,
28927 	NETIF_F_HW_TLS_TX_BIT = 53,
28928 	NETIF_F_HW_TLS_RX_BIT = 54,
28929 	NETIF_F_GRO_HW_BIT = 55,
28930 	NETIF_F_HW_TLS_RECORD_BIT = 56,
28931 	NETIF_F_GRO_FRAGLIST_BIT = 57,
28932 	NETIF_F_HW_MACSEC_BIT = 58,
28933 	NETIF_F_GRO_UDP_FWD_BIT = 59,
28934 	NETIF_F_HW_HSR_TAG_INS_BIT = 60,
28935 	NETIF_F_HW_HSR_TAG_RM_BIT = 61,
28936 	NETIF_F_HW_HSR_FWD_BIT = 62,
28937 	NETIF_F_HW_HSR_DUP_BIT = 63,
28938 	NETDEV_FEATURE_COUNT = 64,
28939 };
28940 
28941 typedef struct bio_vec skb_frag_t;
28942 
28943 enum {
28944 	SKBTX_HW_TSTAMP = 1,
28945 	SKBTX_SW_TSTAMP = 2,
28946 	SKBTX_IN_PROGRESS = 4,
28947 	SKBTX_HW_TSTAMP_USE_CYCLES = 8,
28948 	SKBTX_WIFI_STATUS = 16,
28949 	SKBTX_HW_TSTAMP_NETDEV = 32,
28950 	SKBTX_SCHED_TSTAMP = 64,
28951 };
28952 
28953 struct skb_shared_info {
28954 	__u8 flags;
28955 	__u8 meta_len;
28956 	__u8 nr_frags;
28957 	__u8 tx_flags;
28958 	short unsigned int gso_size;
28959 	short unsigned int gso_segs;
28960 	struct sk_buff *frag_list;
28961 	struct skb_shared_hwtstamps hwtstamps;
28962 	unsigned int gso_type;
28963 	u32 tskey;
28964 	atomic_t dataref;
28965 	unsigned int xdp_frags_size;
28966 	void *destructor_arg;
28967 	skb_frag_t frags[16];
28968 };
28969 
28970 enum net_device_flags {
28971 	IFF_UP = 1,
28972 	IFF_BROADCAST = 2,
28973 	IFF_DEBUG = 4,
28974 	IFF_LOOPBACK = 8,
28975 	IFF_POINTOPOINT = 16,
28976 	IFF_NOTRAILERS = 32,
28977 	IFF_RUNNING = 64,
28978 	IFF_NOARP = 128,
28979 	IFF_PROMISC = 256,
28980 	IFF_ALLMULTI = 512,
28981 	IFF_MASTER = 1024,
28982 	IFF_SLAVE = 2048,
28983 	IFF_MULTICAST = 4096,
28984 	IFF_PORTSEL = 8192,
28985 	IFF_AUTOMEDIA = 16384,
28986 	IFF_DYNAMIC = 32768,
28987 	IFF_LOWER_UP = 65536,
28988 	IFF_DORMANT = 131072,
28989 	IFF_ECHO = 262144,
28990 };
28991 
28992 struct netdev_hw_addr {
28993 	struct list_head list;
28994 	struct rb_node node;
28995 	unsigned char addr[32];
28996 	unsigned char type;
28997 	bool global_use;
28998 	int sync_cnt;
28999 	int refcount;
29000 	int synced;
29001 	struct callback_head callback_head;
29002 };
29003 
29004 struct gro_list {
29005 	struct list_head list;
29006 	int count;
29007 };
29008 
29009 struct napi_struct {
29010 	struct list_head poll_list;
29011 	long unsigned int state;
29012 	int weight;
29013 	int defer_hard_irqs_count;
29014 	long unsigned int gro_bitmask;
29015 	int (*poll)(struct napi_struct *, int);
29016 	int poll_owner;
29017 	struct net_device *dev;
29018 	struct gro_list gro_hash[8];
29019 	struct sk_buff *skb;
29020 	struct list_head rx_list;
29021 	int rx_count;
29022 	struct hrtimer timer;
29023 	struct list_head dev_list;
29024 	struct hlist_node napi_hash_node;
29025 	unsigned int napi_id;
29026 	struct task_struct *thread;
29027 };
29028 
29029 enum netdev_queue_state_t {
29030 	__QUEUE_STATE_DRV_XOFF = 0,
29031 	__QUEUE_STATE_STACK_XOFF = 1,
29032 	__QUEUE_STATE_FROZEN = 2,
29033 };
29034 
29035 enum netdev_priv_flags {
29036 	IFF_802_1Q_VLAN = 1ULL,
29037 	IFF_EBRIDGE = 2ULL,
29038 	IFF_BONDING = 4ULL,
29039 	IFF_ISATAP = 8ULL,
29040 	IFF_WAN_HDLC = 16ULL,
29041 	IFF_XMIT_DST_RELEASE = 32ULL,
29042 	IFF_DONT_BRIDGE = 64ULL,
29043 	IFF_DISABLE_NETPOLL = 128ULL,
29044 	IFF_MACVLAN_PORT = 256ULL,
29045 	IFF_BRIDGE_PORT = 512ULL,
29046 	IFF_OVS_DATAPATH = 1024ULL,
29047 	IFF_TX_SKB_SHARING = 2048ULL,
29048 	IFF_UNICAST_FLT = 4096ULL,
29049 	IFF_TEAM_PORT = 8192ULL,
29050 	IFF_SUPP_NOFCS = 16384ULL,
29051 	IFF_LIVE_ADDR_CHANGE = 32768ULL,
29052 	IFF_MACVLAN = 65536ULL,
29053 	IFF_XMIT_DST_RELEASE_PERM = 131072ULL,
29054 	IFF_L3MDEV_MASTER = 262144ULL,
29055 	IFF_NO_QUEUE = 524288ULL,
29056 	IFF_OPENVSWITCH = 1048576ULL,
29057 	IFF_L3MDEV_SLAVE = 2097152ULL,
29058 	IFF_TEAM = 4194304ULL,
29059 	IFF_RXFH_CONFIGURED = 8388608ULL,
29060 	IFF_PHONY_HEADROOM = 16777216ULL,
29061 	IFF_MACSEC = 33554432ULL,
29062 	IFF_NO_RX_HANDLER = 67108864ULL,
29063 	IFF_FAILOVER = 134217728ULL,
29064 	IFF_FAILOVER_SLAVE = 268435456ULL,
29065 	IFF_L3MDEV_RX_HANDLER = 536870912ULL,
29066 	IFF_LIVE_RENAME_OK = 1073741824ULL,
29067 	IFF_TX_SKB_NO_LINEAR = 2147483648ULL,
29068 	IFF_CHANGE_PROTO_DOWN = 4294967296ULL,
29069 };
29070 
29071 enum skb_free_reason {
29072 	SKB_REASON_CONSUMED = 0,
29073 	SKB_REASON_DROPPED = 1,
29074 };
29075 
29076 struct ethtool_cmd {
29077 	__u32 cmd;
29078 	__u32 supported;
29079 	__u32 advertising;
29080 	__u16 speed;
29081 	__u8 duplex;
29082 	__u8 port;
29083 	__u8 phy_address;
29084 	__u8 transceiver;
29085 	__u8 autoneg;
29086 	__u8 mdio_support;
29087 	__u32 maxtxpkt;
29088 	__u32 maxrxpkt;
29089 	__u16 speed_hi;
29090 	__u8 eth_tp_mdix;
29091 	__u8 eth_tp_mdix_ctrl;
29092 	__u32 lp_advertising;
29093 	__u32 reserved[2];
29094 };
29095 
29096 struct ethtool_drvinfo {
29097 	__u32 cmd;
29098 	char driver[32];
29099 	char version[32];
29100 	char fw_version[32];
29101 	char bus_info[32];
29102 	char erom_version[32];
29103 	char reserved2[12];
29104 	__u32 n_priv_flags;
29105 	__u32 n_stats;
29106 	__u32 testinfo_len;
29107 	__u32 eedump_len;
29108 	__u32 regdump_len;
29109 };
29110 
29111 struct ethtool_wolinfo {
29112 	__u32 cmd;
29113 	__u32 supported;
29114 	__u32 wolopts;
29115 	__u8 sopass[6];
29116 };
29117 
29118 struct ethtool_tunable {
29119 	__u32 cmd;
29120 	__u32 id;
29121 	__u32 type_id;
29122 	__u32 len;
29123 	void *data[0];
29124 };
29125 
29126 struct ethtool_regs {
29127 	__u32 cmd;
29128 	__u32 version;
29129 	__u32 len;
29130 	__u8 data[0];
29131 };
29132 
29133 struct ethtool_eeprom {
29134 	__u32 cmd;
29135 	__u32 magic;
29136 	__u32 offset;
29137 	__u32 len;
29138 	__u8 data[0];
29139 };
29140 
29141 struct ethtool_eee {
29142 	__u32 cmd;
29143 	__u32 supported;
29144 	__u32 advertised;
29145 	__u32 lp_advertised;
29146 	__u32 eee_active;
29147 	__u32 eee_enabled;
29148 	__u32 tx_lpi_enabled;
29149 	__u32 tx_lpi_timer;
29150 	__u32 reserved[2];
29151 };
29152 
29153 struct ethtool_modinfo {
29154 	__u32 cmd;
29155 	__u32 type;
29156 	__u32 eeprom_len;
29157 	__u32 reserved[8];
29158 };
29159 
29160 struct ethtool_coalesce {
29161 	__u32 cmd;
29162 	__u32 rx_coalesce_usecs;
29163 	__u32 rx_max_coalesced_frames;
29164 	__u32 rx_coalesce_usecs_irq;
29165 	__u32 rx_max_coalesced_frames_irq;
29166 	__u32 tx_coalesce_usecs;
29167 	__u32 tx_max_coalesced_frames;
29168 	__u32 tx_coalesce_usecs_irq;
29169 	__u32 tx_max_coalesced_frames_irq;
29170 	__u32 stats_block_coalesce_usecs;
29171 	__u32 use_adaptive_rx_coalesce;
29172 	__u32 use_adaptive_tx_coalesce;
29173 	__u32 pkt_rate_low;
29174 	__u32 rx_coalesce_usecs_low;
29175 	__u32 rx_max_coalesced_frames_low;
29176 	__u32 tx_coalesce_usecs_low;
29177 	__u32 tx_max_coalesced_frames_low;
29178 	__u32 pkt_rate_high;
29179 	__u32 rx_coalesce_usecs_high;
29180 	__u32 rx_max_coalesced_frames_high;
29181 	__u32 tx_coalesce_usecs_high;
29182 	__u32 tx_max_coalesced_frames_high;
29183 	__u32 rate_sample_interval;
29184 };
29185 
29186 struct ethtool_ringparam {
29187 	__u32 cmd;
29188 	__u32 rx_max_pending;
29189 	__u32 rx_mini_max_pending;
29190 	__u32 rx_jumbo_max_pending;
29191 	__u32 tx_max_pending;
29192 	__u32 rx_pending;
29193 	__u32 rx_mini_pending;
29194 	__u32 rx_jumbo_pending;
29195 	__u32 tx_pending;
29196 };
29197 
29198 struct ethtool_channels {
29199 	__u32 cmd;
29200 	__u32 max_rx;
29201 	__u32 max_tx;
29202 	__u32 max_other;
29203 	__u32 max_combined;
29204 	__u32 rx_count;
29205 	__u32 tx_count;
29206 	__u32 other_count;
29207 	__u32 combined_count;
29208 };
29209 
29210 struct ethtool_pauseparam {
29211 	__u32 cmd;
29212 	__u32 autoneg;
29213 	__u32 rx_pause;
29214 	__u32 tx_pause;
29215 };
29216 
29217 enum ethtool_link_ext_state {
29218 	ETHTOOL_LINK_EXT_STATE_AUTONEG = 0,
29219 	ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE = 1,
29220 	ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH = 2,
29221 	ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY = 3,
29222 	ETHTOOL_LINK_EXT_STATE_NO_CABLE = 4,
29223 	ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE = 5,
29224 	ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE = 6,
29225 	ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE = 7,
29226 	ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED = 8,
29227 	ETHTOOL_LINK_EXT_STATE_OVERHEAT = 9,
29228 	ETHTOOL_LINK_EXT_STATE_MODULE = 10,
29229 };
29230 
29231 enum ethtool_link_ext_substate_autoneg {
29232 	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED = 1,
29233 	ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED = 2,
29234 	ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED = 3,
29235 	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE = 4,
29236 	ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE = 5,
29237 	ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD = 6,
29238 };
29239 
29240 enum ethtool_link_ext_substate_link_training {
29241 	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED = 1,
29242 	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT = 2,
29243 	ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY = 3,
29244 	ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT = 4,
29245 };
29246 
29247 enum ethtool_link_ext_substate_link_logical_mismatch {
29248 	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK = 1,
29249 	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK = 2,
29250 	ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS = 3,
29251 	ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED = 4,
29252 	ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED = 5,
29253 };
29254 
29255 enum ethtool_link_ext_substate_bad_signal_integrity {
29256 	ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 1,
29257 	ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE = 2,
29258 	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_REFERENCE_CLOCK_LOST = 3,
29259 	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_ALOS = 4,
29260 };
29261 
29262 enum ethtool_link_ext_substate_cable_issue {
29263 	ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE = 1,
29264 	ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE = 2,
29265 };
29266 
29267 enum ethtool_link_ext_substate_module {
29268 	ETHTOOL_LINK_EXT_SUBSTATE_MODULE_CMIS_NOT_READY = 1,
29269 };
29270 
29271 enum ethtool_stringset {
29272 	ETH_SS_TEST = 0,
29273 	ETH_SS_STATS = 1,
29274 	ETH_SS_PRIV_FLAGS = 2,
29275 	ETH_SS_NTUPLE_FILTERS = 3,
29276 	ETH_SS_FEATURES = 4,
29277 	ETH_SS_RSS_HASH_FUNCS = 5,
29278 	ETH_SS_TUNABLES = 6,
29279 	ETH_SS_PHY_STATS = 7,
29280 	ETH_SS_PHY_TUNABLES = 8,
29281 	ETH_SS_LINK_MODES = 9,
29282 	ETH_SS_MSG_CLASSES = 10,
29283 	ETH_SS_WOL_MODES = 11,
29284 	ETH_SS_SOF_TIMESTAMPING = 12,
29285 	ETH_SS_TS_TX_TYPES = 13,
29286 	ETH_SS_TS_RX_FILTERS = 14,
29287 	ETH_SS_UDP_TUNNEL_TYPES = 15,
29288 	ETH_SS_STATS_STD = 16,
29289 	ETH_SS_STATS_ETH_PHY = 17,
29290 	ETH_SS_STATS_ETH_MAC = 18,
29291 	ETH_SS_STATS_ETH_CTRL = 19,
29292 	ETH_SS_STATS_RMON = 20,
29293 	ETH_SS_COUNT = 21,
29294 };
29295 
29296 enum ethtool_module_power_mode_policy {
29297 	ETHTOOL_MODULE_POWER_MODE_POLICY_HIGH = 1,
29298 	ETHTOOL_MODULE_POWER_MODE_POLICY_AUTO = 2,
29299 };
29300 
29301 enum ethtool_module_power_mode {
29302 	ETHTOOL_MODULE_POWER_MODE_LOW = 1,
29303 	ETHTOOL_MODULE_POWER_MODE_HIGH = 2,
29304 };
29305 
29306 enum ethtool_test_flags {
29307 	ETH_TEST_FL_OFFLINE = 1,
29308 	ETH_TEST_FL_FAILED = 2,
29309 	ETH_TEST_FL_EXTERNAL_LB = 4,
29310 	ETH_TEST_FL_EXTERNAL_LB_DONE = 8,
29311 };
29312 
29313 struct ethtool_test {
29314 	__u32 cmd;
29315 	__u32 flags;
29316 	__u32 reserved;
29317 	__u32 len;
29318 	__u64 data[0];
29319 };
29320 
29321 struct ethtool_stats {
29322 	__u32 cmd;
29323 	__u32 n_stats;
29324 	__u64 data[0];
29325 };
29326 
29327 struct ethtool_tcpip4_spec {
29328 	__be32 ip4src;
29329 	__be32 ip4dst;
29330 	__be16 psrc;
29331 	__be16 pdst;
29332 	__u8 tos;
29333 };
29334 
29335 struct ethtool_ah_espip4_spec {
29336 	__be32 ip4src;
29337 	__be32 ip4dst;
29338 	__be32 spi;
29339 	__u8 tos;
29340 };
29341 
29342 struct ethtool_usrip4_spec {
29343 	__be32 ip4src;
29344 	__be32 ip4dst;
29345 	__be32 l4_4_bytes;
29346 	__u8 tos;
29347 	__u8 ip_ver;
29348 	__u8 proto;
29349 };
29350 
29351 struct ethtool_tcpip6_spec {
29352 	__be32 ip6src[4];
29353 	__be32 ip6dst[4];
29354 	__be16 psrc;
29355 	__be16 pdst;
29356 	__u8 tclass;
29357 };
29358 
29359 struct ethtool_ah_espip6_spec {
29360 	__be32 ip6src[4];
29361 	__be32 ip6dst[4];
29362 	__be32 spi;
29363 	__u8 tclass;
29364 };
29365 
29366 struct ethtool_usrip6_spec {
29367 	__be32 ip6src[4];
29368 	__be32 ip6dst[4];
29369 	__be32 l4_4_bytes;
29370 	__u8 tclass;
29371 	__u8 l4_proto;
29372 };
29373 
29374 union ethtool_flow_union {
29375 	struct ethtool_tcpip4_spec tcp_ip4_spec;
29376 	struct ethtool_tcpip4_spec udp_ip4_spec;
29377 	struct ethtool_tcpip4_spec sctp_ip4_spec;
29378 	struct ethtool_ah_espip4_spec ah_ip4_spec;
29379 	struct ethtool_ah_espip4_spec esp_ip4_spec;
29380 	struct ethtool_usrip4_spec usr_ip4_spec;
29381 	struct ethtool_tcpip6_spec tcp_ip6_spec;
29382 	struct ethtool_tcpip6_spec udp_ip6_spec;
29383 	struct ethtool_tcpip6_spec sctp_ip6_spec;
29384 	struct ethtool_ah_espip6_spec ah_ip6_spec;
29385 	struct ethtool_ah_espip6_spec esp_ip6_spec;
29386 	struct ethtool_usrip6_spec usr_ip6_spec;
29387 	struct ethhdr ether_spec;
29388 	__u8 hdata[52];
29389 };
29390 
29391 struct ethtool_flow_ext {
29392 	__u8 padding[2];
29393 	unsigned char h_dest[6];
29394 	__be16 vlan_etype;
29395 	__be16 vlan_tci;
29396 	__be32 data[2];
29397 };
29398 
29399 struct ethtool_rx_flow_spec {
29400 	__u32 flow_type;
29401 	union ethtool_flow_union h_u;
29402 	struct ethtool_flow_ext h_ext;
29403 	union ethtool_flow_union m_u;
29404 	struct ethtool_flow_ext m_ext;
29405 	__u64 ring_cookie;
29406 	__u32 location;
29407 };
29408 
29409 struct ethtool_rxnfc {
29410 	__u32 cmd;
29411 	__u32 flow_type;
29412 	__u64 data;
29413 	struct ethtool_rx_flow_spec fs;
29414 	union {
29415 		__u32 rule_cnt;
29416 		__u32 rss_context;
29417 	};
29418 	__u32 rule_locs[0];
29419 };
29420 
29421 struct ethtool_flash {
29422 	__u32 cmd;
29423 	__u32 region;
29424 	char data[128];
29425 };
29426 
29427 struct ethtool_dump {
29428 	__u32 cmd;
29429 	__u32 version;
29430 	__u32 flag;
29431 	__u32 len;
29432 	__u8 data[0];
29433 };
29434 
29435 struct ethtool_ts_info {
29436 	__u32 cmd;
29437 	__u32 so_timestamping;
29438 	__s32 phc_index;
29439 	__u32 tx_types;
29440 	__u32 tx_reserved[3];
29441 	__u32 rx_filters;
29442 	__u32 rx_reserved[3];
29443 };
29444 
29445 struct ethtool_fecparam {
29446 	__u32 cmd;
29447 	__u32 active_fec;
29448 	__u32 fec;
29449 	__u32 reserved;
29450 };
29451 
29452 enum ethtool_link_mode_bit_indices {
29453 	ETHTOOL_LINK_MODE_10baseT_Half_BIT = 0,
29454 	ETHTOOL_LINK_MODE_10baseT_Full_BIT = 1,
29455 	ETHTOOL_LINK_MODE_100baseT_Half_BIT = 2,
29456 	ETHTOOL_LINK_MODE_100baseT_Full_BIT = 3,
29457 	ETHTOOL_LINK_MODE_1000baseT_Half_BIT = 4,
29458 	ETHTOOL_LINK_MODE_1000baseT_Full_BIT = 5,
29459 	ETHTOOL_LINK_MODE_Autoneg_BIT = 6,
29460 	ETHTOOL_LINK_MODE_TP_BIT = 7,
29461 	ETHTOOL_LINK_MODE_AUI_BIT = 8,
29462 	ETHTOOL_LINK_MODE_MII_BIT = 9,
29463 	ETHTOOL_LINK_MODE_FIBRE_BIT = 10,
29464 	ETHTOOL_LINK_MODE_BNC_BIT = 11,
29465 	ETHTOOL_LINK_MODE_10000baseT_Full_BIT = 12,
29466 	ETHTOOL_LINK_MODE_Pause_BIT = 13,
29467 	ETHTOOL_LINK_MODE_Asym_Pause_BIT = 14,
29468 	ETHTOOL_LINK_MODE_2500baseX_Full_BIT = 15,
29469 	ETHTOOL_LINK_MODE_Backplane_BIT = 16,
29470 	ETHTOOL_LINK_MODE_1000baseKX_Full_BIT = 17,
29471 	ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT = 18,
29472 	ETHTOOL_LINK_MODE_10000baseKR_Full_BIT = 19,
29473 	ETHTOOL_LINK_MODE_10000baseR_FEC_BIT = 20,
29474 	ETHTOOL_LINK_MODE_20000baseMLD2_Full_BIT = 21,
29475 	ETHTOOL_LINK_MODE_20000baseKR2_Full_BIT = 22,
29476 	ETHTOOL_LINK_MODE_40000baseKR4_Full_BIT = 23,
29477 	ETHTOOL_LINK_MODE_40000baseCR4_Full_BIT = 24,
29478 	ETHTOOL_LINK_MODE_40000baseSR4_Full_BIT = 25,
29479 	ETHTOOL_LINK_MODE_40000baseLR4_Full_BIT = 26,
29480 	ETHTOOL_LINK_MODE_56000baseKR4_Full_BIT = 27,
29481 	ETHTOOL_LINK_MODE_56000baseCR4_Full_BIT = 28,
29482 	ETHTOOL_LINK_MODE_56000baseSR4_Full_BIT = 29,
29483 	ETHTOOL_LINK_MODE_56000baseLR4_Full_BIT = 30,
29484 	ETHTOOL_LINK_MODE_25000baseCR_Full_BIT = 31,
29485 	ETHTOOL_LINK_MODE_25000baseKR_Full_BIT = 32,
29486 	ETHTOOL_LINK_MODE_25000baseSR_Full_BIT = 33,
29487 	ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT = 34,
29488 	ETHTOOL_LINK_MODE_50000baseKR2_Full_BIT = 35,
29489 	ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT = 36,
29490 	ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 37,
29491 	ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 38,
29492 	ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39,
29493 	ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 40,
29494 	ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 41,
29495 	ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 42,
29496 	ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 43,
29497 	ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 44,
29498 	ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 45,
29499 	ETHTOOL_LINK_MODE_10000baseER_Full_BIT = 46,
29500 	ETHTOOL_LINK_MODE_2500baseT_Full_BIT = 47,
29501 	ETHTOOL_LINK_MODE_5000baseT_Full_BIT = 48,
29502 	ETHTOOL_LINK_MODE_FEC_NONE_BIT = 49,
29503 	ETHTOOL_LINK_MODE_FEC_RS_BIT = 50,
29504 	ETHTOOL_LINK_MODE_FEC_BASER_BIT = 51,
29505 	ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 52,
29506 	ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 53,
29507 	ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 54,
29508 	ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 55,
29509 	ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 56,
29510 	ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 57,
29511 	ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 58,
29512 	ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 59,
29513 	ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 60,
29514 	ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 61,
29515 	ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 62,
29516 	ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 63,
29517 	ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64,
29518 	ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65,
29519 	ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
29520 	ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
29521 	ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
29522 	ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 69,
29523 	ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 70,
29524 	ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 71,
29525 	ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 72,
29526 	ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 73,
29527 	ETHTOOL_LINK_MODE_FEC_LLRS_BIT = 74,
29528 	ETHTOOL_LINK_MODE_100000baseKR_Full_BIT = 75,
29529 	ETHTOOL_LINK_MODE_100000baseSR_Full_BIT = 76,
29530 	ETHTOOL_LINK_MODE_100000baseLR_ER_FR_Full_BIT = 77,
29531 	ETHTOOL_LINK_MODE_100000baseCR_Full_BIT = 78,
29532 	ETHTOOL_LINK_MODE_100000baseDR_Full_BIT = 79,
29533 	ETHTOOL_LINK_MODE_200000baseKR2_Full_BIT = 80,
29534 	ETHTOOL_LINK_MODE_200000baseSR2_Full_BIT = 81,
29535 	ETHTOOL_LINK_MODE_200000baseLR2_ER2_FR2_Full_BIT = 82,
29536 	ETHTOOL_LINK_MODE_200000baseDR2_Full_BIT = 83,
29537 	ETHTOOL_LINK_MODE_200000baseCR2_Full_BIT = 84,
29538 	ETHTOOL_LINK_MODE_400000baseKR4_Full_BIT = 85,
29539 	ETHTOOL_LINK_MODE_400000baseSR4_Full_BIT = 86,
29540 	ETHTOOL_LINK_MODE_400000baseLR4_ER4_FR4_Full_BIT = 87,
29541 	ETHTOOL_LINK_MODE_400000baseDR4_Full_BIT = 88,
29542 	ETHTOOL_LINK_MODE_400000baseCR4_Full_BIT = 89,
29543 	ETHTOOL_LINK_MODE_100baseFX_Half_BIT = 90,
29544 	ETHTOOL_LINK_MODE_100baseFX_Full_BIT = 91,
29545 	ETHTOOL_LINK_MODE_10baseT1L_Full_BIT = 92,
29546 	__ETHTOOL_LINK_MODE_MASK_NBITS = 93,
29547 };
29548 
29549 struct ethtool_link_settings {
29550 	__u32 cmd;
29551 	__u32 speed;
29552 	__u8 duplex;
29553 	__u8 port;
29554 	__u8 phy_address;
29555 	__u8 autoneg;
29556 	__u8 mdio_support;
29557 	__u8 eth_tp_mdix;
29558 	__u8 eth_tp_mdix_ctrl;
29559 	__s8 link_mode_masks_nwords;
29560 	__u8 transceiver;
29561 	__u8 master_slave_cfg;
29562 	__u8 master_slave_state;
29563 	__u8 reserved1[1];
29564 	__u32 reserved[7];
29565 	__u32 link_mode_masks[0];
29566 };
29567 
29568 struct kernel_ethtool_ringparam {
29569 	u32 rx_buf_len;
29570 	u8 tcp_data_split;
29571 	u8 tx_push;
29572 	u32 cqe_size;
29573 };
29574 
29575 struct ethtool_link_ext_state_info {
29576 	enum ethtool_link_ext_state link_ext_state;
29577 	union {
29578 		enum ethtool_link_ext_substate_autoneg autoneg;
29579 		enum ethtool_link_ext_substate_link_training link_training;
29580 		enum ethtool_link_ext_substate_link_logical_mismatch link_logical_mismatch;
29581 		enum ethtool_link_ext_substate_bad_signal_integrity bad_signal_integrity;
29582 		enum ethtool_link_ext_substate_cable_issue cable_issue;
29583 		enum ethtool_link_ext_substate_module module;
29584 		u32 __link_ext_substate;
29585 	};
29586 };
29587 
29588 struct ethtool_link_ksettings {
29589 	struct ethtool_link_settings base;
29590 	struct {
29591 		long unsigned int supported[2];
29592 		long unsigned int advertising[2];
29593 		long unsigned int lp_advertising[2];
29594 	} link_modes;
29595 	u32 lanes;
29596 };
29597 
29598 struct kernel_ethtool_coalesce {
29599 	u8 use_cqe_mode_tx;
29600 	u8 use_cqe_mode_rx;
29601 };
29602 
29603 struct ethtool_eth_mac_stats {
29604 	u64 FramesTransmittedOK;
29605 	u64 SingleCollisionFrames;
29606 	u64 MultipleCollisionFrames;
29607 	u64 FramesReceivedOK;
29608 	u64 FrameCheckSequenceErrors;
29609 	u64 AlignmentErrors;
29610 	u64 OctetsTransmittedOK;
29611 	u64 FramesWithDeferredXmissions;
29612 	u64 LateCollisions;
29613 	u64 FramesAbortedDueToXSColls;
29614 	u64 FramesLostDueToIntMACXmitError;
29615 	u64 CarrierSenseErrors;
29616 	u64 OctetsReceivedOK;
29617 	u64 FramesLostDueToIntMACRcvError;
29618 	u64 MulticastFramesXmittedOK;
29619 	u64 BroadcastFramesXmittedOK;
29620 	u64 FramesWithExcessiveDeferral;
29621 	u64 MulticastFramesReceivedOK;
29622 	u64 BroadcastFramesReceivedOK;
29623 	u64 InRangeLengthErrors;
29624 	u64 OutOfRangeLengthField;
29625 	u64 FrameTooLongErrors;
29626 };
29627 
29628 struct ethtool_eth_phy_stats {
29629 	u64 SymbolErrorDuringCarrier;
29630 };
29631 
29632 struct ethtool_eth_ctrl_stats {
29633 	u64 MACControlFramesTransmitted;
29634 	u64 MACControlFramesReceived;
29635 	u64 UnsupportedOpcodesReceived;
29636 };
29637 
29638 struct ethtool_pause_stats {
29639 	u64 tx_pause_frames;
29640 	u64 rx_pause_frames;
29641 };
29642 
29643 struct ethtool_fec_stat {
29644 	u64 total;
29645 	u64 lanes[8];
29646 };
29647 
29648 struct ethtool_fec_stats {
29649 	struct ethtool_fec_stat corrected_blocks;
29650 	struct ethtool_fec_stat uncorrectable_blocks;
29651 	struct ethtool_fec_stat corrected_bits;
29652 };
29653 
29654 struct ethtool_rmon_hist_range {
29655 	u16 low;
29656 	u16 high;
29657 };
29658 
29659 struct ethtool_rmon_stats {
29660 	u64 undersize_pkts;
29661 	u64 oversize_pkts;
29662 	u64 fragments;
29663 	u64 jabbers;
29664 	u64 hist[10];
29665 	u64 hist_tx[10];
29666 };
29667 
29668 struct ethtool_module_eeprom {
29669 	u32 offset;
29670 	u32 length;
29671 	u8 page;
29672 	u8 bank;
29673 	u8 i2c_address;
29674 	u8 *data;
29675 };
29676 
29677 struct ethtool_module_power_mode_params {
29678 	enum ethtool_module_power_mode_policy policy;
29679 	enum ethtool_module_power_mode mode;
29680 };
29681 
29682 struct mii_ioctl_data {
29683 	__u16 phy_id;
29684 	__u16 reg_num;
29685 	__u16 val_in;
29686 	__u16 val_out;
29687 };
29688 
29689 struct mii_if_info {
29690 	int phy_id;
29691 	int advertising;
29692 	int phy_id_mask;
29693 	int reg_num_mask;
29694 	unsigned int full_duplex: 1;
29695 	unsigned int force_media: 1;
29696 	unsigned int supports_gmii: 1;
29697 	struct net_device *dev;
29698 	int (*mdio_read)(struct net_device *, int, int);
29699 	void (*mdio_write)(struct net_device *, int, int, int);
29700 };
29701 
29702 enum mac {
29703 	mac_82557_D100_A = 0,
29704 	mac_82557_D100_B = 1,
29705 	mac_82557_D100_C = 2,
29706 	mac_82558_D101_A4 = 4,
29707 	mac_82558_D101_B0 = 5,
29708 	mac_82559_D101M = 8,
29709 	mac_82559_D101S = 9,
29710 	mac_82550_D102 = 12,
29711 	mac_82550_D102_C = 13,
29712 	mac_82551_E = 14,
29713 	mac_82551_F = 15,
29714 	mac_82551_10 = 16,
29715 	mac_unknown = 255,
29716 };
29717 
29718 enum phy {
29719 	phy_100a = 992,
29720 	phy_100c = 55575208,
29721 	phy_82555_tx = 22020776,
29722 	phy_nsc_tx = 1543512064,
29723 	phy_82562_et = 53478056,
29724 	phy_82562_em = 52429480,
29725 	phy_82562_ek = 51380904,
29726 	phy_82562_eh = 24117928,
29727 	phy_82552_v = 3496017997,
29728 	phy_unknown = 4294967295,
29729 };
29730 
29731 struct csr {
29732 	struct {
29733 		u8 status;
29734 		u8 stat_ack;
29735 		u8 cmd_lo;
29736 		u8 cmd_hi;
29737 		u32 gen_ptr;
29738 	} scb;
29739 	u32 port;
29740 	u16 flash_ctrl;
29741 	u8 eeprom_ctrl_lo;
29742 	u8 eeprom_ctrl_hi;
29743 	u32 mdi_ctrl;
29744 	u32 rx_dma_count;
29745 };
29746 
29747 enum scb_status {
29748 	rus_no_res = 8,
29749 	rus_ready = 16,
29750 	rus_mask = 60,
29751 };
29752 
29753 enum ru_state {
29754 	RU_SUSPENDED = 0,
29755 	RU_RUNNING = 1,
29756 	RU_UNINITIALIZED = -1,
29757 };
29758 
29759 enum scb_stat_ack {
29760 	stat_ack_not_ours = 0,
29761 	stat_ack_sw_gen = 4,
29762 	stat_ack_rnr = 16,
29763 	stat_ack_cu_idle = 32,
29764 	stat_ack_frame_rx = 64,
29765 	stat_ack_cu_cmd_done = 128,
29766 	stat_ack_not_present = 255,
29767 	stat_ack_rx = 84,
29768 	stat_ack_tx = 160,
29769 };
29770 
29771 enum scb_cmd_hi {
29772 	irq_mask_none = 0,
29773 	irq_mask_all = 1,
29774 	irq_sw_gen = 2,
29775 };
29776 
29777 enum scb_cmd_lo {
29778 	cuc_nop = 0,
29779 	ruc_start = 1,
29780 	ruc_load_base = 6,
29781 	cuc_start = 16,
29782 	cuc_resume = 32,
29783 	cuc_dump_addr = 64,
29784 	cuc_dump_stats = 80,
29785 	cuc_load_base = 96,
29786 	cuc_dump_reset = 112,
29787 };
29788 
29789 enum cuc_dump {
29790 	cuc_dump_complete = 40965,
29791 	cuc_dump_reset_complete = 40967,
29792 };
29793 
29794 enum port {
29795 	software_reset = 0,
29796 	selftest = 1,
29797 	selective_reset = 2,
29798 };
29799 
29800 enum eeprom_ctrl_lo {
29801 	eesk = 1,
29802 	eecs = 2,
29803 	eedi = 4,
29804 	eedo = 8,
29805 };
29806 
29807 enum mdi_ctrl {
29808 	mdi_write = 67108864,
29809 	mdi_read = 134217728,
29810 	mdi_ready = 268435456,
29811 };
29812 
29813 enum eeprom_op {
29814 	op_write = 5,
29815 	op_read = 6,
29816 	op_ewds = 16,
29817 	op_ewen = 19,
29818 };
29819 
29820 enum eeprom_offsets {
29821 	eeprom_cnfg_mdix = 3,
29822 	eeprom_phy_iface = 6,
29823 	eeprom_id = 10,
29824 	eeprom_config_asf = 13,
29825 	eeprom_smbus_addr = 144,
29826 };
29827 
29828 enum eeprom_cnfg_mdix {
29829 	eeprom_mdix_enabled = 128,
29830 };
29831 
29832 enum eeprom_phy_iface {
29833 	NoSuchPhy = 0,
29834 	I82553AB = 1,
29835 	I82553C = 2,
29836 	I82503 = 3,
29837 	DP83840 = 4,
29838 	S80C240 = 5,
29839 	S80C24 = 6,
29840 	I82555 = 7,
29841 	DP83840A = 10,
29842 };
29843 
29844 enum eeprom_id {
29845 	eeprom_id_wol = 32,
29846 };
29847 
29848 enum eeprom_config_asf {
29849 	eeprom_asf = 32768,
29850 	eeprom_gcl = 16384,
29851 };
29852 
29853 enum cb_status {
29854 	cb_complete = 32768,
29855 	cb_ok = 8192,
29856 };
29857 
29858 enum cb_command {
29859 	cb_nop = 0,
29860 	cb_iaaddr = 1,
29861 	cb_config = 2,
29862 	cb_multi = 3,
29863 	cb_tx = 4,
29864 	cb_ucode = 5,
29865 	cb_dump = 6,
29866 	cb_tx_sf = 8,
29867 	cb_tx_nc = 16,
29868 	cb_cid = 7936,
29869 	cb_i = 8192,
29870 	cb_s = 16384,
29871 	cb_el = 32768,
29872 };
29873 
29874 struct rfd {
29875 	__le16 status;
29876 	__le16 command;
29877 	__le32 link;
29878 	__le32 rbd;
29879 	__le16 actual_size;
29880 	__le16 size;
29881 };
29882 
29883 struct rx {
29884 	struct rx *next;
29885 	struct rx *prev;
29886 	struct sk_buff *skb;
29887 	dma_addr_t dma_addr;
29888 };
29889 
29890 struct config {
29891 	u8 byte_count: 6;
29892 	u8 pad0: 2;
29893 	u8 rx_fifo_limit: 4;
29894 	u8 tx_fifo_limit: 3;
29895 	u8 pad1: 1;
29896 	u8 adaptive_ifs;
29897 	u8 mwi_enable: 1;
29898 	u8 type_enable: 1;
29899 	u8 read_align_enable: 1;
29900 	u8 term_write_cache_line: 1;
29901 	u8 pad3: 4;
29902 	u8 rx_dma_max_count: 7;
29903 	u8 pad4: 1;
29904 	u8 tx_dma_max_count: 7;
29905 	u8 dma_max_count_enable: 1;
29906 	u8 late_scb_update: 1;
29907 	u8 direct_rx_dma: 1;
29908 	u8 tno_intr: 1;
29909 	u8 cna_intr: 1;
29910 	u8 standard_tcb: 1;
29911 	u8 standard_stat_counter: 1;
29912 	u8 rx_save_overruns: 1;
29913 	u8 rx_save_bad_frames: 1;
29914 	u8 rx_discard_short_frames: 1;
29915 	u8 tx_underrun_retry: 2;
29916 	u8 pad7: 2;
29917 	u8 rx_extended_rfd: 1;
29918 	u8 tx_two_frames_in_fifo: 1;
29919 	u8 tx_dynamic_tbd: 1;
29920 	u8 mii_mode: 1;
29921 	u8 pad8: 6;
29922 	u8 csma_disabled: 1;
29923 	u8 rx_tcpudp_checksum: 1;
29924 	u8 pad9: 3;
29925 	u8 vlan_arp_tco: 1;
29926 	u8 link_status_wake: 1;
29927 	u8 arp_wake: 1;
29928 	u8 mcmatch_wake: 1;
29929 	u8 pad10: 3;
29930 	u8 no_source_addr_insertion: 1;
29931 	u8 preamble_length: 2;
29932 	u8 loopback: 2;
29933 	u8 linear_priority: 3;
29934 	u8 pad11: 5;
29935 	u8 linear_priority_mode: 1;
29936 	u8 pad12: 3;
29937 	u8 ifs: 4;
29938 	u8 ip_addr_lo;
29939 	u8 ip_addr_hi;
29940 	u8 promiscuous_mode: 1;
29941 	u8 broadcast_disabled: 1;
29942 	u8 wait_after_win: 1;
29943 	u8 pad15_1: 1;
29944 	u8 ignore_ul_bit: 1;
29945 	u8 crc_16_bit: 1;
29946 	u8 pad15_2: 1;
29947 	u8 crs_or_cdt: 1;
29948 	u8 fc_delay_lo;
29949 	u8 fc_delay_hi;
29950 	u8 rx_stripping: 1;
29951 	u8 tx_padding: 1;
29952 	u8 rx_crc_transfer: 1;
29953 	u8 rx_long_ok: 1;
29954 	u8 fc_priority_threshold: 3;
29955 	u8 pad18: 1;
29956 	u8 addr_wake: 1;
29957 	u8 magic_packet_disable: 1;
29958 	u8 fc_disable: 1;
29959 	u8 fc_restop: 1;
29960 	u8 fc_restart: 1;
29961 	u8 fc_reject: 1;
29962 	u8 full_duplex_force: 1;
29963 	u8 full_duplex_pin: 1;
29964 	u8 pad20_1: 5;
29965 	u8 fc_priority_location: 1;
29966 	u8 multi_ia: 1;
29967 	u8 pad20_2: 1;
29968 	u8 pad21_1: 3;
29969 	u8 multicast_all: 1;
29970 	u8 pad21_2: 4;
29971 	u8 rx_d102_mode: 1;
29972 	u8 rx_vlan_drop: 1;
29973 	u8 pad22: 6;
29974 	u8 pad_d102[9];
29975 };
29976 
29977 struct multi {
29978 	__le16 count;
29979 	u8 addr[386];
29980 };
29981 
29982 struct cb {
29983 	__le16 status;
29984 	__le16 command;
29985 	__le32 link;
29986 	union {
29987 		u8 iaaddr[6];
29988 		__le32 ucode[134];
29989 		struct config config;
29990 		struct multi multi;
29991 		struct {
29992 			u32 tbd_array;
29993 			u16 tcb_byte_count;
29994 			u8 threshold;
29995 			u8 tbd_count;
29996 			struct {
29997 				__le32 buf_addr;
29998 				__le16 size;
29999 				u16 eol;
30000 			} tbd;
30001 		} tcb;
30002 		__le32 dump_buffer_addr;
30003 	} u;
30004 	struct cb *next;
30005 	struct cb *prev;
30006 	dma_addr_t dma_addr;
30007 	struct sk_buff *skb;
30008 };
30009 
30010 enum loopback {
30011 	lb_none = 0,
30012 	lb_mac = 1,
30013 	lb_phy = 3,
30014 };
30015 
30016 struct stats {
30017 	__le32 tx_good_frames;
30018 	__le32 tx_max_collisions;
30019 	__le32 tx_late_collisions;
30020 	__le32 tx_underruns;
30021 	__le32 tx_lost_crs;
30022 	__le32 tx_deferred;
30023 	__le32 tx_single_collisions;
30024 	__le32 tx_multiple_collisions;
30025 	__le32 tx_total_collisions;
30026 	__le32 rx_good_frames;
30027 	__le32 rx_crc_errors;
30028 	__le32 rx_alignment_errors;
30029 	__le32 rx_resource_errors;
30030 	__le32 rx_overrun_errors;
30031 	__le32 rx_cdt_errors;
30032 	__le32 rx_short_frame_errors;
30033 	__le32 fc_xmt_pause;
30034 	__le32 fc_rcv_pause;
30035 	__le32 fc_rcv_unsupported;
30036 	__le16 xmt_tco_frames;
30037 	__le16 rcv_tco_frames;
30038 	__le32 complete;
30039 };
30040 
30041 struct mem {
30042 	struct {
30043 		u32 signature;
30044 		u32 result;
30045 	} selftest;
30046 	struct stats stats;
30047 	u8 dump_buf[596];
30048 };
30049 
30050 struct param_range {
30051 	u32 min;
30052 	u32 max;
30053 	u32 count;
30054 };
30055 
30056 struct params {
30057 	struct param_range rfds;
30058 	struct param_range cbs;
30059 };
30060 
30061 struct dma_pool;
30062 
30063 struct nic {
30064 	u32 msg_enable;
30065 	struct net_device *netdev;
30066 	struct pci_dev *pdev;
30067 	u16 (*mdio_ctrl)(struct nic *, u32, u32, u32, u16);
30068 	long: 64;
30069 	long: 64;
30070 	long: 64;
30071 	long: 64;
30072 	long: 64;
30073 	long: 64;
30074 	long: 64;
30075 	long: 64;
30076 	long: 64;
30077 	long: 64;
30078 	long: 64;
30079 	long: 64;
30080 	struct rx *rxs;
30081 	struct rx *rx_to_use;
30082 	struct rx *rx_to_clean;
30083 	struct rfd blank_rfd;
30084 	enum ru_state ru_running;
30085 	long: 64;
30086 	long: 64;
30087 	long: 64;
30088 	long: 64;
30089 	long: 64;
30090 	long: 64;
30091 	long: 64;
30092 	long: 64;
30093 	long: 64;
30094 	long: 64;
30095 	spinlock_t cb_lock;
30096 	spinlock_t cmd_lock;
30097 	struct csr *csr;
30098 	enum scb_cmd_lo cuc_cmd;
30099 	unsigned int cbs_avail;
30100 	struct napi_struct napi;
30101 	struct cb *cbs;
30102 	struct cb *cb_to_use;
30103 	struct cb *cb_to_send;
30104 	struct cb *cb_to_clean;
30105 	__le16 tx_command;
30106 	long: 64;
30107 	long: 64;
30108 	long: 64;
30109 	long: 64;
30110 	long: 64;
30111 	long: 64;
30112 	enum {
30113 		ich = 1,
30114 		promiscuous = 2,
30115 		multicast_all = 4,
30116 		wol_magic = 8,
30117 		ich_10h_workaround = 16,
30118 	} flags;
30119 	enum mac mac;
30120 	enum phy phy;
30121 	struct params params;
30122 	struct timer_list watchdog;
30123 	struct mii_if_info mii;
30124 	struct work_struct tx_timeout_task;
30125 	enum loopback loopback;
30126 	struct mem *mem;
30127 	dma_addr_t dma_addr;
30128 	struct dma_pool *cbs_pool;
30129 	dma_addr_t cbs_dma_addr;
30130 	u8 adaptive_ifs;
30131 	u8 tx_threshold;
30132 	u32 tx_frames;
30133 	u32 tx_collisions;
30134 	u32 tx_deferred;
30135 	u32 tx_single_collisions;
30136 	u32 tx_multiple_collisions;
30137 	u32 tx_fc_pause;
30138 	u32 tx_tco_frames;
30139 	u32 rx_fc_pause;
30140 	u32 rx_fc_unsupported;
30141 	u32 rx_tco_frames;
30142 	u32 rx_short_frame_errors;
30143 	u32 rx_over_length_errors;
30144 	u16 eeprom_wc;
30145 	__le16 eeprom[256];
30146 	spinlock_t mdio_lock;
30147 	const struct firmware *fw;
30148 	long: 64;
30149 	long: 64;
30150 	long: 64;
30151 	long: 64;
30152 	long: 64;
30153 	long: 64;
30154 	long: 64;
30155 	long: 64;
30156 	long: 64;
30157 	long: 64;
30158 	long: 64;
30159 	long: 64;
30160 	long: 64;
30161 	long: 64;
30162 };
30163 
30164 enum led_state {
30165 	led_on = 1,
30166 	led_off = 4,
30167 	led_on_559 = 5,
30168 	led_on_557 = 7,
30169 };
30170 
30171 struct system_device_crosststamp {
30172 	ktime_t device;
30173 	ktime_t sys_realtime;
30174 	ktime_t sys_monoraw;
30175 };
30176 
30177 struct msix_entry {
30178 	u32 vector;
30179 	u16 entry;
30180 };
30181 
30182 struct cyclecounter {
30183 	u64 (*read)(const struct cyclecounter *);
30184 	u64 mask;
30185 	u32 mult;
30186 	u32 shift;
30187 };
30188 
30189 struct timecounter {
30190 	const struct cyclecounter *cc;
30191 	u64 cycle_last;
30192 	u64 nsec;
30193 	u64 mask;
30194 	u64 frac;
30195 };
30196 
30197 struct hwtstamp_config {
30198 	int flags;
30199 	int tx_type;
30200 	int rx_filter;
30201 };
30202 
30203 struct ptp_clock_time {
30204 	__s64 sec;
30205 	__u32 nsec;
30206 	__u32 reserved;
30207 };
30208 
30209 struct ptp_extts_request {
30210 	unsigned int index;
30211 	unsigned int flags;
30212 	unsigned int rsv[2];
30213 };
30214 
30215 struct ptp_perout_request {
30216 	union {
30217 		struct ptp_clock_time start;
30218 		struct ptp_clock_time phase;
30219 	};
30220 	struct ptp_clock_time period;
30221 	unsigned int index;
30222 	unsigned int flags;
30223 	union {
30224 		struct ptp_clock_time on;
30225 		unsigned int rsv[4];
30226 	};
30227 };
30228 
30229 enum ptp_pin_function {
30230 	PTP_PF_NONE = 0,
30231 	PTP_PF_EXTTS = 1,
30232 	PTP_PF_PEROUT = 2,
30233 	PTP_PF_PHYSYNC = 3,
30234 };
30235 
30236 struct ptp_pin_desc {
30237 	char name[64];
30238 	unsigned int index;
30239 	unsigned int func;
30240 	unsigned int chan;
30241 	unsigned int rsv[5];
30242 };
30243 
30244 struct ptp_clock_request {
30245 	enum {
30246 		PTP_CLK_REQ_EXTTS = 0,
30247 		PTP_CLK_REQ_PEROUT = 1,
30248 		PTP_CLK_REQ_PPS = 2,
30249 	} type;
30250 	union {
30251 		struct ptp_extts_request extts;
30252 		struct ptp_perout_request perout;
30253 	};
30254 };
30255 
30256 struct ptp_system_timestamp {
30257 	struct timespec64 pre_ts;
30258 	struct timespec64 post_ts;
30259 };
30260 
30261 struct ptp_clock_info {
30262 	struct module *owner;
30263 	char name[32];
30264 	s32 max_adj;
30265 	int n_alarm;
30266 	int n_ext_ts;
30267 	int n_per_out;
30268 	int n_pins;
30269 	int pps;
30270 	struct ptp_pin_desc *pin_config;
30271 	int (*adjfine)(struct ptp_clock_info *, long int);
30272 	int (*adjfreq)(struct ptp_clock_info *, s32);
30273 	int (*adjphase)(struct ptp_clock_info *, s32);
30274 	int (*adjtime)(struct ptp_clock_info *, s64);
30275 	int (*gettime64)(struct ptp_clock_info *, struct timespec64 *);
30276 	int (*gettimex64)(struct ptp_clock_info *, struct timespec64 *, struct ptp_system_timestamp *);
30277 	int (*getcrosststamp)(struct ptp_clock_info *, struct system_device_crosststamp *);
30278 	int (*settime64)(struct ptp_clock_info *, const struct timespec64 *);
30279 	int (*getcycles64)(struct ptp_clock_info *, struct timespec64 *);
30280 	int (*getcyclesx64)(struct ptp_clock_info *, struct timespec64 *, struct ptp_system_timestamp *);
30281 	int (*getcrosscycles)(struct ptp_clock_info *, struct system_device_crosststamp *);
30282 	int (*enable)(struct ptp_clock_info *, struct ptp_clock_request *, int);
30283 	int (*verify)(struct ptp_clock_info *, unsigned int, enum ptp_pin_function, unsigned int);
30284 	long int (*do_aux_work)(struct ptp_clock_info *);
30285 };
30286 
30287 struct pm_qos_request {
30288 	struct plist_node node;
30289 	struct pm_qos_constraints *qos;
30290 };
30291 
30292 enum e1000_mac_type {
30293 	e1000_82571 = 0,
30294 	e1000_82572 = 1,
30295 	e1000_82573 = 2,
30296 	e1000_82574 = 3,
30297 	e1000_82583 = 4,
30298 	e1000_80003es2lan = 5,
30299 	e1000_ich8lan = 6,
30300 	e1000_ich9lan = 7,
30301 	e1000_ich10lan = 8,
30302 	e1000_pchlan = 9,
30303 	e1000_pch2lan = 10,
30304 	e1000_pch_lpt = 11,
30305 	e1000_pch_spt = 12,
30306 	e1000_pch_cnp = 13,
30307 	e1000_pch_tgp = 14,
30308 	e1000_pch_adp = 15,
30309 	e1000_pch_mtp = 16,
30310 	e1000_pch_lnp = 17,
30311 };
30312 
30313 enum e1000_media_type {
30314 	e1000_media_type_unknown = 0,
30315 	e1000_media_type_copper = 1,
30316 	e1000_media_type_fiber = 2,
30317 	e1000_media_type_internal_serdes = 3,
30318 	e1000_num_media_types = 4,
30319 };
30320 
30321 enum e1000_nvm_type {
30322 	e1000_nvm_unknown = 0,
30323 	e1000_nvm_none = 1,
30324 	e1000_nvm_eeprom_spi = 2,
30325 	e1000_nvm_flash_hw = 3,
30326 	e1000_nvm_flash_sw = 4,
30327 };
30328 
30329 enum e1000_nvm_override {
30330 	e1000_nvm_override_none = 0,
30331 	e1000_nvm_override_spi_small = 1,
30332 	e1000_nvm_override_spi_large = 2,
30333 };
30334 
30335 enum e1000_phy_type {
30336 	e1000_phy_unknown = 0,
30337 	e1000_phy_none = 1,
30338 	e1000_phy_m88 = 2,
30339 	e1000_phy_igp = 3,
30340 	e1000_phy_igp_2 = 4,
30341 	e1000_phy_gg82563 = 5,
30342 	e1000_phy_igp_3 = 6,
30343 	e1000_phy_ife = 7,
30344 	e1000_phy_bm = 8,
30345 	e1000_phy_82578 = 9,
30346 	e1000_phy_82577 = 10,
30347 	e1000_phy_82579 = 11,
30348 	e1000_phy_i217 = 12,
30349 };
30350 
30351 enum e1000_bus_width {
30352 	e1000_bus_width_unknown = 0,
30353 	e1000_bus_width_pcie_x1 = 1,
30354 	e1000_bus_width_pcie_x2 = 2,
30355 	e1000_bus_width_pcie_x4 = 4,
30356 	e1000_bus_width_pcie_x8 = 8,
30357 	e1000_bus_width_32 = 9,
30358 	e1000_bus_width_64 = 10,
30359 	e1000_bus_width_reserved = 11,
30360 };
30361 
30362 enum e1000_1000t_rx_status {
30363 	e1000_1000t_rx_status_not_ok = 0,
30364 	e1000_1000t_rx_status_ok = 1,
30365 	e1000_1000t_rx_status_undefined = 255,
30366 };
30367 
30368 enum e1000_rev_polarity {
30369 	e1000_rev_polarity_normal = 0,
30370 	e1000_rev_polarity_reversed = 1,
30371 	e1000_rev_polarity_undefined = 255,
30372 };
30373 
30374 enum e1000_fc_mode {
30375 	e1000_fc_none = 0,
30376 	e1000_fc_rx_pause = 1,
30377 	e1000_fc_tx_pause = 2,
30378 	e1000_fc_full = 3,
30379 	e1000_fc_default = 255,
30380 };
30381 
30382 enum e1000_ms_type {
30383 	e1000_ms_hw_default = 0,
30384 	e1000_ms_force_master = 1,
30385 	e1000_ms_force_slave = 2,
30386 	e1000_ms_auto = 3,
30387 };
30388 
30389 enum e1000_smart_speed {
30390 	e1000_smart_speed_default = 0,
30391 	e1000_smart_speed_on = 1,
30392 	e1000_smart_speed_off = 2,
30393 };
30394 
30395 enum e1000_serdes_link_state {
30396 	e1000_serdes_link_down = 0,
30397 	e1000_serdes_link_autoneg_progress = 1,
30398 	e1000_serdes_link_autoneg_complete = 2,
30399 	e1000_serdes_link_forced_up = 3,
30400 };
30401 
30402 struct e1000_hw_stats {
30403 	u64 crcerrs;
30404 	u64 algnerrc;
30405 	u64 symerrs;
30406 	u64 rxerrc;
30407 	u64 mpc;
30408 	u64 scc;
30409 	u64 ecol;
30410 	u64 mcc;
30411 	u64 latecol;
30412 	u64 colc;
30413 	u64 dc;
30414 	u64 tncrs;
30415 	u64 sec;
30416 	u64 cexterr;
30417 	u64 rlec;
30418 	u64 xonrxc;
30419 	u64 xontxc;
30420 	u64 xoffrxc;
30421 	u64 xofftxc;
30422 	u64 fcruc;
30423 	u64 prc64;
30424 	u64 prc127;
30425 	u64 prc255;
30426 	u64 prc511;
30427 	u64 prc1023;
30428 	u64 prc1522;
30429 	u64 gprc;
30430 	u64 bprc;
30431 	u64 mprc;
30432 	u64 gptc;
30433 	u64 gorc;
30434 	u64 gotc;
30435 	u64 rnbc;
30436 	u64 ruc;
30437 	u64 rfc;
30438 	u64 roc;
30439 	u64 rjc;
30440 	u64 mgprc;
30441 	u64 mgpdc;
30442 	u64 mgptc;
30443 	u64 tor;
30444 	u64 tot;
30445 	u64 tpr;
30446 	u64 tpt;
30447 	u64 ptc64;
30448 	u64 ptc127;
30449 	u64 ptc255;
30450 	u64 ptc511;
30451 	u64 ptc1023;
30452 	u64 ptc1522;
30453 	u64 mptc;
30454 	u64 bptc;
30455 	u64 tsctc;
30456 	u64 tsctfc;
30457 	u64 iac;
30458 	u64 icrxptc;
30459 	u64 icrxatc;
30460 	u64 ictxptc;
30461 	u64 ictxatc;
30462 	u64 ictxqec;
30463 	u64 ictxqmtc;
30464 	u64 icrxdmtc;
30465 	u64 icrxoc;
30466 };
30467 
30468 struct e1000_phy_stats {
30469 	u32 idle_errors;
30470 	u32 receive_errors;
30471 };
30472 
30473 struct e1000_host_mng_dhcp_cookie {
30474 	u32 signature;
30475 	u8 status;
30476 	u8 reserved0;
30477 	u16 vlan_id;
30478 	u32 reserved1;
30479 	u16 reserved2;
30480 	u8 reserved3;
30481 	u8 checksum;
30482 };
30483 
30484 struct e1000_hw;
30485 
30486 struct e1000_mac_operations {
30487 	s32 (*id_led_init)(struct e1000_hw *);
30488 	s32 (*blink_led)(struct e1000_hw *);
30489 	bool (*check_mng_mode)(struct e1000_hw *);
30490 	s32 (*check_for_link)(struct e1000_hw *);
30491 	s32 (*cleanup_led)(struct e1000_hw *);
30492 	void (*clear_hw_cntrs)(struct e1000_hw *);
30493 	void (*clear_vfta)(struct e1000_hw *);
30494 	s32 (*get_bus_info)(struct e1000_hw *);
30495 	void (*set_lan_id)(struct e1000_hw *);
30496 	s32 (*get_link_up_info)(struct e1000_hw *, u16 *, u16 *);
30497 	s32 (*led_on)(struct e1000_hw *);
30498 	s32 (*led_off)(struct e1000_hw *);
30499 	void (*update_mc_addr_list)(struct e1000_hw *, u8 *, u32);
30500 	s32 (*reset_hw)(struct e1000_hw *);
30501 	s32 (*init_hw)(struct e1000_hw *);
30502 	s32 (*setup_link)(struct e1000_hw *);
30503 	s32 (*setup_physical_interface)(struct e1000_hw *);
30504 	s32 (*setup_led)(struct e1000_hw *);
30505 	void (*write_vfta)(struct e1000_hw *, u32, u32);
30506 	void (*config_collision_dist)(struct e1000_hw *);
30507 	int (*rar_set)(struct e1000_hw *, u8 *, u32);
30508 	s32 (*read_mac_addr)(struct e1000_hw *);
30509 	u32 (*rar_get_count)(struct e1000_hw *);
30510 };
30511 
30512 struct e1000_mac_info {
30513 	struct e1000_mac_operations ops;
30514 	u8 addr[6];
30515 	u8 perm_addr[6];
30516 	enum e1000_mac_type type;
30517 	u32 collision_delta;
30518 	u32 ledctl_default;
30519 	u32 ledctl_mode1;
30520 	u32 ledctl_mode2;
30521 	u32 mc_filter_type;
30522 	u32 tx_packet_delta;
30523 	u32 txcw;
30524 	u16 current_ifs_val;
30525 	u16 ifs_max_val;
30526 	u16 ifs_min_val;
30527 	u16 ifs_ratio;
30528 	u16 ifs_step_size;
30529 	u16 mta_reg_count;
30530 	u32 mta_shadow[128];
30531 	u16 rar_entry_count;
30532 	u8 forced_speed_duplex;
30533 	bool adaptive_ifs;
30534 	bool has_fwsm;
30535 	bool arc_subsystem_valid;
30536 	bool autoneg;
30537 	bool autoneg_failed;
30538 	bool get_link_status;
30539 	bool in_ifs_mode;
30540 	bool serdes_has_link;
30541 	bool tx_pkt_filtering;
30542 	enum e1000_serdes_link_state serdes_link_state;
30543 };
30544 
30545 struct e1000_fc_info {
30546 	u32 high_water;
30547 	u32 low_water;
30548 	u16 pause_time;
30549 	u16 refresh_time;
30550 	bool send_xon;
30551 	bool strict_ieee;
30552 	enum e1000_fc_mode current_mode;
30553 	enum e1000_fc_mode requested_mode;
30554 };
30555 
30556 struct e1000_phy_operations {
30557 	s32 (*acquire)(struct e1000_hw *);
30558 	s32 (*cfg_on_link_up)(struct e1000_hw *);
30559 	s32 (*check_polarity)(struct e1000_hw *);
30560 	s32 (*check_reset_block)(struct e1000_hw *);
30561 	s32 (*commit)(struct e1000_hw *);
30562 	s32 (*force_speed_duplex)(struct e1000_hw *);
30563 	s32 (*get_cfg_done)(struct e1000_hw *);
30564 	s32 (*get_cable_length)(struct e1000_hw *);
30565 	s32 (*get_info)(struct e1000_hw *);
30566 	s32 (*set_page)(struct e1000_hw *, u16);
30567 	s32 (*read_reg)(struct e1000_hw *, u32, u16 *);
30568 	s32 (*read_reg_locked)(struct e1000_hw *, u32, u16 *);
30569 	s32 (*read_reg_page)(struct e1000_hw *, u32, u16 *);
30570 	void (*release)(struct e1000_hw *);
30571 	s32 (*reset)(struct e1000_hw *);
30572 	s32 (*set_d0_lplu_state)(struct e1000_hw *, bool);
30573 	s32 (*set_d3_lplu_state)(struct e1000_hw *, bool);
30574 	s32 (*write_reg)(struct e1000_hw *, u32, u16);
30575 	s32 (*write_reg_locked)(struct e1000_hw *, u32, u16);
30576 	s32 (*write_reg_page)(struct e1000_hw *, u32, u16);
30577 	void (*power_up)(struct e1000_hw *);
30578 	void (*power_down)(struct e1000_hw *);
30579 };
30580 
30581 struct e1000_phy_info {
30582 	struct e1000_phy_operations ops;
30583 	enum e1000_phy_type type;
30584 	enum e1000_1000t_rx_status local_rx;
30585 	enum e1000_1000t_rx_status remote_rx;
30586 	enum e1000_ms_type ms_type;
30587 	enum e1000_ms_type original_ms_type;
30588 	enum e1000_rev_polarity cable_polarity;
30589 	enum e1000_smart_speed smart_speed;
30590 	u32 addr;
30591 	u32 id;
30592 	u32 reset_delay_us;
30593 	u32 revision;
30594 	enum e1000_media_type media_type;
30595 	u16 autoneg_advertised;
30596 	u16 autoneg_mask;
30597 	u16 cable_length;
30598 	u16 max_cable_length;
30599 	u16 min_cable_length;
30600 	u8 mdix;
30601 	bool disable_polarity_correction;
30602 	bool is_mdix;
30603 	bool polarity_correction;
30604 	bool speed_downgraded;
30605 	bool autoneg_wait_to_complete;
30606 };
30607 
30608 struct e1000_nvm_operations {
30609 	s32 (*acquire)(struct e1000_hw *);
30610 	s32 (*read)(struct e1000_hw *, u16, u16, u16 *);
30611 	void (*release)(struct e1000_hw *);
30612 	void (*reload)(struct e1000_hw *);
30613 	s32 (*update)(struct e1000_hw *);
30614 	s32 (*valid_led_default)(struct e1000_hw *, u16 *);
30615 	s32 (*validate)(struct e1000_hw *);
30616 	s32 (*write)(struct e1000_hw *, u16, u16, u16 *);
30617 };
30618 
30619 struct e1000_nvm_info {
30620 	struct e1000_nvm_operations ops;
30621 	enum e1000_nvm_type type;
30622 	enum e1000_nvm_override override;
30623 	u32 flash_bank_size;
30624 	u32 flash_base_addr;
30625 	u16 word_size;
30626 	u16 delay_usec;
30627 	u16 address_bits;
30628 	u16 opcode_bits;
30629 	u16 page_size;
30630 };
30631 
30632 struct e1000_bus_info {
30633 	enum e1000_bus_width width;
30634 	u16 func;
30635 };
30636 
30637 struct e1000_dev_spec_82571 {
30638 	bool laa_is_present;
30639 	u32 smb_counter;
30640 };
30641 
30642 struct e1000_dev_spec_80003es2lan {
30643 	bool mdic_wa_enable;
30644 };
30645 
30646 struct e1000_shadow_ram {
30647 	u16 value;
30648 	bool modified;
30649 };
30650 
30651 enum e1000_ulp_state {
30652 	e1000_ulp_state_unknown = 0,
30653 	e1000_ulp_state_off = 1,
30654 	e1000_ulp_state_on = 2,
30655 };
30656 
30657 struct e1000_dev_spec_ich8lan {
30658 	bool kmrn_lock_loss_workaround_enabled;
30659 	struct e1000_shadow_ram shadow_ram[2048];
30660 	bool nvm_k1_enabled;
30661 	bool eee_disable;
30662 	u16 eee_lp_ability;
30663 	enum e1000_ulp_state ulp_state;
30664 };
30665 
30666 struct e1000_adapter;
30667 
30668 struct e1000_hw {
30669 	struct e1000_adapter *adapter;
30670 	void *hw_addr;
30671 	void *flash_address;
30672 	struct e1000_mac_info mac;
30673 	struct e1000_fc_info fc;
30674 	struct e1000_phy_info phy;
30675 	struct e1000_nvm_info nvm;
30676 	struct e1000_bus_info bus;
30677 	struct e1000_host_mng_dhcp_cookie mng_cookie;
30678 	union {
30679 		struct e1000_dev_spec_82571 e82571;
30680 		struct e1000_dev_spec_80003es2lan e80003es2lan;
30681 		struct e1000_dev_spec_ich8lan ich8lan;
30682 	} dev_spec;
30683 };
30684 
30685 struct e1000_phy_regs {
30686 	u16 bmcr;
30687 	u16 bmsr;
30688 	u16 advertise;
30689 	u16 lpa;
30690 	u16 expansion;
30691 	u16 ctrl1000;
30692 	u16 stat1000;
30693 	u16 estatus;
30694 };
30695 
30696 struct e1000_buffer;
30697 
30698 struct e1000_ring {
30699 	struct e1000_adapter *adapter;
30700 	void *desc;
30701 	dma_addr_t dma;
30702 	unsigned int size;
30703 	unsigned int count;
30704 	u16 next_to_use;
30705 	u16 next_to_clean;
30706 	void *head;
30707 	void *tail;
30708 	struct e1000_buffer *buffer_info;
30709 	char name[21];
30710 	u32 ims_val;
30711 	u32 itr_val;
30712 	void *itr_register;
30713 	int set_itr;
30714 	struct sk_buff *rx_skb_top;
30715 };
30716 
30717 struct ptp_clock;
30718 
30719 struct e1000_info;
30720 
30721 struct e1000_adapter {
30722 	struct timer_list watchdog_timer;
30723 	struct timer_list phy_info_timer;
30724 	struct timer_list blink_timer;
30725 	struct work_struct reset_task;
30726 	struct work_struct watchdog_task;
30727 	const struct e1000_info *ei;
30728 	long unsigned int active_vlans[64];
30729 	u32 bd_number;
30730 	u32 rx_buffer_len;
30731 	u16 mng_vlan_id;
30732 	u16 link_speed;
30733 	u16 link_duplex;
30734 	u16 eeprom_vers;
30735 	long unsigned int state;
30736 	u32 itr;
30737 	u32 itr_setting;
30738 	u16 tx_itr;
30739 	u16 rx_itr;
30740 	long: 64;
30741 	long: 64;
30742 	long: 64;
30743 	struct e1000_ring *tx_ring;
30744 	u32 tx_fifo_limit;
30745 	struct napi_struct napi;
30746 	unsigned int uncorr_errors;
30747 	unsigned int corr_errors;
30748 	unsigned int restart_queue;
30749 	u32 txd_cmd;
30750 	bool detect_tx_hung;
30751 	bool tx_hang_recheck;
30752 	u8 tx_timeout_factor;
30753 	u32 tx_int_delay;
30754 	u32 tx_abs_int_delay;
30755 	unsigned int total_tx_bytes;
30756 	unsigned int total_tx_packets;
30757 	unsigned int total_rx_bytes;
30758 	unsigned int total_rx_packets;
30759 	u64 tpt_old;
30760 	u64 colc_old;
30761 	u32 gotc;
30762 	u64 gotc_old;
30763 	u32 tx_timeout_count;
30764 	u32 tx_fifo_head;
30765 	u32 tx_head_addr;
30766 	u32 tx_fifo_size;
30767 	u32 tx_dma_failed;
30768 	u32 tx_hwtstamp_timeouts;
30769 	u32 tx_hwtstamp_skipped;
30770 	long: 64;
30771 	long: 64;
30772 	long: 64;
30773 	long: 64;
30774 	long: 64;
30775 	long: 64;
30776 	long: 64;
30777 	long: 64;
30778 	long: 64;
30779 	long: 64;
30780 	long: 64;
30781 	long: 64;
30782 	long: 64;
30783 	long: 64;
30784 	bool (*clean_rx)(struct e1000_ring *, int *, int);
30785 	void (*alloc_rx_buf)(struct e1000_ring *, int, gfp_t);
30786 	struct e1000_ring *rx_ring;
30787 	u32 rx_int_delay;
30788 	u32 rx_abs_int_delay;
30789 	u64 hw_csum_err;
30790 	u64 hw_csum_good;
30791 	u64 rx_hdr_split;
30792 	u32 gorc;
30793 	u64 gorc_old;
30794 	u32 alloc_rx_buff_failed;
30795 	u32 rx_dma_failed;
30796 	u32 rx_hwtstamp_cleared;
30797 	unsigned int rx_ps_pages;
30798 	u16 rx_ps_bsize0;
30799 	u32 max_frame_size;
30800 	u32 min_frame_size;
30801 	struct net_device *netdev;
30802 	struct pci_dev *pdev;
30803 	struct e1000_hw hw;
30804 	spinlock_t stats64_lock;
30805 	struct e1000_hw_stats stats;
30806 	struct e1000_phy_info phy_info;
30807 	struct e1000_phy_stats phy_stats;
30808 	struct e1000_phy_regs phy_regs;
30809 	struct e1000_ring test_tx_ring;
30810 	struct e1000_ring test_rx_ring;
30811 	u32 test_icr;
30812 	u32 msg_enable;
30813 	unsigned int num_vectors;
30814 	struct msix_entry *msix_entries;
30815 	int int_mode;
30816 	u32 eiac_mask;
30817 	u32 eeprom_wol;
30818 	u32 wol;
30819 	u32 pba;
30820 	u32 max_hw_frame_size;
30821 	bool fc_autoneg;
30822 	unsigned int flags;
30823 	unsigned int flags2;
30824 	struct work_struct downshift_task;
30825 	struct work_struct update_phy_task;
30826 	struct work_struct print_hang_task;
30827 	int phy_hang_count;
30828 	u16 tx_ring_count;
30829 	u16 rx_ring_count;
30830 	struct hwtstamp_config hwtstamp_config;
30831 	struct delayed_work systim_overflow_work;
30832 	struct sk_buff *tx_hwtstamp_skb;
30833 	long unsigned int tx_hwtstamp_start;
30834 	struct work_struct tx_hwtstamp_work;
30835 	spinlock_t systim_lock;
30836 	struct cyclecounter cc;
30837 	struct timecounter tc;
30838 	struct ptp_clock *ptp_clock;
30839 	struct ptp_clock_info ptp_clock_info;
30840 	struct pm_qos_request pm_qos_req;
30841 	long int ptp_delta;
30842 	u16 eee_advert;
30843 	long: 64;
30844 	long: 64;
30845 	long: 64;
30846 	long: 64;
30847 	long: 64;
30848 	long: 64;
30849 	long: 64;
30850 	long: 64;
30851 	long: 64;
30852 	long: 64;
30853 	long: 64;
30854 	long: 64;
30855 };
30856 
30857 struct e1000_ps_page {
30858 	struct page *page;
30859 	u64 dma;
30860 };
30861 
30862 struct e1000_buffer {
30863 	dma_addr_t dma;
30864 	struct sk_buff *skb;
30865 	union {
30866 		struct {
30867 			long unsigned int time_stamp;
30868 			u16 length;
30869 			u16 next_to_watch;
30870 			unsigned int segs;
30871 			unsigned int bytecount;
30872 			u16 mapped_as_page;
30873 		};
30874 		struct {
30875 			struct e1000_ps_page *ps_pages;
30876 			struct page *page;
30877 		};
30878 	};
30879 };
30880 
30881 struct e1000_info {
30882 	enum e1000_mac_type mac;
30883 	unsigned int flags;
30884 	unsigned int flags2;
30885 	u32 pba;
30886 	u32 max_hw_frame_size;
30887 	s32 (*get_variants)(struct e1000_adapter *);
30888 	const struct e1000_mac_operations *mac_ops;
30889 	const struct e1000_phy_operations *phy_ops;
30890 	const struct e1000_nvm_operations *nvm_ops;
30891 };
30892 
30893 struct atomic_notifier_head {
30894 	spinlock_t lock;
30895 	struct notifier_block *head;
30896 };
30897 
30898 struct tasklet_struct {
30899 	struct tasklet_struct *next;
30900 	long unsigned int state;
30901 	atomic_t count;
30902 	bool use_callback;
30903 	union {
30904 		void (*func)(long unsigned int);
30905 		void (*callback)(struct tasklet_struct *);
30906 	};
30907 	long unsigned int data;
30908 };
30909 
30910 struct usb_ctrlrequest {
30911 	__u8 bRequestType;
30912 	__u8 bRequest;
30913 	__le16 wValue;
30914 	__le16 wIndex;
30915 	__le16 wLength;
30916 };
30917 
30918 struct usb_device_descriptor {
30919 	__u8 bLength;
30920 	__u8 bDescriptorType;
30921 	__le16 bcdUSB;
30922 	__u8 bDeviceClass;
30923 	__u8 bDeviceSubClass;
30924 	__u8 bDeviceProtocol;
30925 	__u8 bMaxPacketSize0;
30926 	__le16 idVendor;
30927 	__le16 idProduct;
30928 	__le16 bcdDevice;
30929 	__u8 iManufacturer;
30930 	__u8 iProduct;
30931 	__u8 iSerialNumber;
30932 	__u8 bNumConfigurations;
30933 };
30934 
30935 struct usb_config_descriptor {
30936 	__u8 bLength;
30937 	__u8 bDescriptorType;
30938 	__le16 wTotalLength;
30939 	__u8 bNumInterfaces;
30940 	__u8 bConfigurationValue;
30941 	__u8 iConfiguration;
30942 	__u8 bmAttributes;
30943 	__u8 bMaxPower;
30944 } __attribute__((packed));
30945 
30946 struct usb_interface_descriptor {
30947 	__u8 bLength;
30948 	__u8 bDescriptorType;
30949 	__u8 bInterfaceNumber;
30950 	__u8 bAlternateSetting;
30951 	__u8 bNumEndpoints;
30952 	__u8 bInterfaceClass;
30953 	__u8 bInterfaceSubClass;
30954 	__u8 bInterfaceProtocol;
30955 	__u8 iInterface;
30956 };
30957 
30958 struct usb_endpoint_descriptor {
30959 	__u8 bLength;
30960 	__u8 bDescriptorType;
30961 	__u8 bEndpointAddress;
30962 	__u8 bmAttributes;
30963 	__le16 wMaxPacketSize;
30964 	__u8 bInterval;
30965 	__u8 bRefresh;
30966 	__u8 bSynchAddress;
30967 } __attribute__((packed));
30968 
30969 struct usb_ssp_isoc_ep_comp_descriptor {
30970 	__u8 bLength;
30971 	__u8 bDescriptorType;
30972 	__le16 wReseved;
30973 	__le32 dwBytesPerInterval;
30974 };
30975 
30976 struct usb_ss_ep_comp_descriptor {
30977 	__u8 bLength;
30978 	__u8 bDescriptorType;
30979 	__u8 bMaxBurst;
30980 	__u8 bmAttributes;
30981 	__le16 wBytesPerInterval;
30982 };
30983 
30984 struct usb_interface_assoc_descriptor {
30985 	__u8 bLength;
30986 	__u8 bDescriptorType;
30987 	__u8 bFirstInterface;
30988 	__u8 bInterfaceCount;
30989 	__u8 bFunctionClass;
30990 	__u8 bFunctionSubClass;
30991 	__u8 bFunctionProtocol;
30992 	__u8 iFunction;
30993 };
30994 
30995 struct usb_bos_descriptor {
30996 	__u8 bLength;
30997 	__u8 bDescriptorType;
30998 	__le16 wTotalLength;
30999 	__u8 bNumDeviceCaps;
31000 } __attribute__((packed));
31001 
31002 struct usb_ext_cap_descriptor {
31003 	__u8 bLength;
31004 	__u8 bDescriptorType;
31005 	__u8 bDevCapabilityType;
31006 	__le32 bmAttributes;
31007 } __attribute__((packed));
31008 
31009 struct usb_ss_cap_descriptor {
31010 	__u8 bLength;
31011 	__u8 bDescriptorType;
31012 	__u8 bDevCapabilityType;
31013 	__u8 bmAttributes;
31014 	__le16 wSpeedSupported;
31015 	__u8 bFunctionalitySupport;
31016 	__u8 bU1devExitLat;
31017 	__le16 bU2DevExitLat;
31018 };
31019 
31020 struct usb_ss_container_id_descriptor {
31021 	__u8 bLength;
31022 	__u8 bDescriptorType;
31023 	__u8 bDevCapabilityType;
31024 	__u8 bReserved;
31025 	__u8 ContainerID[16];
31026 };
31027 
31028 struct usb_ssp_cap_descriptor {
31029 	__u8 bLength;
31030 	__u8 bDescriptorType;
31031 	__u8 bDevCapabilityType;
31032 	__u8 bReserved;
31033 	__le32 bmAttributes;
31034 	__le16 wFunctionalitySupport;
31035 	__le16 wReserved;
31036 	__le32 bmSublinkSpeedAttr[1];
31037 };
31038 
31039 struct usb_ptm_cap_descriptor {
31040 	__u8 bLength;
31041 	__u8 bDescriptorType;
31042 	__u8 bDevCapabilityType;
31043 };
31044 
31045 enum usb_device_speed {
31046 	USB_SPEED_UNKNOWN = 0,
31047 	USB_SPEED_LOW = 1,
31048 	USB_SPEED_FULL = 2,
31049 	USB_SPEED_HIGH = 3,
31050 	USB_SPEED_WIRELESS = 4,
31051 	USB_SPEED_SUPER = 5,
31052 	USB_SPEED_SUPER_PLUS = 6,
31053 };
31054 
31055 enum usb_device_state {
31056 	USB_STATE_NOTATTACHED = 0,
31057 	USB_STATE_ATTACHED = 1,
31058 	USB_STATE_POWERED = 2,
31059 	USB_STATE_RECONNECTING = 3,
31060 	USB_STATE_UNAUTHENTICATED = 4,
31061 	USB_STATE_DEFAULT = 5,
31062 	USB_STATE_ADDRESS = 6,
31063 	USB_STATE_CONFIGURED = 7,
31064 	USB_STATE_SUSPENDED = 8,
31065 };
31066 
31067 enum usb3_link_state {
31068 	USB3_LPM_U0 = 0,
31069 	USB3_LPM_U1 = 1,
31070 	USB3_LPM_U2 = 2,
31071 	USB3_LPM_U3 = 3,
31072 };
31073 
31074 enum usb_ssp_rate {
31075 	USB_SSP_GEN_UNKNOWN = 0,
31076 	USB_SSP_GEN_2x1 = 1,
31077 	USB_SSP_GEN_1x2 = 2,
31078 	USB_SSP_GEN_2x2 = 3,
31079 };
31080 
31081 struct ep_device;
31082 
31083 struct usb_host_endpoint {
31084 	struct usb_endpoint_descriptor desc;
31085 	struct usb_ss_ep_comp_descriptor ss_ep_comp;
31086 	struct usb_ssp_isoc_ep_comp_descriptor ssp_isoc_ep_comp;
31087 	long: 0;
31088 	struct list_head urb_list;
31089 	void *hcpriv;
31090 	struct ep_device *ep_dev;
31091 	unsigned char *extra;
31092 	int extralen;
31093 	int enabled;
31094 	int streams;
31095 	long: 0;
31096 } __attribute__((packed));
31097 
31098 struct usb_host_interface {
31099 	struct usb_interface_descriptor desc;
31100 	int extralen;
31101 	unsigned char *extra;
31102 	struct usb_host_endpoint *endpoint;
31103 	char *string;
31104 };
31105 
31106 enum usb_interface_condition {
31107 	USB_INTERFACE_UNBOUND = 0,
31108 	USB_INTERFACE_BINDING = 1,
31109 	USB_INTERFACE_BOUND = 2,
31110 	USB_INTERFACE_UNBINDING = 3,
31111 };
31112 
31113 struct usb_interface {
31114 	struct usb_host_interface *altsetting;
31115 	struct usb_host_interface *cur_altsetting;
31116 	unsigned int num_altsetting;
31117 	struct usb_interface_assoc_descriptor *intf_assoc;
31118 	int minor;
31119 	enum usb_interface_condition condition;
31120 	unsigned int sysfs_files_created: 1;
31121 	unsigned int ep_devs_created: 1;
31122 	unsigned int unregistering: 1;
31123 	unsigned int needs_remote_wakeup: 1;
31124 	unsigned int needs_altsetting0: 1;
31125 	unsigned int needs_binding: 1;
31126 	unsigned int resetting_device: 1;
31127 	unsigned int authorized: 1;
31128 	struct device dev;
31129 	struct device *usb_dev;
31130 	struct work_struct reset_ws;
31131 };
31132 
31133 struct usb_interface_cache {
31134 	unsigned int num_altsetting;
31135 	struct kref ref;
31136 	struct usb_host_interface altsetting[0];
31137 };
31138 
31139 struct usb_host_config {
31140 	struct usb_config_descriptor desc;
31141 	char *string;
31142 	struct usb_interface_assoc_descriptor *intf_assoc[16];
31143 	struct usb_interface *interface[32];
31144 	struct usb_interface_cache *intf_cache[32];
31145 	unsigned char *extra;
31146 	int extralen;
31147 };
31148 
31149 struct usb_host_bos {
31150 	struct usb_bos_descriptor *desc;
31151 	struct usb_ext_cap_descriptor *ext_cap;
31152 	struct usb_ss_cap_descriptor *ss_cap;
31153 	struct usb_ssp_cap_descriptor *ssp_cap;
31154 	struct usb_ss_container_id_descriptor *ss_id;
31155 	struct usb_ptm_cap_descriptor *ptm_cap;
31156 };
31157 
31158 struct usb_devmap {
31159 	long unsigned int devicemap[2];
31160 };
31161 
31162 struct mon_bus;
31163 
31164 struct usb_device;
31165 
31166 struct usb_bus {
31167 	struct device *controller;
31168 	struct device *sysdev;
31169 	int busnum;
31170 	const char *bus_name;
31171 	u8 uses_pio_for_control;
31172 	u8 otg_port;
31173 	unsigned int is_b_host: 1;
31174 	unsigned int b_hnp_enable: 1;
31175 	unsigned int no_stop_on_short: 1;
31176 	unsigned int no_sg_constraint: 1;
31177 	unsigned int sg_tablesize;
31178 	int devnum_next;
31179 	struct mutex devnum_next_mutex;
31180 	struct usb_devmap devmap;
31181 	struct usb_device *root_hub;
31182 	struct usb_bus *hs_companion;
31183 	int bandwidth_allocated;
31184 	int bandwidth_int_reqs;
31185 	int bandwidth_isoc_reqs;
31186 	unsigned int resuming_ports;
31187 	struct mon_bus *mon_bus;
31188 	int monitored;
31189 };
31190 
31191 struct wusb_dev;
31192 
31193 struct usb2_lpm_parameters {
31194 	unsigned int besl;
31195 	int timeout;
31196 };
31197 
31198 struct usb3_lpm_parameters {
31199 	unsigned int mel;
31200 	unsigned int pel;
31201 	unsigned int sel;
31202 	int timeout;
31203 };
31204 
31205 struct usb_tt;
31206 
31207 struct usb_device {
31208 	int devnum;
31209 	char devpath[16];
31210 	u32 route;
31211 	enum usb_device_state state;
31212 	enum usb_device_speed speed;
31213 	unsigned int rx_lanes;
31214 	unsigned int tx_lanes;
31215 	enum usb_ssp_rate ssp_rate;
31216 	struct usb_tt *tt;
31217 	int ttport;
31218 	unsigned int toggle[2];
31219 	struct usb_device *parent;
31220 	struct usb_bus *bus;
31221 	struct usb_host_endpoint ep0;
31222 	struct device dev;
31223 	struct usb_device_descriptor descriptor;
31224 	struct usb_host_bos *bos;
31225 	struct usb_host_config *config;
31226 	struct usb_host_config *actconfig;
31227 	struct usb_host_endpoint *ep_in[16];
31228 	struct usb_host_endpoint *ep_out[16];
31229 	char **rawdescriptors;
31230 	short unsigned int bus_mA;
31231 	u8 portnum;
31232 	u8 level;
31233 	u8 devaddr;
31234 	unsigned int can_submit: 1;
31235 	unsigned int persist_enabled: 1;
31236 	unsigned int reset_in_progress: 1;
31237 	unsigned int have_langid: 1;
31238 	unsigned int authorized: 1;
31239 	unsigned int authenticated: 1;
31240 	unsigned int wusb: 1;
31241 	unsigned int lpm_capable: 1;
31242 	unsigned int lpm_devinit_allow: 1;
31243 	unsigned int usb2_hw_lpm_capable: 1;
31244 	unsigned int usb2_hw_lpm_besl_capable: 1;
31245 	unsigned int usb2_hw_lpm_enabled: 1;
31246 	unsigned int usb2_hw_lpm_allowed: 1;
31247 	unsigned int usb3_lpm_u1_enabled: 1;
31248 	unsigned int usb3_lpm_u2_enabled: 1;
31249 	int string_langid;
31250 	char *product;
31251 	char *manufacturer;
31252 	char *serial;
31253 	struct list_head filelist;
31254 	int maxchild;
31255 	u32 quirks;
31256 	atomic_t urbnum;
31257 	long unsigned int active_duration;
31258 	long unsigned int connect_time;
31259 	unsigned int do_remote_wakeup: 1;
31260 	unsigned int reset_resume: 1;
31261 	unsigned int port_is_suspended: 1;
31262 	struct wusb_dev *wusb_dev;
31263 	int slot_id;
31264 	struct usb2_lpm_parameters l1_params;
31265 	struct usb3_lpm_parameters u1_params;
31266 	struct usb3_lpm_parameters u2_params;
31267 	unsigned int lpm_disable_count;
31268 	u16 hub_delay;
31269 	unsigned int use_generic_driver: 1;
31270 };
31271 
31272 struct usb_tt {
31273 	struct usb_device *hub;
31274 	int multi;
31275 	unsigned int think_time;
31276 	void *hcpriv;
31277 	spinlock_t lock;
31278 	struct list_head clear_list;
31279 	struct work_struct clear_work;
31280 };
31281 
31282 struct usb_iso_packet_descriptor {
31283 	unsigned int offset;
31284 	unsigned int length;
31285 	unsigned int actual_length;
31286 	int status;
31287 };
31288 
31289 struct usb_anchor {
31290 	struct list_head urb_list;
31291 	wait_queue_head_t wait;
31292 	spinlock_t lock;
31293 	atomic_t suspend_wakeups;
31294 	unsigned int poisoned: 1;
31295 };
31296 
31297 struct urb;
31298 
31299 typedef void (*usb_complete_t)(struct urb *);
31300 
31301 struct urb {
31302 	struct kref kref;
31303 	int unlinked;
31304 	void *hcpriv;
31305 	atomic_t use_count;
31306 	atomic_t reject;
31307 	struct list_head urb_list;
31308 	struct list_head anchor_list;
31309 	struct usb_anchor *anchor;
31310 	struct usb_device *dev;
31311 	struct usb_host_endpoint *ep;
31312 	unsigned int pipe;
31313 	unsigned int stream_id;
31314 	int status;
31315 	unsigned int transfer_flags;
31316 	void *transfer_buffer;
31317 	dma_addr_t transfer_dma;
31318 	struct scatterlist *sg;
31319 	int num_mapped_sgs;
31320 	int num_sgs;
31321 	u32 transfer_buffer_length;
31322 	u32 actual_length;
31323 	unsigned char *setup_packet;
31324 	dma_addr_t setup_dma;
31325 	int start_frame;
31326 	int number_of_packets;
31327 	int interval;
31328 	int error_count;
31329 	void *context;
31330 	usb_complete_t complete;
31331 	struct usb_iso_packet_descriptor iso_frame_desc[0];
31332 };
31333 
31334 struct usb_sg_request {
31335 	int status;
31336 	size_t bytes;
31337 	spinlock_t lock;
31338 	struct usb_device *dev;
31339 	int pipe;
31340 	int entries;
31341 	struct urb **urbs;
31342 	int count;
31343 	struct completion complete;
31344 };
31345 
31346 enum utf16_endian {
31347 	UTF16_HOST_ENDIAN = 0,
31348 	UTF16_LITTLE_ENDIAN = 1,
31349 	UTF16_BIG_ENDIAN = 2,
31350 };
31351 
31352 struct usb_cdc_header_desc {
31353 	__u8 bLength;
31354 	__u8 bDescriptorType;
31355 	__u8 bDescriptorSubType;
31356 	__le16 bcdCDC;
31357 } __attribute__((packed));
31358 
31359 struct usb_cdc_call_mgmt_descriptor {
31360 	__u8 bLength;
31361 	__u8 bDescriptorType;
31362 	__u8 bDescriptorSubType;
31363 	__u8 bmCapabilities;
31364 	__u8 bDataInterface;
31365 };
31366 
31367 struct usb_cdc_acm_descriptor {
31368 	__u8 bLength;
31369 	__u8 bDescriptorType;
31370 	__u8 bDescriptorSubType;
31371 	__u8 bmCapabilities;
31372 };
31373 
31374 struct usb_cdc_union_desc {
31375 	__u8 bLength;
31376 	__u8 bDescriptorType;
31377 	__u8 bDescriptorSubType;
31378 	__u8 bMasterInterface0;
31379 	__u8 bSlaveInterface0;
31380 };
31381 
31382 struct usb_cdc_country_functional_desc {
31383 	__u8 bLength;
31384 	__u8 bDescriptorType;
31385 	__u8 bDescriptorSubType;
31386 	__u8 iCountryCodeRelDate;
31387 	__le16 wCountyCode0;
31388 };
31389 
31390 struct usb_cdc_network_terminal_desc {
31391 	__u8 bLength;
31392 	__u8 bDescriptorType;
31393 	__u8 bDescriptorSubType;
31394 	__u8 bEntityId;
31395 	__u8 iName;
31396 	__u8 bChannelIndex;
31397 	__u8 bPhysicalInterface;
31398 };
31399 
31400 struct usb_cdc_ether_desc {
31401 	__u8 bLength;
31402 	__u8 bDescriptorType;
31403 	__u8 bDescriptorSubType;
31404 	__u8 iMACAddress;
31405 	__le32 bmEthernetStatistics;
31406 	__le16 wMaxSegmentSize;
31407 	__le16 wNumberMCFilters;
31408 	__u8 bNumberPowerFilters;
31409 } __attribute__((packed));
31410 
31411 struct usb_cdc_dmm_desc {
31412 	__u8 bFunctionLength;
31413 	__u8 bDescriptorType;
31414 	__u8 bDescriptorSubtype;
31415 	__u16 bcdVersion;
31416 	__le16 wMaxCommand;
31417 } __attribute__((packed));
31418 
31419 struct usb_cdc_mdlm_desc {
31420 	__u8 bLength;
31421 	__u8 bDescriptorType;
31422 	__u8 bDescriptorSubType;
31423 	__le16 bcdVersion;
31424 	__u8 bGUID[16];
31425 } __attribute__((packed));
31426 
31427 struct usb_cdc_mdlm_detail_desc {
31428 	__u8 bLength;
31429 	__u8 bDescriptorType;
31430 	__u8 bDescriptorSubType;
31431 	__u8 bGuidDescriptorType;
31432 	__u8 bDetailData[0];
31433 };
31434 
31435 struct usb_cdc_obex_desc {
31436 	__u8 bLength;
31437 	__u8 bDescriptorType;
31438 	__u8 bDescriptorSubType;
31439 	__le16 bcdVersion;
31440 } __attribute__((packed));
31441 
31442 struct usb_cdc_ncm_desc {
31443 	__u8 bLength;
31444 	__u8 bDescriptorType;
31445 	__u8 bDescriptorSubType;
31446 	__le16 bcdNcmVersion;
31447 	__u8 bmNetworkCapabilities;
31448 } __attribute__((packed));
31449 
31450 struct usb_cdc_mbim_desc {
31451 	__u8 bLength;
31452 	__u8 bDescriptorType;
31453 	__u8 bDescriptorSubType;
31454 	__le16 bcdMBIMVersion;
31455 	__le16 wMaxControlMessage;
31456 	__u8 bNumberFilters;
31457 	__u8 bMaxFilterSize;
31458 	__le16 wMaxSegmentSize;
31459 	__u8 bmNetworkCapabilities;
31460 } __attribute__((packed));
31461 
31462 struct usb_cdc_mbim_extended_desc {
31463 	__u8 bLength;
31464 	__u8 bDescriptorType;
31465 	__u8 bDescriptorSubType;
31466 	__le16 bcdMBIMExtendedVersion;
31467 	__u8 bMaxOutstandingCommandMessages;
31468 	__le16 wMTU;
31469 } __attribute__((packed));
31470 
31471 struct usb_cdc_parsed_header {
31472 	struct usb_cdc_union_desc *usb_cdc_union_desc;
31473 	struct usb_cdc_header_desc *usb_cdc_header_desc;
31474 	struct usb_cdc_call_mgmt_descriptor *usb_cdc_call_mgmt_descriptor;
31475 	struct usb_cdc_acm_descriptor *usb_cdc_acm_descriptor;
31476 	struct usb_cdc_country_functional_desc *usb_cdc_country_functional_desc;
31477 	struct usb_cdc_network_terminal_desc *usb_cdc_network_terminal_desc;
31478 	struct usb_cdc_ether_desc *usb_cdc_ether_desc;
31479 	struct usb_cdc_dmm_desc *usb_cdc_dmm_desc;
31480 	struct usb_cdc_mdlm_desc *usb_cdc_mdlm_desc;
31481 	struct usb_cdc_mdlm_detail_desc *usb_cdc_mdlm_detail_desc;
31482 	struct usb_cdc_obex_desc *usb_cdc_obex_desc;
31483 	struct usb_cdc_ncm_desc *usb_cdc_ncm_desc;
31484 	struct usb_cdc_mbim_desc *usb_cdc_mbim_desc;
31485 	struct usb_cdc_mbim_extended_desc *usb_cdc_mbim_extended_desc;
31486 	bool phonet_magic_present;
31487 };
31488 
31489 struct giveback_urb_bh {
31490 	bool running;
31491 	bool high_prio;
31492 	spinlock_t lock;
31493 	struct list_head head;
31494 	struct tasklet_struct bh;
31495 	struct usb_host_endpoint *completing_ep;
31496 };
31497 
31498 enum usb_dev_authorize_policy {
31499 	USB_DEVICE_AUTHORIZE_NONE = 0,
31500 	USB_DEVICE_AUTHORIZE_ALL = 1,
31501 	USB_DEVICE_AUTHORIZE_INTERNAL = 2,
31502 };
31503 
31504 struct usb_phy_roothub;
31505 
31506 struct hc_driver;
31507 
31508 struct usb_phy;
31509 
31510 struct gen_pool;
31511 
31512 struct usb_hcd {
31513 	struct usb_bus self;
31514 	struct kref kref;
31515 	const char *product_desc;
31516 	int speed;
31517 	char irq_descr[24];
31518 	struct timer_list rh_timer;
31519 	struct urb *status_urb;
31520 	struct work_struct wakeup_work;
31521 	struct work_struct died_work;
31522 	const struct hc_driver *driver;
31523 	struct usb_phy *usb_phy;
31524 	struct usb_phy_roothub *phy_roothub;
31525 	long unsigned int flags;
31526 	enum usb_dev_authorize_policy dev_policy;
31527 	unsigned int rh_registered: 1;
31528 	unsigned int rh_pollable: 1;
31529 	unsigned int msix_enabled: 1;
31530 	unsigned int msi_enabled: 1;
31531 	unsigned int skip_phy_initialization: 1;
31532 	unsigned int uses_new_polling: 1;
31533 	unsigned int wireless: 1;
31534 	unsigned int has_tt: 1;
31535 	unsigned int amd_resume_bug: 1;
31536 	unsigned int can_do_streams: 1;
31537 	unsigned int tpl_support: 1;
31538 	unsigned int cant_recv_wakeups: 1;
31539 	unsigned int irq;
31540 	void *regs;
31541 	resource_size_t rsrc_start;
31542 	resource_size_t rsrc_len;
31543 	unsigned int power_budget;
31544 	struct giveback_urb_bh high_prio_bh;
31545 	struct giveback_urb_bh low_prio_bh;
31546 	struct mutex *address0_mutex;
31547 	struct mutex *bandwidth_mutex;
31548 	struct usb_hcd *shared_hcd;
31549 	struct usb_hcd *primary_hcd;
31550 	struct dma_pool *pool[4];
31551 	int state;
31552 	struct gen_pool *localmem_pool;
31553 	long unsigned int hcd_priv[0];
31554 };
31555 
31556 struct hc_driver {
31557 	const char *description;
31558 	const char *product_desc;
31559 	size_t hcd_priv_size;
31560 	irqreturn_t (*irq)(struct usb_hcd *);
31561 	int flags;
31562 	int (*reset)(struct usb_hcd *);
31563 	int (*start)(struct usb_hcd *);
31564 	int (*pci_suspend)(struct usb_hcd *, bool);
31565 	int (*pci_resume)(struct usb_hcd *, bool);
31566 	void (*stop)(struct usb_hcd *);
31567 	void (*shutdown)(struct usb_hcd *);
31568 	int (*get_frame_number)(struct usb_hcd *);
31569 	int (*urb_enqueue)(struct usb_hcd *, struct urb *, gfp_t);
31570 	int (*urb_dequeue)(struct usb_hcd *, struct urb *, int);
31571 	int (*map_urb_for_dma)(struct usb_hcd *, struct urb *, gfp_t);
31572 	void (*unmap_urb_for_dma)(struct usb_hcd *, struct urb *);
31573 	void (*endpoint_disable)(struct usb_hcd *, struct usb_host_endpoint *);
31574 	void (*endpoint_reset)(struct usb_hcd *, struct usb_host_endpoint *);
31575 	int (*hub_status_data)(struct usb_hcd *, char *);
31576 	int (*hub_control)(struct usb_hcd *, u16, u16, u16, char *, u16);
31577 	int (*bus_suspend)(struct usb_hcd *);
31578 	int (*bus_resume)(struct usb_hcd *);
31579 	int (*start_port_reset)(struct usb_hcd *, unsigned int);
31580 	long unsigned int (*get_resuming_ports)(struct usb_hcd *);
31581 	void (*relinquish_port)(struct usb_hcd *, int);
31582 	int (*port_handed_over)(struct usb_hcd *, int);
31583 	void (*clear_tt_buffer_complete)(struct usb_hcd *, struct usb_host_endpoint *);
31584 	int (*alloc_dev)(struct usb_hcd *, struct usb_device *);
31585 	void (*free_dev)(struct usb_hcd *, struct usb_device *);
31586 	int (*alloc_streams)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint **, unsigned int, unsigned int, gfp_t);
31587 	int (*free_streams)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint **, unsigned int, gfp_t);
31588 	int (*add_endpoint)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint *);
31589 	int (*drop_endpoint)(struct usb_hcd *, struct usb_device *, struct usb_host_endpoint *);
31590 	int (*check_bandwidth)(struct usb_hcd *, struct usb_device *);
31591 	void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);
31592 	int (*address_device)(struct usb_hcd *, struct usb_device *);
31593 	int (*enable_device)(struct usb_hcd *, struct usb_device *);
31594 	int (*update_hub_device)(struct usb_hcd *, struct usb_device *, struct usb_tt *, gfp_t);
31595 	int (*reset_device)(struct usb_hcd *, struct usb_device *);
31596 	int (*update_device)(struct usb_hcd *, struct usb_device *);
31597 	int (*set_usb2_hw_lpm)(struct usb_hcd *, struct usb_device *, int);
31598 	int (*enable_usb3_lpm_timeout)(struct usb_hcd *, struct usb_device *, enum usb3_link_state);
31599 	int (*disable_usb3_lpm_timeout)(struct usb_hcd *, struct usb_device *, enum usb3_link_state);
31600 	int (*find_raw_port_number)(struct usb_hcd *, int);
31601 	int (*port_power)(struct usb_hcd *, int, bool);
31602 	int (*submit_single_step_set_feature)(struct usb_hcd *, struct urb *, int);
31603 };
31604 
31605 enum usb_phy_type {
31606 	USB_PHY_TYPE_UNDEFINED = 0,
31607 	USB_PHY_TYPE_USB2 = 1,
31608 	USB_PHY_TYPE_USB3 = 2,
31609 };
31610 
31611 enum usb_phy_events {
31612 	USB_EVENT_NONE = 0,
31613 	USB_EVENT_VBUS = 1,
31614 	USB_EVENT_ID = 2,
31615 	USB_EVENT_CHARGER = 3,
31616 	USB_EVENT_ENUMERATED = 4,
31617 };
31618 
31619 struct extcon_dev;
31620 
31621 enum usb_charger_type {
31622 	UNKNOWN_TYPE = 0,
31623 	SDP_TYPE = 1,
31624 	DCP_TYPE = 2,
31625 	CDP_TYPE = 3,
31626 	ACA_TYPE = 4,
31627 };
31628 
31629 enum usb_charger_state {
31630 	USB_CHARGER_DEFAULT = 0,
31631 	USB_CHARGER_PRESENT = 1,
31632 	USB_CHARGER_ABSENT = 2,
31633 };
31634 
31635 struct usb_charger_current {
31636 	unsigned int sdp_min;
31637 	unsigned int sdp_max;
31638 	unsigned int dcp_min;
31639 	unsigned int dcp_max;
31640 	unsigned int cdp_min;
31641 	unsigned int cdp_max;
31642 	unsigned int aca_min;
31643 	unsigned int aca_max;
31644 };
31645 
31646 struct usb_otg;
31647 
31648 struct usb_phy_io_ops;
31649 
31650 struct usb_phy {
31651 	struct device *dev;
31652 	const char *label;
31653 	unsigned int flags;
31654 	enum usb_phy_type type;
31655 	enum usb_phy_events last_event;
31656 	struct usb_otg *otg;
31657 	struct device *io_dev;
31658 	struct usb_phy_io_ops *io_ops;
31659 	void *io_priv;
31660 	struct extcon_dev *edev;
31661 	struct extcon_dev *id_edev;
31662 	struct notifier_block vbus_nb;
31663 	struct notifier_block id_nb;
31664 	struct notifier_block type_nb;
31665 	enum usb_charger_type chg_type;
31666 	enum usb_charger_state chg_state;
31667 	struct usb_charger_current chg_cur;
31668 	struct work_struct chg_work;
31669 	struct atomic_notifier_head notifier;
31670 	u16 port_status;
31671 	u16 port_change;
31672 	struct list_head head;
31673 	int (*init)(struct usb_phy *);
31674 	void (*shutdown)(struct usb_phy *);
31675 	int (*set_vbus)(struct usb_phy *, int);
31676 	int (*set_power)(struct usb_phy *, unsigned int);
31677 	int (*set_suspend)(struct usb_phy *, int);
31678 	int (*set_wakeup)(struct usb_phy *, bool);
31679 	int (*notify_connect)(struct usb_phy *, enum usb_device_speed);
31680 	int (*notify_disconnect)(struct usb_phy *, enum usb_device_speed);
31681 	enum usb_charger_type (*charger_detect)(struct usb_phy *);
31682 };
31683 
31684 struct phy_configure_opts_dp {
31685 	unsigned int link_rate;
31686 	unsigned int lanes;
31687 	unsigned int voltage[4];
31688 	unsigned int pre[4];
31689 	u8 ssc: 1;
31690 	u8 set_rate: 1;
31691 	u8 set_lanes: 1;
31692 	u8 set_voltages: 1;
31693 };
31694 
31695 struct phy_configure_opts_lvds {
31696 	unsigned int bits_per_lane_and_dclk_cycle;
31697 	long unsigned int differential_clk_rate;
31698 	unsigned int lanes;
31699 	bool is_slave;
31700 };
31701 
31702 struct phy_configure_opts_mipi_dphy {
31703 	unsigned int clk_miss;
31704 	unsigned int clk_post;
31705 	unsigned int clk_pre;
31706 	unsigned int clk_prepare;
31707 	unsigned int clk_settle;
31708 	unsigned int clk_term_en;
31709 	unsigned int clk_trail;
31710 	unsigned int clk_zero;
31711 	unsigned int d_term_en;
31712 	unsigned int eot;
31713 	unsigned int hs_exit;
31714 	unsigned int hs_prepare;
31715 	unsigned int hs_settle;
31716 	unsigned int hs_skip;
31717 	unsigned int hs_trail;
31718 	unsigned int hs_zero;
31719 	unsigned int init;
31720 	unsigned int lpx;
31721 	unsigned int ta_get;
31722 	unsigned int ta_go;
31723 	unsigned int ta_sure;
31724 	unsigned int wakeup;
31725 	long unsigned int hs_clk_rate;
31726 	long unsigned int lp_clk_rate;
31727 	unsigned char lanes;
31728 };
31729 
31730 enum phy_mode {
31731 	PHY_MODE_INVALID = 0,
31732 	PHY_MODE_USB_HOST = 1,
31733 	PHY_MODE_USB_HOST_LS = 2,
31734 	PHY_MODE_USB_HOST_FS = 3,
31735 	PHY_MODE_USB_HOST_HS = 4,
31736 	PHY_MODE_USB_HOST_SS = 5,
31737 	PHY_MODE_USB_DEVICE = 6,
31738 	PHY_MODE_USB_DEVICE_LS = 7,
31739 	PHY_MODE_USB_DEVICE_FS = 8,
31740 	PHY_MODE_USB_DEVICE_HS = 9,
31741 	PHY_MODE_USB_DEVICE_SS = 10,
31742 	PHY_MODE_USB_OTG = 11,
31743 	PHY_MODE_UFS_HS_A = 12,
31744 	PHY_MODE_UFS_HS_B = 13,
31745 	PHY_MODE_PCIE = 14,
31746 	PHY_MODE_ETHERNET = 15,
31747 	PHY_MODE_MIPI_DPHY = 16,
31748 	PHY_MODE_SATA = 17,
31749 	PHY_MODE_LVDS = 18,
31750 	PHY_MODE_DP = 19,
31751 };
31752 
31753 enum phy_media {
31754 	PHY_MEDIA_DEFAULT = 0,
31755 	PHY_MEDIA_SR = 1,
31756 	PHY_MEDIA_DAC = 2,
31757 };
31758 
31759 union phy_configure_opts {
31760 	struct phy_configure_opts_mipi_dphy mipi_dphy;
31761 	struct phy_configure_opts_dp dp;
31762 	struct phy_configure_opts_lvds lvds;
31763 };
31764 
31765 struct phy___2;
31766 
31767 struct phy_ops {
31768 	int (*init)(struct phy___2 *);
31769 	int (*exit)(struct phy___2 *);
31770 	int (*power_on)(struct phy___2 *);
31771 	int (*power_off)(struct phy___2 *);
31772 	int (*set_mode)(struct phy___2 *, enum phy_mode, int);
31773 	int (*set_media)(struct phy___2 *, enum phy_media);
31774 	int (*set_speed)(struct phy___2 *, int);
31775 	int (*configure)(struct phy___2 *, union phy_configure_opts *);
31776 	int (*validate)(struct phy___2 *, enum phy_mode, int, union phy_configure_opts *);
31777 	int (*reset)(struct phy___2 *);
31778 	int (*calibrate)(struct phy___2 *);
31779 	void (*release)(struct phy___2 *);
31780 	struct module *owner;
31781 };
31782 
31783 struct phy_attrs {
31784 	u32 bus_width;
31785 	u32 max_link_rate;
31786 	enum phy_mode mode;
31787 };
31788 
31789 struct phy___2 {
31790 	struct device dev;
31791 	int id;
31792 	const struct phy_ops *ops;
31793 	struct mutex mutex;
31794 	int init_count;
31795 	int power_count;
31796 	struct phy_attrs attrs;
31797 	struct regulator *pwr;
31798 };
31799 
31800 enum usb_otg_state {
31801 	OTG_STATE_UNDEFINED = 0,
31802 	OTG_STATE_B_IDLE = 1,
31803 	OTG_STATE_B_SRP_INIT = 2,
31804 	OTG_STATE_B_PERIPHERAL = 3,
31805 	OTG_STATE_B_WAIT_ACON = 4,
31806 	OTG_STATE_B_HOST = 5,
31807 	OTG_STATE_A_IDLE = 6,
31808 	OTG_STATE_A_WAIT_VRISE = 7,
31809 	OTG_STATE_A_WAIT_BCON = 8,
31810 	OTG_STATE_A_HOST = 9,
31811 	OTG_STATE_A_SUSPEND = 10,
31812 	OTG_STATE_A_PERIPHERAL = 11,
31813 	OTG_STATE_A_WAIT_VFALL = 12,
31814 	OTG_STATE_A_VBUS_ERR = 13,
31815 };
31816 
31817 struct usb_phy_io_ops {
31818 	int (*read)(struct usb_phy *, u32);
31819 	int (*write)(struct usb_phy *, u32, u32);
31820 };
31821 
31822 struct usb_gadget;
31823 
31824 struct usb_otg {
31825 	u8 default_a;
31826 	struct phy___2 *phy;
31827 	struct usb_phy *usb_phy;
31828 	struct usb_bus *host;
31829 	struct usb_gadget *gadget;
31830 	enum usb_otg_state state;
31831 	int (*set_host)(struct usb_otg *, struct usb_bus *);
31832 	int (*set_peripheral)(struct usb_otg *, struct usb_gadget *);
31833 	int (*set_vbus)(struct usb_otg *, bool);
31834 	int (*start_srp)(struct usb_otg *);
31835 	int (*start_hnp)(struct usb_otg *);
31836 };
31837 
31838 struct api_context {
31839 	struct completion done;
31840 	int status;
31841 };
31842 
31843 struct set_config_request {
31844 	struct usb_device *udev;
31845 	int config;
31846 	struct work_struct work;
31847 	struct list_head node;
31848 };
31849 
31850 struct ehci_per_sched {
31851 	struct usb_device *udev;
31852 	struct usb_host_endpoint *ep;
31853 	struct list_head ps_list;
31854 	u16 tt_usecs;
31855 	u16 cs_mask;
31856 	u16 period;
31857 	u16 phase;
31858 	u8 bw_phase;
31859 	u8 phase_uf;
31860 	u8 usecs;
31861 	u8 c_usecs;
31862 	u8 bw_uperiod;
31863 	u8 bw_period;
31864 };
31865 
31866 enum ehci_rh_state {
31867 	EHCI_RH_HALTED = 0,
31868 	EHCI_RH_SUSPENDED = 1,
31869 	EHCI_RH_RUNNING = 2,
31870 	EHCI_RH_STOPPING = 3,
31871 };
31872 
31873 enum ehci_hrtimer_event {
31874 	EHCI_HRTIMER_POLL_ASS = 0,
31875 	EHCI_HRTIMER_POLL_PSS = 1,
31876 	EHCI_HRTIMER_POLL_DEAD = 2,
31877 	EHCI_HRTIMER_UNLINK_INTR = 3,
31878 	EHCI_HRTIMER_FREE_ITDS = 4,
31879 	EHCI_HRTIMER_ACTIVE_UNLINK = 5,
31880 	EHCI_HRTIMER_START_UNLINK_INTR = 6,
31881 	EHCI_HRTIMER_ASYNC_UNLINKS = 7,
31882 	EHCI_HRTIMER_IAA_WATCHDOG = 8,
31883 	EHCI_HRTIMER_DISABLE_PERIODIC = 9,
31884 	EHCI_HRTIMER_DISABLE_ASYNC = 10,
31885 	EHCI_HRTIMER_IO_WATCHDOG = 11,
31886 	EHCI_HRTIMER_NUM_EVENTS = 12,
31887 };
31888 
31889 struct ehci_caps;
31890 
31891 struct ehci_regs;
31892 
31893 struct ehci_dbg_port;
31894 
31895 struct ehci_qh;
31896 
31897 union ehci_shadow;
31898 
31899 struct ehci_itd;
31900 
31901 struct ehci_sitd;
31902 
31903 struct ehci_hcd {
31904 	enum ehci_hrtimer_event next_hrtimer_event;
31905 	unsigned int enabled_hrtimer_events;
31906 	ktime_t hr_timeouts[12];
31907 	struct hrtimer hrtimer;
31908 	int PSS_poll_count;
31909 	int ASS_poll_count;
31910 	int died_poll_count;
31911 	struct ehci_caps *caps;
31912 	struct ehci_regs *regs;
31913 	struct ehci_dbg_port *debug;
31914 	__u32 hcs_params;
31915 	spinlock_t lock;
31916 	enum ehci_rh_state rh_state;
31917 	bool scanning: 1;
31918 	bool need_rescan: 1;
31919 	bool intr_unlinking: 1;
31920 	bool iaa_in_progress: 1;
31921 	bool async_unlinking: 1;
31922 	bool shutdown: 1;
31923 	struct ehci_qh *qh_scan_next;
31924 	struct ehci_qh *async;
31925 	struct ehci_qh *dummy;
31926 	struct list_head async_unlink;
31927 	struct list_head async_idle;
31928 	unsigned int async_unlink_cycle;
31929 	unsigned int async_count;
31930 	__le32 old_current;
31931 	__le32 old_token;
31932 	unsigned int periodic_size;
31933 	__le32 *periodic;
31934 	dma_addr_t periodic_dma;
31935 	struct list_head intr_qh_list;
31936 	unsigned int i_thresh;
31937 	union ehci_shadow *pshadow;
31938 	struct list_head intr_unlink_wait;
31939 	struct list_head intr_unlink;
31940 	unsigned int intr_unlink_wait_cycle;
31941 	unsigned int intr_unlink_cycle;
31942 	unsigned int now_frame;
31943 	unsigned int last_iso_frame;
31944 	unsigned int intr_count;
31945 	unsigned int isoc_count;
31946 	unsigned int periodic_count;
31947 	unsigned int uframe_periodic_max;
31948 	struct list_head cached_itd_list;
31949 	struct ehci_itd *last_itd_to_free;
31950 	struct list_head cached_sitd_list;
31951 	struct ehci_sitd *last_sitd_to_free;
31952 	long unsigned int reset_done[15];
31953 	long unsigned int bus_suspended;
31954 	long unsigned int companion_ports;
31955 	long unsigned int owned_ports;
31956 	long unsigned int port_c_suspend;
31957 	long unsigned int suspended_ports;
31958 	long unsigned int resuming_ports;
31959 	struct dma_pool *qh_pool;
31960 	struct dma_pool *qtd_pool;
31961 	struct dma_pool *itd_pool;
31962 	struct dma_pool *sitd_pool;
31963 	unsigned int random_frame;
31964 	long unsigned int next_statechange;
31965 	ktime_t last_periodic_enable;
31966 	u32 command;
31967 	unsigned int no_selective_suspend: 1;
31968 	unsigned int has_fsl_port_bug: 1;
31969 	unsigned int has_fsl_hs_errata: 1;
31970 	unsigned int has_fsl_susp_errata: 1;
31971 	unsigned int big_endian_mmio: 1;
31972 	unsigned int big_endian_desc: 1;
31973 	unsigned int big_endian_capbase: 1;
31974 	unsigned int has_amcc_usb23: 1;
31975 	unsigned int need_io_watchdog: 1;
31976 	unsigned int amd_pll_fix: 1;
31977 	unsigned int use_dummy_qh: 1;
31978 	unsigned int has_synopsys_hc_bug: 1;
31979 	unsigned int frame_index_bug: 1;
31980 	unsigned int need_oc_pp_cycle: 1;
31981 	unsigned int imx28_write_fix: 1;
31982 	unsigned int spurious_oc: 1;
31983 	unsigned int is_aspeed: 1;
31984 	unsigned int zx_wakeup_clear_needed: 1;
31985 	__le32 *ohci_hcctrl_reg;
31986 	unsigned int has_hostpc: 1;
31987 	unsigned int has_tdi_phy_lpm: 1;
31988 	unsigned int has_ppcd: 1;
31989 	u8 sbrn;
31990 	u8 bandwidth[64];
31991 	u8 tt_budget[64];
31992 	struct list_head tt_list;
31993 	long unsigned int priv[0];
31994 };
31995 
31996 struct ehci_caps {
31997 	u32 hc_capbase;
31998 	u32 hcs_params;
31999 	u32 hcc_params;
32000 	u8 portroute[8];
32001 };
32002 
32003 struct ehci_regs {
32004 	u32 command;
32005 	u32 status;
32006 	u32 intr_enable;
32007 	u32 frame_index;
32008 	u32 segment;
32009 	u32 frame_list;
32010 	u32 async_next;
32011 	u32 reserved1[2];
32012 	u32 txfill_tuning;
32013 	u32 reserved2[6];
32014 	u32 configured_flag;
32015 	union {
32016 		u32 port_status[15];
32017 		struct {
32018 			u32 reserved3[9];
32019 			u32 usbmode;
32020 		};
32021 	};
32022 	union {
32023 		struct {
32024 			u32 reserved4;
32025 			u32 hostpc[15];
32026 		};
32027 		u32 brcm_insnreg[4];
32028 	};
32029 	u32 reserved5[2];
32030 	u32 usbmode_ex;
32031 };
32032 
32033 struct ehci_dbg_port {
32034 	u32 control;
32035 	u32 pids;
32036 	u32 data03;
32037 	u32 data47;
32038 	u32 address;
32039 };
32040 
32041 struct ehci_fstn;
32042 
32043 union ehci_shadow {
32044 	struct ehci_qh *qh;
32045 	struct ehci_itd *itd;
32046 	struct ehci_sitd *sitd;
32047 	struct ehci_fstn *fstn;
32048 	__le32 *hw_next;
32049 	void *ptr;
32050 };
32051 
32052 struct ehci_qh_hw;
32053 
32054 struct ehci_qtd;
32055 
32056 struct ehci_qh {
32057 	struct ehci_qh_hw *hw;
32058 	dma_addr_t qh_dma;
32059 	union ehci_shadow qh_next;
32060 	struct list_head qtd_list;
32061 	struct list_head intr_node;
32062 	struct ehci_qtd *dummy;
32063 	struct list_head unlink_node;
32064 	struct ehci_per_sched ps;
32065 	unsigned int unlink_cycle;
32066 	u8 qh_state;
32067 	u8 xacterrs;
32068 	u8 unlink_reason;
32069 	u8 gap_uf;
32070 	unsigned int is_out: 1;
32071 	unsigned int clearing_tt: 1;
32072 	unsigned int dequeue_during_giveback: 1;
32073 	unsigned int should_be_inactive: 1;
32074 };
32075 
32076 struct ehci_iso_stream;
32077 
32078 struct ehci_itd {
32079 	__le32 hw_next;
32080 	__le32 hw_transaction[8];
32081 	__le32 hw_bufp[7];
32082 	__le32 hw_bufp_hi[7];
32083 	dma_addr_t itd_dma;
32084 	union ehci_shadow itd_next;
32085 	struct urb *urb;
32086 	struct ehci_iso_stream *stream;
32087 	struct list_head itd_list;
32088 	unsigned int frame;
32089 	unsigned int pg;
32090 	unsigned int index[8];
32091 	long: 64;
32092 };
32093 
32094 struct ehci_sitd {
32095 	__le32 hw_next;
32096 	__le32 hw_fullspeed_ep;
32097 	__le32 hw_uframe;
32098 	__le32 hw_results;
32099 	__le32 hw_buf[2];
32100 	__le32 hw_backpointer;
32101 	__le32 hw_buf_hi[2];
32102 	dma_addr_t sitd_dma;
32103 	union ehci_shadow sitd_next;
32104 	struct urb *urb;
32105 	struct ehci_iso_stream *stream;
32106 	struct list_head sitd_list;
32107 	unsigned int frame;
32108 	unsigned int index;
32109 };
32110 
32111 struct ehci_qtd {
32112 	__le32 hw_next;
32113 	__le32 hw_alt_next;
32114 	__le32 hw_token;
32115 	__le32 hw_buf[5];
32116 	__le32 hw_buf_hi[5];
32117 	dma_addr_t qtd_dma;
32118 	struct list_head qtd_list;
32119 	struct urb *urb;
32120 	size_t length;
32121 };
32122 
32123 struct ehci_fstn {
32124 	__le32 hw_next;
32125 	__le32 hw_prev;
32126 	dma_addr_t fstn_dma;
32127 	union ehci_shadow fstn_next;
32128 	long: 64;
32129 };
32130 
32131 struct ehci_qh_hw {
32132 	__le32 hw_next;
32133 	__le32 hw_info1;
32134 	__le32 hw_info2;
32135 	__le32 hw_current;
32136 	__le32 hw_qtd_next;
32137 	__le32 hw_alt_next;
32138 	__le32 hw_token;
32139 	__le32 hw_buf[5];
32140 	__le32 hw_buf_hi[5];
32141 	long: 64;
32142 	long: 64;
32143 	long: 64;
32144 };
32145 
32146 struct ehci_iso_stream {
32147 	struct ehci_qh_hw *hw;
32148 	u8 bEndpointAddress;
32149 	u8 highspeed;
32150 	struct list_head td_list;
32151 	struct list_head free_list;
32152 	struct ehci_per_sched ps;
32153 	unsigned int next_uframe;
32154 	__le32 splits;
32155 	u16 uperiod;
32156 	u16 maxp;
32157 	unsigned int bandwidth;
32158 	__le32 buf0;
32159 	__le32 buf1;
32160 	__le32 buf2;
32161 	__le32 address;
32162 };
32163 
32164 struct ehci_driver_overrides {
32165 	size_t extra_priv_size;
32166 	int (*reset)(struct usb_hcd *);
32167 	int (*port_power)(struct usb_hcd *, int, bool);
32168 };
32169 
32170 enum {
32171 	WQ_UNBOUND = 2,
32172 	WQ_FREEZABLE = 4,
32173 	WQ_MEM_RECLAIM = 8,
32174 	WQ_HIGHPRI = 16,
32175 	WQ_CPU_INTENSIVE = 32,
32176 	WQ_SYSFS = 64,
32177 	WQ_POWER_EFFICIENT = 128,
32178 	__WQ_DRAINING = 65536,
32179 	__WQ_ORDERED = 131072,
32180 	__WQ_LEGACY = 262144,
32181 	__WQ_ORDERED_EXPLICIT = 524288,
32182 	WQ_MAX_ACTIVE = 512,
32183 	WQ_MAX_UNBOUND_PER_CPU = 4,
32184 	WQ_DFL_ACTIVE = 256,
32185 };
32186 
32187 struct input_id {
32188 	__u16 bustype;
32189 	__u16 vendor;
32190 	__u16 product;
32191 	__u16 version;
32192 };
32193 
32194 struct input_absinfo {
32195 	__s32 value;
32196 	__s32 minimum;
32197 	__s32 maximum;
32198 	__s32 fuzz;
32199 	__s32 flat;
32200 	__s32 resolution;
32201 };
32202 
32203 struct input_keymap_entry {
32204 	__u8 flags;
32205 	__u8 len;
32206 	__u16 index;
32207 	__u32 keycode;
32208 	__u8 scancode[32];
32209 };
32210 
32211 struct ff_replay {
32212 	__u16 length;
32213 	__u16 delay;
32214 };
32215 
32216 struct ff_trigger {
32217 	__u16 button;
32218 	__u16 interval;
32219 };
32220 
32221 struct ff_envelope {
32222 	__u16 attack_length;
32223 	__u16 attack_level;
32224 	__u16 fade_length;
32225 	__u16 fade_level;
32226 };
32227 
32228 struct ff_constant_effect {
32229 	__s16 level;
32230 	struct ff_envelope envelope;
32231 };
32232 
32233 struct ff_ramp_effect {
32234 	__s16 start_level;
32235 	__s16 end_level;
32236 	struct ff_envelope envelope;
32237 };
32238 
32239 struct ff_condition_effect {
32240 	__u16 right_saturation;
32241 	__u16 left_saturation;
32242 	__s16 right_coeff;
32243 	__s16 left_coeff;
32244 	__u16 deadband;
32245 	__s16 center;
32246 };
32247 
32248 struct ff_periodic_effect {
32249 	__u16 waveform;
32250 	__u16 period;
32251 	__s16 magnitude;
32252 	__s16 offset;
32253 	__u16 phase;
32254 	struct ff_envelope envelope;
32255 	__u32 custom_len;
32256 	__s16 *custom_data;
32257 };
32258 
32259 struct ff_rumble_effect {
32260 	__u16 strong_magnitude;
32261 	__u16 weak_magnitude;
32262 };
32263 
32264 struct ff_effect {
32265 	__u16 type;
32266 	__s16 id;
32267 	__u16 direction;
32268 	struct ff_trigger trigger;
32269 	struct ff_replay replay;
32270 	union {
32271 		struct ff_constant_effect constant;
32272 		struct ff_ramp_effect ramp;
32273 		struct ff_periodic_effect periodic;
32274 		struct ff_condition_effect condition[2];
32275 		struct ff_rumble_effect rumble;
32276 	} u;
32277 };
32278 
32279 struct serio_device_id {
32280 	__u8 type;
32281 	__u8 extra;
32282 	__u8 id;
32283 	__u8 proto;
32284 };
32285 
32286 struct input_device_id {
32287 	kernel_ulong_t flags;
32288 	__u16 bustype;
32289 	__u16 vendor;
32290 	__u16 product;
32291 	__u16 version;
32292 	kernel_ulong_t evbit[1];
32293 	kernel_ulong_t keybit[12];
32294 	kernel_ulong_t relbit[1];
32295 	kernel_ulong_t absbit[1];
32296 	kernel_ulong_t mscbit[1];
32297 	kernel_ulong_t ledbit[1];
32298 	kernel_ulong_t sndbit[1];
32299 	kernel_ulong_t ffbit[2];
32300 	kernel_ulong_t swbit[1];
32301 	kernel_ulong_t propbit[1];
32302 	kernel_ulong_t driver_info;
32303 };
32304 
32305 struct input_value {
32306 	__u16 type;
32307 	__u16 code;
32308 	__s32 value;
32309 };
32310 
32311 enum input_clock_type {
32312 	INPUT_CLK_REAL = 0,
32313 	INPUT_CLK_MONO = 1,
32314 	INPUT_CLK_BOOT = 2,
32315 	INPUT_CLK_MAX = 3,
32316 };
32317 
32318 struct ff_device;
32319 
32320 struct input_dev_poller;
32321 
32322 struct input_mt;
32323 
32324 struct input_handle;
32325 
32326 struct input_dev {
32327 	const char *name;
32328 	const char *phys;
32329 	const char *uniq;
32330 	struct input_id id;
32331 	long unsigned int propbit[1];
32332 	long unsigned int evbit[1];
32333 	long unsigned int keybit[12];
32334 	long unsigned int relbit[1];
32335 	long unsigned int absbit[1];
32336 	long unsigned int mscbit[1];
32337 	long unsigned int ledbit[1];
32338 	long unsigned int sndbit[1];
32339 	long unsigned int ffbit[2];
32340 	long unsigned int swbit[1];
32341 	unsigned int hint_events_per_packet;
32342 	unsigned int keycodemax;
32343 	unsigned int keycodesize;
32344 	void *keycode;
32345 	int (*setkeycode)(struct input_dev *, const struct input_keymap_entry *, unsigned int *);
32346 	int (*getkeycode)(struct input_dev *, struct input_keymap_entry *);
32347 	struct ff_device *ff;
32348 	struct input_dev_poller *poller;
32349 	unsigned int repeat_key;
32350 	struct timer_list timer;
32351 	int rep[2];
32352 	struct input_mt *mt;
32353 	struct input_absinfo *absinfo;
32354 	long unsigned int key[12];
32355 	long unsigned int led[1];
32356 	long unsigned int snd[1];
32357 	long unsigned int sw[1];
32358 	int (*open)(struct input_dev *);
32359 	void (*close)(struct input_dev *);
32360 	int (*flush)(struct input_dev *, struct file *);
32361 	int (*event)(struct input_dev *, unsigned int, unsigned int, int);
32362 	struct input_handle *grab;
32363 	spinlock_t event_lock;
32364 	struct mutex mutex;
32365 	unsigned int users;
32366 	bool going_away;
32367 	struct device dev;
32368 	struct list_head h_list;
32369 	struct list_head node;
32370 	unsigned int num_vals;
32371 	unsigned int max_vals;
32372 	struct input_value *vals;
32373 	bool devres_managed;
32374 	ktime_t timestamp[3];
32375 	bool inhibited;
32376 };
32377 
32378 struct ff_device {
32379 	int (*upload)(struct input_dev *, struct ff_effect *, struct ff_effect *);
32380 	int (*erase)(struct input_dev *, int);
32381 	int (*playback)(struct input_dev *, int, int);
32382 	void (*set_gain)(struct input_dev *, u16);
32383 	void (*set_autocenter)(struct input_dev *, u16);
32384 	void (*destroy)(struct ff_device *);
32385 	void *private;
32386 	long unsigned int ffbit[2];
32387 	struct mutex mutex;
32388 	int max_effects;
32389 	struct ff_effect *effects;
32390 	struct file *effect_owners[0];
32391 };
32392 
32393 struct input_mt_slot {
32394 	int abs[14];
32395 	unsigned int frame;
32396 	unsigned int key;
32397 };
32398 
32399 struct input_mt {
32400 	int trkid;
32401 	int num_slots;
32402 	int slot;
32403 	unsigned int flags;
32404 	unsigned int frame;
32405 	int *red;
32406 	struct input_mt_slot slots[0];
32407 };
32408 
32409 struct input_handler;
32410 
32411 struct input_handle {
32412 	void *private;
32413 	int open;
32414 	const char *name;
32415 	struct input_dev *dev;
32416 	struct input_handler *handler;
32417 	struct list_head d_node;
32418 	struct list_head h_node;
32419 };
32420 
32421 struct input_handler {
32422 	void *private;
32423 	void (*event)(struct input_handle *, unsigned int, unsigned int, int);
32424 	void (*events)(struct input_handle *, const struct input_value *, unsigned int);
32425 	bool (*filter)(struct input_handle *, unsigned int, unsigned int, int);
32426 	bool (*match)(struct input_handler *, struct input_dev *);
32427 	int (*connect)(struct input_handler *, struct input_dev *, const struct input_device_id *);
32428 	void (*disconnect)(struct input_handle *);
32429 	void (*start)(struct input_handle *);
32430 	bool legacy_minors;
32431 	int minor;
32432 	const char *name;
32433 	const struct input_device_id *id_table;
32434 	struct list_head h_list;
32435 	struct list_head node;
32436 };
32437 
32438 struct serio_driver;
32439 
32440 struct serio {
32441 	void *port_data;
32442 	char name[32];
32443 	char phys[32];
32444 	char firmware_id[128];
32445 	bool manual_bind;
32446 	struct serio_device_id id;
32447 	spinlock_t lock;
32448 	int (*write)(struct serio *, unsigned char);
32449 	int (*open)(struct serio *);
32450 	void (*close)(struct serio *);
32451 	int (*start)(struct serio *);
32452 	void (*stop)(struct serio *);
32453 	struct serio *parent;
32454 	struct list_head child_node;
32455 	struct list_head children;
32456 	unsigned int depth;
32457 	struct serio_driver *drv;
32458 	struct mutex drv_mutex;
32459 	struct device dev;
32460 	struct list_head node;
32461 	struct mutex *ps2_cmd_mutex;
32462 };
32463 
32464 struct serio_driver {
32465 	const char *description;
32466 	const struct serio_device_id *id_table;
32467 	bool manual_bind;
32468 	void (*write_wakeup)(struct serio *);
32469 	irqreturn_t (*interrupt)(struct serio *, unsigned char, unsigned int);
32470 	int (*connect)(struct serio *, struct serio_driver *);
32471 	int (*reconnect)(struct serio *);
32472 	int (*fast_reconnect)(struct serio *);
32473 	void (*disconnect)(struct serio *);
32474 	void (*cleanup)(struct serio *);
32475 	struct device_driver driver;
32476 };
32477 
32478 struct ps2dev {
32479 	struct serio *serio;
32480 	struct mutex cmd_mutex;
32481 	wait_queue_head_t wait;
32482 	long unsigned int flags;
32483 	u8 cmdbuf[8];
32484 	u8 cmdcnt;
32485 	u8 nak;
32486 };
32487 
32488 enum psmouse_state {
32489 	PSMOUSE_IGNORE = 0,
32490 	PSMOUSE_INITIALIZING = 1,
32491 	PSMOUSE_RESYNCING = 2,
32492 	PSMOUSE_CMD_MODE = 3,
32493 	PSMOUSE_ACTIVATED = 4,
32494 };
32495 
32496 typedef enum {
32497 	PSMOUSE_BAD_DATA = 0,
32498 	PSMOUSE_GOOD_DATA = 1,
32499 	PSMOUSE_FULL_PACKET = 2,
32500 } psmouse_ret_t;
32501 
32502 enum psmouse_scale {
32503 	PSMOUSE_SCALE11 = 0,
32504 	PSMOUSE_SCALE21 = 1,
32505 };
32506 
32507 enum psmouse_type {
32508 	PSMOUSE_NONE = 0,
32509 	PSMOUSE_PS2 = 1,
32510 	PSMOUSE_PS2PP = 2,
32511 	PSMOUSE_THINKPS = 3,
32512 	PSMOUSE_GENPS = 4,
32513 	PSMOUSE_IMPS = 5,
32514 	PSMOUSE_IMEX = 6,
32515 	PSMOUSE_SYNAPTICS = 7,
32516 	PSMOUSE_ALPS = 8,
32517 	PSMOUSE_LIFEBOOK = 9,
32518 	PSMOUSE_TRACKPOINT = 10,
32519 	PSMOUSE_TOUCHKIT_PS2 = 11,
32520 	PSMOUSE_CORTRON = 12,
32521 	PSMOUSE_HGPK = 13,
32522 	PSMOUSE_ELANTECH = 14,
32523 	PSMOUSE_FSP = 15,
32524 	PSMOUSE_SYNAPTICS_RELATIVE = 16,
32525 	PSMOUSE_CYPRESS = 17,
32526 	PSMOUSE_FOCALTECH = 18,
32527 	PSMOUSE_VMMOUSE = 19,
32528 	PSMOUSE_BYD = 20,
32529 	PSMOUSE_SYNAPTICS_SMBUS = 21,
32530 	PSMOUSE_ELANTECH_SMBUS = 22,
32531 	PSMOUSE_AUTO = 23,
32532 };
32533 
32534 struct psmouse;
32535 
32536 struct psmouse_protocol {
32537 	enum psmouse_type type;
32538 	bool maxproto;
32539 	bool ignore_parity;
32540 	bool try_passthru;
32541 	bool smbus_companion;
32542 	const char *name;
32543 	const char *alias;
32544 	int (*detect)(struct psmouse *, bool);
32545 	int (*init)(struct psmouse *);
32546 };
32547 
32548 struct psmouse {
32549 	void *private;
32550 	struct input_dev *dev;
32551 	struct ps2dev ps2dev;
32552 	struct delayed_work resync_work;
32553 	const char *vendor;
32554 	const char *name;
32555 	const struct psmouse_protocol *protocol;
32556 	unsigned char packet[8];
32557 	unsigned char badbyte;
32558 	unsigned char pktcnt;
32559 	unsigned char pktsize;
32560 	unsigned char oob_data_type;
32561 	unsigned char extra_buttons;
32562 	bool acks_disable_command;
32563 	unsigned int model;
32564 	long unsigned int last;
32565 	long unsigned int out_of_sync_cnt;
32566 	long unsigned int num_resyncs;
32567 	enum psmouse_state state;
32568 	char devname[64];
32569 	char phys[32];
32570 	unsigned int rate;
32571 	unsigned int resolution;
32572 	unsigned int resetafter;
32573 	unsigned int resync_time;
32574 	bool smartscroll;
32575 	psmouse_ret_t (*protocol_handler)(struct psmouse *);
32576 	void (*set_rate)(struct psmouse *, unsigned int);
32577 	void (*set_resolution)(struct psmouse *, unsigned int);
32578 	void (*set_scale)(struct psmouse *, enum psmouse_scale);
32579 	int (*reconnect)(struct psmouse *);
32580 	int (*fast_reconnect)(struct psmouse *);
32581 	void (*disconnect)(struct psmouse *);
32582 	void (*cleanup)(struct psmouse *);
32583 	int (*poll)(struct psmouse *);
32584 	void (*pt_activate)(struct psmouse *);
32585 	void (*pt_deactivate)(struct psmouse *);
32586 };
32587 
32588 struct psmouse_attribute {
32589 	struct device_attribute dattr;
32590 	void *data;
32591 	ssize_t (*show)(struct psmouse *, void *, char *);
32592 	ssize_t (*set)(struct psmouse *, void *, const char *, size_t);
32593 	bool protect;
32594 };
32595 
32596 enum dev_prop_type {
32597 	DEV_PROP_U8 = 0,
32598 	DEV_PROP_U16 = 1,
32599 	DEV_PROP_U32 = 2,
32600 	DEV_PROP_U64 = 3,
32601 	DEV_PROP_STRING = 4,
32602 	DEV_PROP_REF = 5,
32603 };
32604 
32605 struct property_entry;
32606 
32607 struct software_node {
32608 	const char *name;
32609 	const struct software_node *parent;
32610 	const struct property_entry *properties;
32611 };
32612 
32613 struct property_entry {
32614 	const char *name;
32615 	size_t length;
32616 	bool is_inline;
32617 	enum dev_prop_type type;
32618 	union {
32619 		const void *pointer;
32620 		union {
32621 			u8 u8_data[8];
32622 			u16 u16_data[4];
32623 			u32 u32_data[2];
32624 			u64 u64_data[1];
32625 			const char *str[1];
32626 		} value;
32627 	};
32628 };
32629 
32630 struct i2c_board_info {
32631 	char type[20];
32632 	short unsigned int flags;
32633 	short unsigned int addr;
32634 	const char *dev_name;
32635 	void *platform_data;
32636 	struct device_node *of_node;
32637 	struct fwnode_handle *fwnode;
32638 	const struct software_node *swnode;
32639 	const struct resource *resources;
32640 	unsigned int num_resources;
32641 	int irq;
32642 };
32643 
32644 struct i2c_devinfo {
32645 	struct list_head list;
32646 	int busnum;
32647 	struct i2c_board_info board_info;
32648 };
32649 
32650 enum xa_lock_type {
32651 	XA_LOCK_IRQ = 1,
32652 	XA_LOCK_BH = 2,
32653 };
32654 
32655 typedef int (*dr_match_t)(struct device *, void *, void *);
32656 
32657 enum hwmon_sensor_types {
32658 	hwmon_chip = 0,
32659 	hwmon_temp = 1,
32660 	hwmon_in = 2,
32661 	hwmon_curr = 3,
32662 	hwmon_power = 4,
32663 	hwmon_energy = 5,
32664 	hwmon_humidity = 6,
32665 	hwmon_fan = 7,
32666 	hwmon_pwm = 8,
32667 	hwmon_intrusion = 9,
32668 	hwmon_max = 10,
32669 };
32670 
32671 enum hwmon_chip_attributes {
32672 	hwmon_chip_temp_reset_history = 0,
32673 	hwmon_chip_in_reset_history = 1,
32674 	hwmon_chip_curr_reset_history = 2,
32675 	hwmon_chip_power_reset_history = 3,
32676 	hwmon_chip_register_tz = 4,
32677 	hwmon_chip_update_interval = 5,
32678 	hwmon_chip_alarms = 6,
32679 	hwmon_chip_samples = 7,
32680 	hwmon_chip_curr_samples = 8,
32681 	hwmon_chip_in_samples = 9,
32682 	hwmon_chip_power_samples = 10,
32683 	hwmon_chip_temp_samples = 11,
32684 };
32685 
32686 enum hwmon_temp_attributes {
32687 	hwmon_temp_enable = 0,
32688 	hwmon_temp_input = 1,
32689 	hwmon_temp_type = 2,
32690 	hwmon_temp_lcrit = 3,
32691 	hwmon_temp_lcrit_hyst = 4,
32692 	hwmon_temp_min = 5,
32693 	hwmon_temp_min_hyst = 6,
32694 	hwmon_temp_max = 7,
32695 	hwmon_temp_max_hyst = 8,
32696 	hwmon_temp_crit = 9,
32697 	hwmon_temp_crit_hyst = 10,
32698 	hwmon_temp_emergency = 11,
32699 	hwmon_temp_emergency_hyst = 12,
32700 	hwmon_temp_alarm = 13,
32701 	hwmon_temp_lcrit_alarm = 14,
32702 	hwmon_temp_min_alarm = 15,
32703 	hwmon_temp_max_alarm = 16,
32704 	hwmon_temp_crit_alarm = 17,
32705 	hwmon_temp_emergency_alarm = 18,
32706 	hwmon_temp_fault = 19,
32707 	hwmon_temp_offset = 20,
32708 	hwmon_temp_label = 21,
32709 	hwmon_temp_lowest = 22,
32710 	hwmon_temp_highest = 23,
32711 	hwmon_temp_reset_history = 24,
32712 	hwmon_temp_rated_min = 25,
32713 	hwmon_temp_rated_max = 26,
32714 };
32715 
32716 enum hwmon_in_attributes {
32717 	hwmon_in_enable = 0,
32718 	hwmon_in_input = 1,
32719 	hwmon_in_min = 2,
32720 	hwmon_in_max = 3,
32721 	hwmon_in_lcrit = 4,
32722 	hwmon_in_crit = 5,
32723 	hwmon_in_average = 6,
32724 	hwmon_in_lowest = 7,
32725 	hwmon_in_highest = 8,
32726 	hwmon_in_reset_history = 9,
32727 	hwmon_in_label = 10,
32728 	hwmon_in_alarm = 11,
32729 	hwmon_in_min_alarm = 12,
32730 	hwmon_in_max_alarm = 13,
32731 	hwmon_in_lcrit_alarm = 14,
32732 	hwmon_in_crit_alarm = 15,
32733 	hwmon_in_rated_min = 16,
32734 	hwmon_in_rated_max = 17,
32735 };
32736 
32737 enum hwmon_curr_attributes {
32738 	hwmon_curr_enable = 0,
32739 	hwmon_curr_input = 1,
32740 	hwmon_curr_min = 2,
32741 	hwmon_curr_max = 3,
32742 	hwmon_curr_lcrit = 4,
32743 	hwmon_curr_crit = 5,
32744 	hwmon_curr_average = 6,
32745 	hwmon_curr_lowest = 7,
32746 	hwmon_curr_highest = 8,
32747 	hwmon_curr_reset_history = 9,
32748 	hwmon_curr_label = 10,
32749 	hwmon_curr_alarm = 11,
32750 	hwmon_curr_min_alarm = 12,
32751 	hwmon_curr_max_alarm = 13,
32752 	hwmon_curr_lcrit_alarm = 14,
32753 	hwmon_curr_crit_alarm = 15,
32754 	hwmon_curr_rated_min = 16,
32755 	hwmon_curr_rated_max = 17,
32756 };
32757 
32758 enum hwmon_power_attributes {
32759 	hwmon_power_enable = 0,
32760 	hwmon_power_average = 1,
32761 	hwmon_power_average_interval = 2,
32762 	hwmon_power_average_interval_max = 3,
32763 	hwmon_power_average_interval_min = 4,
32764 	hwmon_power_average_highest = 5,
32765 	hwmon_power_average_lowest = 6,
32766 	hwmon_power_average_max = 7,
32767 	hwmon_power_average_min = 8,
32768 	hwmon_power_input = 9,
32769 	hwmon_power_input_highest = 10,
32770 	hwmon_power_input_lowest = 11,
32771 	hwmon_power_reset_history = 12,
32772 	hwmon_power_accuracy = 13,
32773 	hwmon_power_cap = 14,
32774 	hwmon_power_cap_hyst = 15,
32775 	hwmon_power_cap_max = 16,
32776 	hwmon_power_cap_min = 17,
32777 	hwmon_power_min = 18,
32778 	hwmon_power_max = 19,
32779 	hwmon_power_crit = 20,
32780 	hwmon_power_lcrit = 21,
32781 	hwmon_power_label = 22,
32782 	hwmon_power_alarm = 23,
32783 	hwmon_power_cap_alarm = 24,
32784 	hwmon_power_min_alarm = 25,
32785 	hwmon_power_max_alarm = 26,
32786 	hwmon_power_lcrit_alarm = 27,
32787 	hwmon_power_crit_alarm = 28,
32788 	hwmon_power_rated_min = 29,
32789 	hwmon_power_rated_max = 30,
32790 };
32791 
32792 enum hwmon_energy_attributes {
32793 	hwmon_energy_enable = 0,
32794 	hwmon_energy_input = 1,
32795 	hwmon_energy_label = 2,
32796 };
32797 
32798 enum hwmon_humidity_attributes {
32799 	hwmon_humidity_enable = 0,
32800 	hwmon_humidity_input = 1,
32801 	hwmon_humidity_label = 2,
32802 	hwmon_humidity_min = 3,
32803 	hwmon_humidity_min_hyst = 4,
32804 	hwmon_humidity_max = 5,
32805 	hwmon_humidity_max_hyst = 6,
32806 	hwmon_humidity_alarm = 7,
32807 	hwmon_humidity_fault = 8,
32808 	hwmon_humidity_rated_min = 9,
32809 	hwmon_humidity_rated_max = 10,
32810 };
32811 
32812 enum hwmon_fan_attributes {
32813 	hwmon_fan_enable = 0,
32814 	hwmon_fan_input = 1,
32815 	hwmon_fan_label = 2,
32816 	hwmon_fan_min = 3,
32817 	hwmon_fan_max = 4,
32818 	hwmon_fan_div = 5,
32819 	hwmon_fan_pulses = 6,
32820 	hwmon_fan_target = 7,
32821 	hwmon_fan_alarm = 8,
32822 	hwmon_fan_min_alarm = 9,
32823 	hwmon_fan_max_alarm = 10,
32824 	hwmon_fan_fault = 11,
32825 };
32826 
32827 enum hwmon_pwm_attributes {
32828 	hwmon_pwm_input = 0,
32829 	hwmon_pwm_enable = 1,
32830 	hwmon_pwm_mode = 2,
32831 	hwmon_pwm_freq = 3,
32832 	hwmon_pwm_auto_channels_temp = 4,
32833 };
32834 
32835 enum hwmon_intrusion_attributes {
32836 	hwmon_intrusion_alarm = 0,
32837 	hwmon_intrusion_beep = 1,
32838 };
32839 
32840 struct hwmon_ops {
32841 	umode_t (*is_visible)(const void *, enum hwmon_sensor_types, u32, int);
32842 	int (*read)(struct device *, enum hwmon_sensor_types, u32, int, long int *);
32843 	int (*read_string)(struct device *, enum hwmon_sensor_types, u32, int, const char **);
32844 	int (*write)(struct device *, enum hwmon_sensor_types, u32, int, long int);
32845 };
32846 
32847 struct hwmon_channel_info {
32848 	enum hwmon_sensor_types type;
32849 	const u32 *config;
32850 };
32851 
32852 struct hwmon_chip_info {
32853 	const struct hwmon_ops *ops;
32854 	const struct hwmon_channel_info **info;
32855 };
32856 
32857 struct trace_event_raw_hwmon_attr_class {
32858 	struct trace_entry ent;
32859 	int index;
32860 	u32 __data_loc_attr_name;
32861 	long int val;
32862 	char __data[0];
32863 };
32864 
32865 struct trace_event_raw_hwmon_attr_show_string {
32866 	struct trace_entry ent;
32867 	int index;
32868 	u32 __data_loc_attr_name;
32869 	u32 __data_loc_label;
32870 	char __data[0];
32871 };
32872 
32873 struct trace_event_data_offsets_hwmon_attr_class {
32874 	u32 attr_name;
32875 };
32876 
32877 struct trace_event_data_offsets_hwmon_attr_show_string {
32878 	u32 attr_name;
32879 	u32 label;
32880 };
32881 
32882 typedef void (*btf_trace_hwmon_attr_show)(void *, int, const char *, long int);
32883 
32884 typedef void (*btf_trace_hwmon_attr_store)(void *, int, const char *, long int);
32885 
32886 typedef void (*btf_trace_hwmon_attr_show_string)(void *, int, const char *, const char *);
32887 
32888 struct hwmon_device {
32889 	const char *name;
32890 	const char *label;
32891 	struct device dev;
32892 	const struct hwmon_chip_info *chip;
32893 	struct list_head tzdata;
32894 	struct attribute_group group;
32895 	const struct attribute_group **groups;
32896 };
32897 
32898 struct hwmon_device_attribute {
32899 	struct device_attribute dev_attr;
32900 	const struct hwmon_ops *ops;
32901 	enum hwmon_sensor_types type;
32902 	u32 attr;
32903 	int index;
32904 	char name[32];
32905 };
32906 
32907 typedef struct {
32908 	u64 val;
32909 } pfn_t;
32910 
32911 typedef u16 blk_short_t;
32912 
32913 struct rchan;
32914 
32915 struct blk_trace {
32916 	int trace_state;
32917 	struct rchan *rchan;
32918 	long unsigned int *sequence;
32919 	unsigned char *msg_data;
32920 	u16 act_mask;
32921 	u64 start_lba;
32922 	u64 end_lba;
32923 	u32 pid;
32924 	u32 dev;
32925 	struct dentry *dir;
32926 	struct list_head running_list;
32927 	atomic_t dropped;
32928 };
32929 
32930 struct hd_geometry {
32931 	unsigned char heads;
32932 	unsigned char sectors;
32933 	short unsigned int cylinders;
32934 	long unsigned int start;
32935 };
32936 
32937 enum dm_queue_mode {
32938 	DM_TYPE_NONE = 0,
32939 	DM_TYPE_BIO_BASED = 1,
32940 	DM_TYPE_REQUEST_BASED = 2,
32941 	DM_TYPE_DAX_BIO_BASED = 3,
32942 };
32943 
32944 typedef enum {
32945 	STATUSTYPE_INFO = 0,
32946 	STATUSTYPE_TABLE = 1,
32947 	STATUSTYPE_IMA = 2,
32948 } status_type_t;
32949 
32950 union map_info {
32951 	void *ptr;
32952 };
32953 
32954 struct dm_target;
32955 
32956 typedef int (*dm_ctr_fn)(struct dm_target *, unsigned int, char **);
32957 
32958 struct dm_table;
32959 
32960 struct target_type;
32961 
32962 struct dm_target {
32963 	struct dm_table *table;
32964 	struct target_type *type;
32965 	sector_t begin;
32966 	sector_t len;
32967 	uint32_t max_io_len;
32968 	unsigned int num_flush_bios;
32969 	unsigned int num_discard_bios;
32970 	unsigned int num_secure_erase_bios;
32971 	unsigned int num_write_zeroes_bios;
32972 	unsigned int per_io_data_size;
32973 	void *private;
32974 	char *error;
32975 	bool flush_supported: 1;
32976 	bool discards_supported: 1;
32977 	bool limit_swap_bios: 1;
32978 	bool emulate_zone_append: 1;
32979 	bool accounts_remapped_io: 1;
32980 	bool needs_bio_set_dev: 1;
32981 };
32982 
32983 typedef void (*dm_dtr_fn)(struct dm_target *);
32984 
32985 typedef int (*dm_map_fn)(struct dm_target *, struct bio *);
32986 
32987 typedef int (*dm_clone_and_map_request_fn)(struct dm_target *, struct request *, union map_info *, struct request **);
32988 
32989 typedef void (*dm_release_clone_request_fn)(struct request *, union map_info *);
32990 
32991 typedef int (*dm_endio_fn)(struct dm_target *, struct bio *, blk_status_t *);
32992 
32993 typedef int (*dm_request_endio_fn)(struct dm_target *, struct request *, blk_status_t, union map_info *);
32994 
32995 typedef void (*dm_presuspend_fn)(struct dm_target *);
32996 
32997 typedef void (*dm_presuspend_undo_fn)(struct dm_target *);
32998 
32999 typedef void (*dm_postsuspend_fn)(struct dm_target *);
33000 
33001 typedef int (*dm_preresume_fn)(struct dm_target *);
33002 
33003 typedef void (*dm_resume_fn)(struct dm_target *);
33004 
33005 typedef void (*dm_status_fn)(struct dm_target *, status_type_t, unsigned int, char *, unsigned int);
33006 
33007 typedef int (*dm_message_fn)(struct dm_target *, unsigned int, char **, char *, unsigned int);
33008 
33009 typedef int (*dm_prepare_ioctl_fn)(struct dm_target *, struct block_device **);
33010 
33011 typedef int (*dm_report_zones_fn)(struct dm_target *);
33012 
33013 struct dm_dev;
33014 
33015 typedef int (*iterate_devices_callout_fn)(struct dm_target *, struct dm_dev *, sector_t, sector_t, void *);
33016 
33017 struct dm_dev {
33018 	struct block_device *bdev;
33019 	struct dax_device *dax_dev;
33020 	fmode_t mode;
33021 	char name[16];
33022 };
33023 
33024 typedef int (*dm_iterate_devices_fn)(struct dm_target *, iterate_devices_callout_fn, void *);
33025 
33026 typedef void (*dm_io_hints_fn)(struct dm_target *, struct queue_limits *);
33027 
33028 typedef int (*dm_busy_fn)(struct dm_target *);
33029 
33030 enum dax_access_mode {
33031 	DAX_ACCESS = 0,
33032 	DAX_RECOVERY_WRITE = 1,
33033 };
33034 
33035 typedef long int (*dm_dax_direct_access_fn)(struct dm_target *, long unsigned int, long int, enum dax_access_mode, void **, pfn_t *);
33036 
33037 typedef int (*dm_dax_zero_page_range_fn)(struct dm_target *, long unsigned int, size_t);
33038 
33039 typedef size_t (*dm_dax_recovery_write_fn)(struct dm_target *, long unsigned int, void *, size_t, struct iov_iter *);
33040 
33041 struct target_type {
33042 	uint64_t features;
33043 	const char *name;
33044 	struct module *module;
33045 	unsigned int version[3];
33046 	dm_ctr_fn ctr;
33047 	dm_dtr_fn dtr;
33048 	dm_map_fn map;
33049 	dm_clone_and_map_request_fn clone_and_map_rq;
33050 	dm_release_clone_request_fn release_clone_rq;
33051 	dm_endio_fn end_io;
33052 	dm_request_endio_fn rq_end_io;
33053 	dm_presuspend_fn presuspend;
33054 	dm_presuspend_undo_fn presuspend_undo;
33055 	dm_postsuspend_fn postsuspend;
33056 	dm_preresume_fn preresume;
33057 	dm_resume_fn resume;
33058 	dm_status_fn status;
33059 	dm_message_fn message;
33060 	dm_prepare_ioctl_fn prepare_ioctl;
33061 	dm_report_zones_fn report_zones;
33062 	dm_busy_fn busy;
33063 	dm_iterate_devices_fn iterate_devices;
33064 	dm_io_hints_fn io_hints;
33065 	dm_dax_direct_access_fn direct_access;
33066 	dm_dax_zero_page_range_fn dax_zero_page_range;
33067 	dm_dax_recovery_write_fn dax_recovery_write;
33068 	struct list_head list;
33069 };
33070 
33071 struct mapped_device;
33072 
33073 struct dm_md_mempools;
33074 
33075 struct dm_table {
33076 	struct mapped_device *md;
33077 	enum dm_queue_mode type;
33078 	unsigned int depth;
33079 	unsigned int counts[16];
33080 	sector_t *index[16];
33081 	unsigned int num_targets;
33082 	unsigned int num_allocated;
33083 	sector_t *highs;
33084 	struct dm_target *targets;
33085 	struct target_type *immutable_target_type;
33086 	bool integrity_supported: 1;
33087 	bool singleton: 1;
33088 	unsigned int integrity_added: 1;
33089 	fmode_t mode;
33090 	struct list_head devices;
33091 	void (*event_fn)(void *);
33092 	void *event_context;
33093 	struct dm_md_mempools *mempools;
33094 };
33095 
33096 struct dm_arg_set {
33097 	unsigned int argc;
33098 	char **argv;
33099 };
33100 
33101 enum blk_crypto_mode_num {
33102 	BLK_ENCRYPTION_MODE_INVALID = 0,
33103 	BLK_ENCRYPTION_MODE_AES_256_XTS = 1,
33104 	BLK_ENCRYPTION_MODE_AES_128_CBC_ESSIV = 2,
33105 	BLK_ENCRYPTION_MODE_ADIANTUM = 3,
33106 	BLK_ENCRYPTION_MODE_MAX = 4,
33107 };
33108 
33109 struct rchan_buf {
33110 	void *start;
33111 	void *data;
33112 	size_t offset;
33113 	size_t subbufs_produced;
33114 	size_t subbufs_consumed;
33115 	struct rchan *chan;
33116 	wait_queue_head_t read_wait;
33117 	struct irq_work wakeup_work;
33118 	struct dentry *dentry;
33119 	struct kref kref;
33120 	struct page **page_array;
33121 	unsigned int page_count;
33122 	unsigned int finalized;
33123 	size_t *padding;
33124 	size_t prev_padding;
33125 	size_t bytes_consumed;
33126 	size_t early_bytes;
33127 	unsigned int cpu;
33128 	long: 64;
33129 	long: 64;
33130 	long: 64;
33131 	long: 64;
33132 	long: 64;
33133 	long: 64;
33134 	long: 64;
33135 	long: 64;
33136 	long: 64;
33137 	long: 64;
33138 };
33139 
33140 struct rchan_callbacks;
33141 
33142 struct rchan {
33143 	u32 version;
33144 	size_t subbuf_size;
33145 	size_t n_subbufs;
33146 	size_t alloc_size;
33147 	const struct rchan_callbacks *cb;
33148 	struct kref kref;
33149 	void *private_data;
33150 	size_t last_toobig;
33151 	struct rchan_buf **buf;
33152 	int is_global;
33153 	struct list_head list;
33154 	struct dentry *parent;
33155 	int has_base_filename;
33156 	char base_filename[255];
33157 };
33158 
33159 struct rchan_callbacks {
33160 	int (*subbuf_start)(struct rchan_buf *, void *, void *, size_t);
33161 	struct dentry * (*create_buf_file)(const char *, struct dentry *, umode_t, struct rchan_buf *, int *);
33162 	int (*remove_buf_file)(struct dentry *);
33163 };
33164 
33165 enum blktrace_act {
33166 	__BLK_TA_QUEUE = 1,
33167 	__BLK_TA_BACKMERGE = 2,
33168 	__BLK_TA_FRONTMERGE = 3,
33169 	__BLK_TA_GETRQ = 4,
33170 	__BLK_TA_SLEEPRQ = 5,
33171 	__BLK_TA_REQUEUE = 6,
33172 	__BLK_TA_ISSUE = 7,
33173 	__BLK_TA_COMPLETE = 8,
33174 	__BLK_TA_PLUG = 9,
33175 	__BLK_TA_UNPLUG_IO = 10,
33176 	__BLK_TA_UNPLUG_TIMER = 11,
33177 	__BLK_TA_INSERT = 12,
33178 	__BLK_TA_SPLIT = 13,
33179 	__BLK_TA_BOUNCE = 14,
33180 	__BLK_TA_REMAP = 15,
33181 	__BLK_TA_ABORT = 16,
33182 	__BLK_TA_DRV_DATA = 17,
33183 	__BLK_TA_CGROUP = 256,
33184 };
33185 
33186 struct dm_stats_last_position;
33187 
33188 struct dm_stats {
33189 	struct mutex mutex;
33190 	struct list_head list;
33191 	struct dm_stats_last_position *last;
33192 	bool precise_timestamps;
33193 };
33194 
33195 struct dm_stats_last_position {
33196 	sector_t last_sector;
33197 	unsigned int last_rw;
33198 };
33199 
33200 struct dm_stats_aux {
33201 	bool merged;
33202 	long long unsigned int duration_ns;
33203 };
33204 
33205 struct dm_kobject_holder {
33206 	struct kobject kobj;
33207 	struct completion completion;
33208 };
33209 
33210 struct dm_md_mempools {
33211 	struct bio_set bs;
33212 	struct bio_set io_bs;
33213 };
33214 
33215 struct dm_io;
33216 
33217 struct mapped_device {
33218 	struct mutex suspend_lock;
33219 	struct mutex table_devices_lock;
33220 	struct list_head table_devices;
33221 	void *map;
33222 	long unsigned int flags;
33223 	struct mutex type_lock;
33224 	enum dm_queue_mode type;
33225 	int numa_node_id;
33226 	struct request_queue *queue;
33227 	atomic_t holders;
33228 	atomic_t open_count;
33229 	struct dm_target *immutable_target;
33230 	struct target_type *immutable_target_type;
33231 	char name[16];
33232 	struct gendisk *disk;
33233 	struct dax_device *dax_dev;
33234 	wait_queue_head_t wait;
33235 	long unsigned int *pending_io;
33236 	struct hd_geometry geometry;
33237 	struct workqueue_struct *wq;
33238 	struct work_struct work;
33239 	spinlock_t deferred_lock;
33240 	struct bio_list deferred;
33241 	struct work_struct requeue_work;
33242 	struct dm_io *requeue_list;
33243 	void *interface_ptr;
33244 	wait_queue_head_t eventq;
33245 	atomic_t event_nr;
33246 	atomic_t uevent_seq;
33247 	struct list_head uevent_list;
33248 	spinlock_t uevent_lock;
33249 	bool init_tio_pdu: 1;
33250 	struct blk_mq_tag_set *tag_set;
33251 	struct dm_stats stats;
33252 	unsigned int internal_suspend_count;
33253 	int swap_bios;
33254 	struct semaphore swap_bios_semaphore;
33255 	struct mutex swap_bios_lock;
33256 	struct dm_md_mempools *mempools;
33257 	struct dm_kobject_holder kobj_holder;
33258 	struct srcu_struct io_barrier;
33259 };
33260 
33261 struct dm_target_io {
33262 	short unsigned int magic;
33263 	blk_short_t flags;
33264 	unsigned int target_bio_nr;
33265 	struct dm_io *io;
33266 	struct dm_target *ti;
33267 	unsigned int *len_ptr;
33268 	sector_t old_sector;
33269 	struct bio clone;
33270 };
33271 
33272 struct dm_io {
33273 	short unsigned int magic;
33274 	blk_short_t flags;
33275 	spinlock_t lock;
33276 	long unsigned int start_time;
33277 	void *data;
33278 	struct dm_io *next;
33279 	struct dm_stats_aux stats_aux;
33280 	blk_status_t status;
33281 	atomic_t io_count;
33282 	struct mapped_device *md;
33283 	struct bio *orig_bio;
33284 	unsigned int sector_offset;
33285 	unsigned int sectors;
33286 	struct dm_target_io tio;
33287 };
33288 
33289 struct dm_stat_percpu {
33290 	long long unsigned int sectors[2];
33291 	long long unsigned int ios[2];
33292 	long long unsigned int merges[2];
33293 	long long unsigned int ticks[2];
33294 	long long unsigned int io_ticks[2];
33295 	long long unsigned int io_ticks_total;
33296 	long long unsigned int time_in_queue;
33297 	long long unsigned int *histogram;
33298 };
33299 
33300 struct dm_stat_shared {
33301 	atomic_t in_flight[2];
33302 	long long unsigned int stamp;
33303 	struct dm_stat_percpu tmp;
33304 };
33305 
33306 struct dm_stat {
33307 	struct list_head list_entry;
33308 	int id;
33309 	unsigned int stat_flags;
33310 	size_t n_entries;
33311 	sector_t start;
33312 	sector_t end;
33313 	sector_t step;
33314 	unsigned int n_histogram_entries;
33315 	long long unsigned int *histogram_boundaries;
33316 	const char *program_id;
33317 	const char *aux_data;
33318 	struct callback_head callback_head;
33319 	size_t shared_alloc_size;
33320 	size_t percpu_alloc_size;
33321 	size_t histogram_alloc_size;
33322 	struct dm_stat_percpu *stat_percpu[2048];
33323 	struct dm_stat_shared stat_shared[0];
33324 };
33325 
33326 struct clk;
33327 
33328 enum cpufreq_table_sorting {
33329 	CPUFREQ_TABLE_UNSORTED = 0,
33330 	CPUFREQ_TABLE_SORTED_ASCENDING = 1,
33331 	CPUFREQ_TABLE_SORTED_DESCENDING = 2,
33332 };
33333 
33334 struct cpufreq_cpuinfo {
33335 	unsigned int max_freq;
33336 	unsigned int min_freq;
33337 	unsigned int transition_latency;
33338 };
33339 
33340 struct cpufreq_stats;
33341 
33342 struct cpufreq_governor;
33343 
33344 struct cpufreq_frequency_table;
33345 
33346 struct thermal_cooling_device;
33347 
33348 struct cpufreq_policy {
33349 	cpumask_var_t cpus;
33350 	cpumask_var_t related_cpus;
33351 	cpumask_var_t real_cpus;
33352 	unsigned int shared_type;
33353 	unsigned int cpu;
33354 	struct clk *clk;
33355 	struct cpufreq_cpuinfo cpuinfo;
33356 	unsigned int min;
33357 	unsigned int max;
33358 	unsigned int cur;
33359 	unsigned int suspend_freq;
33360 	unsigned int policy;
33361 	unsigned int last_policy;
33362 	struct cpufreq_governor *governor;
33363 	void *governor_data;
33364 	char last_governor[16];
33365 	struct work_struct update;
33366 	struct freq_constraints constraints;
33367 	struct freq_qos_request *min_freq_req;
33368 	struct freq_qos_request *max_freq_req;
33369 	struct cpufreq_frequency_table *freq_table;
33370 	enum cpufreq_table_sorting freq_table_sorted;
33371 	struct list_head policy_list;
33372 	struct kobject kobj;
33373 	struct completion kobj_unregister;
33374 	struct rw_semaphore rwsem;
33375 	bool fast_switch_possible;
33376 	bool fast_switch_enabled;
33377 	bool strict_target;
33378 	bool efficiencies_available;
33379 	unsigned int transition_delay_us;
33380 	bool dvfs_possible_from_any_cpu;
33381 	unsigned int cached_target_freq;
33382 	unsigned int cached_resolved_idx;
33383 	bool transition_ongoing;
33384 	spinlock_t transition_lock;
33385 	wait_queue_head_t transition_wait;
33386 	struct task_struct *transition_task;
33387 	struct cpufreq_stats *stats;
33388 	void *driver_data;
33389 	struct thermal_cooling_device *cdev;
33390 	struct notifier_block nb_min;
33391 	struct notifier_block nb_max;
33392 };
33393 
33394 struct cpufreq_governor {
33395 	char name[16];
33396 	int (*init)(struct cpufreq_policy *);
33397 	void (*exit)(struct cpufreq_policy *);
33398 	int (*start)(struct cpufreq_policy *);
33399 	void (*stop)(struct cpufreq_policy *);
33400 	void (*limits)(struct cpufreq_policy *);
33401 	ssize_t (*show_setspeed)(struct cpufreq_policy *, char *);
33402 	int (*store_setspeed)(struct cpufreq_policy *, unsigned int);
33403 	struct list_head governor_list;
33404 	struct module *owner;
33405 	u8 flags;
33406 };
33407 
33408 struct cpufreq_frequency_table {
33409 	unsigned int flags;
33410 	unsigned int driver_data;
33411 	unsigned int frequency;
33412 };
33413 
33414 struct gov_attr_set {
33415 	struct kobject kobj;
33416 	struct list_head policy_list;
33417 	struct mutex update_lock;
33418 	int usage_count;
33419 };
33420 
33421 struct governor_attr {
33422 	struct attribute attr;
33423 	ssize_t (*show)(struct gov_attr_set *, char *);
33424 	ssize_t (*store)(struct gov_attr_set *, const char *, size_t);
33425 };
33426 
33427 struct dbs_governor;
33428 
33429 struct dbs_data {
33430 	struct gov_attr_set attr_set;
33431 	struct dbs_governor *gov;
33432 	void *tuners;
33433 	unsigned int ignore_nice_load;
33434 	unsigned int sampling_rate;
33435 	unsigned int sampling_down_factor;
33436 	unsigned int up_threshold;
33437 	unsigned int io_is_busy;
33438 };
33439 
33440 struct policy_dbs_info;
33441 
33442 struct dbs_governor {
33443 	struct cpufreq_governor gov;
33444 	struct kobj_type kobj_type;
33445 	struct dbs_data *gdbs_data;
33446 	unsigned int (*gov_dbs_update)(struct cpufreq_policy *);
33447 	struct policy_dbs_info * (*alloc)();
33448 	void (*free)(struct policy_dbs_info *);
33449 	int (*init)(struct dbs_data *);
33450 	void (*exit)(struct dbs_data *);
33451 	void (*start)(struct cpufreq_policy *);
33452 };
33453 
33454 struct policy_dbs_info {
33455 	struct cpufreq_policy *policy;
33456 	struct mutex update_mutex;
33457 	u64 last_sample_time;
33458 	s64 sample_delay_ns;
33459 	atomic_t work_count;
33460 	struct irq_work irq_work;
33461 	struct work_struct work;
33462 	struct dbs_data *dbs_data;
33463 	struct list_head list;
33464 	unsigned int rate_mult;
33465 	unsigned int idle_periods;
33466 	bool is_shared;
33467 	bool work_in_progress;
33468 };
33469 
33470 struct cs_policy_dbs_info {
33471 	struct policy_dbs_info policy_dbs;
33472 	unsigned int down_skip;
33473 	unsigned int requested_freq;
33474 };
33475 
33476 struct cs_dbs_tuners {
33477 	unsigned int down_threshold;
33478 	unsigned int freq_step;
33479 };
33480 
33481 struct hid_device_id {
33482 	__u16 bus;
33483 	__u16 group;
33484 	__u32 vendor;
33485 	__u32 product;
33486 	kernel_ulong_t driver_data;
33487 };
33488 
33489 struct hid_collection {
33490 	int parent_idx;
33491 	unsigned int type;
33492 	unsigned int usage;
33493 	unsigned int level;
33494 };
33495 
33496 struct hid_usage {
33497 	unsigned int hid;
33498 	unsigned int collection_index;
33499 	unsigned int usage_index;
33500 	__s8 resolution_multiplier;
33501 	__s8 wheel_factor;
33502 	__u16 code;
33503 	__u8 type;
33504 	__s8 hat_min;
33505 	__s8 hat_max;
33506 	__s8 hat_dir;
33507 	__s16 wheel_accumulated;
33508 };
33509 
33510 struct hid_report;
33511 
33512 struct hid_input;
33513 
33514 struct hid_field {
33515 	unsigned int physical;
33516 	unsigned int logical;
33517 	unsigned int application;
33518 	struct hid_usage *usage;
33519 	unsigned int maxusage;
33520 	unsigned int flags;
33521 	unsigned int report_offset;
33522 	unsigned int report_size;
33523 	unsigned int report_count;
33524 	unsigned int report_type;
33525 	__s32 *value;
33526 	__s32 *new_value;
33527 	__s32 *usages_priorities;
33528 	__s32 logical_minimum;
33529 	__s32 logical_maximum;
33530 	__s32 physical_minimum;
33531 	__s32 physical_maximum;
33532 	__s32 unit_exponent;
33533 	unsigned int unit;
33534 	bool ignored;
33535 	struct hid_report *report;
33536 	unsigned int index;
33537 	struct hid_input *hidinput;
33538 	__u16 dpad;
33539 	unsigned int slot_idx;
33540 };
33541 
33542 struct hid_field_entry;
33543 
33544 struct hid_device;
33545 
33546 struct hid_report {
33547 	struct list_head list;
33548 	struct list_head hidinput_list;
33549 	struct list_head field_entry_list;
33550 	unsigned int id;
33551 	unsigned int type;
33552 	unsigned int application;
33553 	struct hid_field *field[256];
33554 	struct hid_field_entry *field_entries;
33555 	unsigned int maxfield;
33556 	unsigned int size;
33557 	struct hid_device *device;
33558 	bool tool_active;
33559 	unsigned int tool;
33560 };
33561 
33562 struct hid_input {
33563 	struct list_head list;
33564 	struct hid_report *report;
33565 	struct input_dev *input;
33566 	const char *name;
33567 	bool registered;
33568 	struct list_head reports;
33569 	unsigned int application;
33570 };
33571 
33572 struct hid_field_entry {
33573 	struct list_head list;
33574 	struct hid_field *field;
33575 	unsigned int index;
33576 	__s32 priority;
33577 };
33578 
33579 enum hid_type {
33580 	HID_TYPE_OTHER = 0,
33581 	HID_TYPE_USBMOUSE = 1,
33582 	HID_TYPE_USBNONE = 2,
33583 };
33584 
33585 struct hid_report_enum {
33586 	unsigned int numbered;
33587 	struct list_head report_list;
33588 	struct hid_report *report_id_hash[256];
33589 };
33590 
33591 struct hid_driver;
33592 
33593 struct hid_ll_driver;
33594 
33595 struct hid_device {
33596 	__u8 *dev_rdesc;
33597 	unsigned int dev_rsize;
33598 	__u8 *rdesc;
33599 	unsigned int rsize;
33600 	struct hid_collection *collection;
33601 	unsigned int collection_size;
33602 	unsigned int maxcollection;
33603 	unsigned int maxapplication;
33604 	__u16 bus;
33605 	__u16 group;
33606 	__u32 vendor;
33607 	__u32 product;
33608 	__u32 version;
33609 	enum hid_type type;
33610 	unsigned int country;
33611 	struct hid_report_enum report_enum[3];
33612 	struct work_struct led_work;
33613 	struct semaphore driver_input_lock;
33614 	struct device dev;
33615 	struct hid_driver *driver;
33616 	struct hid_ll_driver *ll_driver;
33617 	struct mutex ll_open_lock;
33618 	unsigned int ll_open_count;
33619 	long unsigned int status;
33620 	unsigned int claimed;
33621 	unsigned int quirks;
33622 	bool io_started;
33623 	struct list_head inputs;
33624 	void *hiddev;
33625 	void *hidraw;
33626 	char name[128];
33627 	char phys[64];
33628 	char uniq[64];
33629 	void *driver_data;
33630 	int (*ff_init)(struct hid_device *);
33631 	int (*hiddev_connect)(struct hid_device *, unsigned int);
33632 	void (*hiddev_disconnect)(struct hid_device *);
33633 	void (*hiddev_hid_event)(struct hid_device *, struct hid_field *, struct hid_usage *, __s32);
33634 	void (*hiddev_report_event)(struct hid_device *, struct hid_report *);
33635 	short unsigned int debug;
33636 	struct dentry *debug_dir;
33637 	struct dentry *debug_rdesc;
33638 	struct dentry *debug_events;
33639 	struct list_head debug_list;
33640 	spinlock_t debug_list_lock;
33641 	wait_queue_head_t debug_wait;
33642 };
33643 
33644 struct hid_report_id;
33645 
33646 struct hid_usage_id;
33647 
33648 struct hid_driver {
33649 	char *name;
33650 	const struct hid_device_id *id_table;
33651 	struct list_head dyn_list;
33652 	spinlock_t dyn_lock;
33653 	bool (*match)(struct hid_device *, bool);
33654 	int (*probe)(struct hid_device *, const struct hid_device_id *);
33655 	void (*remove)(struct hid_device *);
33656 	const struct hid_report_id *report_table;
33657 	int (*raw_event)(struct hid_device *, struct hid_report *, u8 *, int);
33658 	const struct hid_usage_id *usage_table;
33659 	int (*event)(struct hid_device *, struct hid_field *, struct hid_usage *, __s32);
33660 	void (*report)(struct hid_device *, struct hid_report *);
33661 	__u8 * (*report_fixup)(struct hid_device *, __u8 *, unsigned int *);
33662 	int (*input_mapping)(struct hid_device *, struct hid_input *, struct hid_field *, struct hid_usage *, long unsigned int **, int *);
33663 	int (*input_mapped)(struct hid_device *, struct hid_input *, struct hid_field *, struct hid_usage *, long unsigned int **, int *);
33664 	int (*input_configured)(struct hid_device *, struct hid_input *);
33665 	void (*feature_mapping)(struct hid_device *, struct hid_field *, struct hid_usage *);
33666 	int (*suspend)(struct hid_device *, pm_message_t);
33667 	int (*resume)(struct hid_device *);
33668 	int (*reset_resume)(struct hid_device *);
33669 	struct device_driver driver;
33670 };
33671 
33672 struct hid_ll_driver {
33673 	int (*start)(struct hid_device *);
33674 	void (*stop)(struct hid_device *);
33675 	int (*open)(struct hid_device *);
33676 	void (*close)(struct hid_device *);
33677 	int (*power)(struct hid_device *, int);
33678 	int (*parse)(struct hid_device *);
33679 	void (*request)(struct hid_device *, struct hid_report *, int);
33680 	int (*wait)(struct hid_device *);
33681 	int (*raw_request)(struct hid_device *, unsigned char, __u8 *, size_t, unsigned char, int);
33682 	int (*output_report)(struct hid_device *, __u8 *, size_t);
33683 	int (*idle)(struct hid_device *, int, int, int);
33684 	bool (*may_wakeup)(struct hid_device *);
33685 };
33686 
33687 struct hid_report_id {
33688 	__u32 report_type;
33689 };
33690 
33691 struct hid_usage_id {
33692 	__u32 usage_hid;
33693 	__u32 usage_type;
33694 	__u32 usage_code;
33695 };
33696 
33697 typedef int (*of_irq_init_cb_t)(struct device_node *, struct device_node *);
33698 
33699 struct of_intc_desc {
33700 	struct list_head list;
33701 	of_irq_init_cb_t irq_init_cb;
33702 	struct device_node *dev;
33703 	struct device_node *interrupt_parent;
33704 };
33705 
33706 typedef __u16 __sum16;
33707 
33708 typedef u64 u_int64_t;
33709 
33710 struct flow_dissector_key_control {
33711 	u16 thoff;
33712 	u16 addr_type;
33713 	u32 flags;
33714 };
33715 
33716 enum flow_dissect_ret {
33717 	FLOW_DISSECT_RET_OUT_GOOD = 0,
33718 	FLOW_DISSECT_RET_OUT_BAD = 1,
33719 	FLOW_DISSECT_RET_PROTO_AGAIN = 2,
33720 	FLOW_DISSECT_RET_IPPROTO_AGAIN = 3,
33721 	FLOW_DISSECT_RET_CONTINUE = 4,
33722 };
33723 
33724 struct flow_dissector_key_basic {
33725 	__be16 n_proto;
33726 	u8 ip_proto;
33727 	u8 padding;
33728 };
33729 
33730 struct flow_dissector_key_tags {
33731 	u32 flow_label;
33732 };
33733 
33734 struct flow_dissector_key_vlan {
33735 	union {
33736 		struct {
33737 			u16 vlan_id: 12;
33738 			u16 vlan_dei: 1;
33739 			u16 vlan_priority: 3;
33740 		};
33741 		__be16 vlan_tci;
33742 	};
33743 	__be16 vlan_tpid;
33744 	__be16 vlan_eth_type;
33745 	u16 padding;
33746 };
33747 
33748 struct flow_dissector_mpls_lse {
33749 	u32 mpls_ttl: 8;
33750 	u32 mpls_bos: 1;
33751 	u32 mpls_tc: 3;
33752 	u32 mpls_label: 20;
33753 };
33754 
33755 struct flow_dissector_key_mpls {
33756 	struct flow_dissector_mpls_lse ls[7];
33757 	u8 used_lses;
33758 };
33759 
33760 struct flow_dissector_key_enc_opts {
33761 	u8 data[255];
33762 	u8 len;
33763 	__be16 dst_opt_type;
33764 };
33765 
33766 struct flow_dissector_key_keyid {
33767 	__be32 keyid;
33768 };
33769 
33770 struct flow_dissector_key_ipv4_addrs {
33771 	__be32 src;
33772 	__be32 dst;
33773 };
33774 
33775 struct flow_dissector_key_ipv6_addrs {
33776 	struct in6_addr src;
33777 	struct in6_addr dst;
33778 };
33779 
33780 struct flow_dissector_key_tipc {
33781 	__be32 key;
33782 };
33783 
33784 struct flow_dissector_key_addrs {
33785 	union {
33786 		struct flow_dissector_key_ipv4_addrs v4addrs;
33787 		struct flow_dissector_key_ipv6_addrs v6addrs;
33788 		struct flow_dissector_key_tipc tipckey;
33789 	};
33790 };
33791 
33792 struct flow_dissector_key_arp {
33793 	__u32 sip;
33794 	__u32 tip;
33795 	__u8 op;
33796 	unsigned char sha[6];
33797 	unsigned char tha[6];
33798 };
33799 
33800 struct flow_dissector_key_ports {
33801 	union {
33802 		__be32 ports;
33803 		struct {
33804 			__be16 src;
33805 			__be16 dst;
33806 		};
33807 	};
33808 };
33809 
33810 struct flow_dissector_key_icmp {
33811 	struct {
33812 		u8 type;
33813 		u8 code;
33814 	};
33815 	u16 id;
33816 };
33817 
33818 struct flow_dissector_key_eth_addrs {
33819 	unsigned char dst[6];
33820 	unsigned char src[6];
33821 };
33822 
33823 struct flow_dissector_key_tcp {
33824 	__be16 flags;
33825 };
33826 
33827 struct flow_dissector_key_ip {
33828 	__u8 tos;
33829 	__u8 ttl;
33830 };
33831 
33832 struct flow_dissector_key_meta {
33833 	int ingress_ifindex;
33834 	u16 ingress_iftype;
33835 };
33836 
33837 struct flow_dissector_key_ct {
33838 	u16 ct_state;
33839 	u16 ct_zone;
33840 	u32 ct_mark;
33841 	u32 ct_labels[4];
33842 };
33843 
33844 struct flow_dissector_key_hash {
33845 	u32 hash;
33846 };
33847 
33848 struct flow_dissector_key_num_of_vlans {
33849 	u8 num_of_vlans;
33850 };
33851 
33852 struct flow_dissector_key_pppoe {
33853 	__be16 session_id;
33854 	__be16 ppp_proto;
33855 	__be16 type;
33856 };
33857 
33858 struct flow_dissector_key {
33859 	enum flow_dissector_key_id key_id;
33860 	size_t offset;
33861 };
33862 
33863 struct flow_dissector {
33864 	unsigned int used_keys;
33865 	short unsigned int offset[30];
33866 };
33867 
33868 struct flow_keys_basic {
33869 	struct flow_dissector_key_control control;
33870 	struct flow_dissector_key_basic basic;
33871 };
33872 
33873 struct flow_keys {
33874 	struct flow_dissector_key_control control;
33875 	struct flow_dissector_key_basic basic;
33876 	struct flow_dissector_key_tags tags;
33877 	struct flow_dissector_key_vlan vlan;
33878 	struct flow_dissector_key_vlan cvlan;
33879 	struct flow_dissector_key_keyid keyid;
33880 	struct flow_dissector_key_ports ports;
33881 	struct flow_dissector_key_icmp icmp;
33882 	struct flow_dissector_key_addrs addrs;
33883 	long: 0;
33884 };
33885 
33886 struct flow_keys_digest {
33887 	u8 data[16];
33888 };
33889 
33890 struct bpf_flow_keys;
33891 
33892 struct bpf_flow_dissector {
33893 	struct bpf_flow_keys *flow_keys;
33894 	const struct sk_buff *skb;
33895 	const void *data;
33896 	const void *data_end;
33897 };
33898 
33899 struct bpf_flow_keys {
33900 	__u16 nhoff;
33901 	__u16 thoff;
33902 	__u16 addr_proto;
33903 	__u8 is_frag;
33904 	__u8 is_first_frag;
33905 	__u8 is_encap;
33906 	__u8 ip_proto;
33907 	__be16 n_proto;
33908 	__be16 sport;
33909 	__be16 dport;
33910 	union {
33911 		struct {
33912 			__be32 ipv4_src;
33913 			__be32 ipv4_dst;
33914 		};
33915 		struct {
33916 			__u32 ipv6_src[4];
33917 			__u32 ipv6_dst[4];
33918 		};
33919 	};
33920 	__u32 flags;
33921 	__be32 flow_label;
33922 };
33923 
33924 struct flowi_tunnel {
33925 	__be64 tun_id;
33926 };
33927 
33928 struct flowi_common {
33929 	int flowic_oif;
33930 	int flowic_iif;
33931 	int flowic_l3mdev;
33932 	__u32 flowic_mark;
33933 	__u8 flowic_tos;
33934 	__u8 flowic_scope;
33935 	__u8 flowic_proto;
33936 	__u8 flowic_flags;
33937 	__u32 flowic_secid;
33938 	kuid_t flowic_uid;
33939 	struct flowi_tunnel flowic_tun_key;
33940 	__u32 flowic_multipath_hash;
33941 };
33942 
33943 union flowi_uli {
33944 	struct {
33945 		__be16 dport;
33946 		__be16 sport;
33947 	} ports;
33948 	struct {
33949 		__u8 type;
33950 		__u8 code;
33951 	} icmpt;
33952 	struct {
33953 		__le16 dport;
33954 		__le16 sport;
33955 	} dnports;
33956 	__be32 gre_key;
33957 	struct {
33958 		__u8 type;
33959 	} mht;
33960 };
33961 
33962 struct flowi6 {
33963 	struct flowi_common __fl_common;
33964 	struct in6_addr daddr;
33965 	struct in6_addr saddr;
33966 	__be32 flowlabel;
33967 	union flowi_uli uli;
33968 	__u32 mp_hash;
33969 };
33970 
33971 enum ip_conntrack_info {
33972 	IP_CT_ESTABLISHED = 0,
33973 	IP_CT_RELATED = 1,
33974 	IP_CT_NEW = 2,
33975 	IP_CT_IS_REPLY = 3,
33976 	IP_CT_ESTABLISHED_REPLY = 3,
33977 	IP_CT_RELATED_REPLY = 4,
33978 	IP_CT_NUMBER = 5,
33979 	IP_CT_UNTRACKED = 7,
33980 };
33981 
33982 struct nf_conntrack {
33983 	refcount_t use;
33984 };
33985 
33986 struct iphdr {
33987 	__u8 ihl: 4;
33988 	__u8 version: 4;
33989 	__u8 tos;
33990 	__be16 tot_len;
33991 	__be16 id;
33992 	__be16 frag_off;
33993 	__u8 ttl;
33994 	__u8 protocol;
33995 	__sum16 check;
33996 	__be32 saddr;
33997 	__be32 daddr;
33998 };
33999 
34000 struct ipv6hdr {
34001 	__u8 priority: 4;
34002 	__u8 version: 4;
34003 	__u8 flow_lbl[3];
34004 	__be16 payload_len;
34005 	__u8 nexthdr;
34006 	__u8 hop_limit;
34007 	struct in6_addr saddr;
34008 	struct in6_addr daddr;
34009 };
34010 
34011 struct rt6key {
34012 	struct in6_addr addr;
34013 	int plen;
34014 };
34015 
34016 struct rtable;
34017 
34018 struct fnhe_hash_bucket;
34019 
34020 struct fib_nh_common {
34021 	struct net_device *nhc_dev;
34022 	netdevice_tracker nhc_dev_tracker;
34023 	int nhc_oif;
34024 	unsigned char nhc_scope;
34025 	u8 nhc_family;
34026 	u8 nhc_gw_family;
34027 	unsigned char nhc_flags;
34028 	struct lwtunnel_state *nhc_lwtstate;
34029 	union {
34030 		__be32 ipv4;
34031 		struct in6_addr ipv6;
34032 	} nhc_gw;
34033 	int nhc_weight;
34034 	atomic_t nhc_upper_bound;
34035 	struct rtable **nhc_pcpu_rth_output;
34036 	struct rtable *nhc_rth_input;
34037 	struct fnhe_hash_bucket *nhc_exceptions;
34038 };
34039 
34040 struct rt6_exception_bucket;
34041 
34042 struct fib6_nh {
34043 	struct fib_nh_common nh_common;
34044 	struct rt6_info **rt6i_pcpu;
34045 	struct rt6_exception_bucket *rt6i_exception_bucket;
34046 };
34047 
34048 struct fib6_node;
34049 
34050 struct dst_metrics;
34051 
34052 struct nexthop;
34053 
34054 struct fib6_info {
34055 	struct fib6_table *fib6_table;
34056 	struct fib6_info *fib6_next;
34057 	struct fib6_node *fib6_node;
34058 	union {
34059 		struct list_head fib6_siblings;
34060 		struct list_head nh_list;
34061 	};
34062 	unsigned int fib6_nsiblings;
34063 	refcount_t fib6_ref;
34064 	long unsigned int expires;
34065 	struct dst_metrics *fib6_metrics;
34066 	struct rt6key fib6_dst;
34067 	u32 fib6_flags;
34068 	struct rt6key fib6_src;
34069 	struct rt6key fib6_prefsrc;
34070 	u32 fib6_metric;
34071 	u8 fib6_protocol;
34072 	u8 fib6_type;
34073 	u8 offload;
34074 	u8 trap;
34075 	u8 offload_failed;
34076 	u8 should_flush: 1;
34077 	u8 dst_nocount: 1;
34078 	u8 dst_nopolicy: 1;
34079 	u8 fib6_destroying: 1;
34080 	u8 unused: 4;
34081 	struct callback_head rcu;
34082 	struct nexthop *nh;
34083 	struct fib6_nh fib6_nh[0];
34084 };
34085 
34086 struct uncached_list;
34087 
34088 struct rt6_info {
34089 	struct dst_entry dst;
34090 	struct fib6_info *from;
34091 	int sernum;
34092 	struct rt6key rt6i_dst;
34093 	struct rt6key rt6i_src;
34094 	struct in6_addr rt6i_gateway;
34095 	struct inet6_dev *rt6i_idev;
34096 	u32 rt6i_flags;
34097 	struct list_head rt6i_uncached;
34098 	struct uncached_list *rt6i_uncached_list;
34099 	short unsigned int rt6i_nfheader_len;
34100 };
34101 
34102 struct rt6_statistics {
34103 	__u32 fib_nodes;
34104 	__u32 fib_route_nodes;
34105 	__u32 fib_rt_entries;
34106 	__u32 fib_rt_cache;
34107 	__u32 fib_discarded_routes;
34108 	atomic_t fib_rt_alloc;
34109 };
34110 
34111 struct fib6_node {
34112 	struct fib6_node *parent;
34113 	struct fib6_node *left;
34114 	struct fib6_node *right;
34115 	struct fib6_info *leaf;
34116 	__u16 fn_bit;
34117 	__u16 fn_flags;
34118 	int fn_sernum;
34119 	struct fib6_info *rr_ptr;
34120 	struct callback_head rcu;
34121 };
34122 
34123 struct fib6_table {
34124 	struct hlist_node tb6_hlist;
34125 	u32 tb6_id;
34126 	spinlock_t tb6_lock;
34127 	struct fib6_node tb6_root;
34128 	struct inet_peer_base tb6_peers;
34129 	unsigned int flags;
34130 	unsigned int fib_seq;
34131 };
34132 
34133 union nf_inet_addr {
34134 	__u32 all[4];
34135 	__be32 ip;
34136 	__be32 ip6[4];
34137 	struct in_addr in;
34138 	struct in6_addr in6;
34139 };
34140 
34141 struct nf_hook_state;
34142 
34143 typedef unsigned int nf_hookfn(void *, struct sk_buff *, const struct nf_hook_state *);
34144 
34145 struct nf_hook_entry {
34146 	nf_hookfn *hook;
34147 	void *priv;
34148 };
34149 
34150 struct nf_hook_entries {
34151 	u16 num_hook_entries;
34152 	struct nf_hook_entry hooks[0];
34153 };
34154 
34155 struct ip_ct_tcp_state {
34156 	u_int32_t td_end;
34157 	u_int32_t td_maxend;
34158 	u_int32_t td_maxwin;
34159 	u_int32_t td_maxack;
34160 	u_int8_t td_scale;
34161 	u_int8_t flags;
34162 };
34163 
34164 struct ip_ct_tcp {
34165 	struct ip_ct_tcp_state seen[2];
34166 	u_int8_t state;
34167 	u_int8_t last_dir;
34168 	u_int8_t retrans;
34169 	u_int8_t last_index;
34170 	u_int32_t last_seq;
34171 	u_int32_t last_ack;
34172 	u_int32_t last_end;
34173 	u_int16_t last_win;
34174 	u_int8_t last_wscale;
34175 	u_int8_t last_flags;
34176 };
34177 
34178 enum {
34179 	TCA_FLOWER_KEY_CT_FLAGS_NEW = 1,
34180 	TCA_FLOWER_KEY_CT_FLAGS_ESTABLISHED = 2,
34181 	TCA_FLOWER_KEY_CT_FLAGS_RELATED = 4,
34182 	TCA_FLOWER_KEY_CT_FLAGS_TRACKED = 8,
34183 	TCA_FLOWER_KEY_CT_FLAGS_INVALID = 16,
34184 	TCA_FLOWER_KEY_CT_FLAGS_REPLY = 32,
34185 	__TCA_FLOWER_KEY_CT_FLAGS_MAX = 33,
34186 };
34187 
34188 enum devlink_port_type {
34189 	DEVLINK_PORT_TYPE_NOTSET = 0,
34190 	DEVLINK_PORT_TYPE_AUTO = 1,
34191 	DEVLINK_PORT_TYPE_ETH = 2,
34192 	DEVLINK_PORT_TYPE_IB = 3,
34193 };
34194 
34195 enum devlink_port_flavour {
34196 	DEVLINK_PORT_FLAVOUR_PHYSICAL = 0,
34197 	DEVLINK_PORT_FLAVOUR_CPU = 1,
34198 	DEVLINK_PORT_FLAVOUR_DSA = 2,
34199 	DEVLINK_PORT_FLAVOUR_PCI_PF = 3,
34200 	DEVLINK_PORT_FLAVOUR_PCI_VF = 4,
34201 	DEVLINK_PORT_FLAVOUR_VIRTUAL = 5,
34202 	DEVLINK_PORT_FLAVOUR_UNUSED = 6,
34203 	DEVLINK_PORT_FLAVOUR_PCI_SF = 7,
34204 };
34205 
34206 struct devlink_port_phys_attrs {
34207 	u32 port_number;
34208 	u32 split_subport_number;
34209 };
34210 
34211 struct devlink_port_pci_pf_attrs {
34212 	u32 controller;
34213 	u16 pf;
34214 	u8 external: 1;
34215 };
34216 
34217 struct devlink_port_pci_vf_attrs {
34218 	u32 controller;
34219 	u16 pf;
34220 	u16 vf;
34221 	u8 external: 1;
34222 };
34223 
34224 struct devlink_port_pci_sf_attrs {
34225 	u32 controller;
34226 	u32 sf;
34227 	u16 pf;
34228 	u8 external: 1;
34229 };
34230 
34231 struct devlink_port_attrs {
34232 	u8 split: 1;
34233 	u8 splittable: 1;
34234 	u32 lanes;
34235 	enum devlink_port_flavour flavour;
34236 	struct netdev_phys_item_id switch_id;
34237 	union {
34238 		struct devlink_port_phys_attrs phys;
34239 		struct devlink_port_pci_pf_attrs pci_pf;
34240 		struct devlink_port_pci_vf_attrs pci_vf;
34241 		struct devlink_port_pci_sf_attrs pci_sf;
34242 	};
34243 };
34244 
34245 struct devlink;
34246 
34247 struct devlink_rate;
34248 
34249 struct devlink_linecard;
34250 
34251 struct devlink_port {
34252 	struct list_head list;
34253 	struct list_head param_list;
34254 	struct list_head region_list;
34255 	struct devlink *devlink;
34256 	unsigned int index;
34257 	spinlock_t type_lock;
34258 	enum devlink_port_type type;
34259 	enum devlink_port_type desired_type;
34260 	void *type_dev;
34261 	struct devlink_port_attrs attrs;
34262 	u8 attrs_set: 1;
34263 	u8 switch_port: 1;
34264 	struct delayed_work type_warn_dw;
34265 	struct list_head reporter_list;
34266 	struct mutex reporters_lock;
34267 	struct devlink_rate *devlink_rate;
34268 	struct devlink_linecard *linecard;
34269 };
34270 
34271 struct ip_tunnel_parm {
34272 	char name[16];
34273 	int link;
34274 	__be16 i_flags;
34275 	__be16 o_flags;
34276 	__be32 i_key;
34277 	__be32 o_key;
34278 	struct iphdr iph;
34279 };
34280 
34281 struct reset_control;
34282 
34283 struct mii_bus;
34284 
34285 struct mdio_device {
34286 	struct device dev;
34287 	struct mii_bus *bus;
34288 	char modalias[32];
34289 	int (*bus_match)(struct device *, struct device_driver *);
34290 	void (*device_free)(struct mdio_device *);
34291 	void (*device_remove)(struct mdio_device *);
34292 	int addr;
34293 	int flags;
34294 	struct gpio_desc *reset_gpio;
34295 	struct reset_control *reset_ctrl;
34296 	unsigned int reset_assert_delay;
34297 	unsigned int reset_deassert_delay;
34298 };
34299 
34300 struct phy_c45_device_ids {
34301 	u32 devices_in_package;
34302 	u32 mmds_present;
34303 	u32 device_ids[32];
34304 };
34305 
34306 enum phy_state {
34307 	PHY_DOWN = 0,
34308 	PHY_READY = 1,
34309 	PHY_HALTED = 2,
34310 	PHY_UP = 3,
34311 	PHY_RUNNING = 4,
34312 	PHY_NOLINK = 5,
34313 	PHY_CABLETEST = 6,
34314 };
34315 
34316 typedef enum {
34317 	PHY_INTERFACE_MODE_NA = 0,
34318 	PHY_INTERFACE_MODE_INTERNAL = 1,
34319 	PHY_INTERFACE_MODE_MII = 2,
34320 	PHY_INTERFACE_MODE_GMII = 3,
34321 	PHY_INTERFACE_MODE_SGMII = 4,
34322 	PHY_INTERFACE_MODE_TBI = 5,
34323 	PHY_INTERFACE_MODE_REVMII = 6,
34324 	PHY_INTERFACE_MODE_RMII = 7,
34325 	PHY_INTERFACE_MODE_REVRMII = 8,
34326 	PHY_INTERFACE_MODE_RGMII = 9,
34327 	PHY_INTERFACE_MODE_RGMII_ID = 10,
34328 	PHY_INTERFACE_MODE_RGMII_RXID = 11,
34329 	PHY_INTERFACE_MODE_RGMII_TXID = 12,
34330 	PHY_INTERFACE_MODE_RTBI = 13,
34331 	PHY_INTERFACE_MODE_SMII = 14,
34332 	PHY_INTERFACE_MODE_XGMII = 15,
34333 	PHY_INTERFACE_MODE_XLGMII = 16,
34334 	PHY_INTERFACE_MODE_MOCA = 17,
34335 	PHY_INTERFACE_MODE_QSGMII = 18,
34336 	PHY_INTERFACE_MODE_TRGMII = 19,
34337 	PHY_INTERFACE_MODE_100BASEX = 20,
34338 	PHY_INTERFACE_MODE_1000BASEX = 21,
34339 	PHY_INTERFACE_MODE_2500BASEX = 22,
34340 	PHY_INTERFACE_MODE_5GBASER = 23,
34341 	PHY_INTERFACE_MODE_RXAUI = 24,
34342 	PHY_INTERFACE_MODE_XAUI = 25,
34343 	PHY_INTERFACE_MODE_10GBASER = 26,
34344 	PHY_INTERFACE_MODE_25GBASER = 27,
34345 	PHY_INTERFACE_MODE_USXGMII = 28,
34346 	PHY_INTERFACE_MODE_10GKR = 29,
34347 	PHY_INTERFACE_MODE_MAX = 30,
34348 } phy_interface_t;
34349 
34350 struct phylink;
34351 
34352 struct phy_driver;
34353 
34354 struct phy_package_shared;
34355 
34356 struct mii_timestamper;
34357 
34358 struct phy_device {
34359 	struct mdio_device mdio;
34360 	struct phy_driver *drv;
34361 	u32 phy_id;
34362 	struct phy_c45_device_ids c45_ids;
34363 	unsigned int is_c45: 1;
34364 	unsigned int is_internal: 1;
34365 	unsigned int is_pseudo_fixed_link: 1;
34366 	unsigned int is_gigabit_capable: 1;
34367 	unsigned int has_fixups: 1;
34368 	unsigned int suspended: 1;
34369 	unsigned int suspended_by_mdio_bus: 1;
34370 	unsigned int sysfs_links: 1;
34371 	unsigned int loopback_enabled: 1;
34372 	unsigned int downshifted_rate: 1;
34373 	unsigned int is_on_sfp_module: 1;
34374 	unsigned int mac_managed_pm: 1;
34375 	unsigned int autoneg: 1;
34376 	unsigned int link: 1;
34377 	unsigned int autoneg_complete: 1;
34378 	unsigned int interrupts: 1;
34379 	unsigned int irq_suspended: 1;
34380 	unsigned int irq_rerun: 1;
34381 	enum phy_state state;
34382 	u32 dev_flags;
34383 	phy_interface_t interface;
34384 	int speed;
34385 	int duplex;
34386 	int port;
34387 	int pause;
34388 	int asym_pause;
34389 	u8 master_slave_get;
34390 	u8 master_slave_set;
34391 	u8 master_slave_state;
34392 	long unsigned int supported[2];
34393 	long unsigned int advertising[2];
34394 	long unsigned int lp_advertising[2];
34395 	long unsigned int adv_old[2];
34396 	u32 eee_broken_modes;
34397 	int irq;
34398 	void *priv;
34399 	struct phy_package_shared *shared;
34400 	struct sk_buff *skb;
34401 	void *ehdr;
34402 	struct nlattr *nest;
34403 	struct delayed_work state_queue;
34404 	struct mutex lock;
34405 	bool sfp_bus_attached;
34406 	struct sfp_bus *sfp_bus;
34407 	struct phylink *phylink;
34408 	struct net_device *attached_dev;
34409 	struct mii_timestamper *mii_ts;
34410 	u8 mdix;
34411 	u8 mdix_ctrl;
34412 	int pma_extable;
34413 	void (*phy_link_change)(struct phy_device *, bool);
34414 	void (*adjust_link)(struct net_device *);
34415 };
34416 
34417 struct dst_metrics {
34418 	u32 metrics[17];
34419 	refcount_t refcnt;
34420 };
34421 
34422 enum {
34423 	TCPF_ESTABLISHED = 2,
34424 	TCPF_SYN_SENT = 4,
34425 	TCPF_SYN_RECV = 8,
34426 	TCPF_FIN_WAIT1 = 16,
34427 	TCPF_FIN_WAIT2 = 32,
34428 	TCPF_TIME_WAIT = 64,
34429 	TCPF_CLOSE = 128,
34430 	TCPF_CLOSE_WAIT = 256,
34431 	TCPF_LAST_ACK = 512,
34432 	TCPF_LISTEN = 1024,
34433 	TCPF_CLOSING = 2048,
34434 	TCPF_NEW_SYN_RECV = 4096,
34435 };
34436 
34437 struct sk_filter {
34438 	refcount_t refcnt;
34439 	struct callback_head rcu;
34440 	struct bpf_prog *prog;
34441 };
34442 
34443 struct tcphdr {
34444 	__be16 source;
34445 	__be16 dest;
34446 	__be32 seq;
34447 	__be32 ack_seq;
34448 	__u16 res1: 4;
34449 	__u16 doff: 4;
34450 	__u16 fin: 1;
34451 	__u16 syn: 1;
34452 	__u16 rst: 1;
34453 	__u16 psh: 1;
34454 	__u16 ack: 1;
34455 	__u16 urg: 1;
34456 	__u16 ece: 1;
34457 	__u16 cwr: 1;
34458 	__be16 window;
34459 	__sum16 check;
34460 	__be16 urg_ptr;
34461 };
34462 
34463 union tcp_word_hdr {
34464 	struct tcphdr hdr;
34465 	__be32 words[5];
34466 };
34467 
34468 struct vlan_hdr {
34469 	__be16 h_vlan_TCI;
34470 	__be16 h_vlan_encapsulated_proto;
34471 };
34472 
34473 enum bpf_ret_code {
34474 	BPF_OK = 0,
34475 	BPF_DROP = 2,
34476 	BPF_REDIRECT = 7,
34477 	BPF_LWT_REROUTE = 128,
34478 };
34479 
34480 enum {
34481 	BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = 1,
34482 	BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = 2,
34483 	BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 4,
34484 };
34485 
34486 typedef unsigned int (*bpf_func_t)(const void *, const struct bpf_insn *);
34487 
34488 enum {
34489 	BPF_MAP_VALUE_OFF_MAX = 8,
34490 	BPF_MAP_OFF_ARR_MAX = 10,
34491 };
34492 
34493 enum bpf_type_flag {
34494 	PTR_MAYBE_NULL = 256,
34495 	MEM_RDONLY = 512,
34496 	MEM_ALLOC = 1024,
34497 	MEM_USER = 2048,
34498 	MEM_PERCPU = 4096,
34499 	OBJ_RELEASE = 8192,
34500 	PTR_UNTRUSTED = 16384,
34501 	MEM_UNINIT = 32768,
34502 	DYNPTR_TYPE_LOCAL = 65536,
34503 	DYNPTR_TYPE_RINGBUF = 131072,
34504 	MEM_FIXED_SIZE = 262144,
34505 	__BPF_TYPE_FLAG_MAX = 262145,
34506 	__BPF_TYPE_LAST_FLAG = 262144,
34507 };
34508 
34509 enum bpf_cgroup_storage_type {
34510 	BPF_CGROUP_STORAGE_SHARED = 0,
34511 	BPF_CGROUP_STORAGE_PERCPU = 1,
34512 	__BPF_CGROUP_STORAGE_MAX = 2,
34513 };
34514 
34515 enum bpf_tramp_prog_type {
34516 	BPF_TRAMP_FENTRY = 0,
34517 	BPF_TRAMP_FEXIT = 1,
34518 	BPF_TRAMP_MODIFY_RETURN = 2,
34519 	BPF_TRAMP_MAX = 3,
34520 	BPF_TRAMP_REPLACE = 4,
34521 };
34522 
34523 struct ip_tunnel_key {
34524 	__be64 tun_id;
34525 	union {
34526 		struct {
34527 			__be32 src;
34528 			__be32 dst;
34529 		} ipv4;
34530 		struct {
34531 			struct in6_addr src;
34532 			struct in6_addr dst;
34533 		} ipv6;
34534 	} u;
34535 	__be16 tun_flags;
34536 	u8 tos;
34537 	u8 ttl;
34538 	__be32 label;
34539 	__be16 tp_src;
34540 	__be16 tp_dst;
34541 	__u8 flow_flags;
34542 };
34543 
34544 struct dst_cache_pcpu;
34545 
34546 struct dst_cache {
34547 	struct dst_cache_pcpu *cache;
34548 	long unsigned int reset_ts;
34549 };
34550 
34551 struct ip_tunnel_info {
34552 	struct ip_tunnel_key key;
34553 	struct dst_cache dst_cache;
34554 	u8 options_len;
34555 	u8 mode;
34556 };
34557 
34558 typedef unsigned int (*bpf_dispatcher_fn)(const void *, const struct bpf_insn *, unsigned int (*)(const void *, const struct bpf_insn *));
34559 
34560 struct phy_tdr_config {
34561 	u32 first;
34562 	u32 last;
34563 	u32 step;
34564 	s8 pair;
34565 };
34566 
34567 struct mdio_bus_stats {
34568 	u64_stats_t transfers;
34569 	u64_stats_t errors;
34570 	u64_stats_t writes;
34571 	u64_stats_t reads;
34572 	struct u64_stats_sync syncp;
34573 };
34574 
34575 struct mii_bus {
34576 	struct module *owner;
34577 	const char *name;
34578 	char id[61];
34579 	void *priv;
34580 	int (*read)(struct mii_bus *, int, int);
34581 	int (*write)(struct mii_bus *, int, int, u16);
34582 	int (*reset)(struct mii_bus *);
34583 	struct mdio_bus_stats stats[32];
34584 	struct mutex mdio_lock;
34585 	struct device *parent;
34586 	enum {
34587 		MDIOBUS_ALLOCATED = 1,
34588 		MDIOBUS_REGISTERED = 2,
34589 		MDIOBUS_UNREGISTERED = 3,
34590 		MDIOBUS_RELEASED = 4,
34591 	} state;
34592 	struct device dev;
34593 	struct mdio_device *mdio_map[32];
34594 	u32 phy_mask;
34595 	u32 phy_ignore_ta_mask;
34596 	int irq[32];
34597 	int reset_delay_us;
34598 	int reset_post_delay_us;
34599 	struct gpio_desc *reset_gpiod;
34600 	enum {
34601 		MDIOBUS_NO_CAP = 0,
34602 		MDIOBUS_C22 = 1,
34603 		MDIOBUS_C45 = 2,
34604 		MDIOBUS_C22_C45 = 3,
34605 	} probe_capabilities;
34606 	struct mutex shared_lock;
34607 	struct phy_package_shared *shared[32];
34608 };
34609 
34610 struct mdio_driver_common {
34611 	struct device_driver driver;
34612 	int flags;
34613 };
34614 
34615 struct mii_timestamper {
34616 	bool (*rxtstamp)(struct mii_timestamper *, struct sk_buff *, int);
34617 	void (*txtstamp)(struct mii_timestamper *, struct sk_buff *, int);
34618 	int (*hwtstamp)(struct mii_timestamper *, struct ifreq *);
34619 	void (*link_state)(struct mii_timestamper *, struct phy_device *);
34620 	int (*ts_info)(struct mii_timestamper *, struct ethtool_ts_info *);
34621 	struct device *device;
34622 };
34623 
34624 struct phy_package_shared {
34625 	int addr;
34626 	refcount_t refcnt;
34627 	long unsigned int flags;
34628 	size_t priv_size;
34629 	void *priv;
34630 };
34631 
34632 struct phy_driver {
34633 	struct mdio_driver_common mdiodrv;
34634 	u32 phy_id;
34635 	char *name;
34636 	u32 phy_id_mask;
34637 	const long unsigned int * const features;
34638 	u32 flags;
34639 	const void *driver_data;
34640 	int (*soft_reset)(struct phy_device *);
34641 	int (*config_init)(struct phy_device *);
34642 	int (*probe)(struct phy_device *);
34643 	int (*get_features)(struct phy_device *);
34644 	int (*suspend)(struct phy_device *);
34645 	int (*resume)(struct phy_device *);
34646 	int (*config_aneg)(struct phy_device *);
34647 	int (*aneg_done)(struct phy_device *);
34648 	int (*read_status)(struct phy_device *);
34649 	int (*config_intr)(struct phy_device *);
34650 	irqreturn_t (*handle_interrupt)(struct phy_device *);
34651 	void (*remove)(struct phy_device *);
34652 	int (*match_phy_device)(struct phy_device *);
34653 	int (*set_wol)(struct phy_device *, struct ethtool_wolinfo *);
34654 	void (*get_wol)(struct phy_device *, struct ethtool_wolinfo *);
34655 	void (*link_change_notify)(struct phy_device *);
34656 	int (*read_mmd)(struct phy_device *, int, u16);
34657 	int (*write_mmd)(struct phy_device *, int, u16, u16);
34658 	int (*read_page)(struct phy_device *);
34659 	int (*write_page)(struct phy_device *, int);
34660 	int (*module_info)(struct phy_device *, struct ethtool_modinfo *);
34661 	int (*module_eeprom)(struct phy_device *, struct ethtool_eeprom *, u8 *);
34662 	int (*cable_test_start)(struct phy_device *);
34663 	int (*cable_test_tdr_start)(struct phy_device *, const struct phy_tdr_config *);
34664 	int (*cable_test_get_status)(struct phy_device *, bool *);
34665 	int (*get_sset_count)(struct phy_device *);
34666 	void (*get_strings)(struct phy_device *, u8 *);
34667 	void (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
34668 	int (*get_tunable)(struct phy_device *, struct ethtool_tunable *, void *);
34669 	int (*set_tunable)(struct phy_device *, struct ethtool_tunable *, const void *);
34670 	int (*set_loopback)(struct phy_device *, bool);
34671 	int (*get_sqi)(struct phy_device *);
34672 	int (*get_sqi_max)(struct phy_device *);
34673 };
34674 
34675 enum devlink_rate_type {
34676 	DEVLINK_RATE_TYPE_LEAF = 0,
34677 	DEVLINK_RATE_TYPE_NODE = 1,
34678 };
34679 
34680 struct devlink_rate {
34681 	struct list_head list;
34682 	enum devlink_rate_type type;
34683 	struct devlink *devlink;
34684 	void *priv;
34685 	u64 tx_share;
34686 	u64 tx_max;
34687 	struct devlink_rate *parent;
34688 	union {
34689 		struct devlink_port *devlink_port;
34690 		struct {
34691 			char *name;
34692 			refcount_t refcnt;
34693 		};
34694 	};
34695 };
34696 
34697 struct frag_hdr {
34698 	__u8 nexthdr;
34699 	__u8 reserved;
34700 	__be16 frag_off;
34701 	__be32 identification;
34702 };
34703 
34704 struct fib_nh_exception {
34705 	struct fib_nh_exception *fnhe_next;
34706 	int fnhe_genid;
34707 	__be32 fnhe_daddr;
34708 	u32 fnhe_pmtu;
34709 	bool fnhe_mtu_locked;
34710 	__be32 fnhe_gw;
34711 	long unsigned int fnhe_expires;
34712 	struct rtable *fnhe_rth_input;
34713 	struct rtable *fnhe_rth_output;
34714 	long unsigned int fnhe_stamp;
34715 	struct callback_head rcu;
34716 };
34717 
34718 struct rtable {
34719 	struct dst_entry dst;
34720 	int rt_genid;
34721 	unsigned int rt_flags;
34722 	__u16 rt_type;
34723 	__u8 rt_is_input;
34724 	__u8 rt_uses_gateway;
34725 	int rt_iif;
34726 	u8 rt_gw_family;
34727 	union {
34728 		__be32 rt_gw4;
34729 		struct in6_addr rt_gw6;
34730 	};
34731 	u32 rt_mtu_locked: 1;
34732 	u32 rt_pmtu: 31;
34733 	struct list_head rt_uncached;
34734 	struct uncached_list *rt_uncached_list;
34735 };
34736 
34737 struct fnhe_hash_bucket {
34738 	struct fib_nh_exception *chain;
34739 };
34740 
34741 struct fib_info;
34742 
34743 struct fib_nh {
34744 	struct fib_nh_common nh_common;
34745 	struct hlist_node nh_hash;
34746 	struct fib_info *nh_parent;
34747 	__be32 nh_saddr;
34748 	int nh_saddr_genid;
34749 };
34750 
34751 struct fib_info {
34752 	struct hlist_node fib_hash;
34753 	struct hlist_node fib_lhash;
34754 	struct list_head nh_list;
34755 	struct net *fib_net;
34756 	refcount_t fib_treeref;
34757 	refcount_t fib_clntref;
34758 	unsigned int fib_flags;
34759 	unsigned char fib_dead;
34760 	unsigned char fib_protocol;
34761 	unsigned char fib_scope;
34762 	unsigned char fib_type;
34763 	__be32 fib_prefsrc;
34764 	u32 fib_tb_id;
34765 	u32 fib_priority;
34766 	struct dst_metrics *fib_metrics;
34767 	int fib_nhs;
34768 	bool fib_nh_is_v6;
34769 	bool nh_updated;
34770 	struct nexthop *nh;
34771 	struct callback_head rcu;
34772 	struct fib_nh fib_nh[0];
34773 };
34774 
34775 struct nh_info;
34776 
34777 struct nh_group;
34778 
34779 struct nexthop {
34780 	struct rb_node rb_node;
34781 	struct list_head fi_list;
34782 	struct list_head f6i_list;
34783 	struct list_head fdb_list;
34784 	struct list_head grp_list;
34785 	struct net *net;
34786 	u32 id;
34787 	u8 protocol;
34788 	u8 nh_flags;
34789 	bool is_group;
34790 	refcount_t refcnt;
34791 	struct callback_head rcu;
34792 	union {
34793 		struct nh_info *nh_info;
34794 		struct nh_group *nh_grp;
34795 	};
34796 };
34797 
34798 enum lwtunnel_encap_types {
34799 	LWTUNNEL_ENCAP_NONE = 0,
34800 	LWTUNNEL_ENCAP_MPLS = 1,
34801 	LWTUNNEL_ENCAP_IP = 2,
34802 	LWTUNNEL_ENCAP_ILA = 3,
34803 	LWTUNNEL_ENCAP_IP6 = 4,
34804 	LWTUNNEL_ENCAP_SEG6 = 5,
34805 	LWTUNNEL_ENCAP_BPF = 6,
34806 	LWTUNNEL_ENCAP_SEG6_LOCAL = 7,
34807 	LWTUNNEL_ENCAP_RPL = 8,
34808 	LWTUNNEL_ENCAP_IOAM6 = 9,
34809 	__LWTUNNEL_ENCAP_MAX = 10,
34810 };
34811 
34812 struct arphdr {
34813 	__be16 ar_hrd;
34814 	__be16 ar_pro;
34815 	unsigned char ar_hln;
34816 	unsigned char ar_pln;
34817 	__be16 ar_op;
34818 };
34819 
34820 struct rt6_exception_bucket {
34821 	struct hlist_head chain;
34822 	int depth;
34823 };
34824 
34825 struct nh_info {
34826 	struct hlist_node dev_hash;
34827 	struct nexthop *nh_parent;
34828 	u8 family;
34829 	bool reject_nh;
34830 	bool fdb_nh;
34831 	union {
34832 		struct fib_nh_common fib_nhc;
34833 		struct fib_nh fib_nh;
34834 		struct fib6_nh fib6_nh;
34835 	};
34836 };
34837 
34838 struct nh_grp_entry;
34839 
34840 struct nh_res_bucket {
34841 	struct nh_grp_entry *nh_entry;
34842 	atomic_long_t used_time;
34843 	long unsigned int migrated_time;
34844 	bool occupied;
34845 	u8 nh_flags;
34846 };
34847 
34848 struct nh_grp_entry {
34849 	struct nexthop *nh;
34850 	u8 weight;
34851 	union {
34852 		struct {
34853 			atomic_t upper_bound;
34854 		} hthr;
34855 		struct {
34856 			struct list_head uw_nh_entry;
34857 			u16 count_buckets;
34858 			u16 wants_buckets;
34859 		} res;
34860 	};
34861 	struct list_head nh_list;
34862 	struct nexthop *nh_parent;
34863 };
34864 
34865 struct nh_res_table {
34866 	struct net *net;
34867 	u32 nhg_id;
34868 	struct delayed_work upkeep_dw;
34869 	struct list_head uw_nh_entries;
34870 	long unsigned int unbalanced_since;
34871 	u32 idle_timer;
34872 	u32 unbalanced_timer;
34873 	u16 num_nh_buckets;
34874 	struct nh_res_bucket nh_buckets[0];
34875 };
34876 
34877 struct nh_group {
34878 	struct nh_group *spare;
34879 	u16 num_nh;
34880 	bool is_multipath;
34881 	bool hash_threshold;
34882 	bool resilient;
34883 	bool fdb_nh;
34884 	bool has_v4;
34885 	struct nh_res_table *res_table;
34886 	struct nh_grp_entry nh_entries[0];
34887 };
34888 
34889 enum metadata_type {
34890 	METADATA_IP_TUNNEL = 0,
34891 	METADATA_HW_PORT_MUX = 1,
34892 };
34893 
34894 struct hw_port_info {
34895 	struct net_device *lower_dev;
34896 	u32 port_id;
34897 };
34898 
34899 struct metadata_dst {
34900 	struct dst_entry dst;
34901 	enum metadata_type type;
34902 	union {
34903 		struct ip_tunnel_info tun_info;
34904 		struct hw_port_info port_info;
34905 	} u;
34906 };
34907 
34908 struct gre_base_hdr {
34909 	__be16 flags;
34910 	__be16 protocol;
34911 };
34912 
34913 struct gre_full_hdr {
34914 	struct gre_base_hdr fixed_header;
34915 	__be16 csum;
34916 	__be16 reserved1;
34917 	__be32 key;
34918 	__be32 seq;
34919 };
34920 
34921 struct pptp_gre_header {
34922 	struct gre_base_hdr gre_hd;
34923 	__be16 payload_len;
34924 	__be16 call_id;
34925 	__be32 seq;
34926 	__be32 ack;
34927 };
34928 
34929 struct tipc_basic_hdr {
34930 	__be32 w[4];
34931 };
34932 
34933 struct icmphdr {
34934 	__u8 type;
34935 	__u8 code;
34936 	__sum16 checksum;
34937 	union {
34938 		struct {
34939 			__be16 id;
34940 			__be16 sequence;
34941 		} echo;
34942 		__be32 gateway;
34943 		struct {
34944 			__be16 __unused;
34945 			__be16 mtu;
34946 		} frag;
34947 		__u8 reserved[4];
34948 	} un;
34949 };
34950 
34951 enum sctp_msg_flags {
34952 	MSG_NOTIFICATION = 32768,
34953 };
34954 
34955 enum dccp_state {
34956 	DCCP_OPEN = 1,
34957 	DCCP_REQUESTING = 2,
34958 	DCCP_LISTEN = 10,
34959 	DCCP_RESPOND = 3,
34960 	DCCP_ACTIVE_CLOSEREQ = 4,
34961 	DCCP_PASSIVE_CLOSE = 8,
34962 	DCCP_CLOSING = 11,
34963 	DCCP_TIME_WAIT = 6,
34964 	DCCP_CLOSED = 7,
34965 	DCCP_NEW_SYN_RECV = 12,
34966 	DCCP_PARTOPEN = 13,
34967 	DCCP_PASSIVE_CLOSEREQ = 14,
34968 	DCCP_MAX_STATES = 15,
34969 };
34970 
34971 enum l2tp_debug_flags {
34972 	L2TP_MSG_DEBUG = 1,
34973 	L2TP_MSG_CONTROL = 2,
34974 	L2TP_MSG_SEQ = 4,
34975 	L2TP_MSG_DATA = 8,
34976 };
34977 
34978 struct pppoe_tag {
34979 	__be16 tag_type;
34980 	__be16 tag_len;
34981 	char tag_data[0];
34982 };
34983 
34984 struct pppoe_hdr {
34985 	__u8 type: 4;
34986 	__u8 ver: 4;
34987 	__u8 code;
34988 	__be16 sid;
34989 	__be16 length;
34990 	struct pppoe_tag tag[0];
34991 };
34992 
34993 struct hsr_tag {
34994 	__be16 path_and_LSDU_size;
34995 	__be16 sequence_nr;
34996 	__be16 encap_proto;
34997 };
34998 
34999 struct mpls_label {
35000 	__be32 entry;
35001 };
35002 
35003 struct clock_identity {
35004 	u8 id[8];
35005 };
35006 
35007 struct port_identity {
35008 	struct clock_identity clock_identity;
35009 	__be16 port_number;
35010 };
35011 
35012 struct ptp_header {
35013 	u8 tsmt;
35014 	u8 ver;
35015 	__be16 message_length;
35016 	u8 domain_number;
35017 	u8 reserved1;
35018 	u8 flag_field[2];
35019 	__be64 correction;
35020 	__be32 reserved2;
35021 	struct port_identity source_port_identity;
35022 	__be16 sequence_id;
35023 	u8 control;
35024 	u8 log_message_interval;
35025 } __attribute__((packed));
35026 
35027 enum batadv_packettype {
35028 	BATADV_IV_OGM = 0,
35029 	BATADV_BCAST = 1,
35030 	BATADV_CODED = 2,
35031 	BATADV_ELP = 3,
35032 	BATADV_OGM2 = 4,
35033 	BATADV_UNICAST = 64,
35034 	BATADV_UNICAST_FRAG = 65,
35035 	BATADV_UNICAST_4ADDR = 66,
35036 	BATADV_ICMP = 67,
35037 	BATADV_UNICAST_TVLV = 68,
35038 };
35039 
35040 struct batadv_unicast_packet {
35041 	__u8 packet_type;
35042 	__u8 version;
35043 	__u8 ttl;
35044 	__u8 ttvn;
35045 	__u8 dest[6];
35046 };
35047 
35048 struct nf_hook_state {
35049 	u8 hook;
35050 	u8 pf;
35051 	struct net_device *in;
35052 	struct net_device *out;
35053 	struct sock *sk;
35054 	struct net *net;
35055 	int (*okfn)(struct net *, struct sock *, struct sk_buff *);
35056 };
35057 
35058 union nf_conntrack_man_proto {
35059 	__be16 all;
35060 	struct {
35061 		__be16 port;
35062 	} tcp;
35063 	struct {
35064 		__be16 port;
35065 	} udp;
35066 	struct {
35067 		__be16 id;
35068 	} icmp;
35069 	struct {
35070 		__be16 port;
35071 	} dccp;
35072 	struct {
35073 		__be16 port;
35074 	} sctp;
35075 	struct {
35076 		__be16 key;
35077 	} gre;
35078 };
35079 
35080 struct nf_conntrack_man {
35081 	union nf_inet_addr u3;
35082 	union nf_conntrack_man_proto u;
35083 	u_int16_t l3num;
35084 };
35085 
35086 struct nf_conntrack_tuple {
35087 	struct nf_conntrack_man src;
35088 	struct {
35089 		union nf_inet_addr u3;
35090 		union {
35091 			__be16 all;
35092 			struct {
35093 				__be16 port;
35094 			} tcp;
35095 			struct {
35096 				__be16 port;
35097 			} udp;
35098 			struct {
35099 				u_int8_t type;
35100 				u_int8_t code;
35101 			} icmp;
35102 			struct {
35103 				__be16 port;
35104 			} dccp;
35105 			struct {
35106 				__be16 port;
35107 			} sctp;
35108 			struct {
35109 				__be16 key;
35110 			} gre;
35111 		} u;
35112 		u_int8_t protonum;
35113 		u_int8_t dir;
35114 	} dst;
35115 };
35116 
35117 struct nf_conntrack_tuple_hash {
35118 	struct hlist_nulls_node hnnode;
35119 	struct nf_conntrack_tuple tuple;
35120 };
35121 
35122 struct nf_ct_dccp {
35123 	u_int8_t role[2];
35124 	u_int8_t state;
35125 	u_int8_t last_pkt;
35126 	u_int8_t last_dir;
35127 	u_int64_t handshake_seq;
35128 };
35129 
35130 enum sctp_conntrack {
35131 	SCTP_CONNTRACK_NONE = 0,
35132 	SCTP_CONNTRACK_CLOSED = 1,
35133 	SCTP_CONNTRACK_COOKIE_WAIT = 2,
35134 	SCTP_CONNTRACK_COOKIE_ECHOED = 3,
35135 	SCTP_CONNTRACK_ESTABLISHED = 4,
35136 	SCTP_CONNTRACK_SHUTDOWN_SENT = 5,
35137 	SCTP_CONNTRACK_SHUTDOWN_RECD = 6,
35138 	SCTP_CONNTRACK_SHUTDOWN_ACK_SENT = 7,
35139 	SCTP_CONNTRACK_HEARTBEAT_SENT = 8,
35140 	SCTP_CONNTRACK_HEARTBEAT_ACKED = 9,
35141 	SCTP_CONNTRACK_MAX = 10,
35142 };
35143 
35144 struct ip_ct_sctp {
35145 	enum sctp_conntrack state;
35146 	__be32 vtag[2];
35147 	u8 last_dir;
35148 	u8 flags;
35149 };
35150 
35151 struct nf_ct_udp {
35152 	long unsigned int stream_ts;
35153 };
35154 
35155 struct nf_ct_gre {
35156 	unsigned int stream_timeout;
35157 	unsigned int timeout;
35158 };
35159 
35160 union nf_conntrack_proto {
35161 	struct nf_ct_dccp dccp;
35162 	struct ip_ct_sctp sctp;
35163 	struct ip_ct_tcp tcp;
35164 	struct nf_ct_udp udp;
35165 	struct nf_ct_gre gre;
35166 	unsigned int tmpl_padto;
35167 };
35168 
35169 struct nf_ct_ext;
35170 
35171 struct nf_conn {
35172 	struct nf_conntrack ct_general;
35173 	spinlock_t lock;
35174 	u32 timeout;
35175 	struct nf_conntrack_tuple_hash tuplehash[2];
35176 	long unsigned int status;
35177 	possible_net_t ct_net;
35178 	struct hlist_node nat_bysource;
35179 	struct {} __nfct_init_offset;
35180 	struct nf_conn *master;
35181 	struct nf_ct_ext *ext;
35182 	union nf_conntrack_proto proto;
35183 };
35184 
35185 enum ip_conntrack_dir {
35186 	IP_CT_DIR_ORIGINAL = 0,
35187 	IP_CT_DIR_REPLY = 1,
35188 	IP_CT_DIR_MAX = 2,
35189 };
35190 
35191 struct nf_ct_ext {
35192 	u8 offset[4];
35193 	u8 len;
35194 	unsigned int gen_id;
35195 	long: 0;
35196 	char data[0];
35197 };
35198 
35199 enum nf_ct_ext_id {
35200 	NF_CT_EXT_HELPER = 0,
35201 	NF_CT_EXT_NAT = 1,
35202 	NF_CT_EXT_SEQADJ = 2,
35203 	NF_CT_EXT_ACCT = 3,
35204 	NF_CT_EXT_NUM = 4,
35205 };
35206 
35207 struct nf_conn_labels {
35208 	long unsigned int bits[2];
35209 };
35210 
35211 struct _flow_keys_digest_data {
35212 	__be16 n_proto;
35213 	u8 ip_proto;
35214 	u8 padding;
35215 	__be32 ports;
35216 	__be32 src;
35217 	__be32 dst;
35218 };
35219 
35220 enum skb_drop_reason {
35221 	SKB_NOT_DROPPED_YET = 0,
35222 	SKB_DROP_REASON_NOT_SPECIFIED = 1,
35223 	SKB_DROP_REASON_NO_SOCKET = 2,
35224 	SKB_DROP_REASON_PKT_TOO_SMALL = 3,
35225 	SKB_DROP_REASON_TCP_CSUM = 4,
35226 	SKB_DROP_REASON_SOCKET_FILTER = 5,
35227 	SKB_DROP_REASON_UDP_CSUM = 6,
35228 	SKB_DROP_REASON_NETFILTER_DROP = 7,
35229 	SKB_DROP_REASON_OTHERHOST = 8,
35230 	SKB_DROP_REASON_IP_CSUM = 9,
35231 	SKB_DROP_REASON_IP_INHDR = 10,
35232 	SKB_DROP_REASON_IP_RPFILTER = 11,
35233 	SKB_DROP_REASON_UNICAST_IN_L2_MULTICAST = 12,
35234 	SKB_DROP_REASON_XFRM_POLICY = 13,
35235 	SKB_DROP_REASON_IP_NOPROTO = 14,
35236 	SKB_DROP_REASON_SOCKET_RCVBUFF = 15,
35237 	SKB_DROP_REASON_PROTO_MEM = 16,
35238 	SKB_DROP_REASON_TCP_MD5NOTFOUND = 17,
35239 	SKB_DROP_REASON_TCP_MD5UNEXPECTED = 18,
35240 	SKB_DROP_REASON_TCP_MD5FAILURE = 19,
35241 	SKB_DROP_REASON_SOCKET_BACKLOG = 20,
35242 	SKB_DROP_REASON_TCP_FLAGS = 21,
35243 	SKB_DROP_REASON_TCP_ZEROWINDOW = 22,
35244 	SKB_DROP_REASON_TCP_OLD_DATA = 23,
35245 	SKB_DROP_REASON_TCP_OVERWINDOW = 24,
35246 	SKB_DROP_REASON_TCP_OFOMERGE = 25,
35247 	SKB_DROP_REASON_TCP_RFC7323_PAWS = 26,
35248 	SKB_DROP_REASON_TCP_INVALID_SEQUENCE = 27,
35249 	SKB_DROP_REASON_TCP_RESET = 28,
35250 	SKB_DROP_REASON_TCP_INVALID_SYN = 29,
35251 	SKB_DROP_REASON_TCP_CLOSE = 30,
35252 	SKB_DROP_REASON_TCP_FASTOPEN = 31,
35253 	SKB_DROP_REASON_TCP_OLD_ACK = 32,
35254 	SKB_DROP_REASON_TCP_TOO_OLD_ACK = 33,
35255 	SKB_DROP_REASON_TCP_ACK_UNSENT_DATA = 34,
35256 	SKB_DROP_REASON_TCP_OFO_QUEUE_PRUNE = 35,
35257 	SKB_DROP_REASON_TCP_OFO_DROP = 36,
35258 	SKB_DROP_REASON_IP_OUTNOROUTES = 37,
35259 	SKB_DROP_REASON_BPF_CGROUP_EGRESS = 38,
35260 	SKB_DROP_REASON_IPV6DISABLED = 39,
35261 	SKB_DROP_REASON_NEIGH_CREATEFAIL = 40,
35262 	SKB_DROP_REASON_NEIGH_FAILED = 41,
35263 	SKB_DROP_REASON_NEIGH_QUEUEFULL = 42,
35264 	SKB_DROP_REASON_NEIGH_DEAD = 43,
35265 	SKB_DROP_REASON_TC_EGRESS = 44,
35266 	SKB_DROP_REASON_QDISC_DROP = 45,
35267 	SKB_DROP_REASON_CPU_BACKLOG = 46,
35268 	SKB_DROP_REASON_XDP = 47,
35269 	SKB_DROP_REASON_TC_INGRESS = 48,
35270 	SKB_DROP_REASON_UNHANDLED_PROTO = 49,
35271 	SKB_DROP_REASON_SKB_CSUM = 50,
35272 	SKB_DROP_REASON_SKB_GSO_SEG = 51,
35273 	SKB_DROP_REASON_SKB_UCOPY_FAULT = 52,
35274 	SKB_DROP_REASON_DEV_HDR = 53,
35275 	SKB_DROP_REASON_DEV_READY = 54,
35276 	SKB_DROP_REASON_FULL_RING = 55,
35277 	SKB_DROP_REASON_NOMEM = 56,
35278 	SKB_DROP_REASON_HDR_TRUNC = 57,
35279 	SKB_DROP_REASON_TAP_FILTER = 58,
35280 	SKB_DROP_REASON_TAP_TXFILTER = 59,
35281 	SKB_DROP_REASON_ICMP_CSUM = 60,
35282 	SKB_DROP_REASON_INVALID_PROTO = 61,
35283 	SKB_DROP_REASON_IP_INADDRERRORS = 62,
35284 	SKB_DROP_REASON_IP_INNOROUTES = 63,
35285 	SKB_DROP_REASON_PKT_TOO_BIG = 64,
35286 	SKB_DROP_REASON_MAX = 65,
35287 };
35288 
35289 enum {
35290 	SKBFL_ZEROCOPY_ENABLE = 1,
35291 	SKBFL_SHARED_FRAG = 2,
35292 	SKBFL_PURE_ZEROCOPY = 4,
35293 	SKBFL_DONT_ORPHAN = 8,
35294 	SKBFL_MANAGED_FRAG_REFS = 16,
35295 };
35296 
35297 enum {
35298 	SKB_FCLONE_UNAVAILABLE = 0,
35299 	SKB_FCLONE_ORIG = 1,
35300 	SKB_FCLONE_CLONE = 2,
35301 };
35302 
35303 enum gro_result {
35304 	GRO_MERGED = 0,
35305 	GRO_MERGED_FREE = 1,
35306 	GRO_HELD = 2,
35307 	GRO_NORMAL = 3,
35308 	GRO_CONSUMED = 4,
35309 };
35310 
35311 typedef enum gro_result gro_result_t;
35312 
35313 struct offload_callbacks {
35314 	struct sk_buff * (*gso_segment)(struct sk_buff *, netdev_features_t);
35315 	struct sk_buff * (*gro_receive)(struct list_head *, struct sk_buff *);
35316 	int (*gro_complete)(struct sk_buff *, int);
35317 };
35318 
35319 struct packet_offload {
35320 	__be16 type;
35321 	u16 priority;
35322 	struct offload_callbacks callbacks;
35323 	struct list_head list;
35324 };
35325 
35326 struct udp_hslot;
35327 
35328 struct udp_table {
35329 	struct udp_hslot *hash;
35330 	struct udp_hslot *hash2;
35331 	unsigned int mask;
35332 	unsigned int log;
35333 };
35334 
35335 struct udp_hslot {
35336 	struct hlist_head head;
35337 	int count;
35338 	spinlock_t lock;
35339 };
35340 
35341 struct napi_gro_cb {
35342 	void *frag0;
35343 	unsigned int frag0_len;
35344 	int data_offset;
35345 	u16 flush;
35346 	u16 flush_id;
35347 	u16 count;
35348 	u16 proto;
35349 	long unsigned int age;
35350 	union {
35351 		struct {
35352 			u16 gro_remcsum_start;
35353 			u8 same_flow: 1;
35354 			u8 encap_mark: 1;
35355 			u8 csum_valid: 1;
35356 			u8 csum_cnt: 3;
35357 			u8 free: 2;
35358 			u8 is_ipv6: 1;
35359 			u8 is_fou: 1;
35360 			u8 is_atomic: 1;
35361 			u8 recursion_counter: 4;
35362 			u8 is_flist: 1;
35363 		};
35364 		struct {
35365 			u16 gro_remcsum_start;
35366 			u8 same_flow: 1;
35367 			u8 encap_mark: 1;
35368 			u8 csum_valid: 1;
35369 			u8 csum_cnt: 3;
35370 			u8 free: 2;
35371 			u8 is_ipv6: 1;
35372 			u8 is_fou: 1;
35373 			u8 is_atomic: 1;
35374 			u8 recursion_counter: 4;
35375 			u8 is_flist: 1;
35376 		} zeroed;
35377 	};
35378 	__wsum csum;
35379 	struct sk_buff *last;
35380 };
35381 
35382 struct flowi4 {
35383 	struct flowi_common __fl_common;
35384 	__be32 saddr;
35385 	__be32 daddr;
35386 	union flowi_uli uli;
35387 };
35388 
35389 struct flowidn {
35390 	struct flowi_common __fl_common;
35391 	__le16 daddr;
35392 	__le16 saddr;
35393 	union flowi_uli uli;
35394 };
35395 
35396 struct flowi {
35397 	union {
35398 		struct flowi_common __fl_common;
35399 		struct flowi4 ip4;
35400 		struct flowi6 ip6;
35401 		struct flowidn dn;
35402 	} u;
35403 };
35404 
35405 typedef union {
35406 	__be32 a4;
35407 	__be32 a6[4];
35408 	struct in6_addr in6;
35409 } xfrm_address_t;
35410 
35411 struct xfrm_id {
35412 	xfrm_address_t daddr;
35413 	__be32 spi;
35414 	__u8 proto;
35415 };
35416 
35417 struct xfrm_sec_ctx {
35418 	__u8 ctx_doi;
35419 	__u8 ctx_alg;
35420 	__u16 ctx_len;
35421 	__u32 ctx_sid;
35422 	char ctx_str[0];
35423 };
35424 
35425 struct xfrm_selector {
35426 	xfrm_address_t daddr;
35427 	xfrm_address_t saddr;
35428 	__be16 dport;
35429 	__be16 dport_mask;
35430 	__be16 sport;
35431 	__be16 sport_mask;
35432 	__u16 family;
35433 	__u8 prefixlen_d;
35434 	__u8 prefixlen_s;
35435 	__u8 proto;
35436 	int ifindex;
35437 	__kernel_uid32_t user;
35438 };
35439 
35440 struct xfrm_lifetime_cfg {
35441 	__u64 soft_byte_limit;
35442 	__u64 hard_byte_limit;
35443 	__u64 soft_packet_limit;
35444 	__u64 hard_packet_limit;
35445 	__u64 soft_add_expires_seconds;
35446 	__u64 hard_add_expires_seconds;
35447 	__u64 soft_use_expires_seconds;
35448 	__u64 hard_use_expires_seconds;
35449 };
35450 
35451 struct xfrm_lifetime_cur {
35452 	__u64 bytes;
35453 	__u64 packets;
35454 	__u64 add_time;
35455 	__u64 use_time;
35456 };
35457 
35458 struct xfrm_replay_state {
35459 	__u32 oseq;
35460 	__u32 seq;
35461 	__u32 bitmap;
35462 };
35463 
35464 struct xfrm_replay_state_esn {
35465 	unsigned int bmp_len;
35466 	__u32 oseq;
35467 	__u32 seq;
35468 	__u32 oseq_hi;
35469 	__u32 seq_hi;
35470 	__u32 replay_window;
35471 	__u32 bmp[0];
35472 };
35473 
35474 struct xfrm_algo {
35475 	char alg_name[64];
35476 	unsigned int alg_key_len;
35477 	char alg_key[0];
35478 };
35479 
35480 struct xfrm_algo_auth {
35481 	char alg_name[64];
35482 	unsigned int alg_key_len;
35483 	unsigned int alg_trunc_len;
35484 	char alg_key[0];
35485 };
35486 
35487 struct xfrm_algo_aead {
35488 	char alg_name[64];
35489 	unsigned int alg_key_len;
35490 	unsigned int alg_icv_len;
35491 	char alg_key[0];
35492 };
35493 
35494 struct xfrm_stats {
35495 	__u32 replay_window;
35496 	__u32 replay;
35497 	__u32 integrity_failed;
35498 };
35499 
35500 enum {
35501 	XFRM_POLICY_TYPE_MAIN = 0,
35502 	XFRM_POLICY_TYPE_SUB = 1,
35503 	XFRM_POLICY_TYPE_MAX = 2,
35504 	XFRM_POLICY_TYPE_ANY = 255,
35505 };
35506 
35507 enum {
35508 	XFRM_MSG_BASE = 16,
35509 	XFRM_MSG_NEWSA = 16,
35510 	XFRM_MSG_DELSA = 17,
35511 	XFRM_MSG_GETSA = 18,
35512 	XFRM_MSG_NEWPOLICY = 19,
35513 	XFRM_MSG_DELPOLICY = 20,
35514 	XFRM_MSG_GETPOLICY = 21,
35515 	XFRM_MSG_ALLOCSPI = 22,
35516 	XFRM_MSG_ACQUIRE = 23,
35517 	XFRM_MSG_EXPIRE = 24,
35518 	XFRM_MSG_UPDPOLICY = 25,
35519 	XFRM_MSG_UPDSA = 26,
35520 	XFRM_MSG_POLEXPIRE = 27,
35521 	XFRM_MSG_FLUSHSA = 28,
35522 	XFRM_MSG_FLUSHPOLICY = 29,
35523 	XFRM_MSG_NEWAE = 30,
35524 	XFRM_MSG_GETAE = 31,
35525 	XFRM_MSG_REPORT = 32,
35526 	XFRM_MSG_MIGRATE = 33,
35527 	XFRM_MSG_NEWSADINFO = 34,
35528 	XFRM_MSG_GETSADINFO = 35,
35529 	XFRM_MSG_NEWSPDINFO = 36,
35530 	XFRM_MSG_GETSPDINFO = 37,
35531 	XFRM_MSG_MAPPING = 38,
35532 	XFRM_MSG_SETDEFAULT = 39,
35533 	XFRM_MSG_GETDEFAULT = 40,
35534 	__XFRM_MSG_MAX = 41,
35535 };
35536 
35537 struct xfrm_encap_tmpl {
35538 	__u16 encap_type;
35539 	__be16 encap_sport;
35540 	__be16 encap_dport;
35541 	xfrm_address_t encap_oa;
35542 };
35543 
35544 enum xfrm_attr_type_t {
35545 	XFRMA_UNSPEC = 0,
35546 	XFRMA_ALG_AUTH = 1,
35547 	XFRMA_ALG_CRYPT = 2,
35548 	XFRMA_ALG_COMP = 3,
35549 	XFRMA_ENCAP = 4,
35550 	XFRMA_TMPL = 5,
35551 	XFRMA_SA = 6,
35552 	XFRMA_POLICY = 7,
35553 	XFRMA_SEC_CTX = 8,
35554 	XFRMA_LTIME_VAL = 9,
35555 	XFRMA_REPLAY_VAL = 10,
35556 	XFRMA_REPLAY_THRESH = 11,
35557 	XFRMA_ETIMER_THRESH = 12,
35558 	XFRMA_SRCADDR = 13,
35559 	XFRMA_COADDR = 14,
35560 	XFRMA_LASTUSED = 15,
35561 	XFRMA_POLICY_TYPE = 16,
35562 	XFRMA_MIGRATE = 17,
35563 	XFRMA_ALG_AEAD = 18,
35564 	XFRMA_KMADDRESS = 19,
35565 	XFRMA_ALG_AUTH_TRUNC = 20,
35566 	XFRMA_MARK = 21,
35567 	XFRMA_TFCPAD = 22,
35568 	XFRMA_REPLAY_ESN_VAL = 23,
35569 	XFRMA_SA_EXTRA_FLAGS = 24,
35570 	XFRMA_PROTO = 25,
35571 	XFRMA_ADDRESS_FILTER = 26,
35572 	XFRMA_PAD = 27,
35573 	XFRMA_OFFLOAD_DEV = 28,
35574 	XFRMA_SET_MARK = 29,
35575 	XFRMA_SET_MARK_MASK = 30,
35576 	XFRMA_IF_ID = 31,
35577 	XFRMA_MTIMER_THRESH = 32,
35578 	__XFRMA_MAX = 33,
35579 };
35580 
35581 struct xfrm_mark {
35582 	__u32 v;
35583 	__u32 m;
35584 };
35585 
35586 struct xfrm_address_filter {
35587 	xfrm_address_t saddr;
35588 	xfrm_address_t daddr;
35589 	__u16 family;
35590 	__u8 splen;
35591 	__u8 dplen;
35592 };
35593 
35594 struct tc_ratespec {
35595 	unsigned char cell_log;
35596 	__u8 linklayer;
35597 	short unsigned int overhead;
35598 	short int cell_align;
35599 	short unsigned int mpu;
35600 	__u32 rate;
35601 };
35602 
35603 struct tc_prio_qopt {
35604 	int bands;
35605 	__u8 priomap[16];
35606 };
35607 
35608 enum {
35609 	TCA_UNSPEC = 0,
35610 	TCA_KIND = 1,
35611 	TCA_OPTIONS = 2,
35612 	TCA_STATS = 3,
35613 	TCA_XSTATS = 4,
35614 	TCA_RATE = 5,
35615 	TCA_FCNT = 6,
35616 	TCA_STATS2 = 7,
35617 	TCA_STAB = 8,
35618 	TCA_PAD = 9,
35619 	TCA_DUMP_INVISIBLE = 10,
35620 	TCA_CHAIN = 11,
35621 	TCA_HW_OFFLOAD = 12,
35622 	TCA_INGRESS_BLOCK = 13,
35623 	TCA_EGRESS_BLOCK = 14,
35624 	TCA_DUMP_FLAGS = 15,
35625 	__TCA_MAX = 16,
35626 };
35627 
35628 struct skb_array {
35629 	struct ptr_ring ring;
35630 };
35631 
35632 enum qdisc_state_t {
35633 	__QDISC_STATE_SCHED = 0,
35634 	__QDISC_STATE_DEACTIVATED = 1,
35635 	__QDISC_STATE_MISSED = 2,
35636 	__QDISC_STATE_DRAINING = 3,
35637 };
35638 
35639 enum qdisc_state2_t {
35640 	__QDISC_STATE2_RUNNING = 0,
35641 };
35642 
35643 struct qdisc_walker {
35644 	int stop;
35645 	int skip;
35646 	int count;
35647 	int (*fn)(struct Qdisc *, long unsigned int, struct qdisc_walker *);
35648 };
35649 
35650 struct qdisc_skb_cb {
35651 	struct {
35652 		unsigned int pkt_len;
35653 		u16 slave_dev_queue_mapping;
35654 		u16 tc_classid;
35655 	};
35656 	unsigned char data[20];
35657 };
35658 
35659 struct psched_ratecfg {
35660 	u64 rate_bytes_ps;
35661 	u32 mult;
35662 	u16 overhead;
35663 	u16 mpu;
35664 	u8 linklayer;
35665 	u8 shift;
35666 };
35667 
35668 struct psched_pktrate {
35669 	u64 rate_pkts_ps;
35670 	u32 mult;
35671 	u8 shift;
35672 };
35673 
35674 struct mini_Qdisc_pair {
35675 	struct mini_Qdisc miniq1;
35676 	struct mini_Qdisc miniq2;
35677 	struct mini_Qdisc **p_miniq;
35678 };
35679 
35680 struct xfrm_state_walk {
35681 	struct list_head all;
35682 	u8 state;
35683 	u8 dying;
35684 	u8 proto;
35685 	u32 seq;
35686 	struct xfrm_address_filter *filter;
35687 };
35688 
35689 enum xfrm_replay_mode {
35690 	XFRM_REPLAY_MODE_LEGACY = 0,
35691 	XFRM_REPLAY_MODE_BMP = 1,
35692 	XFRM_REPLAY_MODE_ESN = 2,
35693 };
35694 
35695 struct xfrm_dev_offload {
35696 	struct net_device *dev;
35697 	netdevice_tracker dev_tracker;
35698 	struct net_device *real_dev;
35699 	long unsigned int offload_handle;
35700 	u8 dir: 2;
35701 };
35702 
35703 struct xfrm_mode {
35704 	u8 encap;
35705 	u8 family;
35706 	u8 flags;
35707 };
35708 
35709 struct xfrm_type;
35710 
35711 struct xfrm_type_offload;
35712 
35713 struct xfrm_state {
35714 	possible_net_t xs_net;
35715 	union {
35716 		struct hlist_node gclist;
35717 		struct hlist_node bydst;
35718 	};
35719 	struct hlist_node bysrc;
35720 	struct hlist_node byspi;
35721 	struct hlist_node byseq;
35722 	refcount_t refcnt;
35723 	spinlock_t lock;
35724 	struct xfrm_id id;
35725 	struct xfrm_selector sel;
35726 	struct xfrm_mark mark;
35727 	u32 if_id;
35728 	u32 tfcpad;
35729 	u32 genid;
35730 	struct xfrm_state_walk km;
35731 	struct {
35732 		u32 reqid;
35733 		u8 mode;
35734 		u8 replay_window;
35735 		u8 aalgo;
35736 		u8 ealgo;
35737 		u8 calgo;
35738 		u8 flags;
35739 		u16 family;
35740 		xfrm_address_t saddr;
35741 		int header_len;
35742 		int trailer_len;
35743 		u32 extra_flags;
35744 		struct xfrm_mark smark;
35745 	} props;
35746 	struct xfrm_lifetime_cfg lft;
35747 	struct xfrm_algo_auth *aalg;
35748 	struct xfrm_algo *ealg;
35749 	struct xfrm_algo *calg;
35750 	struct xfrm_algo_aead *aead;
35751 	const char *geniv;
35752 	__be16 new_mapping_sport;
35753 	u32 new_mapping;
35754 	u32 mapping_maxage;
35755 	struct xfrm_encap_tmpl *encap;
35756 	struct sock *encap_sk;
35757 	xfrm_address_t *coaddr;
35758 	struct xfrm_state *tunnel;
35759 	atomic_t tunnel_users;
35760 	struct xfrm_replay_state replay;
35761 	struct xfrm_replay_state_esn *replay_esn;
35762 	struct xfrm_replay_state preplay;
35763 	struct xfrm_replay_state_esn *preplay_esn;
35764 	enum xfrm_replay_mode repl_mode;
35765 	u32 xflags;
35766 	u32 replay_maxage;
35767 	u32 replay_maxdiff;
35768 	struct timer_list rtimer;
35769 	struct xfrm_stats stats;
35770 	struct xfrm_lifetime_cur curlft;
35771 	struct hrtimer mtimer;
35772 	struct xfrm_dev_offload xso;
35773 	long int saved_tmo;
35774 	time64_t lastused;
35775 	struct page_frag xfrag;
35776 	const struct xfrm_type *type;
35777 	struct xfrm_mode inner_mode;
35778 	struct xfrm_mode inner_mode_iaf;
35779 	struct xfrm_mode outer_mode;
35780 	const struct xfrm_type_offload *type_offload;
35781 	struct xfrm_sec_ctx *security;
35782 	void *data;
35783 };
35784 
35785 struct xfrm_policy_walk_entry {
35786 	struct list_head all;
35787 	u8 dead;
35788 };
35789 
35790 struct xfrm_policy_queue {
35791 	struct sk_buff_head hold_queue;
35792 	struct timer_list hold_timer;
35793 	long unsigned int timeout;
35794 };
35795 
35796 struct xfrm_tmpl {
35797 	struct xfrm_id id;
35798 	xfrm_address_t saddr;
35799 	short unsigned int encap_family;
35800 	u32 reqid;
35801 	u8 mode;
35802 	u8 share;
35803 	u8 optional;
35804 	u8 allalgs;
35805 	u32 aalgos;
35806 	u32 ealgos;
35807 	u32 calgos;
35808 };
35809 
35810 struct xfrm_policy {
35811 	possible_net_t xp_net;
35812 	struct hlist_node bydst;
35813 	struct hlist_node byidx;
35814 	rwlock_t lock;
35815 	refcount_t refcnt;
35816 	u32 pos;
35817 	struct timer_list timer;
35818 	atomic_t genid;
35819 	u32 priority;
35820 	u32 index;
35821 	u32 if_id;
35822 	struct xfrm_mark mark;
35823 	struct xfrm_selector selector;
35824 	struct xfrm_lifetime_cfg lft;
35825 	struct xfrm_lifetime_cur curlft;
35826 	struct xfrm_policy_walk_entry walk;
35827 	struct xfrm_policy_queue polq;
35828 	bool bydst_reinsert;
35829 	u8 type;
35830 	u8 action;
35831 	u8 flags;
35832 	u8 xfrm_nr;
35833 	u16 family;
35834 	struct xfrm_sec_ctx *security;
35835 	struct xfrm_tmpl xfrm_vec[6];
35836 	struct hlist_node bydst_inexact_list;
35837 	struct callback_head rcu;
35838 };
35839 
35840 struct xfrm_type {
35841 	struct module *owner;
35842 	u8 proto;
35843 	u8 flags;
35844 	int (*init_state)(struct xfrm_state *);
35845 	void (*destructor)(struct xfrm_state *);
35846 	int (*input)(struct xfrm_state *, struct sk_buff *);
35847 	int (*output)(struct xfrm_state *, struct sk_buff *);
35848 	int (*reject)(struct xfrm_state *, struct sk_buff *, const struct flowi *);
35849 };
35850 
35851 struct xfrm_type_offload {
35852 	struct module *owner;
35853 	u8 proto;
35854 	void (*encap)(struct xfrm_state *, struct sk_buff *);
35855 	int (*input_tail)(struct xfrm_state *, struct sk_buff *);
35856 	int (*xmit)(struct xfrm_state *, struct sk_buff *, netdev_features_t);
35857 };
35858 
35859 struct xfrm_offload {
35860 	struct {
35861 		__u32 low;
35862 		__u32 hi;
35863 	} seq;
35864 	__u32 flags;
35865 	__u32 status;
35866 	__u8 proto;
35867 	__u8 inner_ipproto;
35868 };
35869 
35870 struct sec_path {
35871 	int len;
35872 	int olen;
35873 	struct xfrm_state *xvec[6];
35874 	struct xfrm_offload ovec[1];
35875 };
35876 
35877 struct pfifo_fast_priv {
35878 	struct skb_array q[3];
35879 };
35880 
35881 enum {
35882 	ETHTOOL_A_HEADER_UNSPEC = 0,
35883 	ETHTOOL_A_HEADER_DEV_INDEX = 1,
35884 	ETHTOOL_A_HEADER_DEV_NAME = 2,
35885 	ETHTOOL_A_HEADER_FLAGS = 3,
35886 	__ETHTOOL_A_HEADER_CNT = 4,
35887 	ETHTOOL_A_HEADER_MAX = 3,
35888 };
35889 
35890 enum {
35891 	ETHTOOL_A_BITSET_BIT_UNSPEC = 0,
35892 	ETHTOOL_A_BITSET_BIT_INDEX = 1,
35893 	ETHTOOL_A_BITSET_BIT_NAME = 2,
35894 	ETHTOOL_A_BITSET_BIT_VALUE = 3,
35895 	__ETHTOOL_A_BITSET_BIT_CNT = 4,
35896 	ETHTOOL_A_BITSET_BIT_MAX = 3,
35897 };
35898 
35899 enum {
35900 	ETHTOOL_A_BITSET_BITS_UNSPEC = 0,
35901 	ETHTOOL_A_BITSET_BITS_BIT = 1,
35902 	__ETHTOOL_A_BITSET_BITS_CNT = 2,
35903 	ETHTOOL_A_BITSET_BITS_MAX = 1,
35904 };
35905 
35906 enum {
35907 	ETHTOOL_A_BITSET_UNSPEC = 0,
35908 	ETHTOOL_A_BITSET_NOMASK = 1,
35909 	ETHTOOL_A_BITSET_SIZE = 2,
35910 	ETHTOOL_A_BITSET_BITS = 3,
35911 	ETHTOOL_A_BITSET_VALUE = 4,
35912 	ETHTOOL_A_BITSET_MASK = 5,
35913 	__ETHTOOL_A_BITSET_CNT = 6,
35914 	ETHTOOL_A_BITSET_MAX = 5,
35915 };
35916 
35917 enum {
35918 	ETHTOOL_A_STRSET_UNSPEC = 0,
35919 	ETHTOOL_A_STRSET_HEADER = 1,
35920 	ETHTOOL_A_STRSET_STRINGSETS = 2,
35921 	ETHTOOL_A_STRSET_COUNTS_ONLY = 3,
35922 	__ETHTOOL_A_STRSET_CNT = 4,
35923 	ETHTOOL_A_STRSET_MAX = 3,
35924 };
35925 
35926 enum {
35927 	ETHTOOL_A_LINKINFO_UNSPEC = 0,
35928 	ETHTOOL_A_LINKINFO_HEADER = 1,
35929 	ETHTOOL_A_LINKINFO_PORT = 2,
35930 	ETHTOOL_A_LINKINFO_PHYADDR = 3,
35931 	ETHTOOL_A_LINKINFO_TP_MDIX = 4,
35932 	ETHTOOL_A_LINKINFO_TP_MDIX_CTRL = 5,
35933 	ETHTOOL_A_LINKINFO_TRANSCEIVER = 6,
35934 	__ETHTOOL_A_LINKINFO_CNT = 7,
35935 	ETHTOOL_A_LINKINFO_MAX = 6,
35936 };
35937 
35938 enum {
35939 	ETHTOOL_A_LINKMODES_UNSPEC = 0,
35940 	ETHTOOL_A_LINKMODES_HEADER = 1,
35941 	ETHTOOL_A_LINKMODES_AUTONEG = 2,
35942 	ETHTOOL_A_LINKMODES_OURS = 3,
35943 	ETHTOOL_A_LINKMODES_PEER = 4,
35944 	ETHTOOL_A_LINKMODES_SPEED = 5,
35945 	ETHTOOL_A_LINKMODES_DUPLEX = 6,
35946 	ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG = 7,
35947 	ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE = 8,
35948 	ETHTOOL_A_LINKMODES_LANES = 9,
35949 	__ETHTOOL_A_LINKMODES_CNT = 10,
35950 	ETHTOOL_A_LINKMODES_MAX = 9,
35951 };
35952 
35953 enum {
35954 	ETHTOOL_A_LINKSTATE_UNSPEC = 0,
35955 	ETHTOOL_A_LINKSTATE_HEADER = 1,
35956 	ETHTOOL_A_LINKSTATE_LINK = 2,
35957 	ETHTOOL_A_LINKSTATE_SQI = 3,
35958 	ETHTOOL_A_LINKSTATE_SQI_MAX = 4,
35959 	ETHTOOL_A_LINKSTATE_EXT_STATE = 5,
35960 	ETHTOOL_A_LINKSTATE_EXT_SUBSTATE = 6,
35961 	__ETHTOOL_A_LINKSTATE_CNT = 7,
35962 	ETHTOOL_A_LINKSTATE_MAX = 6,
35963 };
35964 
35965 enum {
35966 	ETHTOOL_A_DEBUG_UNSPEC = 0,
35967 	ETHTOOL_A_DEBUG_HEADER = 1,
35968 	ETHTOOL_A_DEBUG_MSGMASK = 2,
35969 	__ETHTOOL_A_DEBUG_CNT = 3,
35970 	ETHTOOL_A_DEBUG_MAX = 2,
35971 };
35972 
35973 enum {
35974 	ETHTOOL_A_WOL_UNSPEC = 0,
35975 	ETHTOOL_A_WOL_HEADER = 1,
35976 	ETHTOOL_A_WOL_MODES = 2,
35977 	ETHTOOL_A_WOL_SOPASS = 3,
35978 	__ETHTOOL_A_WOL_CNT = 4,
35979 	ETHTOOL_A_WOL_MAX = 3,
35980 };
35981 
35982 enum {
35983 	ETHTOOL_A_FEATURES_UNSPEC = 0,
35984 	ETHTOOL_A_FEATURES_HEADER = 1,
35985 	ETHTOOL_A_FEATURES_HW = 2,
35986 	ETHTOOL_A_FEATURES_WANTED = 3,
35987 	ETHTOOL_A_FEATURES_ACTIVE = 4,
35988 	ETHTOOL_A_FEATURES_NOCHANGE = 5,
35989 	__ETHTOOL_A_FEATURES_CNT = 6,
35990 	ETHTOOL_A_FEATURES_MAX = 5,
35991 };
35992 
35993 enum {
35994 	ETHTOOL_A_PRIVFLAGS_UNSPEC = 0,
35995 	ETHTOOL_A_PRIVFLAGS_HEADER = 1,
35996 	ETHTOOL_A_PRIVFLAGS_FLAGS = 2,
35997 	__ETHTOOL_A_PRIVFLAGS_CNT = 3,
35998 	ETHTOOL_A_PRIVFLAGS_MAX = 2,
35999 };
36000 
36001 enum {
36002 	ETHTOOL_A_RINGS_UNSPEC = 0,
36003 	ETHTOOL_A_RINGS_HEADER = 1,
36004 	ETHTOOL_A_RINGS_RX_MAX = 2,
36005 	ETHTOOL_A_RINGS_RX_MINI_MAX = 3,
36006 	ETHTOOL_A_RINGS_RX_JUMBO_MAX = 4,
36007 	ETHTOOL_A_RINGS_TX_MAX = 5,
36008 	ETHTOOL_A_RINGS_RX = 6,
36009 	ETHTOOL_A_RINGS_RX_MINI = 7,
36010 	ETHTOOL_A_RINGS_RX_JUMBO = 8,
36011 	ETHTOOL_A_RINGS_TX = 9,
36012 	ETHTOOL_A_RINGS_RX_BUF_LEN = 10,
36013 	ETHTOOL_A_RINGS_TCP_DATA_SPLIT = 11,
36014 	ETHTOOL_A_RINGS_CQE_SIZE = 12,
36015 	ETHTOOL_A_RINGS_TX_PUSH = 13,
36016 	__ETHTOOL_A_RINGS_CNT = 14,
36017 	ETHTOOL_A_RINGS_MAX = 13,
36018 };
36019 
36020 enum {
36021 	ETHTOOL_A_CHANNELS_UNSPEC = 0,
36022 	ETHTOOL_A_CHANNELS_HEADER = 1,
36023 	ETHTOOL_A_CHANNELS_RX_MAX = 2,
36024 	ETHTOOL_A_CHANNELS_TX_MAX = 3,
36025 	ETHTOOL_A_CHANNELS_OTHER_MAX = 4,
36026 	ETHTOOL_A_CHANNELS_COMBINED_MAX = 5,
36027 	ETHTOOL_A_CHANNELS_RX_COUNT = 6,
36028 	ETHTOOL_A_CHANNELS_TX_COUNT = 7,
36029 	ETHTOOL_A_CHANNELS_OTHER_COUNT = 8,
36030 	ETHTOOL_A_CHANNELS_COMBINED_COUNT = 9,
36031 	__ETHTOOL_A_CHANNELS_CNT = 10,
36032 	ETHTOOL_A_CHANNELS_MAX = 9,
36033 };
36034 
36035 enum {
36036 	ETHTOOL_A_COALESCE_UNSPEC = 0,
36037 	ETHTOOL_A_COALESCE_HEADER = 1,
36038 	ETHTOOL_A_COALESCE_RX_USECS = 2,
36039 	ETHTOOL_A_COALESCE_RX_MAX_FRAMES = 3,
36040 	ETHTOOL_A_COALESCE_RX_USECS_IRQ = 4,
36041 	ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ = 5,
36042 	ETHTOOL_A_COALESCE_TX_USECS = 6,
36043 	ETHTOOL_A_COALESCE_TX_MAX_FRAMES = 7,
36044 	ETHTOOL_A_COALESCE_TX_USECS_IRQ = 8,
36045 	ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ = 9,
36046 	ETHTOOL_A_COALESCE_STATS_BLOCK_USECS = 10,
36047 	ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX = 11,
36048 	ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX = 12,
36049 	ETHTOOL_A_COALESCE_PKT_RATE_LOW = 13,
36050 	ETHTOOL_A_COALESCE_RX_USECS_LOW = 14,
36051 	ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW = 15,
36052 	ETHTOOL_A_COALESCE_TX_USECS_LOW = 16,
36053 	ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW = 17,
36054 	ETHTOOL_A_COALESCE_PKT_RATE_HIGH = 18,
36055 	ETHTOOL_A_COALESCE_RX_USECS_HIGH = 19,
36056 	ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH = 20,
36057 	ETHTOOL_A_COALESCE_TX_USECS_HIGH = 21,
36058 	ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH = 22,
36059 	ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL = 23,
36060 	ETHTOOL_A_COALESCE_USE_CQE_MODE_TX = 24,
36061 	ETHTOOL_A_COALESCE_USE_CQE_MODE_RX = 25,
36062 	__ETHTOOL_A_COALESCE_CNT = 26,
36063 	ETHTOOL_A_COALESCE_MAX = 25,
36064 };
36065 
36066 enum {
36067 	ETHTOOL_A_PAUSE_UNSPEC = 0,
36068 	ETHTOOL_A_PAUSE_HEADER = 1,
36069 	ETHTOOL_A_PAUSE_AUTONEG = 2,
36070 	ETHTOOL_A_PAUSE_RX = 3,
36071 	ETHTOOL_A_PAUSE_TX = 4,
36072 	ETHTOOL_A_PAUSE_STATS = 5,
36073 	__ETHTOOL_A_PAUSE_CNT = 6,
36074 	ETHTOOL_A_PAUSE_MAX = 5,
36075 };
36076 
36077 enum {
36078 	ETHTOOL_A_EEE_UNSPEC = 0,
36079 	ETHTOOL_A_EEE_HEADER = 1,
36080 	ETHTOOL_A_EEE_MODES_OURS = 2,
36081 	ETHTOOL_A_EEE_MODES_PEER = 3,
36082 	ETHTOOL_A_EEE_ACTIVE = 4,
36083 	ETHTOOL_A_EEE_ENABLED = 5,
36084 	ETHTOOL_A_EEE_TX_LPI_ENABLED = 6,
36085 	ETHTOOL_A_EEE_TX_LPI_TIMER = 7,
36086 	__ETHTOOL_A_EEE_CNT = 8,
36087 	ETHTOOL_A_EEE_MAX = 7,
36088 };
36089 
36090 enum {
36091 	ETHTOOL_A_TSINFO_UNSPEC = 0,
36092 	ETHTOOL_A_TSINFO_HEADER = 1,
36093 	ETHTOOL_A_TSINFO_TIMESTAMPING = 2,
36094 	ETHTOOL_A_TSINFO_TX_TYPES = 3,
36095 	ETHTOOL_A_TSINFO_RX_FILTERS = 4,
36096 	ETHTOOL_A_TSINFO_PHC_INDEX = 5,
36097 	__ETHTOOL_A_TSINFO_CNT = 6,
36098 	ETHTOOL_A_TSINFO_MAX = 5,
36099 };
36100 
36101 enum {
36102 	ETHTOOL_A_PHC_VCLOCKS_UNSPEC = 0,
36103 	ETHTOOL_A_PHC_VCLOCKS_HEADER = 1,
36104 	ETHTOOL_A_PHC_VCLOCKS_NUM = 2,
36105 	ETHTOOL_A_PHC_VCLOCKS_INDEX = 3,
36106 	__ETHTOOL_A_PHC_VCLOCKS_CNT = 4,
36107 	ETHTOOL_A_PHC_VCLOCKS_MAX = 3,
36108 };
36109 
36110 enum {
36111 	ETHTOOL_A_CABLE_TEST_UNSPEC = 0,
36112 	ETHTOOL_A_CABLE_TEST_HEADER = 1,
36113 	__ETHTOOL_A_CABLE_TEST_CNT = 2,
36114 	ETHTOOL_A_CABLE_TEST_MAX = 1,
36115 };
36116 
36117 enum {
36118 	ETHTOOL_A_CABLE_TEST_TDR_UNSPEC = 0,
36119 	ETHTOOL_A_CABLE_TEST_TDR_HEADER = 1,
36120 	ETHTOOL_A_CABLE_TEST_TDR_CFG = 2,
36121 	__ETHTOOL_A_CABLE_TEST_TDR_CNT = 3,
36122 	ETHTOOL_A_CABLE_TEST_TDR_MAX = 2,
36123 };
36124 
36125 enum {
36126 	ETHTOOL_A_TUNNEL_INFO_UNSPEC = 0,
36127 	ETHTOOL_A_TUNNEL_INFO_HEADER = 1,
36128 	ETHTOOL_A_TUNNEL_INFO_UDP_PORTS = 2,
36129 	__ETHTOOL_A_TUNNEL_INFO_CNT = 3,
36130 	ETHTOOL_A_TUNNEL_INFO_MAX = 2,
36131 };
36132 
36133 enum {
36134 	ETHTOOL_A_FEC_UNSPEC = 0,
36135 	ETHTOOL_A_FEC_HEADER = 1,
36136 	ETHTOOL_A_FEC_MODES = 2,
36137 	ETHTOOL_A_FEC_AUTO = 3,
36138 	ETHTOOL_A_FEC_ACTIVE = 4,
36139 	ETHTOOL_A_FEC_STATS = 5,
36140 	__ETHTOOL_A_FEC_CNT = 6,
36141 	ETHTOOL_A_FEC_MAX = 5,
36142 };
36143 
36144 enum {
36145 	ETHTOOL_A_MODULE_EEPROM_UNSPEC = 0,
36146 	ETHTOOL_A_MODULE_EEPROM_HEADER = 1,
36147 	ETHTOOL_A_MODULE_EEPROM_OFFSET = 2,
36148 	ETHTOOL_A_MODULE_EEPROM_LENGTH = 3,
36149 	ETHTOOL_A_MODULE_EEPROM_PAGE = 4,
36150 	ETHTOOL_A_MODULE_EEPROM_BANK = 5,
36151 	ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS = 6,
36152 	ETHTOOL_A_MODULE_EEPROM_DATA = 7,
36153 	__ETHTOOL_A_MODULE_EEPROM_CNT = 8,
36154 	ETHTOOL_A_MODULE_EEPROM_MAX = 7,
36155 };
36156 
36157 enum {
36158 	ETHTOOL_A_STATS_UNSPEC = 0,
36159 	ETHTOOL_A_STATS_PAD = 1,
36160 	ETHTOOL_A_STATS_HEADER = 2,
36161 	ETHTOOL_A_STATS_GROUPS = 3,
36162 	ETHTOOL_A_STATS_GRP = 4,
36163 	__ETHTOOL_A_STATS_CNT = 5,
36164 	ETHTOOL_A_STATS_MAX = 4,
36165 };
36166 
36167 enum {
36168 	ETHTOOL_STATS_ETH_PHY = 0,
36169 	ETHTOOL_STATS_ETH_MAC = 1,
36170 	ETHTOOL_STATS_ETH_CTRL = 2,
36171 	ETHTOOL_STATS_RMON = 3,
36172 	__ETHTOOL_STATS_CNT = 4,
36173 };
36174 
36175 enum {
36176 	ETHTOOL_A_STATS_ETH_PHY_5_SYM_ERR = 0,
36177 	__ETHTOOL_A_STATS_ETH_PHY_CNT = 1,
36178 	ETHTOOL_A_STATS_ETH_PHY_MAX = 0,
36179 };
36180 
36181 enum {
36182 	ETHTOOL_A_STATS_ETH_MAC_2_TX_PKT = 0,
36183 	ETHTOOL_A_STATS_ETH_MAC_3_SINGLE_COL = 1,
36184 	ETHTOOL_A_STATS_ETH_MAC_4_MULTI_COL = 2,
36185 	ETHTOOL_A_STATS_ETH_MAC_5_RX_PKT = 3,
36186 	ETHTOOL_A_STATS_ETH_MAC_6_FCS_ERR = 4,
36187 	ETHTOOL_A_STATS_ETH_MAC_7_ALIGN_ERR = 5,
36188 	ETHTOOL_A_STATS_ETH_MAC_8_TX_BYTES = 6,
36189 	ETHTOOL_A_STATS_ETH_MAC_9_TX_DEFER = 7,
36190 	ETHTOOL_A_STATS_ETH_MAC_10_LATE_COL = 8,
36191 	ETHTOOL_A_STATS_ETH_MAC_11_XS_COL = 9,
36192 	ETHTOOL_A_STATS_ETH_MAC_12_TX_INT_ERR = 10,
36193 	ETHTOOL_A_STATS_ETH_MAC_13_CS_ERR = 11,
36194 	ETHTOOL_A_STATS_ETH_MAC_14_RX_BYTES = 12,
36195 	ETHTOOL_A_STATS_ETH_MAC_15_RX_INT_ERR = 13,
36196 	ETHTOOL_A_STATS_ETH_MAC_18_TX_MCAST = 14,
36197 	ETHTOOL_A_STATS_ETH_MAC_19_TX_BCAST = 15,
36198 	ETHTOOL_A_STATS_ETH_MAC_20_XS_DEFER = 16,
36199 	ETHTOOL_A_STATS_ETH_MAC_21_RX_MCAST = 17,
36200 	ETHTOOL_A_STATS_ETH_MAC_22_RX_BCAST = 18,
36201 	ETHTOOL_A_STATS_ETH_MAC_23_IR_LEN_ERR = 19,
36202 	ETHTOOL_A_STATS_ETH_MAC_24_OOR_LEN = 20,
36203 	ETHTOOL_A_STATS_ETH_MAC_25_TOO_LONG_ERR = 21,
36204 	__ETHTOOL_A_STATS_ETH_MAC_CNT = 22,
36205 	ETHTOOL_A_STATS_ETH_MAC_MAX = 21,
36206 };
36207 
36208 enum {
36209 	ETHTOOL_A_STATS_ETH_CTRL_3_TX = 0,
36210 	ETHTOOL_A_STATS_ETH_CTRL_4_RX = 1,
36211 	ETHTOOL_A_STATS_ETH_CTRL_5_RX_UNSUP = 2,
36212 	__ETHTOOL_A_STATS_ETH_CTRL_CNT = 3,
36213 	ETHTOOL_A_STATS_ETH_CTRL_MAX = 2,
36214 };
36215 
36216 enum {
36217 	ETHTOOL_A_STATS_RMON_UNDERSIZE = 0,
36218 	ETHTOOL_A_STATS_RMON_OVERSIZE = 1,
36219 	ETHTOOL_A_STATS_RMON_FRAG = 2,
36220 	ETHTOOL_A_STATS_RMON_JABBER = 3,
36221 	__ETHTOOL_A_STATS_RMON_CNT = 4,
36222 	ETHTOOL_A_STATS_RMON_MAX = 3,
36223 };
36224 
36225 enum {
36226 	ETHTOOL_A_MODULE_UNSPEC = 0,
36227 	ETHTOOL_A_MODULE_HEADER = 1,
36228 	ETHTOOL_A_MODULE_POWER_MODE_POLICY = 2,
36229 	ETHTOOL_A_MODULE_POWER_MODE = 3,
36230 	__ETHTOOL_A_MODULE_CNT = 4,
36231 	ETHTOOL_A_MODULE_MAX = 3,
36232 };
36233 
36234 enum {
36235 	NLA_UNSPEC = 0,
36236 	NLA_U8 = 1,
36237 	NLA_U16 = 2,
36238 	NLA_U32 = 3,
36239 	NLA_U64 = 4,
36240 	NLA_STRING = 5,
36241 	NLA_FLAG = 6,
36242 	NLA_MSECS = 7,
36243 	NLA_NESTED = 8,
36244 	NLA_NESTED_ARRAY = 9,
36245 	NLA_NUL_STRING = 10,
36246 	NLA_BINARY = 11,
36247 	NLA_S8 = 12,
36248 	NLA_S16 = 13,
36249 	NLA_S32 = 14,
36250 	NLA_S64 = 15,
36251 	NLA_BITFIELD32 = 16,
36252 	NLA_REJECT = 17,
36253 	__NLA_TYPE_MAX = 18,
36254 };
36255 
36256 enum nla_policy_validation {
36257 	NLA_VALIDATE_NONE = 0,
36258 	NLA_VALIDATE_RANGE = 1,
36259 	NLA_VALIDATE_RANGE_WARN_TOO_LONG = 2,
36260 	NLA_VALIDATE_MIN = 3,
36261 	NLA_VALIDATE_MAX = 4,
36262 	NLA_VALIDATE_MASK = 5,
36263 	NLA_VALIDATE_RANGE_PTR = 6,
36264 	NLA_VALIDATE_FUNCTION = 7,
36265 };
36266 
36267 enum netlink_validation {
36268 	NL_VALIDATE_LIBERAL = 0,
36269 	NL_VALIDATE_TRAILING = 1,
36270 	NL_VALIDATE_MAXTYPE = 2,
36271 	NL_VALIDATE_UNSPEC = 4,
36272 	NL_VALIDATE_STRICT_ATTRS = 8,
36273 	NL_VALIDATE_NESTED = 16,
36274 };
36275 
36276 typedef const char (* const ethnl_string_array_t)[32];
36277 
36278 enum tunable_id {
36279 	ETHTOOL_ID_UNSPEC = 0,
36280 	ETHTOOL_RX_COPYBREAK = 1,
36281 	ETHTOOL_TX_COPYBREAK = 2,
36282 	ETHTOOL_PFC_PREVENTION_TOUT = 3,
36283 	ETHTOOL_TX_COPYBREAK_BUF_SIZE = 4,
36284 	__ETHTOOL_TUNABLE_COUNT = 5,
36285 };
36286 
36287 enum phy_tunable_id {
36288 	ETHTOOL_PHY_ID_UNSPEC = 0,
36289 	ETHTOOL_PHY_DOWNSHIFT = 1,
36290 	ETHTOOL_PHY_FAST_LINK_DOWN = 2,
36291 	ETHTOOL_PHY_EDPD = 3,
36292 	__ETHTOOL_PHY_TUNABLE_COUNT = 4,
36293 };
36294 
36295 enum {
36296 	ETH_RSS_HASH_TOP_BIT = 0,
36297 	ETH_RSS_HASH_XOR_BIT = 1,
36298 	ETH_RSS_HASH_CRC32_BIT = 2,
36299 	ETH_RSS_HASH_FUNCS_COUNT = 3,
36300 };
36301 
36302 enum {
36303 	ETHTOOL_MSG_USER_NONE = 0,
36304 	ETHTOOL_MSG_STRSET_GET = 1,
36305 	ETHTOOL_MSG_LINKINFO_GET = 2,
36306 	ETHTOOL_MSG_LINKINFO_SET = 3,
36307 	ETHTOOL_MSG_LINKMODES_GET = 4,
36308 	ETHTOOL_MSG_LINKMODES_SET = 5,
36309 	ETHTOOL_MSG_LINKSTATE_GET = 6,
36310 	ETHTOOL_MSG_DEBUG_GET = 7,
36311 	ETHTOOL_MSG_DEBUG_SET = 8,
36312 	ETHTOOL_MSG_WOL_GET = 9,
36313 	ETHTOOL_MSG_WOL_SET = 10,
36314 	ETHTOOL_MSG_FEATURES_GET = 11,
36315 	ETHTOOL_MSG_FEATURES_SET = 12,
36316 	ETHTOOL_MSG_PRIVFLAGS_GET = 13,
36317 	ETHTOOL_MSG_PRIVFLAGS_SET = 14,
36318 	ETHTOOL_MSG_RINGS_GET = 15,
36319 	ETHTOOL_MSG_RINGS_SET = 16,
36320 	ETHTOOL_MSG_CHANNELS_GET = 17,
36321 	ETHTOOL_MSG_CHANNELS_SET = 18,
36322 	ETHTOOL_MSG_COALESCE_GET = 19,
36323 	ETHTOOL_MSG_COALESCE_SET = 20,
36324 	ETHTOOL_MSG_PAUSE_GET = 21,
36325 	ETHTOOL_MSG_PAUSE_SET = 22,
36326 	ETHTOOL_MSG_EEE_GET = 23,
36327 	ETHTOOL_MSG_EEE_SET = 24,
36328 	ETHTOOL_MSG_TSINFO_GET = 25,
36329 	ETHTOOL_MSG_CABLE_TEST_ACT = 26,
36330 	ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 27,
36331 	ETHTOOL_MSG_TUNNEL_INFO_GET = 28,
36332 	ETHTOOL_MSG_FEC_GET = 29,
36333 	ETHTOOL_MSG_FEC_SET = 30,
36334 	ETHTOOL_MSG_MODULE_EEPROM_GET = 31,
36335 	ETHTOOL_MSG_STATS_GET = 32,
36336 	ETHTOOL_MSG_PHC_VCLOCKS_GET = 33,
36337 	ETHTOOL_MSG_MODULE_GET = 34,
36338 	ETHTOOL_MSG_MODULE_SET = 35,
36339 	__ETHTOOL_MSG_USER_CNT = 36,
36340 	ETHTOOL_MSG_USER_MAX = 35,
36341 };
36342 
36343 enum {
36344 	ETHTOOL_MSG_KERNEL_NONE = 0,
36345 	ETHTOOL_MSG_STRSET_GET_REPLY = 1,
36346 	ETHTOOL_MSG_LINKINFO_GET_REPLY = 2,
36347 	ETHTOOL_MSG_LINKINFO_NTF = 3,
36348 	ETHTOOL_MSG_LINKMODES_GET_REPLY = 4,
36349 	ETHTOOL_MSG_LINKMODES_NTF = 5,
36350 	ETHTOOL_MSG_LINKSTATE_GET_REPLY = 6,
36351 	ETHTOOL_MSG_DEBUG_GET_REPLY = 7,
36352 	ETHTOOL_MSG_DEBUG_NTF = 8,
36353 	ETHTOOL_MSG_WOL_GET_REPLY = 9,
36354 	ETHTOOL_MSG_WOL_NTF = 10,
36355 	ETHTOOL_MSG_FEATURES_GET_REPLY = 11,
36356 	ETHTOOL_MSG_FEATURES_SET_REPLY = 12,
36357 	ETHTOOL_MSG_FEATURES_NTF = 13,
36358 	ETHTOOL_MSG_PRIVFLAGS_GET_REPLY = 14,
36359 	ETHTOOL_MSG_PRIVFLAGS_NTF = 15,
36360 	ETHTOOL_MSG_RINGS_GET_REPLY = 16,
36361 	ETHTOOL_MSG_RINGS_NTF = 17,
36362 	ETHTOOL_MSG_CHANNELS_GET_REPLY = 18,
36363 	ETHTOOL_MSG_CHANNELS_NTF = 19,
36364 	ETHTOOL_MSG_COALESCE_GET_REPLY = 20,
36365 	ETHTOOL_MSG_COALESCE_NTF = 21,
36366 	ETHTOOL_MSG_PAUSE_GET_REPLY = 22,
36367 	ETHTOOL_MSG_PAUSE_NTF = 23,
36368 	ETHTOOL_MSG_EEE_GET_REPLY = 24,
36369 	ETHTOOL_MSG_EEE_NTF = 25,
36370 	ETHTOOL_MSG_TSINFO_GET_REPLY = 26,
36371 	ETHTOOL_MSG_CABLE_TEST_NTF = 27,
36372 	ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 28,
36373 	ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 29,
36374 	ETHTOOL_MSG_FEC_GET_REPLY = 30,
36375 	ETHTOOL_MSG_FEC_NTF = 31,
36376 	ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY = 32,
36377 	ETHTOOL_MSG_STATS_GET_REPLY = 33,
36378 	ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY = 34,
36379 	ETHTOOL_MSG_MODULE_GET_REPLY = 35,
36380 	ETHTOOL_MSG_MODULE_NTF = 36,
36381 	__ETHTOOL_MSG_KERNEL_CNT = 37,
36382 	ETHTOOL_MSG_KERNEL_MAX = 36,
36383 };
36384 
36385 struct genlmsghdr {
36386 	__u8 cmd;
36387 	__u8 version;
36388 	__u16 reserved;
36389 };
36390 
36391 struct genl_info {
36392 	u32 snd_seq;
36393 	u32 snd_portid;
36394 	struct nlmsghdr *nlhdr;
36395 	struct genlmsghdr *genlhdr;
36396 	void *userhdr;
36397 	struct nlattr **attrs;
36398 	possible_net_t _net;
36399 	void *user_ptr[2];
36400 	struct netlink_ext_ack *extack;
36401 };
36402 
36403 struct ethnl_req_info {
36404 	struct net_device *dev;
36405 	netdevice_tracker dev_tracker;
36406 	u32 flags;
36407 };
36408 
36409 struct ethnl_reply_data {
36410 	struct net_device *dev;
36411 };
36412 
36413 struct ethnl_request_ops {
36414 	u8 request_cmd;
36415 	u8 reply_cmd;
36416 	u16 hdr_attr;
36417 	unsigned int req_info_size;
36418 	unsigned int reply_data_size;
36419 	bool allow_nodev_do;
36420 	int (*parse_request)(struct ethnl_req_info *, struct nlattr **, struct netlink_ext_ack *);
36421 	int (*prepare_data)(const struct ethnl_req_info *, struct ethnl_reply_data *, struct genl_info *);
36422 	int (*reply_size)(const struct ethnl_req_info *, const struct ethnl_reply_data *);
36423 	int (*fill_reply)(struct sk_buff *, const struct ethnl_req_info *, const struct ethnl_reply_data *);
36424 	void (*cleanup_data)(struct ethnl_reply_data *);
36425 };
36426 
36427 struct coalesce_reply_data {
36428 	struct ethnl_reply_data base;
36429 	struct ethtool_coalesce coalesce;
36430 	struct kernel_ethtool_coalesce kernel_coalesce;
36431 	u32 supported_params;
36432 };
36433 
36434 struct ip_mreqn {
36435 	struct in_addr imr_multiaddr;
36436 	struct in_addr imr_address;
36437 	int imr_ifindex;
36438 };
36439 
36440 struct inet_ehash_bucket;
36441 
36442 struct inet_bind_hashbucket;
36443 
36444 struct inet_listen_hashbucket;
36445 
36446 struct inet_hashinfo {
36447 	struct inet_ehash_bucket *ehash;
36448 	spinlock_t *ehash_locks;
36449 	unsigned int ehash_mask;
36450 	unsigned int ehash_locks_mask;
36451 	struct kmem_cache *bind_bucket_cachep;
36452 	struct inet_bind_hashbucket *bhash;
36453 	unsigned int bhash_size;
36454 	unsigned int lhash2_mask;
36455 	struct inet_listen_hashbucket *lhash2;
36456 };
36457 
36458 struct ipv4_devconf {
36459 	void *sysctl;
36460 	int data[33];
36461 	long unsigned int state[1];
36462 };
36463 
36464 struct tcp_fastopen_context {
36465 	siphash_key_t key[2];
36466 	int num;
36467 	struct callback_head rcu;
36468 };
36469 
36470 struct hlist_nulls_head {
36471 	struct hlist_nulls_node *first;
36472 };
36473 
36474 struct pernet_operations {
36475 	struct list_head list;
36476 	int (*init)(struct net *);
36477 	void (*pre_exit)(struct net *);
36478 	void (*exit)(struct net *);
36479 	void (*exit_batch)(struct list_head *);
36480 	unsigned int *id;
36481 	size_t size;
36482 };
36483 
36484 struct scm_creds {
36485 	u32 pid;
36486 	kuid_t uid;
36487 	kgid_t gid;
36488 };
36489 
36490 struct netlink_skb_parms {
36491 	struct scm_creds creds;
36492 	__u32 portid;
36493 	__u32 dst_group;
36494 	__u32 flags;
36495 	struct sock *sk;
36496 	bool nsid_is_set;
36497 	int nsid;
36498 };
36499 
36500 struct in_ifaddr;
36501 
36502 struct ip_mc_list;
36503 
36504 struct in_device {
36505 	struct net_device *dev;
36506 	netdevice_tracker dev_tracker;
36507 	refcount_t refcnt;
36508 	int dead;
36509 	struct in_ifaddr *ifa_list;
36510 	struct ip_mc_list *mc_list;
36511 	struct ip_mc_list **mc_hash;
36512 	int mc_count;
36513 	spinlock_t mc_tomb_lock;
36514 	struct ip_mc_list *mc_tomb;
36515 	long unsigned int mr_v1_seen;
36516 	long unsigned int mr_v2_seen;
36517 	long unsigned int mr_maxdelay;
36518 	long unsigned int mr_qi;
36519 	long unsigned int mr_qri;
36520 	unsigned char mr_qrv;
36521 	unsigned char mr_gq_running;
36522 	u32 mr_ifc_count;
36523 	struct timer_list mr_gq_timer;
36524 	struct timer_list mr_ifc_timer;
36525 	struct neigh_parms *arp_parms;
36526 	struct ipv4_devconf cnf;
36527 	struct callback_head callback_head;
36528 };
36529 
36530 enum {
36531 	IPV4_DEVCONF_FORWARDING = 1,
36532 	IPV4_DEVCONF_MC_FORWARDING = 2,
36533 	IPV4_DEVCONF_PROXY_ARP = 3,
36534 	IPV4_DEVCONF_ACCEPT_REDIRECTS = 4,
36535 	IPV4_DEVCONF_SECURE_REDIRECTS = 5,
36536 	IPV4_DEVCONF_SEND_REDIRECTS = 6,
36537 	IPV4_DEVCONF_SHARED_MEDIA = 7,
36538 	IPV4_DEVCONF_RP_FILTER = 8,
36539 	IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9,
36540 	IPV4_DEVCONF_BOOTP_RELAY = 10,
36541 	IPV4_DEVCONF_LOG_MARTIANS = 11,
36542 	IPV4_DEVCONF_TAG = 12,
36543 	IPV4_DEVCONF_ARPFILTER = 13,
36544 	IPV4_DEVCONF_MEDIUM_ID = 14,
36545 	IPV4_DEVCONF_NOXFRM = 15,
36546 	IPV4_DEVCONF_NOPOLICY = 16,
36547 	IPV4_DEVCONF_FORCE_IGMP_VERSION = 17,
36548 	IPV4_DEVCONF_ARP_ANNOUNCE = 18,
36549 	IPV4_DEVCONF_ARP_IGNORE = 19,
36550 	IPV4_DEVCONF_PROMOTE_SECONDARIES = 20,
36551 	IPV4_DEVCONF_ARP_ACCEPT = 21,
36552 	IPV4_DEVCONF_ARP_NOTIFY = 22,
36553 	IPV4_DEVCONF_ACCEPT_LOCAL = 23,
36554 	IPV4_DEVCONF_SRC_VMARK = 24,
36555 	IPV4_DEVCONF_PROXY_ARP_PVLAN = 25,
36556 	IPV4_DEVCONF_ROUTE_LOCALNET = 26,
36557 	IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27,
36558 	IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28,
36559 	IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29,
36560 	IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30,
36561 	IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31,
36562 	IPV4_DEVCONF_BC_FORWARDING = 32,
36563 	IPV4_DEVCONF_ARP_EVICT_NOCARRIER = 33,
36564 	__IPV4_DEVCONF_MAX = 34,
36565 };
36566 
36567 enum {
36568 	RTM_BASE = 16,
36569 	RTM_NEWLINK = 16,
36570 	RTM_DELLINK = 17,
36571 	RTM_GETLINK = 18,
36572 	RTM_SETLINK = 19,
36573 	RTM_NEWADDR = 20,
36574 	RTM_DELADDR = 21,
36575 	RTM_GETADDR = 22,
36576 	RTM_NEWROUTE = 24,
36577 	RTM_DELROUTE = 25,
36578 	RTM_GETROUTE = 26,
36579 	RTM_NEWNEIGH = 28,
36580 	RTM_DELNEIGH = 29,
36581 	RTM_GETNEIGH = 30,
36582 	RTM_NEWRULE = 32,
36583 	RTM_DELRULE = 33,
36584 	RTM_GETRULE = 34,
36585 	RTM_NEWQDISC = 36,
36586 	RTM_DELQDISC = 37,
36587 	RTM_GETQDISC = 38,
36588 	RTM_NEWTCLASS = 40,
36589 	RTM_DELTCLASS = 41,
36590 	RTM_GETTCLASS = 42,
36591 	RTM_NEWTFILTER = 44,
36592 	RTM_DELTFILTER = 45,
36593 	RTM_GETTFILTER = 46,
36594 	RTM_NEWACTION = 48,
36595 	RTM_DELACTION = 49,
36596 	RTM_GETACTION = 50,
36597 	RTM_NEWPREFIX = 52,
36598 	RTM_GETMULTICAST = 58,
36599 	RTM_GETANYCAST = 62,
36600 	RTM_NEWNEIGHTBL = 64,
36601 	RTM_GETNEIGHTBL = 66,
36602 	RTM_SETNEIGHTBL = 67,
36603 	RTM_NEWNDUSEROPT = 68,
36604 	RTM_NEWADDRLABEL = 72,
36605 	RTM_DELADDRLABEL = 73,
36606 	RTM_GETADDRLABEL = 74,
36607 	RTM_GETDCB = 78,
36608 	RTM_SETDCB = 79,
36609 	RTM_NEWNETCONF = 80,
36610 	RTM_DELNETCONF = 81,
36611 	RTM_GETNETCONF = 82,
36612 	RTM_NEWMDB = 84,
36613 	RTM_DELMDB = 85,
36614 	RTM_GETMDB = 86,
36615 	RTM_NEWNSID = 88,
36616 	RTM_DELNSID = 89,
36617 	RTM_GETNSID = 90,
36618 	RTM_NEWSTATS = 92,
36619 	RTM_GETSTATS = 94,
36620 	RTM_SETSTATS = 95,
36621 	RTM_NEWCACHEREPORT = 96,
36622 	RTM_NEWCHAIN = 100,
36623 	RTM_DELCHAIN = 101,
36624 	RTM_GETCHAIN = 102,
36625 	RTM_NEWNEXTHOP = 104,
36626 	RTM_DELNEXTHOP = 105,
36627 	RTM_GETNEXTHOP = 106,
36628 	RTM_NEWLINKPROP = 108,
36629 	RTM_DELLINKPROP = 109,
36630 	RTM_GETLINKPROP = 110,
36631 	RTM_NEWVLAN = 112,
36632 	RTM_DELVLAN = 113,
36633 	RTM_GETVLAN = 114,
36634 	RTM_NEWNEXTHOPBUCKET = 116,
36635 	RTM_DELNEXTHOPBUCKET = 117,
36636 	RTM_GETNEXTHOPBUCKET = 118,
36637 	RTM_NEWTUNNEL = 120,
36638 	RTM_DELTUNNEL = 121,
36639 	RTM_GETTUNNEL = 122,
36640 	__RTM_MAX = 123,
36641 };
36642 
36643 struct rtmsg {
36644 	unsigned char rtm_family;
36645 	unsigned char rtm_dst_len;
36646 	unsigned char rtm_src_len;
36647 	unsigned char rtm_tos;
36648 	unsigned char rtm_table;
36649 	unsigned char rtm_protocol;
36650 	unsigned char rtm_scope;
36651 	unsigned char rtm_type;
36652 	unsigned int rtm_flags;
36653 };
36654 
36655 enum {
36656 	RTN_UNSPEC = 0,
36657 	RTN_UNICAST = 1,
36658 	RTN_LOCAL = 2,
36659 	RTN_BROADCAST = 3,
36660 	RTN_ANYCAST = 4,
36661 	RTN_MULTICAST = 5,
36662 	RTN_BLACKHOLE = 6,
36663 	RTN_UNREACHABLE = 7,
36664 	RTN_PROHIBIT = 8,
36665 	RTN_THROW = 9,
36666 	RTN_NAT = 10,
36667 	RTN_XRESOLVE = 11,
36668 	__RTN_MAX = 12,
36669 };
36670 
36671 enum rt_scope_t {
36672 	RT_SCOPE_UNIVERSE = 0,
36673 	RT_SCOPE_SITE = 200,
36674 	RT_SCOPE_LINK = 253,
36675 	RT_SCOPE_HOST = 254,
36676 	RT_SCOPE_NOWHERE = 255,
36677 };
36678 
36679 enum rt_class_t {
36680 	RT_TABLE_UNSPEC = 0,
36681 	RT_TABLE_COMPAT = 252,
36682 	RT_TABLE_DEFAULT = 253,
36683 	RT_TABLE_MAIN = 254,
36684 	RT_TABLE_LOCAL = 255,
36685 	RT_TABLE_MAX = 4294967295,
36686 };
36687 
36688 enum rtattr_type_t {
36689 	RTA_UNSPEC = 0,
36690 	RTA_DST = 1,
36691 	RTA_SRC = 2,
36692 	RTA_IIF = 3,
36693 	RTA_OIF = 4,
36694 	RTA_GATEWAY = 5,
36695 	RTA_PRIORITY = 6,
36696 	RTA_PREFSRC = 7,
36697 	RTA_METRICS = 8,
36698 	RTA_MULTIPATH = 9,
36699 	RTA_PROTOINFO = 10,
36700 	RTA_FLOW = 11,
36701 	RTA_CACHEINFO = 12,
36702 	RTA_SESSION = 13,
36703 	RTA_MP_ALGO = 14,
36704 	RTA_TABLE = 15,
36705 	RTA_MARK = 16,
36706 	RTA_MFC_STATS = 17,
36707 	RTA_VIA = 18,
36708 	RTA_NEWDST = 19,
36709 	RTA_PREF = 20,
36710 	RTA_ENCAP_TYPE = 21,
36711 	RTA_ENCAP = 22,
36712 	RTA_EXPIRES = 23,
36713 	RTA_PAD = 24,
36714 	RTA_UID = 25,
36715 	RTA_TTL_PROPAGATE = 26,
36716 	RTA_IP_PROTO = 27,
36717 	RTA_SPORT = 28,
36718 	RTA_DPORT = 29,
36719 	RTA_NH_ID = 30,
36720 	__RTA_MAX = 31,
36721 };
36722 
36723 struct rtvia {
36724 	__kernel_sa_family_t rtvia_family;
36725 	__u8 rtvia_addr[0];
36726 };
36727 
36728 struct in_ifaddr {
36729 	struct hlist_node hash;
36730 	struct in_ifaddr *ifa_next;
36731 	struct in_device *ifa_dev;
36732 	struct callback_head callback_head;
36733 	__be32 ifa_local;
36734 	__be32 ifa_address;
36735 	__be32 ifa_mask;
36736 	__u32 ifa_rt_priority;
36737 	__be32 ifa_broadcast;
36738 	unsigned char ifa_scope;
36739 	unsigned char ifa_prefixlen;
36740 	unsigned char ifa_proto;
36741 	__u32 ifa_flags;
36742 	char ifa_label[16];
36743 	__u32 ifa_valid_lft;
36744 	__u32 ifa_preferred_lft;
36745 	long unsigned int ifa_cstamp;
36746 	long unsigned int ifa_tstamp;
36747 };
36748 
36749 struct ip_sf_list;
36750 
36751 struct ip_mc_list {
36752 	struct in_device *interface;
36753 	__be32 multiaddr;
36754 	unsigned int sfmode;
36755 	struct ip_sf_list *sources;
36756 	struct ip_sf_list *tomb;
36757 	long unsigned int sfcount[2];
36758 	union {
36759 		struct ip_mc_list *next;
36760 		struct ip_mc_list *next_rcu;
36761 	};
36762 	struct ip_mc_list *next_hash;
36763 	struct timer_list timer;
36764 	int users;
36765 	refcount_t refcnt;
36766 	spinlock_t lock;
36767 	char tm_running;
36768 	char reporter;
36769 	char unsolicit_count;
36770 	char loaded;
36771 	unsigned char gsquery;
36772 	unsigned char crcount;
36773 	struct callback_head rcu;
36774 };
36775 
36776 struct ip_sf_socklist {
36777 	unsigned int sl_max;
36778 	unsigned int sl_count;
36779 	struct callback_head rcu;
36780 	__be32 sl_addr[0];
36781 };
36782 
36783 struct ip_mc_socklist {
36784 	struct ip_mc_socklist *next_rcu;
36785 	struct ip_mreqn multi;
36786 	unsigned int sfmode;
36787 	struct ip_sf_socklist *sflist;
36788 	struct callback_head rcu;
36789 };
36790 
36791 struct ip_sf_list {
36792 	struct ip_sf_list *sf_next;
36793 	long unsigned int sf_count[2];
36794 	__be32 sf_inaddr;
36795 	unsigned char sf_gsresp;
36796 	unsigned char sf_oldin;
36797 	unsigned char sf_crcount;
36798 };
36799 
36800 struct nl_info {
36801 	struct nlmsghdr *nlh;
36802 	struct net *nl_net;
36803 	u32 portid;
36804 	u8 skip_notify: 1;
36805 	u8 skip_notify_kernel: 1;
36806 };
36807 
36808 typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *, struct netlink_ext_ack *);
36809 
36810 typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *);
36811 
36812 enum rtnl_link_flags {
36813 	RTNL_FLAG_DOIT_UNLOCKED = 1,
36814 	RTNL_FLAG_BULK_DEL_SUPPORTED = 2,
36815 };
36816 
36817 struct sock_reuseport {
36818 	struct callback_head rcu;
36819 	u16 max_socks;
36820 	u16 num_socks;
36821 	u16 num_closed_socks;
36822 	unsigned int synq_overflow_ts;
36823 	unsigned int reuseport_id;
36824 	unsigned int bind_inany: 1;
36825 	unsigned int has_conns: 1;
36826 	struct bpf_prog *prog;
36827 	struct sock *socks[0];
36828 };
36829 
36830 enum sock_flags {
36831 	SOCK_DEAD = 0,
36832 	SOCK_DONE = 1,
36833 	SOCK_URGINLINE = 2,
36834 	SOCK_KEEPOPEN = 3,
36835 	SOCK_LINGER = 4,
36836 	SOCK_DESTROY = 5,
36837 	SOCK_BROADCAST = 6,
36838 	SOCK_TIMESTAMP = 7,
36839 	SOCK_ZAPPED = 8,
36840 	SOCK_USE_WRITE_QUEUE = 9,
36841 	SOCK_DBG = 10,
36842 	SOCK_RCVTSTAMP = 11,
36843 	SOCK_RCVTSTAMPNS = 12,
36844 	SOCK_LOCALROUTE = 13,
36845 	SOCK_MEMALLOC = 14,
36846 	SOCK_TIMESTAMPING_RX_SOFTWARE = 15,
36847 	SOCK_FASYNC = 16,
36848 	SOCK_RXQ_OVFL = 17,
36849 	SOCK_ZEROCOPY = 18,
36850 	SOCK_WIFI_STATUS = 19,
36851 	SOCK_NOFCS = 20,
36852 	SOCK_FILTER_LOCKED = 21,
36853 	SOCK_SELECT_ERR_QUEUE = 22,
36854 	SOCK_RCU_FREE = 23,
36855 	SOCK_TXTIME = 24,
36856 	SOCK_XDP = 25,
36857 	SOCK_TSTAMP_NEW = 26,
36858 	SOCK_RCVMARK = 27,
36859 };
36860 
36861 typedef u8 dscp_t;
36862 
36863 struct in6_pktinfo {
36864 	struct in6_addr ipi6_addr;
36865 	int ipi6_ifindex;
36866 };
36867 
36868 struct ipv6_rt_hdr {
36869 	__u8 nexthdr;
36870 	__u8 hdrlen;
36871 	__u8 type;
36872 	__u8 segments_left;
36873 };
36874 
36875 struct ipv6_opt_hdr {
36876 	__u8 nexthdr;
36877 	__u8 hdrlen;
36878 };
36879 
36880 struct ip_options {
36881 	__be32 faddr;
36882 	__be32 nexthop;
36883 	unsigned char optlen;
36884 	unsigned char srr;
36885 	unsigned char rr;
36886 	unsigned char ts;
36887 	unsigned char is_strictroute: 1;
36888 	unsigned char srr_is_hit: 1;
36889 	unsigned char is_changed: 1;
36890 	unsigned char rr_needaddr: 1;
36891 	unsigned char ts_needtime: 1;
36892 	unsigned char ts_needaddr: 1;
36893 	unsigned char router_alert;
36894 	unsigned char cipso;
36895 	unsigned char __pad2;
36896 	unsigned char __data[0];
36897 };
36898 
36899 struct ip_options_rcu {
36900 	struct callback_head rcu;
36901 	struct ip_options opt;
36902 };
36903 
36904 struct ipv6_txoptions {
36905 	refcount_t refcnt;
36906 	int tot_len;
36907 	__u16 opt_flen;
36908 	__u16 opt_nflen;
36909 	struct ipv6_opt_hdr *hopopt;
36910 	struct ipv6_opt_hdr *dst0opt;
36911 	struct ipv6_rt_hdr *srcrt;
36912 	struct ipv6_opt_hdr *dst1opt;
36913 	struct callback_head rcu;
36914 };
36915 
36916 struct inet_cork {
36917 	unsigned int flags;
36918 	__be32 addr;
36919 	struct ip_options *opt;
36920 	unsigned int fragsize;
36921 	int length;
36922 	struct dst_entry *dst;
36923 	u8 tx_flags;
36924 	__u8 ttl;
36925 	__s16 tos;
36926 	char priority;
36927 	__u16 gso_size;
36928 	u64 transmit_time;
36929 	u32 mark;
36930 };
36931 
36932 struct inet_cork_full {
36933 	struct inet_cork base;
36934 	struct flowi fl;
36935 };
36936 
36937 struct ipv6_pinfo;
36938 
36939 struct inet_sock {
36940 	struct sock sk;
36941 	struct ipv6_pinfo *pinet6;
36942 	__be32 inet_saddr;
36943 	__s16 uc_ttl;
36944 	__u16 cmsg_flags;
36945 	struct ip_options_rcu *inet_opt;
36946 	__be16 inet_sport;
36947 	__u16 inet_id;
36948 	__u8 tos;
36949 	__u8 min_ttl;
36950 	__u8 mc_ttl;
36951 	__u8 pmtudisc;
36952 	__u8 recverr: 1;
36953 	__u8 is_icsk: 1;
36954 	__u8 freebind: 1;
36955 	__u8 hdrincl: 1;
36956 	__u8 mc_loop: 1;
36957 	__u8 transparent: 1;
36958 	__u8 mc_all: 1;
36959 	__u8 nodefrag: 1;
36960 	__u8 bind_address_no_port: 1;
36961 	__u8 recverr_rfc4884: 1;
36962 	__u8 defer_connect: 1;
36963 	__u8 rcv_tos;
36964 	__u8 convert_csum;
36965 	int uc_index;
36966 	int mc_index;
36967 	__be32 mc_addr;
36968 	struct ip_mc_socklist *mc_list;
36969 	struct inet_cork_full cork;
36970 };
36971 
36972 struct inet6_cork {
36973 	struct ipv6_txoptions *opt;
36974 	u8 hop_limit;
36975 	u8 tclass;
36976 };
36977 
36978 struct ipv6_mc_socklist;
36979 
36980 struct ipv6_ac_socklist;
36981 
36982 struct ipv6_fl_socklist;
36983 
36984 struct ipv6_pinfo {
36985 	struct in6_addr saddr;
36986 	struct in6_pktinfo sticky_pktinfo;
36987 	const struct in6_addr *daddr_cache;
36988 	__be32 flow_label;
36989 	__u32 frag_size;
36990 	__u16 __unused_1: 7;
36991 	__s16 hop_limit: 9;
36992 	__u16 mc_loop: 1;
36993 	__u16 __unused_2: 6;
36994 	__s16 mcast_hops: 9;
36995 	int ucast_oif;
36996 	int mcast_oif;
36997 	union {
36998 		struct {
36999 			__u16 srcrt: 1;
37000 			__u16 osrcrt: 1;
37001 			__u16 rxinfo: 1;
37002 			__u16 rxoinfo: 1;
37003 			__u16 rxhlim: 1;
37004 			__u16 rxohlim: 1;
37005 			__u16 hopopts: 1;
37006 			__u16 ohopopts: 1;
37007 			__u16 dstopts: 1;
37008 			__u16 odstopts: 1;
37009 			__u16 rxflow: 1;
37010 			__u16 rxtclass: 1;
37011 			__u16 rxpmtu: 1;
37012 			__u16 rxorigdstaddr: 1;
37013 			__u16 recvfragsize: 1;
37014 		} bits;
37015 		__u16 all;
37016 	} rxopt;
37017 	__u16 recverr: 1;
37018 	__u16 sndflow: 1;
37019 	__u16 repflow: 1;
37020 	__u16 pmtudisc: 3;
37021 	__u16 padding: 1;
37022 	__u16 srcprefs: 3;
37023 	__u16 dontfrag: 1;
37024 	__u16 autoflowlabel: 1;
37025 	__u16 autoflowlabel_set: 1;
37026 	__u16 mc_all: 1;
37027 	__u16 recverr_rfc4884: 1;
37028 	__u16 rtalert_isolate: 1;
37029 	__u8 min_hopcount;
37030 	__u8 tclass;
37031 	__be32 rcv_flowinfo;
37032 	__u32 dst_cookie;
37033 	struct ipv6_mc_socklist *ipv6_mc_list;
37034 	struct ipv6_ac_socklist *ipv6_ac_list;
37035 	struct ipv6_fl_socklist *ipv6_fl_list;
37036 	struct ipv6_txoptions *opt;
37037 	struct sk_buff *pktoptions;
37038 	struct sk_buff *rxpmtu;
37039 	struct inet6_cork cork;
37040 };
37041 
37042 struct udphdr {
37043 	__be16 source;
37044 	__be16 dest;
37045 	__be16 len;
37046 	__sum16 check;
37047 };
37048 
37049 struct ip6_sf_socklist;
37050 
37051 struct ipv6_mc_socklist {
37052 	struct in6_addr addr;
37053 	int ifindex;
37054 	unsigned int sfmode;
37055 	struct ipv6_mc_socklist *next;
37056 	struct ip6_sf_socklist *sflist;
37057 	struct callback_head rcu;
37058 };
37059 
37060 struct ipv6_ac_socklist {
37061 	struct in6_addr acl_addr;
37062 	int acl_ifindex;
37063 	struct ipv6_ac_socklist *acl_next;
37064 };
37065 
37066 struct ip6_flowlabel;
37067 
37068 struct ipv6_fl_socklist {
37069 	struct ipv6_fl_socklist *next;
37070 	struct ip6_flowlabel *fl;
37071 	struct callback_head rcu;
37072 };
37073 
37074 struct ip6_sf_socklist {
37075 	unsigned int sl_max;
37076 	unsigned int sl_count;
37077 	struct callback_head rcu;
37078 	struct in6_addr sl_addr[0];
37079 };
37080 
37081 struct ip6_flowlabel {
37082 	struct ip6_flowlabel *next;
37083 	__be32 label;
37084 	atomic_t users;
37085 	struct in6_addr dst;
37086 	struct ipv6_txoptions *opt;
37087 	long unsigned int linger;
37088 	struct callback_head rcu;
37089 	u8 share;
37090 	union {
37091 		struct pid *pid;
37092 		kuid_t uid;
37093 	} owner;
37094 	long unsigned int lastuse;
37095 	long unsigned int expires;
37096 	struct net *fl_net;
37097 };
37098 
37099 struct ipv4_addr_key {
37100 	__be32 addr;
37101 	int vif;
37102 };
37103 
37104 struct inetpeer_addr {
37105 	union {
37106 		struct ipv4_addr_key a4;
37107 		struct in6_addr a6;
37108 		u32 key[4];
37109 	};
37110 	__u16 family;
37111 };
37112 
37113 struct inet_peer {
37114 	struct rb_node rb_node;
37115 	struct inetpeer_addr daddr;
37116 	u32 metrics[17];
37117 	u32 rate_tokens;
37118 	u32 n_redirects;
37119 	long unsigned int rate_last;
37120 	union {
37121 		struct {
37122 			atomic_t rid;
37123 		};
37124 		struct callback_head rcu;
37125 	};
37126 	__u32 dtime;
37127 	refcount_t refcnt;
37128 };
37129 
37130 struct fib_table;
37131 
37132 struct fib_result {
37133 	__be32 prefix;
37134 	unsigned char prefixlen;
37135 	unsigned char nh_sel;
37136 	unsigned char type;
37137 	unsigned char scope;
37138 	u32 tclassid;
37139 	struct fib_nh_common *nhc;
37140 	struct fib_info *fi;
37141 	struct fib_table *table;
37142 	struct hlist_head *fa_head;
37143 };
37144 
37145 struct fib_table {
37146 	struct hlist_node tb_hlist;
37147 	u32 tb_id;
37148 	int tb_num_default;
37149 	struct callback_head rcu;
37150 	long unsigned int *tb_data;
37151 	long unsigned int __data[0];
37152 };
37153 
37154 struct fib_rt_info {
37155 	struct fib_info *fi;
37156 	u32 tb_id;
37157 	__be32 dst;
37158 	int dst_len;
37159 	dscp_t dscp;
37160 	u8 type;
37161 	u8 offload: 1;
37162 	u8 trap: 1;
37163 	u8 offload_failed: 1;
37164 	u8 unused: 5;
37165 };
37166 
37167 struct fib6_result;
37168 
37169 struct fib6_config;
37170 
37171 struct ipv6_stub {
37172 	int (*ipv6_sock_mc_join)(struct sock *, int, const struct in6_addr *);
37173 	int (*ipv6_sock_mc_drop)(struct sock *, int, const struct in6_addr *);
37174 	struct dst_entry * (*ipv6_dst_lookup_flow)(struct net *, const struct sock *, struct flowi6 *, const struct in6_addr *);
37175 	int (*ipv6_route_input)(struct sk_buff *);
37176 	struct fib6_table * (*fib6_get_table)(struct net *, u32);
37177 	int (*fib6_lookup)(struct net *, int, struct flowi6 *, struct fib6_result *, int);
37178 	int (*fib6_table_lookup)(struct net *, struct fib6_table *, int, struct flowi6 *, struct fib6_result *, int);
37179 	void (*fib6_select_path)(const struct net *, struct fib6_result *, struct flowi6 *, int, bool, const struct sk_buff *, int);
37180 	u32 (*ip6_mtu_from_fib6)(const struct fib6_result *, const struct in6_addr *, const struct in6_addr *);
37181 	int (*fib6_nh_init)(struct net *, struct fib6_nh *, struct fib6_config *, gfp_t, struct netlink_ext_ack *);
37182 	void (*fib6_nh_release)(struct fib6_nh *);
37183 	void (*fib6_nh_release_dsts)(struct fib6_nh *);
37184 	void (*fib6_update_sernum)(struct net *, struct fib6_info *);
37185 	int (*ip6_del_rt)(struct net *, struct fib6_info *, bool);
37186 	void (*fib6_rt_update)(struct net *, struct fib6_info *, struct nl_info *);
37187 	void (*udpv6_encap_enable)();
37188 	void (*ndisc_send_na)(struct net_device *, const struct in6_addr *, const struct in6_addr *, bool, bool, bool, bool);
37189 	void (*xfrm6_local_rxpmtu)(struct sk_buff *, u32);
37190 	int (*xfrm6_udp_encap_rcv)(struct sock *, struct sk_buff *);
37191 	int (*xfrm6_rcv_encap)(struct sk_buff *, int, __be32, int);
37192 	struct neigh_table *nd_tbl;
37193 	int (*ipv6_fragment)(struct net *, struct sock *, struct sk_buff *, int (*)(struct net *, struct sock *, struct sk_buff *));
37194 	struct net_device * (*ipv6_dev_find)(struct net *, const struct in6_addr *, struct net_device *);
37195 };
37196 
37197 struct fib6_result {
37198 	struct fib6_nh *nh;
37199 	struct fib6_info *f6i;
37200 	u32 fib6_flags;
37201 	u8 fib6_type;
37202 	struct rt6_info *rt6;
37203 };
37204 
37205 struct fib6_config {
37206 	u32 fc_table;
37207 	u32 fc_metric;
37208 	int fc_dst_len;
37209 	int fc_src_len;
37210 	int fc_ifindex;
37211 	u32 fc_flags;
37212 	u32 fc_protocol;
37213 	u16 fc_type;
37214 	u16 fc_delete_all_nh: 1;
37215 	u16 fc_ignore_dev_down: 1;
37216 	u16 __unused: 14;
37217 	u32 fc_nh_id;
37218 	struct in6_addr fc_dst;
37219 	struct in6_addr fc_src;
37220 	struct in6_addr fc_prefsrc;
37221 	struct in6_addr fc_gateway;
37222 	long unsigned int fc_expires;
37223 	struct nlattr *fc_mx;
37224 	int fc_mx_len;
37225 	int fc_mp_len;
37226 	struct nlattr *fc_mp;
37227 	struct nl_info fc_nlinfo;
37228 	struct nlattr *fc_encap;
37229 	u16 fc_encap_type;
37230 	bool fc_is_fdb;
37231 };
37232 
37233 struct uncached_list {
37234 	spinlock_t lock;
37235 	struct list_head head;
37236 	struct list_head quarantine;
37237 };
37238 
37239 struct rt_cache_stat {
37240 	unsigned int in_slow_tot;
37241 	unsigned int in_slow_mc;
37242 	unsigned int in_no_route;
37243 	unsigned int in_brd;
37244 	unsigned int in_martian_dst;
37245 	unsigned int in_martian_src;
37246 	unsigned int out_slow_tot;
37247 	unsigned int out_slow_mc;
37248 };
37249 
37250 struct bpf_cgroup_storage_key {
37251 	__u64 cgroup_inode_id;
37252 	__u32 attach_type;
37253 };
37254 
37255 struct inet_skb_parm {
37256 	int iif;
37257 	struct ip_options opt;
37258 	u16 flags;
37259 	u16 frag_max_size;
37260 };
37261 
37262 struct inet_ehash_bucket {
37263 	struct hlist_nulls_head chain;
37264 };
37265 
37266 struct inet_bind_hashbucket {
37267 	spinlock_t lock;
37268 	struct hlist_head chain;
37269 };
37270 
37271 struct inet_listen_hashbucket {
37272 	spinlock_t lock;
37273 	struct hlist_nulls_head nulls_head;
37274 };
37275 
37276 struct bpf_storage_buffer;
37277 
37278 struct bpf_cgroup_storage_map;
37279 
37280 struct bpf_cgroup_storage {
37281 	union {
37282 		struct bpf_storage_buffer *buf;
37283 		void *percpu_buf;
37284 	};
37285 	struct bpf_cgroup_storage_map *map;
37286 	struct bpf_cgroup_storage_key key;
37287 	struct list_head list_map;
37288 	struct list_head list_cg;
37289 	struct rb_node node;
37290 	struct callback_head rcu;
37291 };
37292 
37293 struct bpf_storage_buffer {
37294 	struct callback_head rcu;
37295 	char data[0];
37296 };
37297 
37298 struct ack_sample {
37299 	u32 pkts_acked;
37300 	s32 rtt_us;
37301 	u32 in_flight;
37302 };
37303 
37304 struct rate_sample {
37305 	u64 prior_mstamp;
37306 	u32 prior_delivered;
37307 	u32 prior_delivered_ce;
37308 	s32 delivered;
37309 	s32 delivered_ce;
37310 	long int interval_us;
37311 	u32 snd_interval_us;
37312 	u32 rcv_interval_us;
37313 	long int rtt_us;
37314 	int losses;
37315 	u32 acked_sacked;
37316 	u32 prior_in_flight;
37317 	u32 last_end_seq;
37318 	bool is_app_limited;
37319 	bool is_retrans;
37320 	bool is_ack_delayed;
37321 };
37322 
37323 struct xfrm_dst {
37324 	union {
37325 		struct dst_entry dst;
37326 		struct rtable rt;
37327 		struct rt6_info rt6;
37328 	} u;
37329 	struct dst_entry *route;
37330 	struct dst_entry *child;
37331 	struct dst_entry *path;
37332 	struct xfrm_policy *pols[2];
37333 	int num_pols;
37334 	int num_xfrms;
37335 	u32 xfrm_genid;
37336 	u32 policy_genid;
37337 	u32 route_mtu_cached;
37338 	u32 child_mtu_cached;
37339 	u32 route_cookie;
37340 	u32 path_cookie;
37341 };
37342 
37343 enum netevent_notif_type {
37344 	NETEVENT_NEIGH_UPDATE = 1,
37345 	NETEVENT_REDIRECT = 2,
37346 	NETEVENT_DELAY_PROBE_TIME_UPDATE = 3,
37347 	NETEVENT_IPV4_MPATH_HASH_UPDATE = 4,
37348 	NETEVENT_IPV6_MPATH_HASH_UPDATE = 5,
37349 	NETEVENT_IPV4_FWD_UPDATE_PRIORITY_UPDATE = 6,
37350 };
37351 
37352 struct fib_alias {
37353 	struct hlist_node fa_list;
37354 	struct fib_info *fa_info;
37355 	dscp_t fa_dscp;
37356 	u8 fa_type;
37357 	u8 fa_state;
37358 	u8 fa_slen;
37359 	u32 tb_id;
37360 	s16 fa_default;
37361 	u8 offload;
37362 	u8 trap;
37363 	u8 offload_failed;
37364 	struct callback_head rcu;
37365 };
37366 
37367 struct fib_prop {
37368 	int error;
37369 	u8 scope;
37370 };
37371 
37372 struct icmpv6_echo {
37373 	__be16 identifier;
37374 	__be16 sequence;
37375 };
37376 
37377 struct icmpv6_nd_advt {
37378 	__u32 reserved: 5;
37379 	__u32 override: 1;
37380 	__u32 solicited: 1;
37381 	__u32 router: 1;
37382 	__u32 reserved2: 24;
37383 };
37384 
37385 struct icmpv6_nd_ra {
37386 	__u8 hop_limit;
37387 	__u8 reserved: 3;
37388 	__u8 router_pref: 2;
37389 	__u8 home_agent: 1;
37390 	__u8 other: 1;
37391 	__u8 managed: 1;
37392 	__be16 rt_lifetime;
37393 };
37394 
37395 struct icmp6hdr {
37396 	__u8 icmp6_type;
37397 	__u8 icmp6_code;
37398 	__sum16 icmp6_cksum;
37399 	union {
37400 		__be32 un_data32[1];
37401 		__be16 un_data16[2];
37402 		__u8 un_data8[4];
37403 		struct icmpv6_echo u_echo;
37404 		struct icmpv6_nd_advt u_nd_advt;
37405 		struct icmpv6_nd_ra u_nd_ra;
37406 	} icmp6_dataun;
37407 };
37408 
37409 struct inet6_skb_parm {
37410 	int iif;
37411 	__be16 ra;
37412 	__u16 dst0;
37413 	__u16 srcrt;
37414 	__u16 dst1;
37415 	__u16 lastopt;
37416 	__u16 nhoff;
37417 	__u16 flags;
37418 	__u16 frag_max_size;
37419 	__u16 srhoff;
37420 };
37421 
37422 enum lwtunnel_ip_t {
37423 	LWTUNNEL_IP_UNSPEC = 0,
37424 	LWTUNNEL_IP_ID = 1,
37425 	LWTUNNEL_IP_DST = 2,
37426 	LWTUNNEL_IP_SRC = 3,
37427 	LWTUNNEL_IP_TTL = 4,
37428 	LWTUNNEL_IP_TOS = 5,
37429 	LWTUNNEL_IP_FLAGS = 6,
37430 	LWTUNNEL_IP_PAD = 7,
37431 	LWTUNNEL_IP_OPTS = 8,
37432 	__LWTUNNEL_IP_MAX = 9,
37433 };
37434 
37435 enum lwtunnel_ip6_t {
37436 	LWTUNNEL_IP6_UNSPEC = 0,
37437 	LWTUNNEL_IP6_ID = 1,
37438 	LWTUNNEL_IP6_DST = 2,
37439 	LWTUNNEL_IP6_SRC = 3,
37440 	LWTUNNEL_IP6_HOPLIMIT = 4,
37441 	LWTUNNEL_IP6_TC = 5,
37442 	LWTUNNEL_IP6_FLAGS = 6,
37443 	LWTUNNEL_IP6_PAD = 7,
37444 	LWTUNNEL_IP6_OPTS = 8,
37445 	__LWTUNNEL_IP6_MAX = 9,
37446 };
37447 
37448 enum {
37449 	LWTUNNEL_IP_OPTS_UNSPEC = 0,
37450 	LWTUNNEL_IP_OPTS_GENEVE = 1,
37451 	LWTUNNEL_IP_OPTS_VXLAN = 2,
37452 	LWTUNNEL_IP_OPTS_ERSPAN = 3,
37453 	__LWTUNNEL_IP_OPTS_MAX = 4,
37454 };
37455 
37456 enum {
37457 	LWTUNNEL_IP_OPT_GENEVE_UNSPEC = 0,
37458 	LWTUNNEL_IP_OPT_GENEVE_CLASS = 1,
37459 	LWTUNNEL_IP_OPT_GENEVE_TYPE = 2,
37460 	LWTUNNEL_IP_OPT_GENEVE_DATA = 3,
37461 	__LWTUNNEL_IP_OPT_GENEVE_MAX = 4,
37462 };
37463 
37464 enum {
37465 	LWTUNNEL_IP_OPT_VXLAN_UNSPEC = 0,
37466 	LWTUNNEL_IP_OPT_VXLAN_GBP = 1,
37467 	__LWTUNNEL_IP_OPT_VXLAN_MAX = 2,
37468 };
37469 
37470 enum {
37471 	LWTUNNEL_IP_OPT_ERSPAN_UNSPEC = 0,
37472 	LWTUNNEL_IP_OPT_ERSPAN_VER = 1,
37473 	LWTUNNEL_IP_OPT_ERSPAN_INDEX = 2,
37474 	LWTUNNEL_IP_OPT_ERSPAN_DIR = 3,
37475 	LWTUNNEL_IP_OPT_ERSPAN_HWID = 4,
37476 	__LWTUNNEL_IP_OPT_ERSPAN_MAX = 5,
37477 };
37478 
37479 struct lwtunnel_encap_ops {
37480 	int (*build_state)(struct net *, struct nlattr *, unsigned int, const void *, struct lwtunnel_state **, struct netlink_ext_ack *);
37481 	void (*destroy_state)(struct lwtunnel_state *);
37482 	int (*output)(struct net *, struct sock *, struct sk_buff *);
37483 	int (*input)(struct sk_buff *);
37484 	int (*fill_encap)(struct sk_buff *, struct lwtunnel_state *);
37485 	int (*get_encap_size)(struct lwtunnel_state *);
37486 	int (*cmp_encap)(struct lwtunnel_state *, struct lwtunnel_state *);
37487 	int (*xmit)(struct sk_buff *);
37488 	struct module *owner;
37489 };
37490 
37491 struct ip_tunnel_encap {
37492 	u16 type;
37493 	u16 flags;
37494 	__be16 sport;
37495 	__be16 dport;
37496 };
37497 
37498 struct ip_tunnel_encap_ops {
37499 	size_t (*encap_hlen)(struct ip_tunnel_encap *);
37500 	int (*build_header)(struct sk_buff *, struct ip_tunnel_encap *, u8 *, struct flowi4 *);
37501 	int (*err_handler)(struct sk_buff *, u32);
37502 };
37503 
37504 struct ip6_tnl_encap_ops {
37505 	size_t (*encap_hlen)(struct ip_tunnel_encap *);
37506 	int (*build_header)(struct sk_buff *, struct ip_tunnel_encap *, u8 *, struct flowi6 *);
37507 	int (*err_handler)(struct sk_buff *, struct inet6_skb_parm *, u8, u8, int, __be32);
37508 };
37509 
37510 struct udp_tunnel_info {
37511 	short unsigned int type;
37512 	sa_family_t sa_family;
37513 	__be16 port;
37514 	u8 hw_priv;
37515 };
37516 
37517 struct udp_tunnel_nic_shared {
37518 	struct udp_tunnel_nic *udp_tunnel_nic_info;
37519 	struct list_head devices;
37520 };
37521 
37522 struct geneve_opt {
37523 	__be16 opt_class;
37524 	u8 type;
37525 	u8 length: 5;
37526 	u8 r3: 1;
37527 	u8 r2: 1;
37528 	u8 r1: 1;
37529 	u8 opt_data[0];
37530 };
37531 
37532 struct vxlan_metadata {
37533 	u32 gbp;
37534 };
37535 
37536 struct erspan_md2 {
37537 	__be32 timestamp;
37538 	__be16 sgt;
37539 	__u8 hwid_upper: 2;
37540 	__u8 ft: 5;
37541 	__u8 p: 1;
37542 	__u8 o: 1;
37543 	__u8 gra: 2;
37544 	__u8 dir: 1;
37545 	__u8 hwid: 4;
37546 };
37547 
37548 struct erspan_metadata {
37549 	int version;
37550 	union {
37551 		__be32 index;
37552 		struct erspan_md2 md2;
37553 	} u;
37554 };
37555 
37556 enum {
37557 	BPF_F_INGRESS = 1,
37558 };
37559 
37560 struct sk_psock_progs {
37561 	struct bpf_prog *msg_parser;
37562 	struct bpf_prog *stream_parser;
37563 	struct bpf_prog *stream_verdict;
37564 	struct bpf_prog *skb_verdict;
37565 };
37566 
37567 struct sk_psock_work_state {
37568 	struct sk_buff *skb;
37569 	u32 len;
37570 	u32 off;
37571 };
37572 
37573 struct sk_msg;
37574 
37575 struct sk_psock {
37576 	struct sock *sk;
37577 	struct sock *sk_redir;
37578 	u32 apply_bytes;
37579 	u32 cork_bytes;
37580 	u32 eval;
37581 	struct sk_msg *cork;
37582 	struct sk_psock_progs progs;
37583 	struct sk_buff_head ingress_skb;
37584 	struct list_head ingress_msg;
37585 	spinlock_t ingress_lock;
37586 	long unsigned int state;
37587 	struct list_head link;
37588 	spinlock_t link_lock;
37589 	refcount_t refcnt;
37590 	void (*saved_unhash)(struct sock *);
37591 	void (*saved_destroy)(struct sock *);
37592 	void (*saved_close)(struct sock *, long int);
37593 	void (*saved_write_space)(struct sock *);
37594 	void (*saved_data_ready)(struct sock *);
37595 	int (*psock_update_sk_prot)(struct sock *, struct sk_psock *, bool);
37596 	struct proto *sk_proto;
37597 	struct mutex work_mutex;
37598 	struct sk_psock_work_state work_state;
37599 	struct work_struct work;
37600 	struct rcu_work rwork;
37601 };
37602 
37603 struct fastopen_queue {
37604 	struct request_sock *rskq_rst_head;
37605 	struct request_sock *rskq_rst_tail;
37606 	spinlock_t lock;
37607 	int qlen;
37608 	int max_qlen;
37609 	struct tcp_fastopen_context *ctx;
37610 };
37611 
37612 struct request_sock_queue {
37613 	spinlock_t rskq_lock;
37614 	u8 rskq_defer_accept;
37615 	u32 synflood_warned;
37616 	atomic_t qlen;
37617 	atomic_t young;
37618 	struct request_sock *rskq_accept_head;
37619 	struct request_sock *rskq_accept_tail;
37620 	struct fastopen_queue fastopenq;
37621 };
37622 
37623 struct inet_connection_sock_af_ops {
37624 	int (*queue_xmit)(struct sock *, struct sk_buff *, struct flowi *);
37625 	void (*send_check)(struct sock *, struct sk_buff *);
37626 	int (*rebuild_header)(struct sock *);
37627 	void (*sk_rx_dst_set)(struct sock *, const struct sk_buff *);
37628 	int (*conn_request)(struct sock *, struct sk_buff *);
37629 	struct sock * (*syn_recv_sock)(const struct sock *, struct sk_buff *, struct request_sock *, struct dst_entry *, struct request_sock *, bool *);
37630 	u16 net_header_len;
37631 	u16 net_frag_header_len;
37632 	u16 sockaddr_len;
37633 	int (*setsockopt)(struct sock *, int, int, sockptr_t, unsigned int);
37634 	int (*getsockopt)(struct sock *, int, int, char *, int *);
37635 	void (*addr2sockaddr)(struct sock *, struct sockaddr *);
37636 	void (*mtu_reduced)(struct sock *);
37637 };
37638 
37639 struct inet_bind_bucket;
37640 
37641 struct tcp_ulp_ops;
37642 
37643 struct inet_connection_sock {
37644 	struct inet_sock icsk_inet;
37645 	struct request_sock_queue icsk_accept_queue;
37646 	struct inet_bind_bucket *icsk_bind_hash;
37647 	long unsigned int icsk_timeout;
37648 	struct timer_list icsk_retransmit_timer;
37649 	struct timer_list icsk_delack_timer;
37650 	__u32 icsk_rto;
37651 	__u32 icsk_rto_min;
37652 	__u32 icsk_delack_max;
37653 	__u32 icsk_pmtu_cookie;
37654 	const struct tcp_congestion_ops *icsk_ca_ops;
37655 	const struct inet_connection_sock_af_ops *icsk_af_ops;
37656 	const struct tcp_ulp_ops *icsk_ulp_ops;
37657 	void *icsk_ulp_data;
37658 	void (*icsk_clean_acked)(struct sock *, u32);
37659 	unsigned int (*icsk_sync_mss)(struct sock *, u32);
37660 	__u8 icsk_ca_state: 5;
37661 	__u8 icsk_ca_initialized: 1;
37662 	__u8 icsk_ca_setsockopt: 1;
37663 	__u8 icsk_ca_dst_locked: 1;
37664 	__u8 icsk_retransmits;
37665 	__u8 icsk_pending;
37666 	__u8 icsk_backoff;
37667 	__u8 icsk_syn_retries;
37668 	__u8 icsk_probes_out;
37669 	__u16 icsk_ext_hdr_len;
37670 	struct {
37671 		__u8 pending;
37672 		__u8 quick;
37673 		__u8 pingpong;
37674 		__u8 retry;
37675 		__u32 ato;
37676 		long unsigned int timeout;
37677 		__u32 lrcvtime;
37678 		__u16 last_seg_size;
37679 		__u16 rcv_mss;
37680 	} icsk_ack;
37681 	struct {
37682 		int search_high;
37683 		int search_low;
37684 		u32 probe_size: 31;
37685 		u32 enabled: 1;
37686 		u32 probe_timestamp;
37687 	} icsk_mtup;
37688 	u32 icsk_probes_tstamp;
37689 	u32 icsk_user_timeout;
37690 	u64 icsk_ca_priv[13];
37691 };
37692 
37693 struct inet_bind_bucket {
37694 	possible_net_t ib_net;
37695 	int l3mdev;
37696 	short unsigned int port;
37697 	signed char fastreuse;
37698 	signed char fastreuseport;
37699 	kuid_t fastuid;
37700 	struct in6_addr fast_v6_rcv_saddr;
37701 	__be32 fast_rcv_saddr;
37702 	short unsigned int fast_sk_family;
37703 	bool fast_ipv6_only;
37704 	struct hlist_node node;
37705 	struct hlist_head owners;
37706 };
37707 
37708 struct tcp_ulp_ops {
37709 	struct list_head list;
37710 	int (*init)(struct sock *);
37711 	void (*update)(struct sock *, struct proto *, void (*)(struct sock *));
37712 	void (*release)(struct sock *);
37713 	int (*get_info)(const struct sock *, struct sk_buff *);
37714 	size_t (*get_info_size)(const struct sock *);
37715 	void (*clone)(const struct request_sock *, struct sock *, const gfp_t);
37716 	char name[16];
37717 	struct module *owner;
37718 };
37719 
37720 enum __sk_action {
37721 	__SK_DROP = 0,
37722 	__SK_PASS = 1,
37723 	__SK_REDIRECT = 2,
37724 	__SK_NONE = 3,
37725 };
37726 
37727 struct sk_msg_sg {
37728 	u32 start;
37729 	u32 curr;
37730 	u32 end;
37731 	u32 size;
37732 	u32 copybreak;
37733 	long unsigned int copy[1];
37734 	struct scatterlist data[18];
37735 };
37736 
37737 struct sk_msg {
37738 	struct sk_msg_sg sg;
37739 	void *data;
37740 	void *data_end;
37741 	u32 apply_bytes;
37742 	u32 cork_bytes;
37743 	u32 flags;
37744 	struct sk_buff *skb;
37745 	struct sock *sk_redir;
37746 	struct sock *sk;
37747 	struct list_head list;
37748 };
37749 
37750 enum sk_psock_state_bits {
37751 	SK_PSOCK_TX_ENABLED = 0,
37752 };
37753 
37754 struct crypto_wait {
37755 	struct completion completion;
37756 	int err;
37757 };
37758 
37759 struct crypto_aead {
37760 	unsigned int authsize;
37761 	unsigned int reqsize;
37762 	struct crypto_tfm base;
37763 };
37764 
37765 struct tls_crypto_info {
37766 	__u16 version;
37767 	__u16 cipher_type;
37768 };
37769 
37770 struct tls12_crypto_info_aes_gcm_128 {
37771 	struct tls_crypto_info info;
37772 	unsigned char iv[8];
37773 	unsigned char key[16];
37774 	unsigned char salt[4];
37775 	unsigned char rec_seq[8];
37776 };
37777 
37778 struct tls12_crypto_info_aes_gcm_256 {
37779 	struct tls_crypto_info info;
37780 	unsigned char iv[8];
37781 	unsigned char key[32];
37782 	unsigned char salt[4];
37783 	unsigned char rec_seq[8];
37784 };
37785 
37786 struct tls12_crypto_info_chacha20_poly1305 {
37787 	struct tls_crypto_info info;
37788 	unsigned char iv[12];
37789 	unsigned char key[32];
37790 	unsigned char salt[0];
37791 	unsigned char rec_seq[8];
37792 };
37793 
37794 struct tls12_crypto_info_sm4_gcm {
37795 	struct tls_crypto_info info;
37796 	unsigned char iv[8];
37797 	unsigned char key[16];
37798 	unsigned char salt[4];
37799 	unsigned char rec_seq[8];
37800 };
37801 
37802 struct tls12_crypto_info_sm4_ccm {
37803 	struct tls_crypto_info info;
37804 	unsigned char iv[8];
37805 	unsigned char key[16];
37806 	unsigned char salt[4];
37807 	unsigned char rec_seq[8];
37808 };
37809 
37810 struct tx_work {
37811 	struct delayed_work work;
37812 	struct sock *sk;
37813 };
37814 
37815 struct tls_rec;
37816 
37817 struct tls_sw_context_tx {
37818 	struct crypto_aead *aead_send;
37819 	struct crypto_wait async_wait;
37820 	struct tx_work tx_work;
37821 	struct tls_rec *open_rec;
37822 	struct list_head tx_list;
37823 	atomic_t encrypt_pending;
37824 	spinlock_t encrypt_compl_lock;
37825 	int async_notify;
37826 	u8 async_capable: 1;
37827 	long unsigned int tx_bitmask;
37828 };
37829 
37830 struct tls_prot_info {
37831 	u16 version;
37832 	u16 cipher_type;
37833 	u16 prepend_size;
37834 	u16 tag_size;
37835 	u16 overhead_size;
37836 	u16 iv_size;
37837 	u16 salt_size;
37838 	u16 rec_seq_size;
37839 	u16 aad_size;
37840 	u16 tail_size;
37841 };
37842 
37843 struct cipher_context {
37844 	char *iv;
37845 	char *rec_seq;
37846 };
37847 
37848 union tls_crypto_context {
37849 	struct tls_crypto_info info;
37850 	union {
37851 		struct tls12_crypto_info_aes_gcm_128 aes_gcm_128;
37852 		struct tls12_crypto_info_aes_gcm_256 aes_gcm_256;
37853 		struct tls12_crypto_info_chacha20_poly1305 chacha20_poly1305;
37854 		struct tls12_crypto_info_sm4_gcm sm4_gcm;
37855 		struct tls12_crypto_info_sm4_ccm sm4_ccm;
37856 	};
37857 };
37858 
37859 struct tls_context {
37860 	struct tls_prot_info prot_info;
37861 	u8 tx_conf: 3;
37862 	u8 rx_conf: 3;
37863 	u8 zerocopy_sendfile: 1;
37864 	u8 rx_no_pad: 1;
37865 	int (*push_pending_record)(struct sock *, int);
37866 	void (*sk_write_space)(struct sock *);
37867 	void *priv_ctx_tx;
37868 	void *priv_ctx_rx;
37869 	struct net_device *netdev;
37870 	struct cipher_context tx;
37871 	struct cipher_context rx;
37872 	struct scatterlist *partially_sent_record;
37873 	u16 partially_sent_offset;
37874 	bool in_tcp_sendpages;
37875 	bool pending_open_record_frags;
37876 	struct mutex tx_lock;
37877 	long unsigned int flags;
37878 	struct proto *sk_proto;
37879 	struct sock *sk;
37880 	void (*sk_destruct)(struct sock *);
37881 	union tls_crypto_context crypto_send;
37882 	union tls_crypto_context crypto_recv;
37883 	struct list_head list;
37884 	refcount_t refcount;
37885 	struct callback_head rcu;
37886 };
37887 
37888 enum {
37889 	TCP_BPF_IPV4 = 0,
37890 	TCP_BPF_IPV6 = 1,
37891 	TCP_BPF_NUM_PROTS = 2,
37892 };
37893 
37894 enum {
37895 	TCP_BPF_BASE = 0,
37896 	TCP_BPF_TX = 1,
37897 	TCP_BPF_RX = 2,
37898 	TCP_BPF_TXRX = 3,
37899 	TCP_BPF_NUM_CFGS = 4,
37900 };
37901 
37902 struct sockaddr_un {
37903 	__kernel_sa_family_t sun_family;
37904 	char sun_path[108];
37905 };
37906 
37907 struct scm_fp_list {
37908 	short int count;
37909 	short int max;
37910 	struct user_struct *user;
37911 	struct file *fp[253];
37912 };
37913 
37914 struct scm_cookie {
37915 	struct pid *pid;
37916 	struct scm_fp_list *fp;
37917 	struct scm_creds creds;
37918 };
37919 
37920 struct socket_alloc {
37921 	struct socket socket;
37922 	struct inode vfs_inode;
37923 	long: 64;
37924 	long: 64;
37925 	long: 64;
37926 	long: 64;
37927 	long: 64;
37928 	long: 64;
37929 };
37930 
37931 struct unix_address {
37932 	refcount_t refcnt;
37933 	int len;
37934 	struct sockaddr_un name[0];
37935 };
37936 
37937 struct unix_skb_parms {
37938 	struct pid *pid;
37939 	kuid_t uid;
37940 	kgid_t gid;
37941 	struct scm_fp_list *fp;
37942 	u32 consumed;
37943 };
37944 
37945 struct scm_stat {
37946 	atomic_t nr_fds;
37947 };
37948 
37949 struct unix_sock {
37950 	struct sock sk;
37951 	struct unix_address *addr;
37952 	struct path path;
37953 	struct mutex iolock;
37954 	struct mutex bindlock;
37955 	struct sock *peer;
37956 	struct list_head link;
37957 	atomic_long_t inflight;
37958 	spinlock_t lock;
37959 	long unsigned int gc_flags;
37960 	long: 64;
37961 	struct socket_wq peer_wq;
37962 	wait_queue_entry_t peer_wake;
37963 	struct scm_stat scm_stat;
37964 	struct sk_buff *oob_skb;
37965 	long: 64;
37966 	long: 64;
37967 	long: 64;
37968 	long: 64;
37969 	long: 64;
37970 	long: 64;
37971 	long: 64;
37972 	long: 64;
37973 	long: 64;
37974 };
37975 
37976 enum sock_type {
37977 	SOCK_STREAM = 1,
37978 	SOCK_DGRAM = 2,
37979 	SOCK_RAW = 3,
37980 	SOCK_RDM = 4,
37981 	SOCK_SEQPACKET = 5,
37982 	SOCK_DCCP = 6,
37983 	SOCK_PACKET = 10,
37984 };
37985 
37986 struct sockaddr_in6 {
37987 	short unsigned int sin6_family;
37988 	__be16 sin6_port;
37989 	__be32 sin6_flowinfo;
37990 	struct in6_addr sin6_addr;
37991 	__u32 sin6_scope_id;
37992 };
37993 
37994 struct icmp6_filter {
37995 	__u32 data[8];
37996 };
37997 
37998 struct seq_net_private {
37999 	struct net *net;
38000 	netns_tracker ns_tracker;
38001 };
38002 
38003 enum {
38004 	SOF_TIMESTAMPING_TX_HARDWARE = 1,
38005 	SOF_TIMESTAMPING_TX_SOFTWARE = 2,
38006 	SOF_TIMESTAMPING_RX_HARDWARE = 4,
38007 	SOF_TIMESTAMPING_RX_SOFTWARE = 8,
38008 	SOF_TIMESTAMPING_SOFTWARE = 16,
38009 	SOF_TIMESTAMPING_SYS_HARDWARE = 32,
38010 	SOF_TIMESTAMPING_RAW_HARDWARE = 64,
38011 	SOF_TIMESTAMPING_OPT_ID = 128,
38012 	SOF_TIMESTAMPING_TX_SCHED = 256,
38013 	SOF_TIMESTAMPING_TX_ACK = 512,
38014 	SOF_TIMESTAMPING_OPT_CMSG = 1024,
38015 	SOF_TIMESTAMPING_OPT_TSONLY = 2048,
38016 	SOF_TIMESTAMPING_OPT_STATS = 4096,
38017 	SOF_TIMESTAMPING_OPT_PKTINFO = 8192,
38018 	SOF_TIMESTAMPING_OPT_TX_SWHW = 16384,
38019 	SOF_TIMESTAMPING_BIND_PHC = 32768,
38020 	SOF_TIMESTAMPING_LAST = 32768,
38021 	SOF_TIMESTAMPING_MASK = 65535,
38022 };
38023 
38024 struct raw_hashinfo {
38025 	spinlock_t lock;
38026 	struct hlist_nulls_head ht[256];
38027 };
38028 
38029 struct sockcm_cookie {
38030 	u64 transmit_time;
38031 	u32 mark;
38032 	u16 tsflags;
38033 };
38034 
38035 struct raw6_sock {
38036 	struct inet_sock inet;
38037 	__u32 checksum;
38038 	__u32 offset;
38039 	struct icmp6_filter filter;
38040 	__u32 ip6mr_table;
38041 	struct ipv6_pinfo inet6;
38042 };
38043 
38044 struct static_key_false_deferred {
38045 	struct static_key_false key;
38046 	long unsigned int timeout;
38047 	struct delayed_work work;
38048 };
38049 
38050 struct ipcm6_cookie {
38051 	struct sockcm_cookie sockc;
38052 	__s16 hlimit;
38053 	__s16 tclass;
38054 	__u16 gso_size;
38055 	__s8 dontfrag;
38056 	struct ipv6_txoptions *opt;
38057 };
38058 
38059 struct inet_protosw {
38060 	struct list_head list;
38061 	short unsigned int type;
38062 	short unsigned int protocol;
38063 	struct proto *prot;
38064 	const struct proto_ops *ops;
38065 	unsigned char flags;
38066 };
38067 
38068 struct raw_iter_state {
38069 	struct seq_net_private p;
38070 	int bucket;
38071 };
38072 
38073 struct raw6_frag_vec {
38074 	struct msghdr *msg;
38075 	int hlen;
38076 	char c[4];
38077 };
38078 
38079 enum tk_offsets {
38080 	TK_OFFS_REAL = 0,
38081 	TK_OFFS_BOOT = 1,
38082 	TK_OFFS_TAI = 2,
38083 	TK_OFFS_MAX = 3,
38084 };
38085 
38086 struct rhlist_head {
38087 	struct rhash_head rhead;
38088 	struct rhlist_head *next;
38089 };
38090 
38091 struct rhashtable_walker {
38092 	struct list_head list;
38093 	struct bucket_table *tbl;
38094 };
38095 
38096 struct rhashtable_iter {
38097 	struct rhashtable *ht;
38098 	struct rhash_head *p;
38099 	struct rhlist_head *list;
38100 	struct rhashtable_walker walker;
38101 	unsigned int slot;
38102 	unsigned int skip;
38103 	bool end_of_table;
38104 };
38105 
38106 struct ioam6_trace_hdr {
38107 	__be16 namespace_id;
38108 	char: 2;
38109 	__u8 overflow: 1;
38110 	__u8 nodelen: 5;
38111 	__u8 remlen: 7;
38112 	union {
38113 		__be32 type_be32;
38114 		struct {
38115 			__u32 bit7: 1;
38116 			__u32 bit6: 1;
38117 			__u32 bit5: 1;
38118 			__u32 bit4: 1;
38119 			__u32 bit3: 1;
38120 			__u32 bit2: 1;
38121 			__u32 bit1: 1;
38122 			__u32 bit0: 1;
38123 			__u32 bit15: 1;
38124 			__u32 bit14: 1;
38125 			__u32 bit13: 1;
38126 			__u32 bit12: 1;
38127 			__u32 bit11: 1;
38128 			__u32 bit10: 1;
38129 			__u32 bit9: 1;
38130 			__u32 bit8: 1;
38131 			__u32 bit23: 1;
38132 			__u32 bit22: 1;
38133 			__u32 bit21: 1;
38134 			__u32 bit20: 1;
38135 			__u32 bit19: 1;
38136 			__u32 bit18: 1;
38137 			__u32 bit17: 1;
38138 			__u32 bit16: 1;
38139 		} type;
38140 	};
38141 	__u8 data[0];
38142 };
38143 
38144 enum {
38145 	IOAM6_ATTR_UNSPEC = 0,
38146 	IOAM6_ATTR_NS_ID = 1,
38147 	IOAM6_ATTR_NS_DATA = 2,
38148 	IOAM6_ATTR_NS_DATA_WIDE = 3,
38149 	IOAM6_ATTR_SC_ID = 4,
38150 	IOAM6_ATTR_SC_DATA = 5,
38151 	IOAM6_ATTR_SC_NONE = 6,
38152 	IOAM6_ATTR_PAD = 7,
38153 	__IOAM6_ATTR_MAX = 8,
38154 };
38155 
38156 enum {
38157 	IOAM6_CMD_UNSPEC = 0,
38158 	IOAM6_CMD_ADD_NAMESPACE = 1,
38159 	IOAM6_CMD_DEL_NAMESPACE = 2,
38160 	IOAM6_CMD_DUMP_NAMESPACES = 3,
38161 	IOAM6_CMD_ADD_SCHEMA = 4,
38162 	IOAM6_CMD_DEL_SCHEMA = 5,
38163 	IOAM6_CMD_DUMP_SCHEMAS = 6,
38164 	IOAM6_CMD_NS_SET_SCHEMA = 7,
38165 	__IOAM6_CMD_MAX = 8,
38166 };
38167 
38168 struct __una_u32 {
38169 	u32 x;
38170 };
38171 
38172 struct ioam6_pernet_data {
38173 	struct mutex lock;
38174 	struct rhashtable namespaces;
38175 	struct rhashtable schemas;
38176 };
38177 
38178 struct genl_multicast_group {
38179 	char name[16];
38180 	u8 flags;
38181 };
38182 
38183 struct genl_ops;
38184 
38185 struct genl_small_ops;
38186 
38187 struct genl_family {
38188 	int id;
38189 	unsigned int hdrsize;
38190 	char name[16];
38191 	unsigned int version;
38192 	unsigned int maxattr;
38193 	unsigned int mcgrp_offset;
38194 	u8 netnsok: 1;
38195 	u8 parallel_ops: 1;
38196 	u8 n_ops;
38197 	u8 n_small_ops;
38198 	u8 n_mcgrps;
38199 	const struct nla_policy *policy;
38200 	int (*pre_doit)(const struct genl_ops *, struct sk_buff *, struct genl_info *);
38201 	void (*post_doit)(const struct genl_ops *, struct sk_buff *, struct genl_info *);
38202 	const struct genl_ops *ops;
38203 	const struct genl_small_ops *small_ops;
38204 	const struct genl_multicast_group *mcgrps;
38205 	struct module *module;
38206 };
38207 
38208 struct genl_ops {
38209 	int (*doit)(struct sk_buff *, struct genl_info *);
38210 	int (*start)(struct netlink_callback *);
38211 	int (*dumpit)(struct sk_buff *, struct netlink_callback *);
38212 	int (*done)(struct netlink_callback *);
38213 	const struct nla_policy *policy;
38214 	unsigned int maxattr;
38215 	u8 cmd;
38216 	u8 internal_flags;
38217 	u8 flags;
38218 	u8 validate;
38219 };
38220 
38221 struct genl_small_ops {
38222 	int (*doit)(struct sk_buff *, struct genl_info *);
38223 	int (*dumpit)(struct sk_buff *, struct netlink_callback *);
38224 	u8 cmd;
38225 	u8 internal_flags;
38226 	u8 flags;
38227 	u8 validate;
38228 };
38229 
38230 enum genl_validate_flags {
38231 	GENL_DONT_VALIDATE_STRICT = 1,
38232 	GENL_DONT_VALIDATE_DUMP = 2,
38233 	GENL_DONT_VALIDATE_DUMP_STRICT = 4,
38234 };
38235 
38236 struct ioam6_schema;
38237 
38238 struct ioam6_namespace {
38239 	struct rhash_head head;
38240 	struct callback_head rcu;
38241 	struct ioam6_schema *schema;
38242 	__be16 id;
38243 	__be32 data;
38244 	__be64 data_wide;
38245 };
38246 
38247 struct ioam6_schema {
38248 	struct rhash_head head;
38249 	struct callback_head rcu;
38250 	struct ioam6_namespace *ns;
38251 	u32 id;
38252 	int len;
38253 	__be32 hdr;
38254 	u8 data[0];
38255 };
38256 
38257 struct net_offload {
38258 	struct offload_callbacks callbacks;
38259 	unsigned int flags;
38260 };
38261 
38262 enum rpc_auth_flavors {
38263 	RPC_AUTH_NULL = 0,
38264 	RPC_AUTH_UNIX = 1,
38265 	RPC_AUTH_SHORT = 2,
38266 	RPC_AUTH_DES = 3,
38267 	RPC_AUTH_KRB = 4,
38268 	RPC_AUTH_GSS = 6,
38269 	RPC_AUTH_TLS = 7,
38270 	RPC_AUTH_MAXFLAVOR = 8,
38271 	RPC_AUTH_GSS_KRB5 = 390003,
38272 	RPC_AUTH_GSS_KRB5I = 390004,
38273 	RPC_AUTH_GSS_KRB5P = 390005,
38274 	RPC_AUTH_GSS_LKEY = 390006,
38275 	RPC_AUTH_GSS_LKEYI = 390007,
38276 	RPC_AUTH_GSS_LKEYP = 390008,
38277 	RPC_AUTH_GSS_SPKM = 390009,
38278 	RPC_AUTH_GSS_SPKMI = 390010,
38279 	RPC_AUTH_GSS_SPKMP = 390011,
38280 };
38281 
38282 enum rpc_auth_stat {
38283 	RPC_AUTH_OK = 0,
38284 	RPC_AUTH_BADCRED = 1,
38285 	RPC_AUTH_REJECTEDCRED = 2,
38286 	RPC_AUTH_BADVERF = 3,
38287 	RPC_AUTH_REJECTEDVERF = 4,
38288 	RPC_AUTH_TOOWEAK = 5,
38289 	RPCSEC_GSS_CREDPROBLEM = 13,
38290 	RPCSEC_GSS_CTXPROBLEM = 14,
38291 };
38292 
38293 struct cache_head {
38294 	struct hlist_node cache_list;
38295 	time64_t expiry_time;
38296 	time64_t last_refresh;
38297 	struct kref ref;
38298 	long unsigned int flags;
38299 };
38300 
38301 struct cache_deferred_req;
38302 
38303 struct cache_req {
38304 	struct cache_deferred_req * (*defer)(struct cache_req *);
38305 	long unsigned int thread_wait;
38306 };
38307 
38308 struct cache_deferred_req {
38309 	struct hlist_node hash;
38310 	struct list_head recent;
38311 	struct cache_head *item;
38312 	void *owner;
38313 	void (*revisit)(struct cache_deferred_req *, int);
38314 };
38315 
38316 struct gss_api_mech;
38317 
38318 struct gss_ctx {
38319 	struct gss_api_mech *mech_type;
38320 	void *internal_ctx_id;
38321 	unsigned int slack;
38322 	unsigned int align;
38323 };
38324 
38325 struct gss_api_ops;
38326 
38327 struct pf_desc;
38328 
38329 struct gss_api_mech {
38330 	struct list_head gm_list;
38331 	struct module *gm_owner;
38332 	struct rpcsec_gss_oid gm_oid;
38333 	char *gm_name;
38334 	const struct gss_api_ops *gm_ops;
38335 	int gm_pf_num;
38336 	struct pf_desc *gm_pfs;
38337 	const char *gm_upcall_enctypes;
38338 };
38339 
38340 struct auth_domain;
38341 
38342 struct pf_desc {
38343 	u32 pseudoflavor;
38344 	u32 qop;
38345 	u32 service;
38346 	char *name;
38347 	char *auth_domain_name;
38348 	struct auth_domain *domain;
38349 	bool datatouch;
38350 };
38351 
38352 struct auth_ops;
38353 
38354 struct auth_domain {
38355 	struct kref ref;
38356 	struct hlist_node hash;
38357 	char *name;
38358 	struct auth_ops *flavour;
38359 	struct callback_head callback_head;
38360 };
38361 
38362 struct gss_api_ops {
38363 	int (*gss_import_sec_context)(const void *, size_t, struct gss_ctx *, time64_t *, gfp_t);
38364 	u32 (*gss_get_mic)(struct gss_ctx *, struct xdr_buf *, struct xdr_netobj *);
38365 	u32 (*gss_verify_mic)(struct gss_ctx *, struct xdr_buf *, struct xdr_netobj *);
38366 	u32 (*gss_wrap)(struct gss_ctx *, int, struct xdr_buf *, struct page **);
38367 	u32 (*gss_unwrap)(struct gss_ctx *, int, int, struct xdr_buf *);
38368 	void (*gss_delete_sec_context)(void *);
38369 };
38370 
38371 struct svc_cred {
38372 	kuid_t cr_uid;
38373 	kgid_t cr_gid;
38374 	struct group_info *cr_group_info;
38375 	u32 cr_flavor;
38376 	char *cr_raw_principal;
38377 	char *cr_principal;
38378 	char *cr_targ_princ;
38379 	struct gss_api_mech *cr_gss_mech;
38380 };
38381 
38382 struct svc_rqst;
38383 
38384 struct auth_ops {
38385 	char *name;
38386 	struct module *owner;
38387 	int flavour;
38388 	int (*accept)(struct svc_rqst *);
38389 	int (*release)(struct svc_rqst *);
38390 	void (*domain_release)(struct auth_domain *);
38391 	int (*set_client)(struct svc_rqst *);
38392 };
38393 
38394 struct pagevec {
38395 	unsigned char nr;
38396 	bool percpu_pvec_drained;
38397 	struct page *pages[15];
38398 };
38399 
38400 struct svc_cacherep;
38401 
38402 struct svc_serv;
38403 
38404 struct svc_pool;
38405 
38406 struct svc_procedure;
38407 
38408 struct svc_deferred_req;
38409 
38410 struct svc_rqst {
38411 	struct list_head rq_all;
38412 	struct callback_head rq_rcu_head;
38413 	struct svc_xprt *rq_xprt;
38414 	struct __kernel_sockaddr_storage rq_addr;
38415 	size_t rq_addrlen;
38416 	struct __kernel_sockaddr_storage rq_daddr;
38417 	size_t rq_daddrlen;
38418 	struct svc_serv *rq_server;
38419 	struct svc_pool *rq_pool;
38420 	const struct svc_procedure *rq_procinfo;
38421 	struct auth_ops *rq_authop;
38422 	struct svc_cred rq_cred;
38423 	void *rq_xprt_ctxt;
38424 	struct svc_deferred_req *rq_deferred;
38425 	struct xdr_buf rq_arg;
38426 	struct xdr_stream rq_arg_stream;
38427 	struct xdr_stream rq_res_stream;
38428 	struct page *rq_scratch_page;
38429 	struct xdr_buf rq_res;
38430 	struct page *rq_pages[20];
38431 	struct page **rq_respages;
38432 	struct page **rq_next_page;
38433 	struct page **rq_page_end;
38434 	struct pagevec rq_pvec;
38435 	struct kvec rq_vec[19];
38436 	struct bio_vec rq_bvec[19];
38437 	__be32 rq_xid;
38438 	u32 rq_prog;
38439 	u32 rq_vers;
38440 	u32 rq_proc;
38441 	u32 rq_prot;
38442 	int rq_cachetype;
38443 	long unsigned int rq_flags;
38444 	ktime_t rq_qtime;
38445 	void *rq_argp;
38446 	void *rq_resp;
38447 	void *rq_auth_data;
38448 	__be32 rq_auth_stat;
38449 	int rq_auth_slack;
38450 	int rq_reserved;
38451 	ktime_t rq_stime;
38452 	struct cache_req rq_chandle;
38453 	struct auth_domain *rq_client;
38454 	struct auth_domain *rq_gssclient;
38455 	struct svc_cacherep *rq_cacherep;
38456 	struct task_struct *rq_task;
38457 	spinlock_t rq_lock;
38458 	struct net *rq_bc_net;
38459 	void **rq_lease_breaker;
38460 };
38461 
38462 struct svc_pool_stats {
38463 	atomic_long_t packets;
38464 	long unsigned int sockets_queued;
38465 	atomic_long_t threads_woken;
38466 	atomic_long_t threads_timedout;
38467 };
38468 
38469 struct svc_pool {
38470 	unsigned int sp_id;
38471 	spinlock_t sp_lock;
38472 	struct list_head sp_sockets;
38473 	unsigned int sp_nrthreads;
38474 	struct list_head sp_all_threads;
38475 	struct svc_pool_stats sp_stats;
38476 	long unsigned int sp_flags;
38477 	long: 64;
38478 	long: 64;
38479 	long: 64;
38480 	long: 64;
38481 	long: 64;
38482 };
38483 
38484 struct svc_program;
38485 
38486 struct svc_stat;
38487 
38488 struct svc_serv {
38489 	struct svc_program *sv_program;
38490 	struct svc_stat *sv_stats;
38491 	spinlock_t sv_lock;
38492 	struct kref sv_refcnt;
38493 	unsigned int sv_nrthreads;
38494 	unsigned int sv_maxconn;
38495 	unsigned int sv_max_payload;
38496 	unsigned int sv_max_mesg;
38497 	unsigned int sv_xdrsize;
38498 	struct list_head sv_permsocks;
38499 	struct list_head sv_tempsocks;
38500 	int sv_tmpcnt;
38501 	struct timer_list sv_temptimer;
38502 	char *sv_name;
38503 	unsigned int sv_nrpools;
38504 	struct svc_pool *sv_pools;
38505 	int (*sv_threadfn)(void *);
38506 };
38507 
38508 struct svc_version;
38509 
38510 struct svc_process_info;
38511 
38512 struct svc_program {
38513 	struct svc_program *pg_next;
38514 	u32 pg_prog;
38515 	unsigned int pg_lovers;
38516 	unsigned int pg_hivers;
38517 	unsigned int pg_nvers;
38518 	const struct svc_version **pg_vers;
38519 	char *pg_name;
38520 	char *pg_class;
38521 	struct svc_stat *pg_stats;
38522 	int (*pg_authenticate)(struct svc_rqst *);
38523 	__be32 (*pg_init_request)(struct svc_rqst *, const struct svc_program *, struct svc_process_info *);
38524 	int (*pg_rpcbind_set)(struct net *, const struct svc_program *, u32, int, short unsigned int, short unsigned int);
38525 };
38526 
38527 struct svc_stat {
38528 	struct svc_program *program;
38529 	unsigned int netcnt;
38530 	unsigned int netudpcnt;
38531 	unsigned int nettcpcnt;
38532 	unsigned int nettcpconn;
38533 	unsigned int rpccnt;
38534 	unsigned int rpcbadfmt;
38535 	unsigned int rpcbadauth;
38536 	unsigned int rpcbadclnt;
38537 };
38538 
38539 struct svc_xprt_class;
38540 
38541 struct svc_xprt_ops;
38542 
38543 struct svc_xprt {
38544 	struct svc_xprt_class *xpt_class;
38545 	const struct svc_xprt_ops *xpt_ops;
38546 	struct kref xpt_ref;
38547 	struct list_head xpt_list;
38548 	struct list_head xpt_ready;
38549 	long unsigned int xpt_flags;
38550 	struct svc_serv *xpt_server;
38551 	atomic_t xpt_reserved;
38552 	atomic_t xpt_nr_rqsts;
38553 	struct mutex xpt_mutex;
38554 	spinlock_t xpt_lock;
38555 	void *xpt_auth_cache;
38556 	struct list_head xpt_deferred;
38557 	struct __kernel_sockaddr_storage xpt_local;
38558 	size_t xpt_locallen;
38559 	struct __kernel_sockaddr_storage xpt_remote;
38560 	size_t xpt_remotelen;
38561 	char xpt_remotebuf[58];
38562 	struct list_head xpt_users;
38563 	struct net *xpt_net;
38564 	netns_tracker ns_tracker;
38565 	const struct cred *xpt_cred;
38566 	struct rpc_xprt *xpt_bc_xprt;
38567 	struct rpc_xprt_switch *xpt_bc_xps;
38568 };
38569 
38570 struct svc_procedure {
38571 	__be32 (*pc_func)(struct svc_rqst *);
38572 	bool (*pc_decode)(struct svc_rqst *, struct xdr_stream *);
38573 	bool (*pc_encode)(struct svc_rqst *, struct xdr_stream *);
38574 	void (*pc_release)(struct svc_rqst *);
38575 	unsigned int pc_argsize;
38576 	unsigned int pc_ressize;
38577 	unsigned int pc_cachetype;
38578 	unsigned int pc_xdrressize;
38579 	const char *pc_name;
38580 };
38581 
38582 struct svc_deferred_req {
38583 	u32 prot;
38584 	struct svc_xprt *xprt;
38585 	struct __kernel_sockaddr_storage addr;
38586 	size_t addrlen;
38587 	struct __kernel_sockaddr_storage daddr;
38588 	size_t daddrlen;
38589 	void *xprt_ctxt;
38590 	struct cache_deferred_req handle;
38591 	int argslen;
38592 	__be32 args[0];
38593 };
38594 
38595 struct svc_process_info {
38596 	union {
38597 		int (*dispatch)(struct svc_rqst *, __be32 *);
38598 		struct {
38599 			unsigned int lovers;
38600 			unsigned int hivers;
38601 		} mismatch;
38602 	};
38603 };
38604 
38605 struct svc_version {
38606 	u32 vs_vers;
38607 	u32 vs_nproc;
38608 	const struct svc_procedure *vs_proc;
38609 	unsigned int *vs_count;
38610 	u32 vs_xdrsize;
38611 	bool vs_hidden;
38612 	bool vs_rpcb_optnl;
38613 	bool vs_need_cong_ctrl;
38614 	int (*vs_dispatch)(struct svc_rqst *, __be32 *);
38615 };
38616 
38617 struct svc_xprt_ops {
38618 	struct svc_xprt * (*xpo_create)(struct svc_serv *, struct net *, struct sockaddr *, int, int);
38619 	struct svc_xprt * (*xpo_accept)(struct svc_xprt *);
38620 	int (*xpo_has_wspace)(struct svc_xprt *);
38621 	int (*xpo_recvfrom)(struct svc_rqst *);
38622 	int (*xpo_sendto)(struct svc_rqst *);
38623 	int (*xpo_result_payload)(struct svc_rqst *, unsigned int, unsigned int);
38624 	void (*xpo_release_rqst)(struct svc_rqst *);
38625 	void (*xpo_detach)(struct svc_xprt *);
38626 	void (*xpo_free)(struct svc_xprt *);
38627 	void (*xpo_secure_port)(struct svc_rqst *);
38628 	void (*xpo_kill_temp_xprt)(struct svc_xprt *);
38629 	void (*xpo_start_tls)(struct svc_xprt *);
38630 };
38631 
38632 struct svc_xprt_class {
38633 	const char *xcl_name;
38634 	struct module *xcl_owner;
38635 	const struct svc_xprt_ops *xcl_ops;
38636 	struct list_head xcl_list;
38637 	u32 xcl_max_payload;
38638 	int xcl_ident;
38639 };
38640 
38641 typedef bool (*smp_cond_func_t)(int, void *);
38642 
38643 struct node {
38644 	struct device dev;
38645 	struct list_head access_list;
38646 	struct work_struct node_work;
38647 };
38648 
38649 struct cpu {
38650 	int node_id;
38651 	int hotpluggable;
38652 	struct device dev;
38653 };
38654 
38655 struct membuf {
38656 	void *p;
38657 	size_t left;
38658 };
38659 
38660 struct user_regset;
38661 
38662 typedef int user_regset_active_fn(struct task_struct *, const struct user_regset *);
38663 
38664 typedef int user_regset_get2_fn(struct task_struct *, const struct user_regset *, struct membuf);
38665 
38666 typedef int user_regset_set_fn(struct task_struct *, const struct user_regset *, unsigned int, unsigned int, const void *, const void *);
38667 
38668 typedef int user_regset_writeback_fn(struct task_struct *, const struct user_regset *, int);
38669 
38670 struct user_regset {
38671 	user_regset_get2_fn *regset_get;
38672 	user_regset_set_fn *set;
38673 	user_regset_active_fn *active;
38674 	user_regset_writeback_fn *writeback;
38675 	unsigned int n;
38676 	unsigned int size;
38677 	unsigned int align;
38678 	unsigned int bias;
38679 	unsigned int core_note_type;
38680 };
38681 
38682 typedef __vector128 elf_vrreg_t;
38683 
38684 struct mce_error_info {
38685 	enum MCE_ErrorType error_type: 8;
38686 	union {
38687 		enum MCE_UeErrorType ue_error_type: 8;
38688 		enum MCE_SlbErrorType slb_error_type: 8;
38689 		enum MCE_EratErrorType erat_error_type: 8;
38690 		enum MCE_TlbErrorType tlb_error_type: 8;
38691 		enum MCE_UserErrorType user_error_type: 8;
38692 		enum MCE_RaErrorType ra_error_type: 8;
38693 		enum MCE_LinkErrorType link_error_type: 8;
38694 	} u;
38695 	enum MCE_Severity severity: 8;
38696 	enum MCE_Initiator initiator: 8;
38697 	enum MCE_ErrorClass error_class: 8;
38698 	bool sync_error;
38699 	bool ignore_event;
38700 };
38701 
38702 typedef struct {
38703 	u32 val;
38704 	u32 suffix;
38705 } ppc_inst_t;
38706 
38707 enum {
38708 	TLB_INVAL_SCOPE_GLOBAL = 0,
38709 	TLB_INVAL_SCOPE_LPID = 1,
38710 };
38711 
38712 struct instruction_op {
38713 	int type;
38714 	int reg;
38715 	long unsigned int val;
38716 	long unsigned int ea;
38717 	int update_reg;
38718 	int spr;
38719 	u32 ccval;
38720 	u32 xerval;
38721 	u8 element_size;
38722 	u8 vsx_flags;
38723 };
38724 
38725 struct mce_ierror_table {
38726 	long unsigned int srr1_mask;
38727 	long unsigned int srr1_value;
38728 	bool nip_valid;
38729 	unsigned int error_type;
38730 	unsigned int error_subtype;
38731 	unsigned int error_class;
38732 	unsigned int initiator;
38733 	unsigned int severity;
38734 	bool sync_error;
38735 };
38736 
38737 struct mce_derror_table {
38738 	long unsigned int dsisr_value;
38739 	bool dar_valid;
38740 	unsigned int error_type;
38741 	unsigned int error_subtype;
38742 	unsigned int error_class;
38743 	unsigned int initiator;
38744 	unsigned int severity;
38745 	bool sync_error;
38746 };
38747 
38748 typedef long unsigned int elf_greg_t64;
38749 
38750 typedef elf_greg_t64 elf_gregset_t64[48];
38751 
38752 typedef elf_gregset_t64 elf_gregset_t;
38753 
38754 struct elf64_phdr {
38755 	Elf64_Word p_type;
38756 	Elf64_Word p_flags;
38757 	Elf64_Off p_offset;
38758 	Elf64_Addr p_vaddr;
38759 	Elf64_Addr p_paddr;
38760 	Elf64_Xword p_filesz;
38761 	Elf64_Xword p_memsz;
38762 	Elf64_Xword p_align;
38763 };
38764 
38765 struct elf_siginfo {
38766 	int si_signo;
38767 	int si_code;
38768 	int si_errno;
38769 };
38770 
38771 struct elf_prstatus_common {
38772 	struct elf_siginfo pr_info;
38773 	short int pr_cursig;
38774 	long unsigned int pr_sigpend;
38775 	long unsigned int pr_sighold;
38776 	pid_t pr_pid;
38777 	pid_t pr_ppid;
38778 	pid_t pr_pgrp;
38779 	pid_t pr_sid;
38780 	struct __kernel_old_timeval pr_utime;
38781 	struct __kernel_old_timeval pr_stime;
38782 	struct __kernel_old_timeval pr_cutime;
38783 	struct __kernel_old_timeval pr_cstime;
38784 };
38785 
38786 struct elf_prstatus {
38787 	struct elf_prstatus_common common;
38788 	elf_gregset_t pr_reg;
38789 	int pr_fpvalid;
38790 };
38791 
38792 struct fadump_crash_info_header {
38793 	u64 magic_number;
38794 	u64 elfcorehdr_addr;
38795 	u32 crashing_cpu;
38796 	struct pt_regs regs;
38797 	struct cpumask cpu_mask;
38798 };
38799 
38800 struct fadump_memory_range {
38801 	u64 base;
38802 	u64 size;
38803 };
38804 
38805 struct fadump_mrange_info {
38806 	char name[16];
38807 	struct fadump_memory_range *mem_ranges;
38808 	u32 mem_ranges_sz;
38809 	u32 mem_range_cnt;
38810 	u32 max_mem_ranges;
38811 	bool is_static;
38812 };
38813 
38814 struct fadump_ops;
38815 
38816 struct fw_dump {
38817 	long unsigned int reserve_dump_area_start;
38818 	long unsigned int reserve_dump_area_size;
38819 	long unsigned int reserve_bootvar;
38820 	long unsigned int cpu_state_data_size;
38821 	u64 cpu_state_dest_vaddr;
38822 	u32 cpu_state_data_version;
38823 	u32 cpu_state_entry_size;
38824 	long unsigned int hpte_region_size;
38825 	long unsigned int boot_memory_size;
38826 	u64 boot_mem_dest_addr;
38827 	u64 boot_mem_addr[128];
38828 	u64 boot_mem_sz[128];
38829 	u64 boot_mem_top;
38830 	u64 boot_mem_regs_cnt;
38831 	long unsigned int fadumphdr_addr;
38832 	long unsigned int cpu_notes_buf_vaddr;
38833 	long unsigned int cpu_notes_buf_size;
38834 	u64 max_copy_size;
38835 	u64 kernel_metadata;
38836 	int ibm_configure_kernel_dump;
38837 	long unsigned int fadump_enabled: 1;
38838 	long unsigned int fadump_supported: 1;
38839 	long unsigned int dump_active: 1;
38840 	long unsigned int dump_registered: 1;
38841 	long unsigned int nocma: 1;
38842 	struct fadump_ops *ops;
38843 };
38844 
38845 struct fadump_ops {
38846 	u64 (*fadump_init_mem_struct)(struct fw_dump *);
38847 	u64 (*fadump_get_metadata_size)();
38848 	int (*fadump_setup_metadata)(struct fw_dump *);
38849 	u64 (*fadump_get_bootmem_min)();
38850 	int (*fadump_register)(struct fw_dump *);
38851 	int (*fadump_unregister)(struct fw_dump *);
38852 	int (*fadump_invalidate)(struct fw_dump *);
38853 	void (*fadump_cleanup)(struct fw_dump *);
38854 	int (*fadump_process)(struct fw_dump *);
38855 	void (*fadump_region_show)(struct fw_dump *, struct seq_file *);
38856 	void (*fadump_trigger)(struct fadump_crash_info_header *, const char *);
38857 };
38858 
38859 struct cma;
38860 
38861 struct vm_unmapped_area_info {
38862 	long unsigned int flags;
38863 	long unsigned int length;
38864 	long unsigned int low_limit;
38865 	long unsigned int high_limit;
38866 	long unsigned int align_mask;
38867 	long unsigned int align_offset;
38868 };
38869 
38870 typedef s8 int8_t;
38871 
38872 enum {
38873 	IRQ_SET_MASK_OK = 0,
38874 	IRQ_SET_MASK_OK_NOCOPY = 1,
38875 	IRQ_SET_MASK_OK_DONE = 2,
38876 };
38877 
38878 struct ics {
38879 	struct list_head link;
38880 	int (*check)(struct ics *, unsigned int);
38881 	void (*mask_unknown)(struct ics *, long unsigned int);
38882 	long int (*get_server)(struct ics *, long unsigned int);
38883 	int (*host_match)(struct ics *, struct device_node *);
38884 	struct irq_chip *chip;
38885 	char data[0];
38886 };
38887 
38888 struct pnv_rng {
38889 	void *regs;
38890 	void *regs_real;
38891 	long unsigned int mask;
38892 };
38893 
38894 struct iopf_device_param;
38895 
38896 struct iommu_fault_param;
38897 
38898 struct iommu_fwspec;
38899 
38900 struct dev_iommu {
38901 	struct mutex lock;
38902 	struct iommu_fault_param *fault_param;
38903 	struct iopf_device_param *iopf_param;
38904 	struct iommu_fwspec *fwspec;
38905 	struct iommu_device *iommu_dev;
38906 	void *priv;
38907 };
38908 
38909 struct hotplug_slot_ops;
38910 
38911 struct hotplug_slot {
38912 	const struct hotplug_slot_ops *ops;
38913 	struct list_head slot_list;
38914 	struct pci_slot *pci_slot;
38915 	struct module *owner;
38916 	const char *mod_name;
38917 };
38918 
38919 struct pci_host_bridge {
38920 	struct device dev;
38921 	struct pci_bus *bus;
38922 	struct pci_ops *ops;
38923 	struct pci_ops *child_ops;
38924 	void *sysdata;
38925 	int busnr;
38926 	int domain_nr;
38927 	struct list_head windows;
38928 	struct list_head dma_ranges;
38929 	u8 (*swizzle_irq)(struct pci_dev *, u8 *);
38930 	int (*map_irq)(const struct pci_dev *, u8, u8);
38931 	void (*release_fn)(struct pci_host_bridge *);
38932 	void *release_data;
38933 	unsigned int ignore_reset_delay: 1;
38934 	unsigned int no_ext_tags: 1;
38935 	unsigned int native_aer: 1;
38936 	unsigned int native_pcie_hotplug: 1;
38937 	unsigned int native_shpc_hotplug: 1;
38938 	unsigned int native_pme: 1;
38939 	unsigned int native_ltr: 1;
38940 	unsigned int native_dpc: 1;
38941 	unsigned int preserve_config: 1;
38942 	unsigned int size_windows: 1;
38943 	unsigned int msi_domain: 1;
38944 	resource_size_t (*align_resource)(struct pci_dev *, const struct resource *, resource_size_t, resource_size_t, resource_size_t);
38945 	long: 64;
38946 	long: 64;
38947 	long: 64;
38948 	long: 64;
38949 	long: 64;
38950 	long: 64;
38951 	long: 64;
38952 	long: 64;
38953 	long: 64;
38954 	long: 64;
38955 	long: 64;
38956 	long: 64;
38957 	long: 64;
38958 	long: 64;
38959 	long: 64;
38960 	long unsigned int private[0];
38961 };
38962 
38963 enum {
38964 	PCI_REASSIGN_ALL_RSRC = 1,
38965 	PCI_REASSIGN_ALL_BUS = 2,
38966 	PCI_PROBE_ONLY = 4,
38967 	PCI_CAN_SKIP_ISA_ALIGN = 8,
38968 	PCI_ENABLE_PROC_DOMAINS = 16,
38969 	PCI_COMPAT_DOMAIN_0 = 32,
38970 	PCI_SCAN_ALL_PCIE_DEVS = 64,
38971 };
38972 
38973 struct pci_fixup {
38974 	u16 vendor;
38975 	u16 device;
38976 	u32 class;
38977 	unsigned int class_shift;
38978 	void (*hook)(struct pci_dev *);
38979 };
38980 
38981 struct iommu_fault_unrecoverable {
38982 	__u32 reason;
38983 	__u32 flags;
38984 	__u32 pasid;
38985 	__u32 perm;
38986 	__u64 addr;
38987 	__u64 fetch_addr;
38988 };
38989 
38990 struct iommu_fault_page_request {
38991 	__u32 flags;
38992 	__u32 pasid;
38993 	__u32 grpid;
38994 	__u32 perm;
38995 	__u64 addr;
38996 	__u64 private_data[2];
38997 };
38998 
38999 struct iommu_fault {
39000 	__u32 type;
39001 	__u32 padding;
39002 	union {
39003 		struct iommu_fault_unrecoverable event;
39004 		struct iommu_fault_page_request prm;
39005 		__u8 padding2[56];
39006 	};
39007 };
39008 
39009 struct iommu_page_response {
39010 	__u32 argsz;
39011 	__u32 version;
39012 	__u32 flags;
39013 	__u32 pasid;
39014 	__u32 grpid;
39015 	__u32 code;
39016 };
39017 
39018 typedef int (*iommu_fault_handler_t)(struct iommu_domain *, struct device *, long unsigned int, int, void *);
39019 
39020 struct iommu_domain_geometry {
39021 	dma_addr_t aperture_start;
39022 	dma_addr_t aperture_end;
39023 	bool force_aperture;
39024 };
39025 
39026 struct iommu_dma_cookie;
39027 
39028 struct iommu_domain {
39029 	unsigned int type;
39030 	const struct iommu_domain_ops *ops;
39031 	long unsigned int pgsize_bitmap;
39032 	iommu_fault_handler_t handler;
39033 	void *handler_token;
39034 	struct iommu_domain_geometry geometry;
39035 	struct iommu_dma_cookie *iova_cookie;
39036 };
39037 
39038 typedef int (*iommu_dev_fault_handler_t)(struct iommu_fault *, void *);
39039 
39040 struct iommu_iotlb_gather;
39041 
39042 struct iommu_domain_ops {
39043 	int (*attach_dev)(struct iommu_domain *, struct device *);
39044 	void (*detach_dev)(struct iommu_domain *, struct device *);
39045 	int (*map)(struct iommu_domain *, long unsigned int, phys_addr_t, size_t, int, gfp_t);
39046 	int (*map_pages)(struct iommu_domain *, long unsigned int, phys_addr_t, size_t, size_t, int, gfp_t, size_t *);
39047 	size_t (*unmap)(struct iommu_domain *, long unsigned int, size_t, struct iommu_iotlb_gather *);
39048 	size_t (*unmap_pages)(struct iommu_domain *, long unsigned int, size_t, size_t, struct iommu_iotlb_gather *);
39049 	void (*flush_iotlb_all)(struct iommu_domain *);
39050 	void (*iotlb_sync_map)(struct iommu_domain *, long unsigned int, size_t);
39051 	void (*iotlb_sync)(struct iommu_domain *, struct iommu_iotlb_gather *);
39052 	phys_addr_t (*iova_to_phys)(struct iommu_domain *, dma_addr_t);
39053 	bool (*enforce_cache_coherency)(struct iommu_domain *);
39054 	int (*enable_nesting)(struct iommu_domain *);
39055 	int (*set_pgtable_quirks)(struct iommu_domain *, long unsigned int);
39056 	void (*free)(struct iommu_domain *);
39057 };
39058 
39059 struct iommu_iotlb_gather {
39060 	long unsigned int start;
39061 	long unsigned int end;
39062 	size_t pgsize;
39063 	struct list_head freelist;
39064 	bool queued;
39065 };
39066 
39067 struct iommu_device {
39068 	struct list_head list;
39069 	const struct iommu_ops *ops;
39070 	struct fwnode_handle *fwnode;
39071 	struct device *dev;
39072 };
39073 
39074 struct iommu_sva {
39075 	struct device *dev;
39076 };
39077 
39078 struct iommu_fault_event {
39079 	struct iommu_fault fault;
39080 	struct list_head list;
39081 };
39082 
39083 struct iommu_fault_param {
39084 	iommu_dev_fault_handler_t handler;
39085 	void *data;
39086 	struct list_head faults;
39087 	struct mutex lock;
39088 };
39089 
39090 struct iommu_fwspec {
39091 	const struct iommu_ops *ops;
39092 	struct fwnode_handle *iommu_fwnode;
39093 	u32 flags;
39094 	unsigned int num_ids;
39095 	u32 ids[0];
39096 };
39097 
39098 struct msi_bitmap {
39099 	struct device_node *of_node;
39100 	long unsigned int *bitmap;
39101 	spinlock_t lock;
39102 	unsigned int irq_count;
39103 	bool bitmap_from_slab;
39104 };
39105 
39106 struct hotplug_slot_ops {
39107 	int (*enable_slot)(struct hotplug_slot *);
39108 	int (*disable_slot)(struct hotplug_slot *);
39109 	int (*set_attention_status)(struct hotplug_slot *, u8);
39110 	int (*hardware_test)(struct hotplug_slot *, u32);
39111 	int (*get_power_status)(struct hotplug_slot *, u8 *);
39112 	int (*get_attention_status)(struct hotplug_slot *, u8 *);
39113 	int (*get_latch_status)(struct hotplug_slot *, u8 *);
39114 	int (*get_adapter_status)(struct hotplug_slot *, u8 *);
39115 	int (*reset_slot)(struct hotplug_slot *, bool);
39116 };
39117 
39118 enum OpalFreezeState {
39119 	OPAL_EEH_STOPPED_NOT_FROZEN = 0,
39120 	OPAL_EEH_STOPPED_MMIO_FREEZE = 1,
39121 	OPAL_EEH_STOPPED_DMA_FREEZE = 2,
39122 	OPAL_EEH_STOPPED_MMIO_DMA_FREEZE = 3,
39123 	OPAL_EEH_STOPPED_RESET = 4,
39124 	OPAL_EEH_STOPPED_TEMP_UNAVAIL = 5,
39125 	OPAL_EEH_STOPPED_PERM_UNAVAIL = 6,
39126 };
39127 
39128 enum OpalEehFreezeActionToken {
39129 	OPAL_EEH_ACTION_CLEAR_FREEZE_MMIO = 1,
39130 	OPAL_EEH_ACTION_CLEAR_FREEZE_DMA = 2,
39131 	OPAL_EEH_ACTION_CLEAR_FREEZE_ALL = 3,
39132 	OPAL_EEH_ACTION_SET_FREEZE_MMIO = 1,
39133 	OPAL_EEH_ACTION_SET_FREEZE_DMA = 2,
39134 	OPAL_EEH_ACTION_SET_FREEZE_ALL = 3,
39135 };
39136 
39137 enum {
39138 	OPAL_PHB_ERROR_DATA_TYPE_P7IOC = 1,
39139 	OPAL_PHB_ERROR_DATA_TYPE_PHB3 = 2,
39140 	OPAL_PHB_ERROR_DATA_TYPE_PHB4 = 3,
39141 };
39142 
39143 struct OpalIoPhbErrorCommon {
39144 	__be32 version;
39145 	__be32 ioType;
39146 	__be32 len;
39147 };
39148 
39149 struct OpalIoP7IOCPhbErrorData {
39150 	struct OpalIoPhbErrorCommon common;
39151 	__be32 brdgCtl;
39152 	__be32 portStatusReg;
39153 	__be32 rootCmplxStatus;
39154 	__be32 busAgentStatus;
39155 	__be32 deviceStatus;
39156 	__be32 slotStatus;
39157 	__be32 linkStatus;
39158 	__be32 devCmdStatus;
39159 	__be32 devSecStatus;
39160 	__be32 rootErrorStatus;
39161 	__be32 uncorrErrorStatus;
39162 	__be32 corrErrorStatus;
39163 	__be32 tlpHdr1;
39164 	__be32 tlpHdr2;
39165 	__be32 tlpHdr3;
39166 	__be32 tlpHdr4;
39167 	__be32 sourceId;
39168 	__be32 rsv3;
39169 	__be64 errorClass;
39170 	__be64 correlator;
39171 	__be64 p7iocPlssr;
39172 	__be64 p7iocCsr;
39173 	__be64 lemFir;
39174 	__be64 lemErrorMask;
39175 	__be64 lemWOF;
39176 	__be64 phbErrorStatus;
39177 	__be64 phbFirstErrorStatus;
39178 	__be64 phbErrorLog0;
39179 	__be64 phbErrorLog1;
39180 	__be64 mmioErrorStatus;
39181 	__be64 mmioFirstErrorStatus;
39182 	__be64 mmioErrorLog0;
39183 	__be64 mmioErrorLog1;
39184 	__be64 dma0ErrorStatus;
39185 	__be64 dma0FirstErrorStatus;
39186 	__be64 dma0ErrorLog0;
39187 	__be64 dma0ErrorLog1;
39188 	__be64 dma1ErrorStatus;
39189 	__be64 dma1FirstErrorStatus;
39190 	__be64 dma1ErrorLog0;
39191 	__be64 dma1ErrorLog1;
39192 	__be64 pestA[128];
39193 	__be64 pestB[128];
39194 };
39195 
39196 struct OpalIoPhb3ErrorData {
39197 	struct OpalIoPhbErrorCommon common;
39198 	__be32 brdgCtl;
39199 	__be32 portStatusReg;
39200 	__be32 rootCmplxStatus;
39201 	__be32 busAgentStatus;
39202 	__be32 deviceStatus;
39203 	__be32 slotStatus;
39204 	__be32 linkStatus;
39205 	__be32 devCmdStatus;
39206 	__be32 devSecStatus;
39207 	__be32 rootErrorStatus;
39208 	__be32 uncorrErrorStatus;
39209 	__be32 corrErrorStatus;
39210 	__be32 tlpHdr1;
39211 	__be32 tlpHdr2;
39212 	__be32 tlpHdr3;
39213 	__be32 tlpHdr4;
39214 	__be32 sourceId;
39215 	__be32 rsv3;
39216 	__be64 errorClass;
39217 	__be64 correlator;
39218 	__be64 nFir;
39219 	__be64 nFirMask;
39220 	__be64 nFirWOF;
39221 	__be64 phbPlssr;
39222 	__be64 phbCsr;
39223 	__be64 lemFir;
39224 	__be64 lemErrorMask;
39225 	__be64 lemWOF;
39226 	__be64 phbErrorStatus;
39227 	__be64 phbFirstErrorStatus;
39228 	__be64 phbErrorLog0;
39229 	__be64 phbErrorLog1;
39230 	__be64 mmioErrorStatus;
39231 	__be64 mmioFirstErrorStatus;
39232 	__be64 mmioErrorLog0;
39233 	__be64 mmioErrorLog1;
39234 	__be64 dma0ErrorStatus;
39235 	__be64 dma0FirstErrorStatus;
39236 	__be64 dma0ErrorLog0;
39237 	__be64 dma0ErrorLog1;
39238 	__be64 dma1ErrorStatus;
39239 	__be64 dma1FirstErrorStatus;
39240 	__be64 dma1ErrorLog0;
39241 	__be64 dma1ErrorLog1;
39242 	__be64 pestA[256];
39243 	__be64 pestB[256];
39244 };
39245 
39246 struct OpalIoPhb4ErrorData {
39247 	struct OpalIoPhbErrorCommon common;
39248 	__be32 brdgCtl;
39249 	__be32 deviceStatus;
39250 	__be32 slotStatus;
39251 	__be32 linkStatus;
39252 	__be32 devCmdStatus;
39253 	__be32 devSecStatus;
39254 	__be32 rootErrorStatus;
39255 	__be32 uncorrErrorStatus;
39256 	__be32 corrErrorStatus;
39257 	__be32 tlpHdr1;
39258 	__be32 tlpHdr2;
39259 	__be32 tlpHdr3;
39260 	__be32 tlpHdr4;
39261 	__be32 sourceId;
39262 	__be64 nFir;
39263 	__be64 nFirMask;
39264 	__be64 nFirWOF;
39265 	__be64 phbPlssr;
39266 	__be64 phbCsr;
39267 	__be64 lemFir;
39268 	__be64 lemErrorMask;
39269 	__be64 lemWOF;
39270 	__be64 phbErrorStatus;
39271 	__be64 phbFirstErrorStatus;
39272 	__be64 phbErrorLog0;
39273 	__be64 phbErrorLog1;
39274 	__be64 phbTxeErrorStatus;
39275 	__be64 phbTxeFirstErrorStatus;
39276 	__be64 phbTxeErrorLog0;
39277 	__be64 phbTxeErrorLog1;
39278 	__be64 phbRxeArbErrorStatus;
39279 	__be64 phbRxeArbFirstErrorStatus;
39280 	__be64 phbRxeArbErrorLog0;
39281 	__be64 phbRxeArbErrorLog1;
39282 	__be64 phbRxeMrgErrorStatus;
39283 	__be64 phbRxeMrgFirstErrorStatus;
39284 	__be64 phbRxeMrgErrorLog0;
39285 	__be64 phbRxeMrgErrorLog1;
39286 	__be64 phbRxeTceErrorStatus;
39287 	__be64 phbRxeTceFirstErrorStatus;
39288 	__be64 phbRxeTceErrorLog0;
39289 	__be64 phbRxeTceErrorLog1;
39290 	__be64 phbPblErrorStatus;
39291 	__be64 phbPblFirstErrorStatus;
39292 	__be64 phbPblErrorLog0;
39293 	__be64 phbPblErrorLog1;
39294 	__be64 phbPcieDlpErrorLog1;
39295 	__be64 phbPcieDlpErrorLog2;
39296 	__be64 phbPcieDlpErrorStatus;
39297 	__be64 phbRegbErrorStatus;
39298 	__be64 phbRegbFirstErrorStatus;
39299 	__be64 phbRegbErrorLog0;
39300 	__be64 phbRegbErrorLog1;
39301 	__be64 pestA[512];
39302 	__be64 pestB[512];
39303 };
39304 
39305 enum pnv_phb_type {
39306 	PNV_PHB_IODA1 = 0,
39307 	PNV_PHB_IODA2 = 1,
39308 	PNV_PHB_NPU_OCAPI = 2,
39309 };
39310 
39311 enum pnv_phb_model {
39312 	PNV_PHB_MODEL_UNKNOWN = 0,
39313 	PNV_PHB_MODEL_P7IOC = 1,
39314 	PNV_PHB_MODEL_PHB3 = 2,
39315 };
39316 
39317 struct pnv_phb;
39318 
39319 struct pnv_ioda_pe {
39320 	long unsigned int flags;
39321 	struct pnv_phb *phb;
39322 	int device_count;
39323 	struct pci_dev *pdev;
39324 	struct pci_bus *pbus;
39325 	unsigned int rid;
39326 	unsigned int pe_number;
39327 	struct iommu_table_group table_group;
39328 	bool tce_bypass_enabled;
39329 	uint64_t tce_bypass_base;
39330 	bool dma_setup_done;
39331 	int mve_number;
39332 	struct pnv_ioda_pe *master;
39333 	struct list_head slaves;
39334 	struct list_head list;
39335 };
39336 
39337 struct pnv_phb {
39338 	struct pci_controller *hose;
39339 	enum pnv_phb_type type;
39340 	enum pnv_phb_model model;
39341 	u64 hub_id;
39342 	u64 opal_id;
39343 	int flags;
39344 	void *regs;
39345 	u64 regs_phys;
39346 	spinlock_t lock;
39347 	int has_dbgfs;
39348 	struct dentry *dbgfs;
39349 	unsigned int msi_base;
39350 	struct msi_bitmap msi_bmp;
39351 	int (*init_m64)(struct pnv_phb *);
39352 	int (*get_pe_state)(struct pnv_phb *, int);
39353 	void (*freeze_pe)(struct pnv_phb *, int);
39354 	int (*unfreeze_pe)(struct pnv_phb *, int, int);
39355 	struct {
39356 		unsigned int total_pe_num;
39357 		unsigned int reserved_pe_idx;
39358 		unsigned int root_pe_idx;
39359 		unsigned int m32_size;
39360 		unsigned int m32_segsize;
39361 		unsigned int m32_pci_base;
39362 		unsigned int m64_bar_idx;
39363 		long unsigned int m64_size;
39364 		long unsigned int m64_segsize;
39365 		long unsigned int m64_base;
39366 		long unsigned int m64_bar_alloc;
39367 		unsigned int io_size;
39368 		unsigned int io_segsize;
39369 		unsigned int io_pci_base;
39370 		struct mutex pe_alloc_mutex;
39371 		long unsigned int *pe_alloc;
39372 		struct pnv_ioda_pe *pe_array;
39373 		unsigned int *m64_segmap;
39374 		unsigned int *m32_segmap;
39375 		unsigned int *io_segmap;
39376 		unsigned int dma32_count;
39377 		unsigned int *dma32_segmap;
39378 		int irq_chip_init;
39379 		struct irq_chip irq_chip;
39380 		struct list_head pe_list;
39381 		struct mutex pe_list_mutex;
39382 		unsigned int pe_rmap[65536];
39383 	} ioda;
39384 	unsigned int diag_data_size;
39385 	u8 *diag_data;
39386 };
39387 
39388 struct class_attribute {
39389 	struct attribute attr;
39390 	ssize_t (*show)(struct class *, struct class_attribute *, char *);
39391 	ssize_t (*store)(struct class *, struct class_attribute *, const char *, size_t);
39392 };
39393 
39394 struct pseries_hp_errorlog {
39395 	u8 resource;
39396 	u8 action;
39397 	u8 id_type;
39398 	u8 reserved;
39399 	union {
39400 		__be32 drc_index;
39401 		__be32 drc_count;
39402 		struct {
39403 			__be32 count;
39404 			__be32 index;
39405 		} ic;
39406 		char drc_name[1];
39407 	} _drc_u;
39408 };
39409 
39410 struct pseries_hp_work {
39411 	struct work_struct work;
39412 	struct pseries_hp_errorlog *errlog;
39413 };
39414 
39415 struct cc_workarea {
39416 	__be32 drc_index;
39417 	__be32 zero;
39418 	__be32 name_offset;
39419 	__be32 prop_length;
39420 	__be32 prop_offset;
39421 };
39422 
39423 struct hvcall_mpp_data {
39424 	long unsigned int entitled_mem;
39425 	long unsigned int mapped_mem;
39426 	short unsigned int group_num;
39427 	short unsigned int pool_num;
39428 	unsigned char mem_weight;
39429 	unsigned char unallocated_mem_weight;
39430 	long unsigned int unallocated_entitlement;
39431 	long unsigned int pool_size;
39432 	long int loan_request;
39433 	long unsigned int backing_mem;
39434 };
39435 
39436 typedef unsigned int isolate_mode_t;
39437 
39438 enum migrate_reason {
39439 	MR_COMPACTION = 0,
39440 	MR_MEMORY_FAILURE = 1,
39441 	MR_MEMORY_HOTPLUG = 2,
39442 	MR_SYSCALL = 3,
39443 	MR_MEMPOLICY_MBIND = 4,
39444 	MR_NUMA_MISPLACED = 5,
39445 	MR_CONTIG_RANGE = 6,
39446 	MR_LONGTERM_PIN = 7,
39447 	MR_DEMOTION = 8,
39448 	MR_TYPES = 9,
39449 };
39450 
39451 struct module_version_attribute {
39452 	struct module_attribute mattr;
39453 	const char *module_name;
39454 	const char *version;
39455 };
39456 
39457 struct dev_ext_attribute {
39458 	struct device_attribute attr;
39459 	void *var;
39460 };
39461 
39462 struct movable_operations {
39463 	bool (*isolate_page)(struct page *, isolate_mode_t);
39464 	int (*migrate_page)(struct page *, struct page *, enum migrate_mode);
39465 	void (*putback_page)(struct page *);
39466 };
39467 
39468 struct balloon_dev_info {
39469 	long unsigned int isolated_pages;
39470 	spinlock_t pages_lock;
39471 	struct list_head pages;
39472 	int (*migratepage)(struct balloon_dev_info *, struct page *, struct page *, enum migrate_mode);
39473 };
39474 
39475 struct hv_get_perf_counter_info_params {
39476 	__be32 counter_request;
39477 	__be32 starting_index;
39478 	__be16 secondary_index;
39479 	__be16 returned_values;
39480 	__be32 detail_rc;
39481 	__be16 cv_element_size;
39482 	__u8 counter_info_version_in;
39483 	__u8 counter_info_version_out;
39484 	__u8 reserved[12];
39485 	__u8 counter_value[0];
39486 };
39487 
39488 enum {
39489 	HV_GPCI_CM_GA = 128,
39490 	HV_GPCI_CM_EXPANDED = 64,
39491 	HV_GPCI_CM_LAB = 32,
39492 };
39493 
39494 enum hv_gpci_requests {
39495 	HV_GPCI_dispatch_timebase_by_processor = 16,
39496 	HV_GPCI_entitled_capped_uncapped_donated_idle_timebase_by_partition = 32,
39497 	HV_GPCI_run_instructions_run_cycles_by_partition = 48,
39498 	HV_GPCI_system_performance_capabilities = 64,
39499 	HV_GPCI_processor_bus_utilization_abc_links = 80,
39500 	HV_GPCI_processor_bus_utilization_wxyz_links = 96,
39501 	HV_GPCI_processor_bus_utilization_gx_links = 112,
39502 	HV_GPCI_processor_bus_utilization_mc_links = 128,
39503 	HV_GPCI_processor_core_utilization = 148,
39504 	HV_GPCI_partition_hypervisor_queuing_times = 224,
39505 	HV_GPCI_system_hypervisor_times = 240,
39506 	HV_GPCI_system_tlbie_count_and_time = 244,
39507 	HV_GPCI_partition_instruction_count_and_time = 256,
39508 };
39509 
39510 struct hv_gpci_system_performance_capabilities {
39511 	__u8 perf_collect_privileged;
39512 	__u8 capability_mask;
39513 	__u8 reserved[14];
39514 };
39515 
39516 struct hv_perf_caps {
39517 	u16 version;
39518 	u16 collect_privileged: 1;
39519 	u16 ga: 1;
39520 	u16 expanded: 1;
39521 	u16 lab: 1;
39522 	u16 unused: 12;
39523 };
39524 
39525 struct p {
39526 	struct hv_get_perf_counter_info_params params;
39527 	struct hv_gpci_system_performance_capabilities caps;
39528 };
39529 
39530 typedef struct elf64_phdr Elf64_Phdr;
39531 
39532 struct kexec_buf {
39533 	struct kimage *image;
39534 	void *buffer;
39535 	long unsigned int bufsz;
39536 	long unsigned int mem;
39537 	long unsigned int memsz;
39538 	long unsigned int buf_align;
39539 	long unsigned int buf_min;
39540 	long unsigned int buf_max;
39541 	bool top_down;
39542 };
39543 
39544 struct umem_info {
39545 	u64 *buf;
39546 	u32 size;
39547 	u32 max_entries;
39548 	u32 idx;
39549 	unsigned int nr_ranges;
39550 	const struct crash_mem_range *ranges;
39551 };
39552 
39553 struct radix_tree_preload {
39554 	local_lock_t lock;
39555 	unsigned int nr;
39556 	struct xa_node *nodes;
39557 };
39558 
39559 struct mutex_waiter {
39560 	struct list_head list;
39561 	struct task_struct *task;
39562 	struct ww_acquire_ctx *ww_ctx;
39563 	void *magic;
39564 };
39565 
39566 struct swait_queue {
39567 	struct task_struct *task;
39568 	struct list_head task_list;
39569 };
39570 
39571 typedef int suspend_state_t;
39572 
39573 enum suspend_stat_step {
39574 	SUSPEND_FREEZE = 1,
39575 	SUSPEND_PREPARE = 2,
39576 	SUSPEND_SUSPEND = 3,
39577 	SUSPEND_SUSPEND_LATE = 4,
39578 	SUSPEND_SUSPEND_NOIRQ = 5,
39579 	SUSPEND_RESUME_NOIRQ = 6,
39580 	SUSPEND_RESUME_EARLY = 7,
39581 	SUSPEND_RESUME = 8,
39582 };
39583 
39584 struct suspend_stats {
39585 	int success;
39586 	int fail;
39587 	int failed_freeze;
39588 	int failed_prepare;
39589 	int failed_suspend;
39590 	int failed_suspend_late;
39591 	int failed_suspend_noirq;
39592 	int failed_resume;
39593 	int failed_resume_early;
39594 	int failed_resume_noirq;
39595 	int last_failed_dev;
39596 	char failed_devs[80];
39597 	int last_failed_errno;
39598 	int errno[2];
39599 	int last_failed_step;
39600 	enum suspend_stat_step failed_steps[2];
39601 };
39602 
39603 struct platform_suspend_ops {
39604 	int (*valid)(suspend_state_t);
39605 	int (*begin)(suspend_state_t);
39606 	int (*prepare)();
39607 	int (*prepare_late)();
39608 	int (*enter)(suspend_state_t);
39609 	void (*wake)();
39610 	void (*finish)();
39611 	bool (*suspend_again)();
39612 	void (*end)();
39613 	void (*recover)();
39614 };
39615 
39616 struct platform_s2idle_ops {
39617 	int (*begin)();
39618 	int (*prepare)();
39619 	int (*prepare_late)();
39620 	bool (*wake)();
39621 	void (*restore_early)();
39622 	void (*restore)();
39623 	void (*end)();
39624 };
39625 
39626 enum s2idle_states {
39627 	S2IDLE_STATE_NONE = 0,
39628 	S2IDLE_STATE_ENTER = 1,
39629 	S2IDLE_STATE_WAKE = 2,
39630 };
39631 
39632 enum {
39633 	TEST_NONE = 0,
39634 	TEST_CORE = 1,
39635 	TEST_CPUS = 2,
39636 	TEST_PLATFORM = 3,
39637 	TEST_DEVICES = 4,
39638 	TEST_FREEZER = 5,
39639 	__TEST_AFTER_LAST = 6,
39640 };
39641 
39642 enum {
39643 	IRQCHIP_SET_TYPE_MASKED = 1,
39644 	IRQCHIP_EOI_IF_HANDLED = 2,
39645 	IRQCHIP_MASK_ON_SUSPEND = 4,
39646 	IRQCHIP_ONOFFLINE_ENABLED = 8,
39647 	IRQCHIP_SKIP_SET_WAKE = 16,
39648 	IRQCHIP_ONESHOT_SAFE = 32,
39649 	IRQCHIP_EOI_THREADED = 64,
39650 	IRQCHIP_SUPPORTS_LEVEL_MSI = 128,
39651 	IRQCHIP_SUPPORTS_NMI = 256,
39652 	IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND = 512,
39653 	IRQCHIP_AFFINITY_PRE_STARTUP = 1024,
39654 	IRQCHIP_IMMUTABLE = 2048,
39655 };
39656 
39657 struct syscore_ops {
39658 	struct list_head node;
39659 	int (*suspend)();
39660 	void (*resume)();
39661 	void (*shutdown)();
39662 };
39663 
39664 enum {
39665 	IRQS_AUTODETECT = 1,
39666 	IRQS_SPURIOUS_DISABLED = 2,
39667 	IRQS_POLL_INPROGRESS = 8,
39668 	IRQS_ONESHOT = 32,
39669 	IRQS_REPLAY = 64,
39670 	IRQS_WAITING = 128,
39671 	IRQS_PENDING = 512,
39672 	IRQS_SUSPENDED = 2048,
39673 	IRQS_TIMINGS = 4096,
39674 	IRQS_NMI = 8192,
39675 };
39676 
39677 enum {
39678 	_IRQ_DEFAULT_INIT_FLAGS = 2048,
39679 	_IRQ_PER_CPU = 512,
39680 	_IRQ_LEVEL = 256,
39681 	_IRQ_NOPROBE = 1024,
39682 	_IRQ_NOREQUEST = 2048,
39683 	_IRQ_NOTHREAD = 65536,
39684 	_IRQ_NOAUTOEN = 4096,
39685 	_IRQ_MOVE_PCNTXT = 16384,
39686 	_IRQ_NO_BALANCING = 8192,
39687 	_IRQ_NESTED_THREAD = 32768,
39688 	_IRQ_PER_CPU_DEVID = 131072,
39689 	_IRQ_IS_POLLED = 262144,
39690 	_IRQ_DISABLE_UNLAZY = 524288,
39691 	_IRQ_HIDDEN = 1048576,
39692 	_IRQ_NO_DEBUG = 2097152,
39693 	_IRQF_MODIFY_MASK = 2096911,
39694 };
39695 
39696 struct _ddebug;
39697 
39698 struct load_info {
39699 	const char *name;
39700 	struct module *mod;
39701 	Elf64_Ehdr *hdr;
39702 	long unsigned int len;
39703 	Elf64_Shdr *sechdrs;
39704 	char *secstrings;
39705 	char *strtab;
39706 	long unsigned int symoffs;
39707 	long unsigned int stroffs;
39708 	long unsigned int init_typeoffs;
39709 	long unsigned int core_typeoffs;
39710 	struct _ddebug *debug;
39711 	unsigned int num_debug;
39712 	bool sig_ok;
39713 	long unsigned int mod_kallsyms_init_off;
39714 	struct {
39715 		unsigned int sym;
39716 		unsigned int str;
39717 		unsigned int mod;
39718 		unsigned int vers;
39719 		unsigned int info;
39720 		unsigned int pcpu;
39721 	} index;
39722 };
39723 
39724 enum clocksource_ids {
39725 	CSID_GENERIC = 0,
39726 	CSID_ARM_ARCH_COUNTER = 1,
39727 	CSID_MAX = 2,
39728 };
39729 
39730 enum vdso_clock_mode {
39731 	VDSO_CLOCKMODE_NONE = 0,
39732 	VDSO_CLOCKMODE_ARCHTIMER = 1,
39733 	VDSO_CLOCKMODE_MAX = 2,
39734 	VDSO_CLOCKMODE_TIMENS = 2147483647,
39735 };
39736 
39737 struct clocksource {
39738 	u64 (*read)(struct clocksource *);
39739 	u64 mask;
39740 	u32 mult;
39741 	u32 shift;
39742 	u64 max_idle_ns;
39743 	u32 maxadj;
39744 	u32 uncertainty_margin;
39745 	u64 max_cycles;
39746 	const char *name;
39747 	struct list_head list;
39748 	int rating;
39749 	enum clocksource_ids id;
39750 	enum vdso_clock_mode vdso_clock_mode;
39751 	long unsigned int flags;
39752 	int (*enable)(struct clocksource *);
39753 	void (*disable)(struct clocksource *);
39754 	void (*suspend)(struct clocksource *);
39755 	void (*resume)(struct clocksource *);
39756 	void (*mark_unstable)(struct clocksource *);
39757 	void (*tick_stable)(struct clocksource *);
39758 	struct module *owner;
39759 };
39760 
39761 enum tick_device_mode {
39762 	TICKDEV_MODE_PERIODIC = 0,
39763 	TICKDEV_MODE_ONESHOT = 1,
39764 };
39765 
39766 struct clock_event_device;
39767 
39768 struct tick_device {
39769 	struct clock_event_device *evtdev;
39770 	enum tick_device_mode mode;
39771 };
39772 
39773 enum clock_event_state {
39774 	CLOCK_EVT_STATE_DETACHED = 0,
39775 	CLOCK_EVT_STATE_SHUTDOWN = 1,
39776 	CLOCK_EVT_STATE_PERIODIC = 2,
39777 	CLOCK_EVT_STATE_ONESHOT = 3,
39778 	CLOCK_EVT_STATE_ONESHOT_STOPPED = 4,
39779 };
39780 
39781 struct clock_event_device {
39782 	void (*event_handler)(struct clock_event_device *);
39783 	int (*set_next_event)(long unsigned int, struct clock_event_device *);
39784 	int (*set_next_ktime)(ktime_t, struct clock_event_device *);
39785 	ktime_t next_event;
39786 	u64 max_delta_ns;
39787 	u64 min_delta_ns;
39788 	u32 mult;
39789 	u32 shift;
39790 	enum clock_event_state state_use_accessors;
39791 	unsigned int features;
39792 	long unsigned int retries;
39793 	int (*set_state_periodic)(struct clock_event_device *);
39794 	int (*set_state_oneshot)(struct clock_event_device *);
39795 	int (*set_state_oneshot_stopped)(struct clock_event_device *);
39796 	int (*set_state_shutdown)(struct clock_event_device *);
39797 	int (*tick_resume)(struct clock_event_device *);
39798 	void (*broadcast)(const struct cpumask *);
39799 	void (*suspend)(struct clock_event_device *);
39800 	void (*resume)(struct clock_event_device *);
39801 	long unsigned int min_delta_ticks;
39802 	long unsigned int max_delta_ticks;
39803 	const char *name;
39804 	int rating;
39805 	int irq;
39806 	int bound_on;
39807 	const struct cpumask *cpumask;
39808 	struct list_head list;
39809 	struct module *owner;
39810 	long: 64;
39811 	long: 64;
39812 	long: 64;
39813 	long: 64;
39814 	long: 64;
39815 	long: 64;
39816 };
39817 
39818 typedef struct {
39819 	unsigned int __softirq_pending;
39820 	unsigned int timer_irqs_event;
39821 	unsigned int broadcast_irqs_event;
39822 	unsigned int timer_irqs_others;
39823 	unsigned int pmu_irqs;
39824 	unsigned int mce_exceptions;
39825 	unsigned int spurious_irqs;
39826 	unsigned int sreset_irqs;
39827 	unsigned int soft_nmi_irqs;
39828 	unsigned int doorbell_irqs;
39829 	long: 64;
39830 	long: 64;
39831 	long: 64;
39832 	long: 64;
39833 	long: 64;
39834 	long: 64;
39835 	long: 64;
39836 	long: 64;
39837 	long: 64;
39838 	long: 64;
39839 	long: 64;
39840 } irq_cpustat_t;
39841 
39842 enum tick_nohz_mode {
39843 	NOHZ_MODE_INACTIVE = 0,
39844 	NOHZ_MODE_LOWRES = 1,
39845 	NOHZ_MODE_HIGHRES = 2,
39846 };
39847 
39848 struct tick_sched {
39849 	struct hrtimer sched_timer;
39850 	long unsigned int check_clocks;
39851 	enum tick_nohz_mode nohz_mode;
39852 	unsigned int inidle: 1;
39853 	unsigned int tick_stopped: 1;
39854 	unsigned int idle_active: 1;
39855 	unsigned int do_timer_last: 1;
39856 	unsigned int got_idle_tick: 1;
39857 	ktime_t last_tick;
39858 	ktime_t next_tick;
39859 	long unsigned int idle_jiffies;
39860 	long unsigned int idle_calls;
39861 	long unsigned int idle_sleeps;
39862 	ktime_t idle_entrytime;
39863 	ktime_t idle_waketime;
39864 	ktime_t idle_exittime;
39865 	ktime_t idle_sleeptime;
39866 	ktime_t iowait_sleeptime;
39867 	long unsigned int last_jiffies;
39868 	u64 timer_expires;
39869 	u64 timer_expires_base;
39870 	u64 next_timer;
39871 	ktime_t idle_expires;
39872 	atomic_t tick_dep_mask;
39873 	long unsigned int last_tick_jiffies;
39874 	unsigned int stalled_jiffies;
39875 };
39876 
39877 typedef u32 note_buf_t[134];
39878 
39879 enum kernel_read_file_id {
39880 	READING_UNKNOWN = 0,
39881 	READING_FIRMWARE = 1,
39882 	READING_MODULE = 2,
39883 	READING_KEXEC_IMAGE = 3,
39884 	READING_KEXEC_INITRAMFS = 4,
39885 	READING_POLICY = 5,
39886 	READING_X509_CERTIFICATE = 6,
39887 	READING_MAX_ID = 7,
39888 };
39889 
39890 enum hash_algo {
39891 	HASH_ALGO_MD4 = 0,
39892 	HASH_ALGO_MD5 = 1,
39893 	HASH_ALGO_SHA1 = 2,
39894 	HASH_ALGO_RIPE_MD_160 = 3,
39895 	HASH_ALGO_SHA256 = 4,
39896 	HASH_ALGO_SHA384 = 5,
39897 	HASH_ALGO_SHA512 = 6,
39898 	HASH_ALGO_SHA224 = 7,
39899 	HASH_ALGO_RIPE_MD_128 = 8,
39900 	HASH_ALGO_RIPE_MD_256 = 9,
39901 	HASH_ALGO_RIPE_MD_320 = 10,
39902 	HASH_ALGO_WP_256 = 11,
39903 	HASH_ALGO_WP_384 = 12,
39904 	HASH_ALGO_WP_512 = 13,
39905 	HASH_ALGO_TGR_128 = 14,
39906 	HASH_ALGO_TGR_160 = 15,
39907 	HASH_ALGO_TGR_192 = 16,
39908 	HASH_ALGO_SM3_256 = 17,
39909 	HASH_ALGO_STREEBOG_256 = 18,
39910 	HASH_ALGO_STREEBOG_512 = 19,
39911 	HASH_ALGO__LAST = 20,
39912 };
39913 
39914 struct crypto_shash;
39915 
39916 struct shash_desc {
39917 	struct crypto_shash *tfm;
39918 	void *__ctx[0];
39919 };
39920 
39921 struct crypto_shash {
39922 	unsigned int descsize;
39923 	struct crypto_tfm base;
39924 };
39925 
39926 struct shash_alg {
39927 	int (*init)(struct shash_desc *);
39928 	int (*update)(struct shash_desc *, const u8 *, unsigned int);
39929 	int (*final)(struct shash_desc *, u8 *);
39930 	int (*finup)(struct shash_desc *, const u8 *, unsigned int, u8 *);
39931 	int (*digest)(struct shash_desc *, const u8 *, unsigned int, u8 *);
39932 	int (*export)(struct shash_desc *, void *);
39933 	int (*import)(struct shash_desc *, const void *);
39934 	int (*setkey)(struct crypto_shash *, const u8 *, unsigned int);
39935 	int (*init_tfm)(struct crypto_shash *);
39936 	void (*exit_tfm)(struct crypto_shash *);
39937 	unsigned int descsize;
39938 	long: 0;
39939 	unsigned int digestsize;
39940 	unsigned int statesize;
39941 	struct crypto_alg base;
39942 };
39943 
39944 struct kexec_sha_region {
39945 	long unsigned int start;
39946 	long unsigned int len;
39947 };
39948 
39949 struct task_delay_info {
39950 	raw_spinlock_t lock;
39951 	u64 blkio_start;
39952 	u64 blkio_delay;
39953 	u64 swapin_start;
39954 	u64 swapin_delay;
39955 	u32 blkio_count;
39956 	u32 swapin_count;
39957 	u64 freepages_start;
39958 	u64 freepages_delay;
39959 	u64 thrashing_start;
39960 	u64 thrashing_delay;
39961 	u64 compact_start;
39962 	u64 compact_delay;
39963 	u64 wpcopy_start;
39964 	u64 wpcopy_delay;
39965 	u32 freepages_count;
39966 	u32 thrashing_count;
39967 	u32 compact_count;
39968 	u32 wpcopy_count;
39969 };
39970 
39971 enum trace_iter_flags {
39972 	TRACE_FILE_LAT_FMT = 1,
39973 	TRACE_FILE_ANNOTATE = 2,
39974 	TRACE_FILE_TIME_IN_NS = 4,
39975 };
39976 
39977 struct ftrace_entry {
39978 	struct trace_entry ent;
39979 	long unsigned int ip;
39980 	long unsigned int parent_ip;
39981 };
39982 
39983 struct ctx_switch_entry {
39984 	struct trace_entry ent;
39985 	unsigned int prev_pid;
39986 	unsigned int next_pid;
39987 	unsigned int next_cpu;
39988 	unsigned char prev_prio;
39989 	unsigned char prev_state;
39990 	unsigned char next_prio;
39991 	unsigned char next_state;
39992 };
39993 
39994 struct stack_entry {
39995 	struct trace_entry ent;
39996 	int size;
39997 	long unsigned int caller[8];
39998 };
39999 
40000 struct userstack_entry {
40001 	struct trace_entry ent;
40002 	unsigned int tgid;
40003 	long unsigned int caller[8];
40004 };
40005 
40006 struct bprint_entry {
40007 	struct trace_entry ent;
40008 	long unsigned int ip;
40009 	const char *fmt;
40010 	u32 buf[0];
40011 };
40012 
40013 struct print_entry {
40014 	struct trace_entry ent;
40015 	long unsigned int ip;
40016 	char buf[0];
40017 };
40018 
40019 struct raw_data_entry {
40020 	struct trace_entry ent;
40021 	unsigned int id;
40022 	char buf[0];
40023 };
40024 
40025 struct bputs_entry {
40026 	struct trace_entry ent;
40027 	long unsigned int ip;
40028 	const char *str;
40029 };
40030 
40031 struct hwlat_entry {
40032 	struct trace_entry ent;
40033 	u64 duration;
40034 	u64 outer_duration;
40035 	u64 nmi_total_ts;
40036 	struct timespec64 timestamp;
40037 	unsigned int nmi_count;
40038 	unsigned int seqnum;
40039 	unsigned int count;
40040 };
40041 
40042 struct func_repeats_entry {
40043 	struct trace_entry ent;
40044 	long unsigned int ip;
40045 	long unsigned int parent_ip;
40046 	u16 count;
40047 	u16 top_delta_ts;
40048 	u32 bottom_delta_ts;
40049 };
40050 
40051 struct osnoise_entry {
40052 	struct trace_entry ent;
40053 	u64 noise;
40054 	u64 runtime;
40055 	u64 max_sample;
40056 	unsigned int hw_count;
40057 	unsigned int nmi_count;
40058 	unsigned int irq_count;
40059 	unsigned int softirq_count;
40060 	unsigned int thread_count;
40061 };
40062 
40063 struct timerlat_entry {
40064 	struct trace_entry ent;
40065 	unsigned int seqnum;
40066 	int context;
40067 	u64 timer_latency;
40068 };
40069 
40070 struct trace_mark {
40071 	long long unsigned int val;
40072 	char sym;
40073 };
40074 
40075 enum {
40076 	FTRACE_OPS_FL_ENABLED = 1,
40077 	FTRACE_OPS_FL_DYNAMIC = 2,
40078 	FTRACE_OPS_FL_SAVE_REGS = 4,
40079 	FTRACE_OPS_FL_SAVE_REGS_IF_SUPPORTED = 8,
40080 	FTRACE_OPS_FL_RECURSION = 16,
40081 	FTRACE_OPS_FL_STUB = 32,
40082 	FTRACE_OPS_FL_INITIALIZED = 64,
40083 	FTRACE_OPS_FL_DELETED = 128,
40084 	FTRACE_OPS_FL_ADDING = 256,
40085 	FTRACE_OPS_FL_REMOVING = 512,
40086 	FTRACE_OPS_FL_MODIFYING = 1024,
40087 	FTRACE_OPS_FL_ALLOC_TRAMP = 2048,
40088 	FTRACE_OPS_FL_IPMODIFY = 4096,
40089 	FTRACE_OPS_FL_PID = 8192,
40090 	FTRACE_OPS_FL_RCU = 16384,
40091 	FTRACE_OPS_FL_TRACE_ARRAY = 32768,
40092 	FTRACE_OPS_FL_PERMANENT = 65536,
40093 	FTRACE_OPS_FL_DIRECT = 131072,
40094 };
40095 
40096 enum {
40097 	FTRACE_UPDATE_CALLS = 1,
40098 	FTRACE_DISABLE_CALLS = 2,
40099 	FTRACE_UPDATE_TRACE_FUNC = 4,
40100 	FTRACE_START_FUNC_RET = 8,
40101 	FTRACE_STOP_FUNC_RET = 16,
40102 	FTRACE_MAY_SLEEP = 32,
40103 };
40104 
40105 enum bpf_task_fd_type {
40106 	BPF_FD_TYPE_RAW_TRACEPOINT = 0,
40107 	BPF_FD_TYPE_TRACEPOINT = 1,
40108 	BPF_FD_TYPE_KPROBE = 2,
40109 	BPF_FD_TYPE_KRETPROBE = 3,
40110 	BPF_FD_TYPE_UPROBE = 4,
40111 	BPF_FD_TYPE_URETPROBE = 5,
40112 };
40113 
40114 enum uprobe_filter_ctx {
40115 	UPROBE_FILTER_REGISTER = 0,
40116 	UPROBE_FILTER_UNREGISTER = 1,
40117 	UPROBE_FILTER_MMAP = 2,
40118 };
40119 
40120 struct uprobe_consumer {
40121 	int (*handler)(struct uprobe_consumer *, struct pt_regs *);
40122 	int (*ret_handler)(struct uprobe_consumer *, long unsigned int, struct pt_regs *);
40123 	bool (*filter)(struct uprobe_consumer *, enum uprobe_filter_ctx, struct mm_struct *);
40124 	struct uprobe_consumer *next;
40125 };
40126 
40127 struct bpf_trace_run_ctx {
40128 	struct bpf_run_ctx run_ctx;
40129 	u64 bpf_cookie;
40130 };
40131 
40132 typedef u32 (*bpf_prog_run_fn)(const struct bpf_prog *, const void *);
40133 
40134 struct dyn_event;
40135 
40136 struct dyn_event_operations {
40137 	struct list_head list;
40138 	int (*create)(const char *);
40139 	int (*show)(struct seq_file *, struct dyn_event *);
40140 	bool (*is_busy)(struct dyn_event *);
40141 	int (*free)(struct dyn_event *);
40142 	bool (*match)(const char *, const char *, int, const char **, struct dyn_event *);
40143 };
40144 
40145 struct dyn_event {
40146 	struct list_head list;
40147 	struct dyn_event_operations *ops;
40148 };
40149 
40150 typedef int (*print_type_func_t)(struct trace_seq *, void *, void *);
40151 
40152 enum fetch_op {
40153 	FETCH_OP_NOP = 0,
40154 	FETCH_OP_REG = 1,
40155 	FETCH_OP_STACK = 2,
40156 	FETCH_OP_STACKP = 3,
40157 	FETCH_OP_RETVAL = 4,
40158 	FETCH_OP_IMM = 5,
40159 	FETCH_OP_COMM = 6,
40160 	FETCH_OP_ARG = 7,
40161 	FETCH_OP_FOFFS = 8,
40162 	FETCH_OP_DATA = 9,
40163 	FETCH_OP_DEREF = 10,
40164 	FETCH_OP_UDEREF = 11,
40165 	FETCH_OP_ST_RAW = 12,
40166 	FETCH_OP_ST_MEM = 13,
40167 	FETCH_OP_ST_UMEM = 14,
40168 	FETCH_OP_ST_STRING = 15,
40169 	FETCH_OP_ST_USTRING = 16,
40170 	FETCH_OP_MOD_BF = 17,
40171 	FETCH_OP_LP_ARRAY = 18,
40172 	FETCH_OP_TP_ARG = 19,
40173 	FETCH_OP_END = 20,
40174 	FETCH_NOP_SYMBOL = 21,
40175 };
40176 
40177 struct fetch_insn {
40178 	enum fetch_op op;
40179 	union {
40180 		unsigned int param;
40181 		struct {
40182 			unsigned int size;
40183 			int offset;
40184 		};
40185 		struct {
40186 			unsigned char basesize;
40187 			unsigned char lshift;
40188 			unsigned char rshift;
40189 		};
40190 		long unsigned int immediate;
40191 		void *data;
40192 	};
40193 };
40194 
40195 struct fetch_type {
40196 	const char *name;
40197 	size_t size;
40198 	int is_signed;
40199 	print_type_func_t print;
40200 	const char *fmt;
40201 	const char *fmttype;
40202 };
40203 
40204 struct probe_arg {
40205 	struct fetch_insn *code;
40206 	bool dynamic;
40207 	unsigned int offset;
40208 	unsigned int count;
40209 	const char *name;
40210 	const char *comm;
40211 	char *fmt;
40212 	const struct fetch_type *type;
40213 };
40214 
40215 struct trace_uprobe_filter {
40216 	rwlock_t rwlock;
40217 	int nr_systemwide;
40218 	struct list_head perf_events;
40219 };
40220 
40221 struct trace_probe_event {
40222 	unsigned int flags;
40223 	struct trace_event_class class;
40224 	struct trace_event_call call;
40225 	struct list_head files;
40226 	struct list_head probes;
40227 	struct trace_uprobe_filter filter[0];
40228 };
40229 
40230 struct trace_probe {
40231 	struct list_head list;
40232 	struct trace_probe_event *event;
40233 	ssize_t size;
40234 	unsigned int nr_args;
40235 	struct probe_arg args[0];
40236 };
40237 
40238 struct event_file_link {
40239 	struct trace_event_file *file;
40240 	struct list_head list;
40241 };
40242 
40243 enum probe_print_type {
40244 	PROBE_PRINT_NORMAL = 0,
40245 	PROBE_PRINT_RETURN = 1,
40246 	PROBE_PRINT_EVENT = 2,
40247 };
40248 
40249 enum {
40250 	TP_ERR_FILE_NOT_FOUND = 0,
40251 	TP_ERR_NO_REGULAR_FILE = 1,
40252 	TP_ERR_BAD_REFCNT = 2,
40253 	TP_ERR_REFCNT_OPEN_BRACE = 3,
40254 	TP_ERR_BAD_REFCNT_SUFFIX = 4,
40255 	TP_ERR_BAD_UPROBE_OFFS = 5,
40256 	TP_ERR_MAXACT_NO_KPROBE = 6,
40257 	TP_ERR_BAD_MAXACT = 7,
40258 	TP_ERR_MAXACT_TOO_BIG = 8,
40259 	TP_ERR_BAD_PROBE_ADDR = 9,
40260 	TP_ERR_BAD_RETPROBE = 10,
40261 	TP_ERR_BAD_ADDR_SUFFIX = 11,
40262 	TP_ERR_NO_GROUP_NAME = 12,
40263 	TP_ERR_GROUP_TOO_LONG = 13,
40264 	TP_ERR_BAD_GROUP_NAME = 14,
40265 	TP_ERR_NO_EVENT_NAME = 15,
40266 	TP_ERR_EVENT_TOO_LONG = 16,
40267 	TP_ERR_BAD_EVENT_NAME = 17,
40268 	TP_ERR_EVENT_EXIST = 18,
40269 	TP_ERR_RETVAL_ON_PROBE = 19,
40270 	TP_ERR_BAD_STACK_NUM = 20,
40271 	TP_ERR_BAD_ARG_NUM = 21,
40272 	TP_ERR_BAD_VAR = 22,
40273 	TP_ERR_BAD_REG_NAME = 23,
40274 	TP_ERR_BAD_MEM_ADDR = 24,
40275 	TP_ERR_BAD_IMM = 25,
40276 	TP_ERR_IMMSTR_NO_CLOSE = 26,
40277 	TP_ERR_FILE_ON_KPROBE = 27,
40278 	TP_ERR_BAD_FILE_OFFS = 28,
40279 	TP_ERR_SYM_ON_UPROBE = 29,
40280 	TP_ERR_TOO_MANY_OPS = 30,
40281 	TP_ERR_DEREF_NEED_BRACE = 31,
40282 	TP_ERR_BAD_DEREF_OFFS = 32,
40283 	TP_ERR_DEREF_OPEN_BRACE = 33,
40284 	TP_ERR_COMM_CANT_DEREF = 34,
40285 	TP_ERR_BAD_FETCH_ARG = 35,
40286 	TP_ERR_ARRAY_NO_CLOSE = 36,
40287 	TP_ERR_BAD_ARRAY_SUFFIX = 37,
40288 	TP_ERR_BAD_ARRAY_NUM = 38,
40289 	TP_ERR_ARRAY_TOO_BIG = 39,
40290 	TP_ERR_BAD_TYPE = 40,
40291 	TP_ERR_BAD_STRING = 41,
40292 	TP_ERR_BAD_BITFIELD = 42,
40293 	TP_ERR_ARG_NAME_TOO_LONG = 43,
40294 	TP_ERR_NO_ARG_NAME = 44,
40295 	TP_ERR_BAD_ARG_NAME = 45,
40296 	TP_ERR_USED_ARG_NAME = 46,
40297 	TP_ERR_ARG_TOO_LONG = 47,
40298 	TP_ERR_NO_ARG_BODY = 48,
40299 	TP_ERR_BAD_INSN_BNDRY = 49,
40300 	TP_ERR_FAIL_REG_PROBE = 50,
40301 	TP_ERR_DIFF_PROBE_TYPE = 51,
40302 	TP_ERR_DIFF_ARG_TYPE = 52,
40303 	TP_ERR_SAME_PROBE = 53,
40304 	TP_ERR_NO_EVENT_INFO = 54,
40305 	TP_ERR_BAD_ATTACH_EVENT = 55,
40306 	TP_ERR_BAD_ATTACH_ARG = 56,
40307 };
40308 
40309 struct uprobe_trace_entry_head {
40310 	struct trace_entry ent;
40311 	long unsigned int vaddr[0];
40312 };
40313 
40314 struct trace_uprobe {
40315 	struct dyn_event devent;
40316 	struct uprobe_consumer consumer;
40317 	struct path path;
40318 	struct inode *inode;
40319 	char *filename;
40320 	long unsigned int offset;
40321 	long unsigned int ref_ctr_offset;
40322 	long unsigned int nhit;
40323 	struct trace_probe tp;
40324 };
40325 
40326 struct uprobe_dispatch_data {
40327 	struct trace_uprobe *tu;
40328 	long unsigned int bp_addr;
40329 };
40330 
40331 struct uprobe_cpu_buffer {
40332 	struct mutex mutex;
40333 	void *buf;
40334 };
40335 
40336 typedef bool (*filter_func_t)(struct uprobe_consumer *, enum uprobe_filter_ctx, struct mm_struct *);
40337 
40338 enum {
40339 	BTF_KIND_UNKN = 0,
40340 	BTF_KIND_INT = 1,
40341 	BTF_KIND_PTR = 2,
40342 	BTF_KIND_ARRAY = 3,
40343 	BTF_KIND_STRUCT = 4,
40344 	BTF_KIND_UNION = 5,
40345 	BTF_KIND_ENUM = 6,
40346 	BTF_KIND_FWD = 7,
40347 	BTF_KIND_TYPEDEF = 8,
40348 	BTF_KIND_VOLATILE = 9,
40349 	BTF_KIND_CONST = 10,
40350 	BTF_KIND_RESTRICT = 11,
40351 	BTF_KIND_FUNC = 12,
40352 	BTF_KIND_FUNC_PROTO = 13,
40353 	BTF_KIND_VAR = 14,
40354 	BTF_KIND_DATASEC = 15,
40355 	BTF_KIND_FLOAT = 16,
40356 	BTF_KIND_DECL_TAG = 17,
40357 	BTF_KIND_TYPE_TAG = 18,
40358 	BTF_KIND_ENUM64 = 19,
40359 	NR_BTF_KINDS = 20,
40360 	BTF_KIND_MAX = 19,
40361 };
40362 
40363 struct btf_enum {
40364 	__u32 name_off;
40365 	__s32 val;
40366 };
40367 
40368 struct btf_array {
40369 	__u32 type;
40370 	__u32 index_type;
40371 	__u32 nelems;
40372 };
40373 
40374 struct btf_member {
40375 	__u32 name_off;
40376 	__u32 type;
40377 	__u32 offset;
40378 };
40379 
40380 struct btf_param {
40381 	__u32 name_off;
40382 	__u32 type;
40383 };
40384 
40385 enum {
40386 	BTF_VAR_STATIC = 0,
40387 	BTF_VAR_GLOBAL_ALLOCATED = 1,
40388 	BTF_VAR_GLOBAL_EXTERN = 2,
40389 };
40390 
40391 enum btf_func_linkage {
40392 	BTF_FUNC_STATIC = 0,
40393 	BTF_FUNC_GLOBAL = 1,
40394 	BTF_FUNC_EXTERN = 2,
40395 };
40396 
40397 struct btf_var {
40398 	__u32 linkage;
40399 };
40400 
40401 struct btf_var_secinfo {
40402 	__u32 type;
40403 	__u32 offset;
40404 	__u32 size;
40405 };
40406 
40407 struct btf_decl_tag {
40408 	__s32 component_idx;
40409 };
40410 
40411 struct btf_enum64 {
40412 	__u32 name_off;
40413 	__u32 val_lo32;
40414 	__u32 val_hi32;
40415 };
40416 
40417 struct bpf_sock {
40418 	__u32 bound_dev_if;
40419 	__u32 family;
40420 	__u32 type;
40421 	__u32 protocol;
40422 	__u32 mark;
40423 	__u32 priority;
40424 	__u32 src_ip4;
40425 	__u32 src_ip6[4];
40426 	__u32 src_port;
40427 	__be16 dst_port;
40428 	__u32 dst_ip4;
40429 	__u32 dst_ip6[4];
40430 	__u32 state;
40431 	__s32 rx_queue_mapping;
40432 };
40433 
40434 struct __sk_buff {
40435 	__u32 len;
40436 	__u32 pkt_type;
40437 	__u32 mark;
40438 	__u32 queue_mapping;
40439 	__u32 protocol;
40440 	__u32 vlan_present;
40441 	__u32 vlan_tci;
40442 	__u32 vlan_proto;
40443 	__u32 priority;
40444 	__u32 ingress_ifindex;
40445 	__u32 ifindex;
40446 	__u32 tc_index;
40447 	__u32 cb[5];
40448 	__u32 hash;
40449 	__u32 tc_classid;
40450 	__u32 data;
40451 	__u32 data_end;
40452 	__u32 napi_id;
40453 	__u32 family;
40454 	__u32 remote_ip4;
40455 	__u32 local_ip4;
40456 	__u32 remote_ip6[4];
40457 	__u32 local_ip6[4];
40458 	__u32 remote_port;
40459 	__u32 local_port;
40460 	__u32 data_meta;
40461 	union {
40462 		struct bpf_flow_keys *flow_keys;
40463 	};
40464 	__u64 tstamp;
40465 	__u32 wire_len;
40466 	__u32 gso_segs;
40467 	union {
40468 		struct bpf_sock *sk;
40469 	};
40470 	__u32 gso_size;
40471 	__u8 tstamp_type;
40472 	__u64 hwtstamp;
40473 };
40474 
40475 struct xdp_md {
40476 	__u32 data;
40477 	__u32 data_end;
40478 	__u32 data_meta;
40479 	__u32 ingress_ifindex;
40480 	__u32 rx_queue_index;
40481 	__u32 egress_ifindex;
40482 };
40483 
40484 struct sk_msg_md {
40485 	union {
40486 		void *data;
40487 	};
40488 	union {
40489 		void *data_end;
40490 	};
40491 	__u32 family;
40492 	__u32 remote_ip4;
40493 	__u32 local_ip4;
40494 	__u32 remote_ip6[4];
40495 	__u32 local_ip6[4];
40496 	__u32 remote_port;
40497 	__u32 local_port;
40498 	__u32 size;
40499 	union {
40500 		struct bpf_sock *sk;
40501 	};
40502 };
40503 
40504 struct sk_reuseport_md {
40505 	union {
40506 		void *data;
40507 	};
40508 	union {
40509 		void *data_end;
40510 	};
40511 	__u32 len;
40512 	__u32 eth_protocol;
40513 	__u32 ip_protocol;
40514 	__u32 bind_inany;
40515 	__u32 hash;
40516 	union {
40517 		struct bpf_sock *sk;
40518 	};
40519 	union {
40520 		struct bpf_sock *migrating_sk;
40521 	};
40522 };
40523 
40524 struct bpf_btf_info {
40525 	__u64 btf;
40526 	__u32 btf_size;
40527 	__u32 id;
40528 	__u64 name;
40529 	__u32 name_len;
40530 	__u32 kernel_btf;
40531 };
40532 
40533 struct bpf_sock_addr {
40534 	__u32 user_family;
40535 	__u32 user_ip4;
40536 	__u32 user_ip6[4];
40537 	__u32 user_port;
40538 	__u32 family;
40539 	__u32 type;
40540 	__u32 protocol;
40541 	__u32 msg_src_ip4;
40542 	__u32 msg_src_ip6[4];
40543 	union {
40544 		struct bpf_sock *sk;
40545 	};
40546 };
40547 
40548 struct bpf_sock_ops {
40549 	__u32 op;
40550 	union {
40551 		__u32 args[4];
40552 		__u32 reply;
40553 		__u32 replylong[4];
40554 	};
40555 	__u32 family;
40556 	__u32 remote_ip4;
40557 	__u32 local_ip4;
40558 	__u32 remote_ip6[4];
40559 	__u32 local_ip6[4];
40560 	__u32 remote_port;
40561 	__u32 local_port;
40562 	__u32 is_fullsock;
40563 	__u32 snd_cwnd;
40564 	__u32 srtt_us;
40565 	__u32 bpf_sock_ops_cb_flags;
40566 	__u32 state;
40567 	__u32 rtt_min;
40568 	__u32 snd_ssthresh;
40569 	__u32 rcv_nxt;
40570 	__u32 snd_nxt;
40571 	__u32 snd_una;
40572 	__u32 mss_cache;
40573 	__u32 ecn_flags;
40574 	__u32 rate_delivered;
40575 	__u32 rate_interval_us;
40576 	__u32 packets_out;
40577 	__u32 retrans_out;
40578 	__u32 total_retrans;
40579 	__u32 segs_in;
40580 	__u32 data_segs_in;
40581 	__u32 segs_out;
40582 	__u32 data_segs_out;
40583 	__u32 lost_out;
40584 	__u32 sacked_out;
40585 	__u32 sk_txhash;
40586 	__u64 bytes_received;
40587 	__u64 bytes_acked;
40588 	union {
40589 		struct bpf_sock *sk;
40590 	};
40591 	union {
40592 		void *skb_data;
40593 	};
40594 	union {
40595 		void *skb_data_end;
40596 	};
40597 	__u32 skb_len;
40598 	__u32 skb_tcp_flags;
40599 };
40600 
40601 struct bpf_cgroup_dev_ctx {
40602 	__u32 access_type;
40603 	__u32 major;
40604 	__u32 minor;
40605 };
40606 
40607 struct bpf_raw_tracepoint_args {
40608 	__u64 args[0];
40609 };
40610 
40611 struct bpf_sysctl {
40612 	__u32 write;
40613 	__u32 file_pos;
40614 };
40615 
40616 struct bpf_sockopt {
40617 	union {
40618 		struct bpf_sock *sk;
40619 	};
40620 	union {
40621 		void *optval;
40622 	};
40623 	union {
40624 		void *optval_end;
40625 	};
40626 	__s32 level;
40627 	__s32 optname;
40628 	__s32 optlen;
40629 	__s32 retval;
40630 };
40631 
40632 struct bpf_sk_lookup {
40633 	union {
40634 		union {
40635 			struct bpf_sock *sk;
40636 		};
40637 		__u64 cookie;
40638 	};
40639 	__u32 family;
40640 	__u32 protocol;
40641 	__u32 remote_ip4;
40642 	__u32 remote_ip6[4];
40643 	__be16 remote_port;
40644 	__u32 local_ip4;
40645 	__u32 local_ip6[4];
40646 	__u32 local_port;
40647 	__u32 ingress_ifindex;
40648 };
40649 
40650 enum {
40651 	BTF_F_COMPACT = 1,
40652 	BTF_F_NONAME = 2,
40653 	BTF_F_PTR_RAW = 4,
40654 	BTF_F_ZERO = 8,
40655 };
40656 
40657 enum bpf_core_relo_kind {
40658 	BPF_CORE_FIELD_BYTE_OFFSET = 0,
40659 	BPF_CORE_FIELD_BYTE_SIZE = 1,
40660 	BPF_CORE_FIELD_EXISTS = 2,
40661 	BPF_CORE_FIELD_SIGNED = 3,
40662 	BPF_CORE_FIELD_LSHIFT_U64 = 4,
40663 	BPF_CORE_FIELD_RSHIFT_U64 = 5,
40664 	BPF_CORE_TYPE_ID_LOCAL = 6,
40665 	BPF_CORE_TYPE_ID_TARGET = 7,
40666 	BPF_CORE_TYPE_EXISTS = 8,
40667 	BPF_CORE_TYPE_SIZE = 9,
40668 	BPF_CORE_ENUMVAL_EXISTS = 10,
40669 	BPF_CORE_ENUMVAL_VALUE = 11,
40670 	BPF_CORE_TYPE_MATCHES = 12,
40671 };
40672 
40673 struct bpf_core_relo {
40674 	__u32 insn_off;
40675 	__u32 type_id;
40676 	__u32 access_str_off;
40677 	enum bpf_core_relo_kind kind;
40678 };
40679 
40680 typedef struct user_pt_regs bpf_user_pt_regs_t;
40681 
40682 struct bpf_perf_event_data {
40683 	bpf_user_pt_regs_t regs;
40684 	__u64 sample_period;
40685 	__u64 addr;
40686 };
40687 
40688 typedef sockptr_t bpfptr_t;
40689 
40690 struct btf_id_set8;
40691 
40692 struct btf_kfunc_id_set {
40693 	struct module *owner;
40694 	struct btf_id_set8 *set;
40695 };
40696 
40697 struct btf_id_set8 {
40698 	u32 cnt;
40699 	u32 flags;
40700 	struct {
40701 		u32 id;
40702 		u32 flags;
40703 	} pairs[0];
40704 };
40705 
40706 struct btf_id_dtor_kfunc {
40707 	u32 btf_id;
40708 	u32 kfunc_btf_id;
40709 };
40710 
40711 struct bpf_verifier_log {
40712 	u32 level;
40713 	char kbuf[1024];
40714 	char *ubuf;
40715 	u32 len_used;
40716 	u32 len_total;
40717 };
40718 
40719 struct bpf_subprog_info {
40720 	u32 start;
40721 	u32 linfo_idx;
40722 	u16 stack_depth;
40723 	bool has_tail_call;
40724 	bool tail_call_reachable;
40725 	bool has_ld_abs;
40726 	bool is_async_cb;
40727 };
40728 
40729 struct bpf_id_pair {
40730 	u32 old;
40731 	u32 cur;
40732 };
40733 
40734 struct bpf_verifier_ops;
40735 
40736 struct bpf_verifier_stack_elem;
40737 
40738 struct bpf_verifier_state;
40739 
40740 struct bpf_verifier_state_list;
40741 
40742 struct bpf_insn_aux_data;
40743 
40744 struct bpf_verifier_env {
40745 	u32 insn_idx;
40746 	u32 prev_insn_idx;
40747 	struct bpf_prog *prog;
40748 	const struct bpf_verifier_ops *ops;
40749 	struct bpf_verifier_stack_elem *head;
40750 	int stack_size;
40751 	bool strict_alignment;
40752 	bool test_state_freq;
40753 	struct bpf_verifier_state *cur_state;
40754 	struct bpf_verifier_state_list **explored_states;
40755 	struct bpf_verifier_state_list *free_list;
40756 	struct bpf_map *used_maps[64];
40757 	struct btf_mod_pair used_btfs[64];
40758 	u32 used_map_cnt;
40759 	u32 used_btf_cnt;
40760 	u32 id_gen;
40761 	bool explore_alu_limits;
40762 	bool allow_ptr_leaks;
40763 	bool allow_uninit_stack;
40764 	bool allow_ptr_to_map_access;
40765 	bool bpf_capable;
40766 	bool bypass_spec_v1;
40767 	bool bypass_spec_v4;
40768 	bool seen_direct_write;
40769 	struct bpf_insn_aux_data *insn_aux_data;
40770 	const struct bpf_line_info *prev_linfo;
40771 	struct bpf_verifier_log log;
40772 	struct bpf_subprog_info subprog_info[257];
40773 	struct bpf_id_pair idmap_scratch[75];
40774 	struct {
40775 		int *insn_state;
40776 		int *insn_stack;
40777 		int cur_stack;
40778 	} cfg;
40779 	u32 pass_cnt;
40780 	u32 subprog_cnt;
40781 	u32 prev_insn_processed;
40782 	u32 insn_processed;
40783 	u32 prev_jmps_processed;
40784 	u32 jmps_processed;
40785 	u64 verification_time;
40786 	u32 max_states_per_insn;
40787 	u32 total_states;
40788 	u32 peak_states;
40789 	u32 longest_mark_read_walk;
40790 	bpfptr_t fd_array;
40791 	u32 scratched_regs;
40792 	u64 scratched_stack_slots;
40793 	u32 prev_log_len;
40794 	u32 prev_insn_print_len;
40795 	char type_str_buf[64];
40796 };
40797 
40798 enum bpf_dynptr_type {
40799 	BPF_DYNPTR_TYPE_INVALID = 0,
40800 	BPF_DYNPTR_TYPE_LOCAL = 1,
40801 	BPF_DYNPTR_TYPE_RINGBUF = 2,
40802 };
40803 
40804 struct tnum {
40805 	u64 value;
40806 	u64 mask;
40807 };
40808 
40809 enum bpf_reg_liveness {
40810 	REG_LIVE_NONE = 0,
40811 	REG_LIVE_READ32 = 1,
40812 	REG_LIVE_READ64 = 2,
40813 	REG_LIVE_READ = 3,
40814 	REG_LIVE_WRITTEN = 4,
40815 	REG_LIVE_DONE = 8,
40816 };
40817 
40818 struct bpf_reg_state {
40819 	enum bpf_reg_type type;
40820 	s32 off;
40821 	union {
40822 		int range;
40823 		struct {
40824 			struct bpf_map *map_ptr;
40825 			u32 map_uid;
40826 		};
40827 		struct {
40828 			struct btf *btf;
40829 			u32 btf_id;
40830 		};
40831 		u32 mem_size;
40832 		struct {
40833 			enum bpf_dynptr_type type;
40834 			bool first_slot;
40835 		} dynptr;
40836 		struct {
40837 			long unsigned int raw1;
40838 			long unsigned int raw2;
40839 		} raw;
40840 		u32 subprogno;
40841 	};
40842 	u32 id;
40843 	u32 ref_obj_id;
40844 	struct tnum var_off;
40845 	s64 smin_value;
40846 	s64 smax_value;
40847 	u64 umin_value;
40848 	u64 umax_value;
40849 	s32 s32_min_value;
40850 	s32 s32_max_value;
40851 	u32 u32_min_value;
40852 	u32 u32_max_value;
40853 	struct bpf_reg_state *parent;
40854 	u32 frameno;
40855 	s32 subreg_def;
40856 	enum bpf_reg_liveness live;
40857 	bool precise;
40858 };
40859 
40860 struct bpf_reference_state;
40861 
40862 struct bpf_stack_state;
40863 
40864 struct bpf_func_state {
40865 	struct bpf_reg_state regs[11];
40866 	int callsite;
40867 	u32 frameno;
40868 	u32 subprogno;
40869 	u32 async_entry_cnt;
40870 	bool in_callback_fn;
40871 	bool in_async_callback_fn;
40872 	int acquired_refs;
40873 	struct bpf_reference_state *refs;
40874 	int allocated_stack;
40875 	struct bpf_stack_state *stack;
40876 };
40877 
40878 enum bpf_access_type {
40879 	BPF_READ = 1,
40880 	BPF_WRITE = 2,
40881 };
40882 
40883 struct bpf_insn_access_aux {
40884 	enum bpf_reg_type reg_type;
40885 	union {
40886 		int ctx_field_size;
40887 		struct {
40888 			struct btf *btf;
40889 			u32 btf_id;
40890 		};
40891 	};
40892 	struct bpf_verifier_log *log;
40893 };
40894 
40895 struct bpf_verifier_ops {
40896 	const struct bpf_func_proto * (*get_func_proto)(enum bpf_func_id, const struct bpf_prog *);
40897 	bool (*is_valid_access)(int, int, enum bpf_access_type, const struct bpf_prog *, struct bpf_insn_access_aux *);
40898 	int (*gen_prologue)(struct bpf_insn *, bool, const struct bpf_prog *);
40899 	int (*gen_ld_abs)(const struct bpf_insn *, struct bpf_insn *);
40900 	u32 (*convert_ctx_access)(enum bpf_access_type, const struct bpf_insn *, struct bpf_insn *, struct bpf_prog *, u32 *);
40901 	int (*btf_struct_access)(struct bpf_verifier_log *, const struct btf *, const struct btf_type *, int, int, enum bpf_access_type, u32 *, enum bpf_type_flag *);
40902 };
40903 
40904 struct bpf_core_ctx {
40905 	struct bpf_verifier_log *log;
40906 	const struct btf *btf;
40907 };
40908 
40909 struct sk_reuseport_kern {
40910 	struct sk_buff *skb;
40911 	struct sock *sk;
40912 	struct sock *selected_sk;
40913 	struct sock *migrating_sk;
40914 	void *data_end;
40915 	u32 hash;
40916 	u32 reuseport_id;
40917 	bool bind_inany;
40918 };
40919 
40920 struct bpf_sock_addr_kern {
40921 	struct sock *sk;
40922 	struct sockaddr *uaddr;
40923 	u64 tmp_reg;
40924 	void *t_ctx;
40925 };
40926 
40927 struct bpf_sock_ops_kern {
40928 	struct sock *sk;
40929 	union {
40930 		u32 args[4];
40931 		u32 reply;
40932 		u32 replylong[4];
40933 	};
40934 	struct sk_buff *syn_skb;
40935 	struct sk_buff *skb;
40936 	void *skb_data_end;
40937 	u8 op;
40938 	u8 is_fullsock;
40939 	u8 remaining_opt_len;
40940 	u64 temp;
40941 };
40942 
40943 struct bpf_sysctl_kern {
40944 	struct ctl_table_header *head;
40945 	struct ctl_table *table;
40946 	void *cur_val;
40947 	size_t cur_len;
40948 	void *new_val;
40949 	size_t new_len;
40950 	int new_updated;
40951 	int write;
40952 	loff_t *ppos;
40953 	u64 tmp_reg;
40954 };
40955 
40956 struct bpf_sockopt_kern {
40957 	struct sock *sk;
40958 	u8 *optval;
40959 	u8 *optval_end;
40960 	s32 level;
40961 	s32 optname;
40962 	s32 optlen;
40963 	struct task_struct *current_task;
40964 	u64 tmp_reg;
40965 };
40966 
40967 struct bpf_sk_lookup_kern {
40968 	u16 family;
40969 	u16 protocol;
40970 	__be16 sport;
40971 	u16 dport;
40972 	struct {
40973 		__be32 saddr;
40974 		__be32 daddr;
40975 	} v4;
40976 	struct {
40977 		const struct in6_addr *saddr;
40978 		const struct in6_addr *daddr;
40979 	} v6;
40980 	struct sock *selected_sk;
40981 	u32 ingress_ifindex;
40982 	bool no_reuseport;
40983 };
40984 
40985 struct bpf_stack_state {
40986 	struct bpf_reg_state spilled_ptr;
40987 	u8 slot_type[8];
40988 };
40989 
40990 struct bpf_reference_state {
40991 	int id;
40992 	int insn_idx;
40993 };
40994 
40995 struct bpf_idx_pair {
40996 	u32 prev_idx;
40997 	u32 idx;
40998 };
40999 
41000 struct bpf_verifier_state {
41001 	struct bpf_func_state *frame[8];
41002 	struct bpf_verifier_state *parent;
41003 	u32 branches;
41004 	u32 insn_idx;
41005 	u32 curframe;
41006 	u32 active_spin_lock;
41007 	bool speculative;
41008 	u32 first_insn_idx;
41009 	u32 last_insn_idx;
41010 	struct bpf_idx_pair *jmp_history;
41011 	u32 jmp_history_cnt;
41012 };
41013 
41014 struct bpf_verifier_state_list {
41015 	struct bpf_verifier_state state;
41016 	struct bpf_verifier_state_list *next;
41017 	int miss_cnt;
41018 	int hit_cnt;
41019 };
41020 
41021 struct bpf_loop_inline_state {
41022 	unsigned int initialized: 1;
41023 	unsigned int fit_for_inline: 1;
41024 	u32 callback_subprogno;
41025 };
41026 
41027 struct bpf_insn_aux_data {
41028 	union {
41029 		enum bpf_reg_type ptr_type;
41030 		long unsigned int map_ptr_state;
41031 		s32 call_imm;
41032 		u32 alu_limit;
41033 		struct {
41034 			u32 map_index;
41035 			u32 map_off;
41036 		};
41037 		struct {
41038 			enum bpf_reg_type reg_type;
41039 			union {
41040 				struct {
41041 					struct btf *btf;
41042 					u32 btf_id;
41043 				};
41044 				u32 mem_size;
41045 			};
41046 		} btf_var;
41047 		struct bpf_loop_inline_state loop_inline_state;
41048 	};
41049 	u64 map_key_state;
41050 	int ctx_field_size;
41051 	u32 seen;
41052 	bool sanitize_stack_spill;
41053 	bool zext_dst;
41054 	u8 alu_state;
41055 	unsigned int orig_idx;
41056 	bool prune_point;
41057 };
41058 
41059 struct btf_id_set {
41060 	u32 cnt;
41061 	u32 ids[0];
41062 };
41063 
41064 enum {
41065 	BTF_SOCK_TYPE_INET = 0,
41066 	BTF_SOCK_TYPE_INET_CONN = 1,
41067 	BTF_SOCK_TYPE_INET_REQ = 2,
41068 	BTF_SOCK_TYPE_INET_TW = 3,
41069 	BTF_SOCK_TYPE_REQ = 4,
41070 	BTF_SOCK_TYPE_SOCK = 5,
41071 	BTF_SOCK_TYPE_SOCK_COMMON = 6,
41072 	BTF_SOCK_TYPE_TCP = 7,
41073 	BTF_SOCK_TYPE_TCP_REQ = 8,
41074 	BTF_SOCK_TYPE_TCP_TW = 9,
41075 	BTF_SOCK_TYPE_TCP6 = 10,
41076 	BTF_SOCK_TYPE_UDP = 11,
41077 	BTF_SOCK_TYPE_UDP6 = 12,
41078 	BTF_SOCK_TYPE_UNIX = 13,
41079 	BTF_SOCK_TYPE_MPTCP = 14,
41080 	BTF_SOCK_TYPE_SOCKET = 15,
41081 	MAX_BTF_SOCK_TYPE = 16,
41082 };
41083 
41084 struct bpf_perf_event_data_kern {
41085 	bpf_user_pt_regs_t *regs;
41086 	struct perf_sample_data *data;
41087 	struct perf_event *event;
41088 };
41089 
41090 struct bpf_core_cand {
41091 	const struct btf *btf;
41092 	__u32 id;
41093 };
41094 
41095 struct bpf_core_cand_list {
41096 	struct bpf_core_cand *cands;
41097 	int len;
41098 };
41099 
41100 struct bpf_core_accessor {
41101 	__u32 type_id;
41102 	__u32 idx;
41103 	const char *name;
41104 };
41105 
41106 struct bpf_core_spec {
41107 	const struct btf *btf;
41108 	struct bpf_core_accessor spec[64];
41109 	__u32 root_type_id;
41110 	enum bpf_core_relo_kind relo_kind;
41111 	int len;
41112 	int raw_spec[64];
41113 	int raw_len;
41114 	__u32 bit_offset;
41115 };
41116 
41117 struct bpf_core_relo_res {
41118 	__u64 orig_val;
41119 	__u64 new_val;
41120 	bool poison;
41121 	bool validate;
41122 	bool fail_memsz_adjust;
41123 	__u32 orig_sz;
41124 	__u32 orig_type_id;
41125 	__u32 new_sz;
41126 	__u32 new_type_id;
41127 };
41128 
41129 enum btf_kfunc_hook {
41130 	BTF_KFUNC_HOOK_XDP = 0,
41131 	BTF_KFUNC_HOOK_TC = 1,
41132 	BTF_KFUNC_HOOK_STRUCT_OPS = 2,
41133 	BTF_KFUNC_HOOK_TRACING = 3,
41134 	BTF_KFUNC_HOOK_SYSCALL = 4,
41135 	BTF_KFUNC_HOOK_MAX = 5,
41136 };
41137 
41138 enum {
41139 	BTF_KFUNC_SET_MAX_CNT = 32,
41140 	BTF_DTOR_KFUNC_MAX_CNT = 256,
41141 };
41142 
41143 struct btf_kfunc_set_tab {
41144 	struct btf_id_set8 *sets[5];
41145 };
41146 
41147 struct btf_id_dtor_kfunc_tab {
41148 	u32 cnt;
41149 	struct btf_id_dtor_kfunc dtors[0];
41150 };
41151 
41152 enum verifier_phase {
41153 	CHECK_META = 0,
41154 	CHECK_TYPE = 1,
41155 };
41156 
41157 struct resolve_vertex {
41158 	const struct btf_type *t;
41159 	u32 type_id;
41160 	u16 next_member;
41161 };
41162 
41163 enum visit_state {
41164 	NOT_VISITED = 0,
41165 	VISITED = 1,
41166 	RESOLVED = 2,
41167 };
41168 
41169 enum resolve_mode {
41170 	RESOLVE_TBD = 0,
41171 	RESOLVE_PTR = 1,
41172 	RESOLVE_STRUCT_OR_ARRAY = 2,
41173 };
41174 
41175 struct btf_sec_info {
41176 	u32 off;
41177 	u32 len;
41178 };
41179 
41180 struct btf_verifier_env {
41181 	struct btf *btf;
41182 	u8 *visit_states;
41183 	struct resolve_vertex stack[32];
41184 	struct bpf_verifier_log log;
41185 	u32 log_type_id;
41186 	u32 top_stack;
41187 	enum verifier_phase phase;
41188 	enum resolve_mode resolve_mode;
41189 };
41190 
41191 struct btf_show {
41192 	u64 flags;
41193 	void *target;
41194 	void (*showfn)(struct btf_show *, const char *, va_list);
41195 	const struct btf *btf;
41196 	struct {
41197 		u8 depth;
41198 		u8 depth_to_show;
41199 		u8 depth_check;
41200 		u8 array_member: 1;
41201 		u8 array_terminated: 1;
41202 		u16 array_encoding;
41203 		u32 type_id;
41204 		int status;
41205 		const struct btf_type *type;
41206 		const struct btf_member *member;
41207 		char name[80];
41208 	} state;
41209 	struct {
41210 		u32 size;
41211 		void *head;
41212 		void *data;
41213 		u8 safe[32];
41214 	} obj;
41215 };
41216 
41217 struct btf_kind_operations {
41218 	s32 (*check_meta)(struct btf_verifier_env *, const struct btf_type *, u32);
41219 	int (*resolve)(struct btf_verifier_env *, const struct resolve_vertex *);
41220 	int (*check_member)(struct btf_verifier_env *, const struct btf_type *, const struct btf_member *, const struct btf_type *);
41221 	int (*check_kflag_member)(struct btf_verifier_env *, const struct btf_type *, const struct btf_member *, const struct btf_type *);
41222 	void (*log_details)(struct btf_verifier_env *, const struct btf_type *);
41223 	void (*show)(const struct btf *, const struct btf_type *, u32, void *, u8, struct btf_show *);
41224 };
41225 
41226 enum btf_field_type {
41227 	BTF_FIELD_SPIN_LOCK = 0,
41228 	BTF_FIELD_TIMER = 1,
41229 	BTF_FIELD_KPTR = 2,
41230 };
41231 
41232 enum {
41233 	BTF_FIELD_IGNORE = 0,
41234 	BTF_FIELD_FOUND = 1,
41235 };
41236 
41237 struct btf_field_info {
41238 	u32 type_id;
41239 	u32 off;
41240 	enum bpf_kptr_type type;
41241 };
41242 
41243 struct bpf_ctx_convert {
41244 	struct __sk_buff BPF_PROG_TYPE_SOCKET_FILTER_prog;
41245 	struct sk_buff BPF_PROG_TYPE_SOCKET_FILTER_kern;
41246 	struct __sk_buff BPF_PROG_TYPE_SCHED_CLS_prog;
41247 	struct sk_buff BPF_PROG_TYPE_SCHED_CLS_kern;
41248 	struct __sk_buff BPF_PROG_TYPE_SCHED_ACT_prog;
41249 	struct sk_buff BPF_PROG_TYPE_SCHED_ACT_kern;
41250 	struct xdp_md BPF_PROG_TYPE_XDP_prog;
41251 	struct xdp_buff BPF_PROG_TYPE_XDP_kern;
41252 	struct __sk_buff BPF_PROG_TYPE_CGROUP_SKB_prog;
41253 	struct sk_buff BPF_PROG_TYPE_CGROUP_SKB_kern;
41254 	struct bpf_sock BPF_PROG_TYPE_CGROUP_SOCK_prog;
41255 	struct sock BPF_PROG_TYPE_CGROUP_SOCK_kern;
41256 	struct bpf_sock_addr BPF_PROG_TYPE_CGROUP_SOCK_ADDR_prog;
41257 	struct bpf_sock_addr_kern BPF_PROG_TYPE_CGROUP_SOCK_ADDR_kern;
41258 	struct __sk_buff BPF_PROG_TYPE_LWT_IN_prog;
41259 	struct sk_buff BPF_PROG_TYPE_LWT_IN_kern;
41260 	struct __sk_buff BPF_PROG_TYPE_LWT_OUT_prog;
41261 	struct sk_buff BPF_PROG_TYPE_LWT_OUT_kern;
41262 	struct __sk_buff BPF_PROG_TYPE_LWT_XMIT_prog;
41263 	struct sk_buff BPF_PROG_TYPE_LWT_XMIT_kern;
41264 	struct __sk_buff BPF_PROG_TYPE_LWT_SEG6LOCAL_prog;
41265 	struct sk_buff BPF_PROG_TYPE_LWT_SEG6LOCAL_kern;
41266 	struct bpf_sock_ops BPF_PROG_TYPE_SOCK_OPS_prog;
41267 	struct bpf_sock_ops_kern BPF_PROG_TYPE_SOCK_OPS_kern;
41268 	struct __sk_buff BPF_PROG_TYPE_SK_SKB_prog;
41269 	struct sk_buff BPF_PROG_TYPE_SK_SKB_kern;
41270 	struct sk_msg_md BPF_PROG_TYPE_SK_MSG_prog;
41271 	struct sk_msg BPF_PROG_TYPE_SK_MSG_kern;
41272 	struct __sk_buff BPF_PROG_TYPE_FLOW_DISSECTOR_prog;
41273 	struct bpf_flow_dissector BPF_PROG_TYPE_FLOW_DISSECTOR_kern;
41274 	bpf_user_pt_regs_t BPF_PROG_TYPE_KPROBE_prog;
41275 	struct pt_regs BPF_PROG_TYPE_KPROBE_kern;
41276 	__u64 BPF_PROG_TYPE_TRACEPOINT_prog;
41277 	u64 BPF_PROG_TYPE_TRACEPOINT_kern;
41278 	struct bpf_perf_event_data BPF_PROG_TYPE_PERF_EVENT_prog;
41279 	struct bpf_perf_event_data_kern BPF_PROG_TYPE_PERF_EVENT_kern;
41280 	struct bpf_raw_tracepoint_args BPF_PROG_TYPE_RAW_TRACEPOINT_prog;
41281 	u64 BPF_PROG_TYPE_RAW_TRACEPOINT_kern;
41282 	struct bpf_raw_tracepoint_args BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE_prog;
41283 	u64 BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE_kern;
41284 	void *BPF_PROG_TYPE_TRACING_prog;
41285 	void *BPF_PROG_TYPE_TRACING_kern;
41286 	struct bpf_cgroup_dev_ctx BPF_PROG_TYPE_CGROUP_DEVICE_prog;
41287 	struct bpf_cgroup_dev_ctx BPF_PROG_TYPE_CGROUP_DEVICE_kern;
41288 	struct bpf_sysctl BPF_PROG_TYPE_CGROUP_SYSCTL_prog;
41289 	struct bpf_sysctl_kern BPF_PROG_TYPE_CGROUP_SYSCTL_kern;
41290 	struct bpf_sockopt BPF_PROG_TYPE_CGROUP_SOCKOPT_prog;
41291 	struct bpf_sockopt_kern BPF_PROG_TYPE_CGROUP_SOCKOPT_kern;
41292 	struct sk_reuseport_md BPF_PROG_TYPE_SK_REUSEPORT_prog;
41293 	struct sk_reuseport_kern BPF_PROG_TYPE_SK_REUSEPORT_kern;
41294 	struct bpf_sk_lookup BPF_PROG_TYPE_SK_LOOKUP_prog;
41295 	struct bpf_sk_lookup_kern BPF_PROG_TYPE_SK_LOOKUP_kern;
41296 	void *BPF_PROG_TYPE_STRUCT_OPS_prog;
41297 	void *BPF_PROG_TYPE_STRUCT_OPS_kern;
41298 	void *BPF_PROG_TYPE_EXT_prog;
41299 	void *BPF_PROG_TYPE_EXT_kern;
41300 	void *BPF_PROG_TYPE_SYSCALL_prog;
41301 	void *BPF_PROG_TYPE_SYSCALL_kern;
41302 };
41303 
41304 enum {
41305 	__ctx_convertBPF_PROG_TYPE_SOCKET_FILTER = 0,
41306 	__ctx_convertBPF_PROG_TYPE_SCHED_CLS = 1,
41307 	__ctx_convertBPF_PROG_TYPE_SCHED_ACT = 2,
41308 	__ctx_convertBPF_PROG_TYPE_XDP = 3,
41309 	__ctx_convertBPF_PROG_TYPE_CGROUP_SKB = 4,
41310 	__ctx_convertBPF_PROG_TYPE_CGROUP_SOCK = 5,
41311 	__ctx_convertBPF_PROG_TYPE_CGROUP_SOCK_ADDR = 6,
41312 	__ctx_convertBPF_PROG_TYPE_LWT_IN = 7,
41313 	__ctx_convertBPF_PROG_TYPE_LWT_OUT = 8,
41314 	__ctx_convertBPF_PROG_TYPE_LWT_XMIT = 9,
41315 	__ctx_convertBPF_PROG_TYPE_LWT_SEG6LOCAL = 10,
41316 	__ctx_convertBPF_PROG_TYPE_SOCK_OPS = 11,
41317 	__ctx_convertBPF_PROG_TYPE_SK_SKB = 12,
41318 	__ctx_convertBPF_PROG_TYPE_SK_MSG = 13,
41319 	__ctx_convertBPF_PROG_TYPE_FLOW_DISSECTOR = 14,
41320 	__ctx_convertBPF_PROG_TYPE_KPROBE = 15,
41321 	__ctx_convertBPF_PROG_TYPE_TRACEPOINT = 16,
41322 	__ctx_convertBPF_PROG_TYPE_PERF_EVENT = 17,
41323 	__ctx_convertBPF_PROG_TYPE_RAW_TRACEPOINT = 18,
41324 	__ctx_convertBPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 19,
41325 	__ctx_convertBPF_PROG_TYPE_TRACING = 20,
41326 	__ctx_convertBPF_PROG_TYPE_CGROUP_DEVICE = 21,
41327 	__ctx_convertBPF_PROG_TYPE_CGROUP_SYSCTL = 22,
41328 	__ctx_convertBPF_PROG_TYPE_CGROUP_SOCKOPT = 23,
41329 	__ctx_convertBPF_PROG_TYPE_SK_REUSEPORT = 24,
41330 	__ctx_convertBPF_PROG_TYPE_SK_LOOKUP = 25,
41331 	__ctx_convertBPF_PROG_TYPE_STRUCT_OPS = 26,
41332 	__ctx_convertBPF_PROG_TYPE_EXT = 27,
41333 	__ctx_convertBPF_PROG_TYPE_SYSCALL = 28,
41334 	__ctx_convert_unused = 29,
41335 };
41336 
41337 enum bpf_struct_walk_result {
41338 	WALK_SCALAR = 0,
41339 	WALK_PTR = 1,
41340 	WALK_STRUCT = 2,
41341 };
41342 
41343 struct btf_show_snprintf {
41344 	struct btf_show show;
41345 	int len_left;
41346 	int len;
41347 };
41348 
41349 enum {
41350 	BTF_MODULE_F_LIVE = 1,
41351 };
41352 
41353 struct btf_module {
41354 	struct list_head list;
41355 	struct module *module;
41356 	struct btf *btf;
41357 	struct bin_attribute *sysfs_attr;
41358 	int flags;
41359 };
41360 
41361 typedef u64 (*btf_bpf_btf_find_by_name_kind)(char *, int, u32, int);
41362 
41363 struct bpf_cand_cache {
41364 	const char *name;
41365 	u32 name_len;
41366 	u16 kind;
41367 	u16 cnt;
41368 	struct {
41369 		const struct btf *btf;
41370 		u32 id;
41371 	} cands[0];
41372 };
41373 
41374 struct wait_bit_key {
41375 	void *flags;
41376 	int bit_nr;
41377 	long unsigned int timeout;
41378 };
41379 
41380 struct wait_bit_queue_entry {
41381 	struct wait_bit_key key;
41382 	struct wait_queue_entry wq_entry;
41383 };
41384 
41385 enum positive_aop_returns {
41386 	AOP_WRITEPAGE_ACTIVATE = 524288,
41387 	AOP_TRUNCATED_PAGE = 524289,
41388 };
41389 
41390 struct fileattr {
41391 	u32 flags;
41392 	u32 fsx_xflags;
41393 	u32 fsx_extsize;
41394 	u32 fsx_nextents;
41395 	u32 fsx_projid;
41396 	u32 fsx_cowextsize;
41397 	bool flags_valid: 1;
41398 	bool fsx_valid: 1;
41399 };
41400 
41401 struct vm_event_state {
41402 	long unsigned int event[98];
41403 };
41404 
41405 struct xattr;
41406 
41407 typedef int (*initxattrs)(struct inode *, const struct xattr *, void *);
41408 
41409 struct xattr {
41410 	const char *name;
41411 	void *value;
41412 	size_t value_len;
41413 };
41414 
41415 struct constant_table {
41416 	const char *name;
41417 	int value;
41418 };
41419 
41420 enum mapping_flags {
41421 	AS_EIO = 0,
41422 	AS_ENOSPC = 1,
41423 	AS_MM_ALL_LOCKS = 2,
41424 	AS_UNEVICTABLE = 3,
41425 	AS_EXITING = 4,
41426 	AS_NO_WRITEBACK_TAGS = 5,
41427 	AS_LARGE_FOLIO_SUPPORT = 6,
41428 };
41429 
41430 enum {
41431 	MPOL_DEFAULT = 0,
41432 	MPOL_PREFERRED = 1,
41433 	MPOL_BIND = 2,
41434 	MPOL_INTERLEAVE = 3,
41435 	MPOL_LOCAL = 4,
41436 	MPOL_PREFERRED_MANY = 5,
41437 	MPOL_MAX = 6,
41438 };
41439 
41440 struct shared_policy {
41441 	struct rb_root root;
41442 	rwlock_t lock;
41443 };
41444 
41445 struct simple_xattr {
41446 	struct list_head list;
41447 	char *name;
41448 	size_t size;
41449 	char value[0];
41450 };
41451 
41452 enum fid_type {
41453 	FILEID_ROOT = 0,
41454 	FILEID_INO32_GEN = 1,
41455 	FILEID_INO32_GEN_PARENT = 2,
41456 	FILEID_BTRFS_WITHOUT_PARENT = 77,
41457 	FILEID_BTRFS_WITH_PARENT = 78,
41458 	FILEID_BTRFS_WITH_PARENT_ROOT = 79,
41459 	FILEID_UDF_WITHOUT_PARENT = 81,
41460 	FILEID_UDF_WITH_PARENT = 82,
41461 	FILEID_NILFS_WITHOUT_PARENT = 97,
41462 	FILEID_NILFS_WITH_PARENT = 98,
41463 	FILEID_FAT_WITHOUT_PARENT = 113,
41464 	FILEID_FAT_WITH_PARENT = 114,
41465 	FILEID_LUSTRE = 151,
41466 	FILEID_KERNFS = 254,
41467 	FILEID_INVALID = 255,
41468 };
41469 
41470 struct shmem_inode_info {
41471 	spinlock_t lock;
41472 	unsigned int seals;
41473 	long unsigned int flags;
41474 	long unsigned int alloced;
41475 	long unsigned int swapped;
41476 	long unsigned int fallocend;
41477 	struct list_head shrinklist;
41478 	struct list_head swaplist;
41479 	struct shared_policy policy;
41480 	struct simple_xattrs xattrs;
41481 	atomic_t stop_eviction;
41482 	struct timespec64 i_crtime;
41483 	unsigned int fsflags;
41484 	struct inode vfs_inode;
41485 };
41486 
41487 struct shmem_sb_info {
41488 	long unsigned int max_blocks;
41489 	struct percpu_counter used_blocks;
41490 	long unsigned int max_inodes;
41491 	long unsigned int free_inodes;
41492 	raw_spinlock_t stat_lock;
41493 	umode_t mode;
41494 	unsigned char huge;
41495 	kuid_t uid;
41496 	kgid_t gid;
41497 	bool full_inums;
41498 	ino_t next_ino;
41499 	ino_t *ino_batch;
41500 	struct mempolicy *mpol;
41501 	spinlock_t shrinklist_lock;
41502 	struct list_head shrinklist;
41503 	long unsigned int shrinklist_len;
41504 };
41505 
41506 enum sgp_type {
41507 	SGP_READ = 0,
41508 	SGP_NOALLOC = 1,
41509 	SGP_CACHE = 2,
41510 	SGP_WRITE = 3,
41511 	SGP_FALLOC = 4,
41512 };
41513 
41514 struct folio_batch {
41515 	unsigned char nr;
41516 	bool percpu_pvec_drained;
41517 	struct folio *folios[15];
41518 };
41519 
41520 struct shmem_falloc {
41521 	wait_queue_head_t *waitq;
41522 	long unsigned int start;
41523 	long unsigned int next;
41524 	long unsigned int nr_falloced;
41525 	long unsigned int nr_unswapped;
41526 };
41527 
41528 struct shmem_options {
41529 	long long unsigned int blocks;
41530 	long long unsigned int inodes;
41531 	struct mempolicy *mpol;
41532 	kuid_t uid;
41533 	kgid_t gid;
41534 	umode_t mode;
41535 	bool full_inums;
41536 	int huge;
41537 	int seen;
41538 };
41539 
41540 enum shmem_param {
41541 	Opt_gid___2 = 0,
41542 	Opt_huge = 1,
41543 	Opt_mode = 2,
41544 	Opt_mpol = 3,
41545 	Opt_nr_blocks = 4,
41546 	Opt_nr_inodes = 5,
41547 	Opt_size = 6,
41548 	Opt_uid = 7,
41549 	Opt_inode32 = 8,
41550 	Opt_inode64 = 9,
41551 };
41552 
41553 typedef long unsigned int vm_flags_t;
41554 
41555 enum {
41556 	HUGETLB_SHMFS_INODE = 1,
41557 	HUGETLB_ANONHUGE_INODE = 2,
41558 };
41559 
41560 struct anon_vma_chain {
41561 	struct vm_area_struct *vma;
41562 	struct anon_vma *anon_vma;
41563 	struct list_head same_vma;
41564 	struct rb_node rb;
41565 	long unsigned int rb_subtree_last;
41566 };
41567 
41568 struct rb_augment_callbacks {
41569 	void (*propagate)(struct rb_node *, struct rb_node *);
41570 	void (*copy)(struct rb_node *, struct rb_node *);
41571 	void (*rotate)(struct rb_node *, struct rb_node *);
41572 };
41573 
41574 struct trace_event_raw_vm_unmapped_area {
41575 	struct trace_entry ent;
41576 	long unsigned int addr;
41577 	long unsigned int total_vm;
41578 	long unsigned int flags;
41579 	long unsigned int length;
41580 	long unsigned int low_limit;
41581 	long unsigned int high_limit;
41582 	long unsigned int align_mask;
41583 	long unsigned int align_offset;
41584 	char __data[0];
41585 };
41586 
41587 struct trace_event_data_offsets_vm_unmapped_area {};
41588 
41589 typedef void (*btf_trace_vm_unmapped_area)(void *, long unsigned int, struct vm_unmapped_area_info *);
41590 
41591 typedef long unsigned int pte_basic_t;
41592 
41593 enum fixed_addresses {
41594 	FIX_HOLE = 0,
41595 	__end_of_permanent_fixed_addresses = 1,
41596 	FIX_BTMAP_END = 1,
41597 	FIX_BTMAP_BEGIN = 64,
41598 	__end_of_fixed_addresses = 65,
41599 };
41600 
41601 struct files_stat_struct {
41602 	long unsigned int nr_files;
41603 	long unsigned int nr_free_files;
41604 	long unsigned int max_files;
41605 };
41606 
41607 enum fsnotify_iter_type {
41608 	FSNOTIFY_ITER_TYPE_INODE = 0,
41609 	FSNOTIFY_ITER_TYPE_VFSMOUNT = 1,
41610 	FSNOTIFY_ITER_TYPE_SB = 2,
41611 	FSNOTIFY_ITER_TYPE_PARENT = 3,
41612 	FSNOTIFY_ITER_TYPE_INODE2 = 4,
41613 	FSNOTIFY_ITER_TYPE_COUNT = 5,
41614 };
41615 
41616 typedef void (*task_work_func_t)(struct callback_head *);
41617 
41618 typedef int wait_bit_action_f(struct wait_bit_key *, int);
41619 
41620 struct fprop_global {
41621 	struct percpu_counter events;
41622 	unsigned int period;
41623 	seqcount_t sequence;
41624 };
41625 
41626 enum wb_state {
41627 	WB_registered = 0,
41628 	WB_writeback_running = 1,
41629 	WB_has_dirty_io = 2,
41630 	WB_start_all = 3,
41631 };
41632 
41633 struct wb_completion {
41634 	atomic_t cnt;
41635 	wait_queue_head_t *waitq;
41636 };
41637 
41638 struct wb_domain {
41639 	spinlock_t lock;
41640 	struct fprop_global completions;
41641 	struct timer_list period_timer;
41642 	long unsigned int period_time;
41643 	long unsigned int dirty_limit_tstamp;
41644 	long unsigned int dirty_limit;
41645 };
41646 
41647 struct wb_writeback_work {
41648 	long int nr_pages;
41649 	struct super_block *sb;
41650 	enum writeback_sync_modes sync_mode;
41651 	unsigned int tagged_writepages: 1;
41652 	unsigned int for_kupdate: 1;
41653 	unsigned int range_cyclic: 1;
41654 	unsigned int for_background: 1;
41655 	unsigned int for_sync: 1;
41656 	unsigned int auto_free: 1;
41657 	enum wb_reason reason;
41658 	struct list_head list;
41659 	struct wb_completion *done;
41660 };
41661 
41662 struct trace_event_raw_writeback_folio_template {
41663 	struct trace_entry ent;
41664 	char name[32];
41665 	ino_t ino;
41666 	long unsigned int index;
41667 	char __data[0];
41668 };
41669 
41670 struct trace_event_raw_writeback_dirty_inode_template {
41671 	struct trace_entry ent;
41672 	char name[32];
41673 	ino_t ino;
41674 	long unsigned int state;
41675 	long unsigned int flags;
41676 	char __data[0];
41677 };
41678 
41679 struct trace_event_raw_writeback_write_inode_template {
41680 	struct trace_entry ent;
41681 	char name[32];
41682 	ino_t ino;
41683 	int sync_mode;
41684 	ino_t cgroup_ino;
41685 	char __data[0];
41686 };
41687 
41688 struct trace_event_raw_writeback_work_class {
41689 	struct trace_entry ent;
41690 	char name[32];
41691 	long int nr_pages;
41692 	dev_t sb_dev;
41693 	int sync_mode;
41694 	int for_kupdate;
41695 	int range_cyclic;
41696 	int for_background;
41697 	int reason;
41698 	ino_t cgroup_ino;
41699 	char __data[0];
41700 };
41701 
41702 struct trace_event_raw_writeback_pages_written {
41703 	struct trace_entry ent;
41704 	long int pages;
41705 	char __data[0];
41706 };
41707 
41708 struct trace_event_raw_writeback_class {
41709 	struct trace_entry ent;
41710 	char name[32];
41711 	ino_t cgroup_ino;
41712 	char __data[0];
41713 };
41714 
41715 struct trace_event_raw_writeback_bdi_register {
41716 	struct trace_entry ent;
41717 	char name[32];
41718 	char __data[0];
41719 };
41720 
41721 struct trace_event_raw_wbc_class {
41722 	struct trace_entry ent;
41723 	char name[32];
41724 	long int nr_to_write;
41725 	long int pages_skipped;
41726 	int sync_mode;
41727 	int for_kupdate;
41728 	int for_background;
41729 	int for_reclaim;
41730 	int range_cyclic;
41731 	long int range_start;
41732 	long int range_end;
41733 	ino_t cgroup_ino;
41734 	char __data[0];
41735 };
41736 
41737 struct trace_event_raw_writeback_queue_io {
41738 	struct trace_entry ent;
41739 	char name[32];
41740 	long unsigned int older;
41741 	long int age;
41742 	int moved;
41743 	int reason;
41744 	ino_t cgroup_ino;
41745 	char __data[0];
41746 };
41747 
41748 struct trace_event_raw_global_dirty_state {
41749 	struct trace_entry ent;
41750 	long unsigned int nr_dirty;
41751 	long unsigned int nr_writeback;
41752 	long unsigned int background_thresh;
41753 	long unsigned int dirty_thresh;
41754 	long unsigned int dirty_limit;
41755 	long unsigned int nr_dirtied;
41756 	long unsigned int nr_written;
41757 	char __data[0];
41758 };
41759 
41760 struct trace_event_raw_bdi_dirty_ratelimit {
41761 	struct trace_entry ent;
41762 	char bdi[32];
41763 	long unsigned int write_bw;
41764 	long unsigned int avg_write_bw;
41765 	long unsigned int dirty_rate;
41766 	long unsigned int dirty_ratelimit;
41767 	long unsigned int task_ratelimit;
41768 	long unsigned int balanced_dirty_ratelimit;
41769 	ino_t cgroup_ino;
41770 	char __data[0];
41771 };
41772 
41773 struct trace_event_raw_balance_dirty_pages {
41774 	struct trace_entry ent;
41775 	char bdi[32];
41776 	long unsigned int limit;
41777 	long unsigned int setpoint;
41778 	long unsigned int dirty;
41779 	long unsigned int bdi_setpoint;
41780 	long unsigned int bdi_dirty;
41781 	long unsigned int dirty_ratelimit;
41782 	long unsigned int task_ratelimit;
41783 	unsigned int dirtied;
41784 	unsigned int dirtied_pause;
41785 	long unsigned int paused;
41786 	long int pause;
41787 	long unsigned int period;
41788 	long int think;
41789 	ino_t cgroup_ino;
41790 	char __data[0];
41791 };
41792 
41793 struct trace_event_raw_writeback_sb_inodes_requeue {
41794 	struct trace_entry ent;
41795 	char name[32];
41796 	ino_t ino;
41797 	long unsigned int state;
41798 	long unsigned int dirtied_when;
41799 	ino_t cgroup_ino;
41800 	char __data[0];
41801 };
41802 
41803 struct trace_event_raw_writeback_single_inode_template {
41804 	struct trace_entry ent;
41805 	char name[32];
41806 	ino_t ino;
41807 	long unsigned int state;
41808 	long unsigned int dirtied_when;
41809 	long unsigned int writeback_index;
41810 	long int nr_to_write;
41811 	long unsigned int wrote;
41812 	ino_t cgroup_ino;
41813 	char __data[0];
41814 };
41815 
41816 struct trace_event_raw_writeback_inode_template {
41817 	struct trace_entry ent;
41818 	dev_t dev;
41819 	ino_t ino;
41820 	long unsigned int state;
41821 	__u16 mode;
41822 	long unsigned int dirtied_when;
41823 	char __data[0];
41824 };
41825 
41826 struct trace_event_data_offsets_writeback_folio_template {};
41827 
41828 struct trace_event_data_offsets_writeback_dirty_inode_template {};
41829 
41830 struct trace_event_data_offsets_writeback_write_inode_template {};
41831 
41832 struct trace_event_data_offsets_writeback_work_class {};
41833 
41834 struct trace_event_data_offsets_writeback_pages_written {};
41835 
41836 struct trace_event_data_offsets_writeback_class {};
41837 
41838 struct trace_event_data_offsets_writeback_bdi_register {};
41839 
41840 struct trace_event_data_offsets_wbc_class {};
41841 
41842 struct trace_event_data_offsets_writeback_queue_io {};
41843 
41844 struct trace_event_data_offsets_global_dirty_state {};
41845 
41846 struct trace_event_data_offsets_bdi_dirty_ratelimit {};
41847 
41848 struct trace_event_data_offsets_balance_dirty_pages {};
41849 
41850 struct trace_event_data_offsets_writeback_sb_inodes_requeue {};
41851 
41852 struct trace_event_data_offsets_writeback_single_inode_template {};
41853 
41854 struct trace_event_data_offsets_writeback_inode_template {};
41855 
41856 typedef void (*btf_trace_writeback_dirty_folio)(void *, struct folio *, struct address_space *);
41857 
41858 typedef void (*btf_trace_folio_wait_writeback)(void *, struct folio *, struct address_space *);
41859 
41860 typedef void (*btf_trace_writeback_mark_inode_dirty)(void *, struct inode *, int);
41861 
41862 typedef void (*btf_trace_writeback_dirty_inode_start)(void *, struct inode *, int);
41863 
41864 typedef void (*btf_trace_writeback_dirty_inode)(void *, struct inode *, int);
41865 
41866 typedef void (*btf_trace_writeback_write_inode_start)(void *, struct inode *, struct writeback_control *);
41867 
41868 typedef void (*btf_trace_writeback_write_inode)(void *, struct inode *, struct writeback_control *);
41869 
41870 typedef void (*btf_trace_writeback_queue)(void *, struct bdi_writeback *, struct wb_writeback_work *);
41871 
41872 typedef void (*btf_trace_writeback_exec)(void *, struct bdi_writeback *, struct wb_writeback_work *);
41873 
41874 typedef void (*btf_trace_writeback_start)(void *, struct bdi_writeback *, struct wb_writeback_work *);
41875 
41876 typedef void (*btf_trace_writeback_written)(void *, struct bdi_writeback *, struct wb_writeback_work *);
41877 
41878 typedef void (*btf_trace_writeback_wait)(void *, struct bdi_writeback *, struct wb_writeback_work *);
41879 
41880 typedef void (*btf_trace_writeback_pages_written)(void *, long int);
41881 
41882 typedef void (*btf_trace_writeback_wake_background)(void *, struct bdi_writeback *);
41883 
41884 typedef void (*btf_trace_writeback_bdi_register)(void *, struct backing_dev_info *);
41885 
41886 typedef void (*btf_trace_wbc_writepage)(void *, struct writeback_control *, struct backing_dev_info *);
41887 
41888 typedef void (*btf_trace_writeback_queue_io)(void *, struct bdi_writeback *, struct wb_writeback_work *, long unsigned int, int);
41889 
41890 typedef void (*btf_trace_global_dirty_state)(void *, long unsigned int, long unsigned int);
41891 
41892 typedef void (*btf_trace_bdi_dirty_ratelimit)(void *, struct bdi_writeback *, long unsigned int, long unsigned int);
41893 
41894 typedef void (*btf_trace_balance_dirty_pages)(void *, struct bdi_writeback *, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long int, long unsigned int);
41895 
41896 typedef void (*btf_trace_writeback_sb_inodes_requeue)(void *, struct inode *);
41897 
41898 typedef void (*btf_trace_writeback_single_inode_start)(void *, struct inode *, struct writeback_control *, long unsigned int);
41899 
41900 typedef void (*btf_trace_writeback_single_inode)(void *, struct inode *, struct writeback_control *, long unsigned int);
41901 
41902 typedef void (*btf_trace_writeback_lazytime)(void *, struct inode *);
41903 
41904 typedef void (*btf_trace_writeback_lazytime_iput)(void *, struct inode *);
41905 
41906 typedef void (*btf_trace_writeback_dirty_inode_enqueue)(void *, struct inode *);
41907 
41908 typedef void (*btf_trace_sb_mark_inode_writeback)(void *, struct inode *);
41909 
41910 typedef void (*btf_trace_sb_clear_inode_writeback)(void *, struct inode *);
41911 
41912 struct __kernel_itimerspec {
41913 	struct __kernel_timespec it_interval;
41914 	struct __kernel_timespec it_value;
41915 };
41916 
41917 enum alarmtimer_type {
41918 	ALARM_REALTIME = 0,
41919 	ALARM_BOOTTIME = 1,
41920 	ALARM_NUMTYPE = 2,
41921 	ALARM_REALTIME_FREEZER = 3,
41922 	ALARM_BOOTTIME_FREEZER = 4,
41923 };
41924 
41925 enum alarmtimer_restart {
41926 	ALARMTIMER_NORESTART = 0,
41927 	ALARMTIMER_RESTART = 1,
41928 };
41929 
41930 struct alarm {
41931 	struct timerqueue_node node;
41932 	struct hrtimer timer;
41933 	enum alarmtimer_restart (*function)(struct alarm *, ktime_t);
41934 	enum alarmtimer_type type;
41935 	int state;
41936 	void *data;
41937 };
41938 
41939 struct timerfd_ctx {
41940 	union {
41941 		struct hrtimer tmr;
41942 		struct alarm alarm;
41943 	} t;
41944 	ktime_t tintv;
41945 	ktime_t moffs;
41946 	wait_queue_head_t wqh;
41947 	u64 ticks;
41948 	int clockid;
41949 	short unsigned int expired;
41950 	short unsigned int settime_flags;
41951 	struct callback_head rcu;
41952 	struct list_head clist;
41953 	spinlock_t cancel_lock;
41954 	bool might_cancel;
41955 };
41956 
41957 struct iomap_page_ops;
41958 
41959 struct iomap {
41960 	u64 addr;
41961 	loff_t offset;
41962 	u64 length;
41963 	u16 type;
41964 	u16 flags;
41965 	struct block_device *bdev;
41966 	struct dax_device *dax_dev;
41967 	void *inline_data;
41968 	void *private;
41969 	const struct iomap_page_ops *page_ops;
41970 };
41971 
41972 struct iomap_page_ops {
41973 	int (*page_prepare)(struct inode *, loff_t, unsigned int);
41974 	void (*page_done)(struct inode *, loff_t, unsigned int, struct page *);
41975 };
41976 
41977 struct iomap_ops {
41978 	int (*iomap_begin)(struct inode *, loff_t, loff_t, unsigned int, struct iomap *, struct iomap *);
41979 	int (*iomap_end)(struct inode *, loff_t, loff_t, ssize_t, unsigned int, struct iomap *);
41980 };
41981 
41982 struct iomap_iter {
41983 	struct inode *inode;
41984 	loff_t pos;
41985 	u64 len;
41986 	s64 processed;
41987 	unsigned int flags;
41988 	struct iomap iomap;
41989 	struct iomap srcmap;
41990 	void *private;
41991 };
41992 
41993 struct mount;
41994 
41995 struct mnt_namespace {
41996 	struct ns_common ns;
41997 	struct mount *root;
41998 	struct list_head list;
41999 	spinlock_t ns_lock;
42000 	struct user_namespace *user_ns;
42001 	struct ucounts *ucounts;
42002 	u64 seq;
42003 	wait_queue_head_t poll;
42004 	u64 event;
42005 	unsigned int mounts;
42006 	unsigned int pending_mounts;
42007 };
42008 
42009 struct mnt_pcp;
42010 
42011 struct mountpoint;
42012 
42013 struct mount {
42014 	struct hlist_node mnt_hash;
42015 	struct mount *mnt_parent;
42016 	struct dentry *mnt_mountpoint;
42017 	struct vfsmount mnt;
42018 	union {
42019 		struct callback_head mnt_rcu;
42020 		struct llist_node mnt_llist;
42021 	};
42022 	struct mnt_pcp *mnt_pcp;
42023 	struct list_head mnt_mounts;
42024 	struct list_head mnt_child;
42025 	struct list_head mnt_instance;
42026 	const char *mnt_devname;
42027 	struct list_head mnt_list;
42028 	struct list_head mnt_expire;
42029 	struct list_head mnt_share;
42030 	struct list_head mnt_slave_list;
42031 	struct list_head mnt_slave;
42032 	struct mount *mnt_master;
42033 	struct mnt_namespace *mnt_ns;
42034 	struct mountpoint *mnt_mp;
42035 	union {
42036 		struct hlist_node mnt_mp_list;
42037 		struct hlist_node mnt_umount;
42038 	};
42039 	struct list_head mnt_umounting;
42040 	struct fsnotify_mark_connector *mnt_fsnotify_marks;
42041 	__u32 mnt_fsnotify_mask;
42042 	int mnt_id;
42043 	int mnt_group_id;
42044 	int mnt_expiry_mark;
42045 	struct hlist_head mnt_pins;
42046 	struct hlist_head mnt_stuck_children;
42047 };
42048 
42049 struct mnt_pcp {
42050 	int mnt_count;
42051 	int mnt_writers;
42052 };
42053 
42054 struct mountpoint {
42055 	struct hlist_node m_hash;
42056 	struct dentry *m_dentry;
42057 	struct hlist_head m_list;
42058 	int m_count;
42059 };
42060 
42061 union proc_op {
42062 	int (*proc_get_link)(struct dentry *, struct path *);
42063 	int (*proc_show)(struct seq_file *, struct pid_namespace *, struct pid *, struct task_struct *);
42064 	const char *lsm;
42065 };
42066 
42067 struct proc_inode {
42068 	struct pid *pid;
42069 	unsigned int fd;
42070 	union proc_op op;
42071 	struct proc_dir_entry *pde;
42072 	struct ctl_table_header *sysctl;
42073 	struct ctl_table *sysctl_entry;
42074 	struct hlist_node sibling_inodes;
42075 	const struct proc_ns_operations *ns_ops;
42076 	struct inode vfs_inode;
42077 };
42078 
42079 typedef struct dentry *instantiate_t(struct dentry *, struct task_struct *, const void *);
42080 
42081 struct fd_data {
42082 	fmode_t mode;
42083 	unsigned int fd;
42084 };
42085 
42086 struct ipc_ids {
42087 	int in_use;
42088 	short unsigned int seq;
42089 	struct rw_semaphore rwsem;
42090 	struct idr ipcs_idr;
42091 	int max_idx;
42092 	int last_idx;
42093 	struct rhashtable key_ht;
42094 };
42095 
42096 struct ipc_namespace {
42097 	struct ipc_ids ids[3];
42098 	int sem_ctls[4];
42099 	int used_sems;
42100 	unsigned int msg_ctlmax;
42101 	unsigned int msg_ctlmnb;
42102 	unsigned int msg_ctlmni;
42103 	atomic_t msg_bytes;
42104 	atomic_t msg_hdrs;
42105 	size_t shm_ctlmax;
42106 	size_t shm_ctlall;
42107 	long unsigned int shm_tot;
42108 	int shm_ctlmni;
42109 	int shm_rmid_forced;
42110 	struct notifier_block ipcns_nb;
42111 	struct vfsmount *mq_mnt;
42112 	unsigned int mq_queues_count;
42113 	unsigned int mq_queues_max;
42114 	unsigned int mq_msg_max;
42115 	unsigned int mq_msgsize_max;
42116 	unsigned int mq_msg_default;
42117 	unsigned int mq_msgsize_default;
42118 	struct ctl_table_set mq_set;
42119 	struct ctl_table_header *mq_sysctls;
42120 	struct ctl_table_set ipc_set;
42121 	struct ctl_table_header *ipc_sysctls;
42122 	struct user_namespace *user_ns;
42123 	struct ucounts *ucounts;
42124 	struct llist_node mnt_llist;
42125 	struct ns_common ns;
42126 };
42127 
42128 struct fiemap_extent;
42129 
42130 struct fiemap_extent_info {
42131 	unsigned int fi_flags;
42132 	unsigned int fi_extents_mapped;
42133 	unsigned int fi_extents_max;
42134 	struct fiemap_extent *fi_extents_start;
42135 };
42136 
42137 enum bh_state_bits {
42138 	BH_Uptodate = 0,
42139 	BH_Dirty = 1,
42140 	BH_Lock = 2,
42141 	BH_Req = 3,
42142 	BH_Mapped = 4,
42143 	BH_New = 5,
42144 	BH_Async_Read = 6,
42145 	BH_Async_Write = 7,
42146 	BH_Delay = 8,
42147 	BH_Boundary = 9,
42148 	BH_Write_EIO = 10,
42149 	BH_Unwritten = 11,
42150 	BH_Quiet = 12,
42151 	BH_Meta = 13,
42152 	BH_Prio = 14,
42153 	BH_Defer_Completion = 15,
42154 	BH_PrivateStart = 16,
42155 };
42156 
42157 typedef unsigned int tid_t;
42158 
42159 struct transaction_chp_stats_s {
42160 	long unsigned int cs_chp_time;
42161 	__u32 cs_forced_to_close;
42162 	__u32 cs_written;
42163 	__u32 cs_dropped;
42164 };
42165 
42166 struct journal_s;
42167 
42168 typedef struct journal_s journal_t;
42169 
42170 struct journal_head;
42171 
42172 struct transaction_s;
42173 
42174 typedef struct transaction_s transaction_t;
42175 
42176 struct transaction_s {
42177 	journal_t *t_journal;
42178 	tid_t t_tid;
42179 	enum {
42180 		T_RUNNING = 0,
42181 		T_LOCKED = 1,
42182 		T_SWITCH = 2,
42183 		T_FLUSH = 3,
42184 		T_COMMIT = 4,
42185 		T_COMMIT_DFLUSH = 5,
42186 		T_COMMIT_JFLUSH = 6,
42187 		T_COMMIT_CALLBACK = 7,
42188 		T_FINISHED = 8,
42189 	} t_state;
42190 	long unsigned int t_log_start;
42191 	int t_nr_buffers;
42192 	struct journal_head *t_reserved_list;
42193 	struct journal_head *t_buffers;
42194 	struct journal_head *t_forget;
42195 	struct journal_head *t_checkpoint_list;
42196 	struct journal_head *t_checkpoint_io_list;
42197 	struct journal_head *t_shadow_list;
42198 	struct list_head t_inode_list;
42199 	spinlock_t t_handle_lock;
42200 	long unsigned int t_max_wait;
42201 	long unsigned int t_start;
42202 	long unsigned int t_requested;
42203 	struct transaction_chp_stats_s t_chp_stats;
42204 	atomic_t t_updates;
42205 	atomic_t t_outstanding_credits;
42206 	atomic_t t_outstanding_revokes;
42207 	atomic_t t_handle_count;
42208 	transaction_t *t_cpnext;
42209 	transaction_t *t_cpprev;
42210 	long unsigned int t_expires;
42211 	ktime_t t_start_time;
42212 	unsigned int t_synchronous_commit: 1;
42213 	int t_need_data_flush;
42214 	struct list_head t_private_list;
42215 };
42216 
42217 struct jbd2_buffer_trigger_type;
42218 
42219 struct journal_head {
42220 	struct buffer_head *b_bh;
42221 	spinlock_t b_state_lock;
42222 	int b_jcount;
42223 	unsigned int b_jlist;
42224 	unsigned int b_modified;
42225 	char *b_frozen_data;
42226 	char *b_committed_data;
42227 	transaction_t *b_transaction;
42228 	transaction_t *b_next_transaction;
42229 	struct journal_head *b_tnext;
42230 	struct journal_head *b_tprev;
42231 	transaction_t *b_cp_transaction;
42232 	struct journal_head *b_cpnext;
42233 	struct journal_head *b_cpprev;
42234 	struct jbd2_buffer_trigger_type *b_triggers;
42235 	struct jbd2_buffer_trigger_type *b_frozen_triggers;
42236 };
42237 
42238 struct jbd2_buffer_trigger_type {
42239 	void (*t_frozen)(struct jbd2_buffer_trigger_type *, struct buffer_head *, void *, size_t);
42240 	void (*t_abort)(struct jbd2_buffer_trigger_type *, struct buffer_head *);
42241 };
42242 
42243 struct jbd2_journal_handle;
42244 
42245 typedef struct jbd2_journal_handle handle_t;
42246 
42247 struct jbd2_journal_handle {
42248 	union {
42249 		transaction_t *h_transaction;
42250 		journal_t *h_journal;
42251 	};
42252 	handle_t *h_rsv_handle;
42253 	int h_total_credits;
42254 	int h_revoke_credits;
42255 	int h_revoke_credits_requested;
42256 	int h_ref;
42257 	int h_err;
42258 	unsigned int h_sync: 1;
42259 	unsigned int h_jdata: 1;
42260 	unsigned int h_reserved: 1;
42261 	unsigned int h_aborted: 1;
42262 	unsigned int h_type: 8;
42263 	unsigned int h_line_no: 16;
42264 	long unsigned int h_start_jiffies;
42265 	unsigned int h_requested_credits;
42266 	unsigned int saved_alloc_context;
42267 };
42268 
42269 struct transaction_run_stats_s {
42270 	long unsigned int rs_wait;
42271 	long unsigned int rs_request_delay;
42272 	long unsigned int rs_running;
42273 	long unsigned int rs_locked;
42274 	long unsigned int rs_flushing;
42275 	long unsigned int rs_logging;
42276 	__u32 rs_handle_count;
42277 	__u32 rs_blocks;
42278 	__u32 rs_blocks_logged;
42279 };
42280 
42281 struct transaction_stats_s {
42282 	long unsigned int ts_tid;
42283 	long unsigned int ts_requested;
42284 	struct transaction_run_stats_s run;
42285 };
42286 
42287 enum passtype {
42288 	PASS_SCAN = 0,
42289 	PASS_REVOKE = 1,
42290 	PASS_REPLAY = 2,
42291 };
42292 
42293 struct journal_superblock_s;
42294 
42295 typedef struct journal_superblock_s journal_superblock_t;
42296 
42297 struct jbd2_revoke_table_s;
42298 
42299 struct jbd2_inode;
42300 
42301 struct journal_s {
42302 	long unsigned int j_flags;
42303 	long unsigned int j_atomic_flags;
42304 	int j_errno;
42305 	struct mutex j_abort_mutex;
42306 	struct buffer_head *j_sb_buffer;
42307 	journal_superblock_t *j_superblock;
42308 	int j_format_version;
42309 	rwlock_t j_state_lock;
42310 	int j_barrier_count;
42311 	struct mutex j_barrier;
42312 	transaction_t *j_running_transaction;
42313 	transaction_t *j_committing_transaction;
42314 	transaction_t *j_checkpoint_transactions;
42315 	wait_queue_head_t j_wait_transaction_locked;
42316 	wait_queue_head_t j_wait_done_commit;
42317 	wait_queue_head_t j_wait_commit;
42318 	wait_queue_head_t j_wait_updates;
42319 	wait_queue_head_t j_wait_reserved;
42320 	wait_queue_head_t j_fc_wait;
42321 	struct mutex j_checkpoint_mutex;
42322 	struct buffer_head *j_chkpt_bhs[64];
42323 	struct shrinker j_shrinker;
42324 	struct percpu_counter j_checkpoint_jh_count;
42325 	transaction_t *j_shrink_transaction;
42326 	long unsigned int j_head;
42327 	long unsigned int j_tail;
42328 	long unsigned int j_free;
42329 	long unsigned int j_first;
42330 	long unsigned int j_last;
42331 	long unsigned int j_fc_first;
42332 	long unsigned int j_fc_off;
42333 	long unsigned int j_fc_last;
42334 	struct block_device *j_dev;
42335 	int j_blocksize;
42336 	long long unsigned int j_blk_offset;
42337 	char j_devname[56];
42338 	struct block_device *j_fs_dev;
42339 	unsigned int j_total_len;
42340 	atomic_t j_reserved_credits;
42341 	spinlock_t j_list_lock;
42342 	struct inode *j_inode;
42343 	tid_t j_tail_sequence;
42344 	tid_t j_transaction_sequence;
42345 	tid_t j_commit_sequence;
42346 	tid_t j_commit_request;
42347 	__u8 j_uuid[16];
42348 	struct task_struct *j_task;
42349 	int j_max_transaction_buffers;
42350 	int j_revoke_records_per_block;
42351 	long unsigned int j_commit_interval;
42352 	struct timer_list j_commit_timer;
42353 	spinlock_t j_revoke_lock;
42354 	struct jbd2_revoke_table_s *j_revoke;
42355 	struct jbd2_revoke_table_s *j_revoke_table[2];
42356 	struct buffer_head **j_wbuf;
42357 	struct buffer_head **j_fc_wbuf;
42358 	int j_wbufsize;
42359 	int j_fc_wbufsize;
42360 	pid_t j_last_sync_writer;
42361 	u64 j_average_commit_time;
42362 	u32 j_min_batch_time;
42363 	u32 j_max_batch_time;
42364 	void (*j_commit_callback)(journal_t *, transaction_t *);
42365 	int (*j_submit_inode_data_buffers)(struct jbd2_inode *);
42366 	int (*j_finish_inode_data_buffers)(struct jbd2_inode *);
42367 	spinlock_t j_history_lock;
42368 	struct proc_dir_entry *j_proc_entry;
42369 	struct transaction_stats_s j_stats;
42370 	unsigned int j_failed_commit;
42371 	void *j_private;
42372 	struct crypto_shash *j_chksum_driver;
42373 	__u32 j_csum_seed;
42374 	void (*j_fc_cleanup_callback)(struct journal_s *, int, tid_t);
42375 	int (*j_fc_replay_callback)(struct journal_s *, struct buffer_head *, enum passtype, int, tid_t);
42376 };
42377 
42378 struct journal_header_s {
42379 	__be32 h_magic;
42380 	__be32 h_blocktype;
42381 	__be32 h_sequence;
42382 };
42383 
42384 typedef struct journal_header_s journal_header_t;
42385 
42386 struct journal_superblock_s {
42387 	journal_header_t s_header;
42388 	__be32 s_blocksize;
42389 	__be32 s_maxlen;
42390 	__be32 s_first;
42391 	__be32 s_sequence;
42392 	__be32 s_start;
42393 	__be32 s_errno;
42394 	__be32 s_feature_compat;
42395 	__be32 s_feature_incompat;
42396 	__be32 s_feature_ro_compat;
42397 	__u8 s_uuid[16];
42398 	__be32 s_nr_users;
42399 	__be32 s_dynsuper;
42400 	__be32 s_max_transaction;
42401 	__be32 s_max_trans_data;
42402 	__u8 s_checksum_type;
42403 	__u8 s_padding2[3];
42404 	__be32 s_num_fc_blks;
42405 	__u32 s_padding[41];
42406 	__be32 s_checksum;
42407 	__u8 s_users[768];
42408 };
42409 
42410 enum jbd_state_bits {
42411 	BH_JBD = 16,
42412 	BH_JWrite = 17,
42413 	BH_Freed = 18,
42414 	BH_Revoked = 19,
42415 	BH_RevokeValid = 20,
42416 	BH_JBDDirty = 21,
42417 	BH_JournalHead = 22,
42418 	BH_Shadow = 23,
42419 	BH_Verified = 24,
42420 	BH_JBDPrivateStart = 25,
42421 };
42422 
42423 struct jbd2_inode {
42424 	transaction_t *i_transaction;
42425 	transaction_t *i_next_transaction;
42426 	struct list_head i_list;
42427 	struct inode *i_vfs_inode;
42428 	long unsigned int i_flags;
42429 	loff_t i_dirty_start;
42430 	loff_t i_dirty_end;
42431 };
42432 
42433 struct fiemap_extent {
42434 	__u64 fe_logical;
42435 	__u64 fe_physical;
42436 	__u64 fe_length;
42437 	__u64 fe_reserved64[2];
42438 	__u32 fe_flags;
42439 	__u32 fe_reserved[3];
42440 };
42441 
42442 struct fscrypt_dummy_policy {};
42443 
42444 typedef int ext4_grpblk_t;
42445 
42446 typedef long long unsigned int ext4_fsblk_t;
42447 
42448 typedef __u32 ext4_lblk_t;
42449 
42450 typedef unsigned int ext4_group_t;
42451 
42452 struct ext4_allocation_request {
42453 	struct inode *inode;
42454 	unsigned int len;
42455 	ext4_lblk_t logical;
42456 	ext4_lblk_t lleft;
42457 	ext4_lblk_t lright;
42458 	ext4_fsblk_t goal;
42459 	ext4_fsblk_t pleft;
42460 	ext4_fsblk_t pright;
42461 	unsigned int flags;
42462 };
42463 
42464 struct ext4_system_blocks {
42465 	struct rb_root root;
42466 	struct callback_head rcu;
42467 };
42468 
42469 struct ext4_group_desc {
42470 	__le32 bg_block_bitmap_lo;
42471 	__le32 bg_inode_bitmap_lo;
42472 	__le32 bg_inode_table_lo;
42473 	__le16 bg_free_blocks_count_lo;
42474 	__le16 bg_free_inodes_count_lo;
42475 	__le16 bg_used_dirs_count_lo;
42476 	__le16 bg_flags;
42477 	__le32 bg_exclude_bitmap_lo;
42478 	__le16 bg_block_bitmap_csum_lo;
42479 	__le16 bg_inode_bitmap_csum_lo;
42480 	__le16 bg_itable_unused_lo;
42481 	__le16 bg_checksum;
42482 	__le32 bg_block_bitmap_hi;
42483 	__le32 bg_inode_bitmap_hi;
42484 	__le32 bg_inode_table_hi;
42485 	__le16 bg_free_blocks_count_hi;
42486 	__le16 bg_free_inodes_count_hi;
42487 	__le16 bg_used_dirs_count_hi;
42488 	__le16 bg_itable_unused_hi;
42489 	__le32 bg_exclude_bitmap_hi;
42490 	__le16 bg_block_bitmap_csum_hi;
42491 	__le16 bg_inode_bitmap_csum_hi;
42492 	__u32 bg_reserved;
42493 };
42494 
42495 struct flex_groups {
42496 	atomic64_t free_clusters;
42497 	atomic_t free_inodes;
42498 	atomic_t used_dirs;
42499 };
42500 
42501 struct extent_status {
42502 	struct rb_node rb_node;
42503 	ext4_lblk_t es_lblk;
42504 	ext4_lblk_t es_len;
42505 	ext4_fsblk_t es_pblk;
42506 };
42507 
42508 struct ext4_es_tree {
42509 	struct rb_root root;
42510 	struct extent_status *cache_es;
42511 };
42512 
42513 struct ext4_es_stats {
42514 	long unsigned int es_stats_shrunk;
42515 	struct percpu_counter es_stats_cache_hits;
42516 	struct percpu_counter es_stats_cache_misses;
42517 	u64 es_stats_scan_time;
42518 	u64 es_stats_max_scan_time;
42519 	struct percpu_counter es_stats_all_cnt;
42520 	struct percpu_counter es_stats_shk_cnt;
42521 };
42522 
42523 struct ext4_pending_tree {
42524 	struct rb_root root;
42525 };
42526 
42527 struct ext4_fc_stats {
42528 	unsigned int fc_ineligible_reason_count[9];
42529 	long unsigned int fc_num_commits;
42530 	long unsigned int fc_ineligible_commits;
42531 	long unsigned int fc_failed_commits;
42532 	long unsigned int fc_skipped_commits;
42533 	long unsigned int fc_numblks;
42534 	u64 s_fc_avg_commit_time;
42535 };
42536 
42537 struct ext4_fc_alloc_region {
42538 	ext4_lblk_t lblk;
42539 	ext4_fsblk_t pblk;
42540 	int ino;
42541 	int len;
42542 };
42543 
42544 struct ext4_fc_replay_state {
42545 	int fc_replay_num_tags;
42546 	int fc_replay_expected_off;
42547 	int fc_current_pass;
42548 	int fc_cur_tag;
42549 	int fc_crc;
42550 	struct ext4_fc_alloc_region *fc_regions;
42551 	int fc_regions_size;
42552 	int fc_regions_used;
42553 	int fc_regions_valid;
42554 	int *fc_modified_inodes;
42555 	int fc_modified_inodes_used;
42556 	int fc_modified_inodes_size;
42557 };
42558 
42559 struct ext4_inode_info {
42560 	__le32 i_data[15];
42561 	__u32 i_dtime;
42562 	ext4_fsblk_t i_file_acl;
42563 	ext4_group_t i_block_group;
42564 	ext4_lblk_t i_dir_start_lookup;
42565 	long unsigned int i_flags;
42566 	struct rw_semaphore xattr_sem;
42567 	union {
42568 		struct list_head i_orphan;
42569 		unsigned int i_orphan_idx;
42570 	};
42571 	struct list_head i_fc_dilist;
42572 	struct list_head i_fc_list;
42573 	ext4_lblk_t i_fc_lblk_start;
42574 	ext4_lblk_t i_fc_lblk_len;
42575 	atomic_t i_fc_updates;
42576 	wait_queue_head_t i_fc_wait;
42577 	struct mutex i_fc_lock;
42578 	loff_t i_disksize;
42579 	struct rw_semaphore i_data_sem;
42580 	struct inode vfs_inode;
42581 	struct jbd2_inode *jinode;
42582 	spinlock_t i_raw_lock;
42583 	struct timespec64 i_crtime;
42584 	atomic_t i_prealloc_active;
42585 	struct list_head i_prealloc_list;
42586 	spinlock_t i_prealloc_lock;
42587 	struct ext4_es_tree i_es_tree;
42588 	rwlock_t i_es_lock;
42589 	struct list_head i_es_list;
42590 	unsigned int i_es_all_nr;
42591 	unsigned int i_es_shk_nr;
42592 	ext4_lblk_t i_es_shrink_lblk;
42593 	ext4_group_t i_last_alloc_group;
42594 	unsigned int i_reserved_data_blocks;
42595 	struct ext4_pending_tree i_pending_tree;
42596 	__u16 i_extra_isize;
42597 	u16 i_inline_off;
42598 	u16 i_inline_size;
42599 	spinlock_t i_completed_io_lock;
42600 	struct list_head i_rsv_conversion_list;
42601 	struct work_struct i_rsv_conversion_work;
42602 	atomic_t i_unwritten;
42603 	spinlock_t i_block_reservation_lock;
42604 	tid_t i_sync_tid;
42605 	tid_t i_datasync_tid;
42606 	__u32 i_csum_seed;
42607 	kprojid_t i_projid;
42608 };
42609 
42610 struct ext4_super_block {
42611 	__le32 s_inodes_count;
42612 	__le32 s_blocks_count_lo;
42613 	__le32 s_r_blocks_count_lo;
42614 	__le32 s_free_blocks_count_lo;
42615 	__le32 s_free_inodes_count;
42616 	__le32 s_first_data_block;
42617 	__le32 s_log_block_size;
42618 	__le32 s_log_cluster_size;
42619 	__le32 s_blocks_per_group;
42620 	__le32 s_clusters_per_group;
42621 	__le32 s_inodes_per_group;
42622 	__le32 s_mtime;
42623 	__le32 s_wtime;
42624 	__le16 s_mnt_count;
42625 	__le16 s_max_mnt_count;
42626 	__le16 s_magic;
42627 	__le16 s_state;
42628 	__le16 s_errors;
42629 	__le16 s_minor_rev_level;
42630 	__le32 s_lastcheck;
42631 	__le32 s_checkinterval;
42632 	__le32 s_creator_os;
42633 	__le32 s_rev_level;
42634 	__le16 s_def_resuid;
42635 	__le16 s_def_resgid;
42636 	__le32 s_first_ino;
42637 	__le16 s_inode_size;
42638 	__le16 s_block_group_nr;
42639 	__le32 s_feature_compat;
42640 	__le32 s_feature_incompat;
42641 	__le32 s_feature_ro_compat;
42642 	__u8 s_uuid[16];
42643 	char s_volume_name[16];
42644 	char s_last_mounted[64];
42645 	__le32 s_algorithm_usage_bitmap;
42646 	__u8 s_prealloc_blocks;
42647 	__u8 s_prealloc_dir_blocks;
42648 	__le16 s_reserved_gdt_blocks;
42649 	__u8 s_journal_uuid[16];
42650 	__le32 s_journal_inum;
42651 	__le32 s_journal_dev;
42652 	__le32 s_last_orphan;
42653 	__le32 s_hash_seed[4];
42654 	__u8 s_def_hash_version;
42655 	__u8 s_jnl_backup_type;
42656 	__le16 s_desc_size;
42657 	__le32 s_default_mount_opts;
42658 	__le32 s_first_meta_bg;
42659 	__le32 s_mkfs_time;
42660 	__le32 s_jnl_blocks[17];
42661 	__le32 s_blocks_count_hi;
42662 	__le32 s_r_blocks_count_hi;
42663 	__le32 s_free_blocks_count_hi;
42664 	__le16 s_min_extra_isize;
42665 	__le16 s_want_extra_isize;
42666 	__le32 s_flags;
42667 	__le16 s_raid_stride;
42668 	__le16 s_mmp_update_interval;
42669 	__le64 s_mmp_block;
42670 	__le32 s_raid_stripe_width;
42671 	__u8 s_log_groups_per_flex;
42672 	__u8 s_checksum_type;
42673 	__u8 s_encryption_level;
42674 	__u8 s_reserved_pad;
42675 	__le64 s_kbytes_written;
42676 	__le32 s_snapshot_inum;
42677 	__le32 s_snapshot_id;
42678 	__le64 s_snapshot_r_blocks_count;
42679 	__le32 s_snapshot_list;
42680 	__le32 s_error_count;
42681 	__le32 s_first_error_time;
42682 	__le32 s_first_error_ino;
42683 	__le64 s_first_error_block;
42684 	__u8 s_first_error_func[32];
42685 	__le32 s_first_error_line;
42686 	__le32 s_last_error_time;
42687 	__le32 s_last_error_ino;
42688 	__le32 s_last_error_line;
42689 	__le64 s_last_error_block;
42690 	__u8 s_last_error_func[32];
42691 	__u8 s_mount_opts[64];
42692 	__le32 s_usr_quota_inum;
42693 	__le32 s_grp_quota_inum;
42694 	__le32 s_overhead_clusters;
42695 	__le32 s_backup_bgs[2];
42696 	__u8 s_encrypt_algos[4];
42697 	__u8 s_encrypt_pw_salt[16];
42698 	__le32 s_lpf_ino;
42699 	__le32 s_prj_quota_inum;
42700 	__le32 s_checksum_seed;
42701 	__u8 s_wtime_hi;
42702 	__u8 s_mtime_hi;
42703 	__u8 s_mkfs_time_hi;
42704 	__u8 s_lastcheck_hi;
42705 	__u8 s_first_error_time_hi;
42706 	__u8 s_last_error_time_hi;
42707 	__u8 s_first_error_errcode;
42708 	__u8 s_last_error_errcode;
42709 	__le16 s_encoding;
42710 	__le16 s_encoding_flags;
42711 	__le32 s_orphan_file_inum;
42712 	__le32 s_reserved[94];
42713 	__le32 s_checksum;
42714 };
42715 
42716 struct ext4_journal_trigger {
42717 	struct jbd2_buffer_trigger_type tr_triggers;
42718 	struct super_block *sb;
42719 };
42720 
42721 struct ext4_orphan_block {
42722 	atomic_t ob_free_entries;
42723 	struct buffer_head *ob_bh;
42724 };
42725 
42726 struct ext4_orphan_info {
42727 	int of_blocks;
42728 	__u32 of_csum_seed;
42729 	struct ext4_orphan_block *of_binfo;
42730 };
42731 
42732 struct ext4_group_info;
42733 
42734 struct ext4_locality_group;
42735 
42736 struct ext4_li_request;
42737 
42738 struct ext4_sb_info {
42739 	long unsigned int s_desc_size;
42740 	long unsigned int s_inodes_per_block;
42741 	long unsigned int s_blocks_per_group;
42742 	long unsigned int s_clusters_per_group;
42743 	long unsigned int s_inodes_per_group;
42744 	long unsigned int s_itb_per_group;
42745 	long unsigned int s_gdb_count;
42746 	long unsigned int s_desc_per_block;
42747 	ext4_group_t s_groups_count;
42748 	ext4_group_t s_blockfile_groups;
42749 	long unsigned int s_overhead;
42750 	unsigned int s_cluster_ratio;
42751 	unsigned int s_cluster_bits;
42752 	loff_t s_bitmap_maxbytes;
42753 	struct buffer_head *s_sbh;
42754 	struct ext4_super_block *s_es;
42755 	struct buffer_head **s_group_desc;
42756 	unsigned int s_mount_opt;
42757 	unsigned int s_mount_opt2;
42758 	long unsigned int s_mount_flags;
42759 	unsigned int s_def_mount_opt;
42760 	ext4_fsblk_t s_sb_block;
42761 	atomic64_t s_resv_clusters;
42762 	kuid_t s_resuid;
42763 	kgid_t s_resgid;
42764 	short unsigned int s_mount_state;
42765 	short unsigned int s_pad;
42766 	int s_addr_per_block_bits;
42767 	int s_desc_per_block_bits;
42768 	int s_inode_size;
42769 	int s_first_ino;
42770 	unsigned int s_inode_readahead_blks;
42771 	unsigned int s_inode_goal;
42772 	u32 s_hash_seed[4];
42773 	int s_def_hash_version;
42774 	int s_hash_unsigned;
42775 	struct percpu_counter s_freeclusters_counter;
42776 	struct percpu_counter s_freeinodes_counter;
42777 	struct percpu_counter s_dirs_counter;
42778 	struct percpu_counter s_dirtyclusters_counter;
42779 	struct percpu_counter s_sra_exceeded_retry_limit;
42780 	struct blockgroup_lock *s_blockgroup_lock;
42781 	struct proc_dir_entry *s_proc;
42782 	struct kobject s_kobj;
42783 	struct completion s_kobj_unregister;
42784 	struct super_block *s_sb;
42785 	struct buffer_head *s_mmp_bh;
42786 	struct journal_s *s_journal;
42787 	long unsigned int s_ext4_flags;
42788 	struct mutex s_orphan_lock;
42789 	struct list_head s_orphan;
42790 	struct ext4_orphan_info s_orphan_info;
42791 	long unsigned int s_commit_interval;
42792 	u32 s_max_batch_time;
42793 	u32 s_min_batch_time;
42794 	struct block_device *s_journal_bdev;
42795 	unsigned int s_want_extra_isize;
42796 	struct ext4_system_blocks *s_system_blks;
42797 	struct ext4_group_info ***s_group_info;
42798 	struct inode *s_buddy_cache;
42799 	spinlock_t s_md_lock;
42800 	short unsigned int *s_mb_offsets;
42801 	unsigned int *s_mb_maxs;
42802 	unsigned int s_group_info_size;
42803 	unsigned int s_mb_free_pending;
42804 	struct list_head s_freed_data_list;
42805 	struct list_head s_discard_list;
42806 	struct work_struct s_discard_work;
42807 	atomic_t s_retry_alloc_pending;
42808 	struct list_head *s_mb_avg_fragment_size;
42809 	rwlock_t *s_mb_avg_fragment_size_locks;
42810 	struct list_head *s_mb_largest_free_orders;
42811 	rwlock_t *s_mb_largest_free_orders_locks;
42812 	long unsigned int s_stripe;
42813 	unsigned int s_mb_max_linear_groups;
42814 	unsigned int s_mb_stream_request;
42815 	unsigned int s_mb_max_to_scan;
42816 	unsigned int s_mb_min_to_scan;
42817 	unsigned int s_mb_stats;
42818 	unsigned int s_mb_order2_reqs;
42819 	unsigned int s_mb_group_prealloc;
42820 	unsigned int s_mb_max_inode_prealloc;
42821 	unsigned int s_max_dir_size_kb;
42822 	long unsigned int s_mb_last_group;
42823 	long unsigned int s_mb_last_start;
42824 	unsigned int s_mb_prefetch;
42825 	unsigned int s_mb_prefetch_limit;
42826 	atomic_t s_bal_reqs;
42827 	atomic_t s_bal_success;
42828 	atomic_t s_bal_allocated;
42829 	atomic_t s_bal_ex_scanned;
42830 	atomic_t s_bal_groups_scanned;
42831 	atomic_t s_bal_goals;
42832 	atomic_t s_bal_breaks;
42833 	atomic_t s_bal_2orders;
42834 	atomic_t s_bal_cr0_bad_suggestions;
42835 	atomic_t s_bal_cr1_bad_suggestions;
42836 	atomic64_t s_bal_cX_groups_considered[4];
42837 	atomic64_t s_bal_cX_hits[4];
42838 	atomic64_t s_bal_cX_failed[4];
42839 	atomic_t s_mb_buddies_generated;
42840 	atomic64_t s_mb_generation_time;
42841 	atomic_t s_mb_lost_chunks;
42842 	atomic_t s_mb_preallocated;
42843 	atomic_t s_mb_discarded;
42844 	atomic_t s_lock_busy;
42845 	struct ext4_locality_group *s_locality_groups;
42846 	long unsigned int s_sectors_written_start;
42847 	u64 s_kbytes_written;
42848 	unsigned int s_extent_max_zeroout_kb;
42849 	unsigned int s_log_groups_per_flex;
42850 	struct flex_groups **s_flex_groups;
42851 	ext4_group_t s_flex_groups_allocated;
42852 	struct workqueue_struct *rsv_conversion_wq;
42853 	struct timer_list s_err_report;
42854 	struct ext4_li_request *s_li_request;
42855 	unsigned int s_li_wait_mult;
42856 	struct task_struct *s_mmp_tsk;
42857 	long unsigned int s_last_trim_minblks;
42858 	struct crypto_shash *s_chksum_driver;
42859 	__u32 s_csum_seed;
42860 	struct shrinker s_es_shrinker;
42861 	struct list_head s_es_list;
42862 	long int s_es_nr_inode;
42863 	struct ext4_es_stats s_es_stats;
42864 	struct mb_cache *s_ea_block_cache;
42865 	struct mb_cache *s_ea_inode_cache;
42866 	long: 64;
42867 	long: 64;
42868 	long: 64;
42869 	long: 64;
42870 	spinlock_t s_es_lock;
42871 	struct ext4_journal_trigger s_journal_triggers[1];
42872 	struct ratelimit_state s_err_ratelimit_state;
42873 	struct ratelimit_state s_warning_ratelimit_state;
42874 	struct ratelimit_state s_msg_ratelimit_state;
42875 	atomic_t s_warning_count;
42876 	atomic_t s_msg_count;
42877 	struct fscrypt_dummy_policy s_dummy_enc_policy;
42878 	struct percpu_rw_semaphore s_writepages_rwsem;
42879 	struct dax_device *s_daxdev;
42880 	u64 s_dax_part_off;
42881 	errseq_t s_bdev_wb_err;
42882 	spinlock_t s_bdev_wb_lock;
42883 	spinlock_t s_error_lock;
42884 	int s_add_error_count;
42885 	int s_first_error_code;
42886 	__u32 s_first_error_line;
42887 	__u32 s_first_error_ino;
42888 	__u64 s_first_error_block;
42889 	const char *s_first_error_func;
42890 	time64_t s_first_error_time;
42891 	int s_last_error_code;
42892 	__u32 s_last_error_line;
42893 	__u32 s_last_error_ino;
42894 	__u64 s_last_error_block;
42895 	const char *s_last_error_func;
42896 	time64_t s_last_error_time;
42897 	struct work_struct s_error_work;
42898 	atomic_t s_fc_subtid;
42899 	struct list_head s_fc_q[2];
42900 	struct list_head s_fc_dentry_q[2];
42901 	unsigned int s_fc_bytes;
42902 	spinlock_t s_fc_lock;
42903 	struct buffer_head *s_fc_bh;
42904 	struct ext4_fc_stats s_fc_stats;
42905 	tid_t s_fc_ineligible_tid;
42906 	struct ext4_fc_replay_state s_fc_replay_state;
42907 	long: 64;
42908 	long: 64;
42909 	long: 64;
42910 	long: 64;
42911 	long: 64;
42912 	long: 64;
42913 	long: 64;
42914 	long: 64;
42915 	long: 64;
42916 	long: 64;
42917 	long: 64;
42918 	long: 64;
42919 	long: 64;
42920 	long: 64;
42921 	long: 64;
42922 };
42923 
42924 struct ext4_group_info {
42925 	long unsigned int bb_state;
42926 	struct rb_root bb_free_root;
42927 	ext4_grpblk_t bb_first_free;
42928 	ext4_grpblk_t bb_free;
42929 	ext4_grpblk_t bb_fragments;
42930 	int bb_avg_fragment_size_order;
42931 	ext4_grpblk_t bb_largest_free_order;
42932 	ext4_group_t bb_group;
42933 	struct list_head bb_prealloc_list;
42934 	struct rw_semaphore alloc_sem;
42935 	struct list_head bb_avg_fragment_size_node;
42936 	struct list_head bb_largest_free_order_node;
42937 	ext4_grpblk_t bb_counters[0];
42938 };
42939 
42940 struct ext4_locality_group {
42941 	struct mutex lg_mutex;
42942 	struct list_head lg_prealloc_list[10];
42943 	spinlock_t lg_prealloc_lock;
42944 };
42945 
42946 enum ext4_li_mode {
42947 	EXT4_LI_MODE_PREFETCH_BBITMAP = 0,
42948 	EXT4_LI_MODE_ITABLE = 1,
42949 };
42950 
42951 struct ext4_li_request {
42952 	struct super_block *lr_super;
42953 	enum ext4_li_mode lr_mode;
42954 	ext4_group_t lr_first_not_zeroed;
42955 	ext4_group_t lr_next_group;
42956 	struct list_head lr_request;
42957 	long unsigned int lr_next_sched;
42958 	long unsigned int lr_timeout;
42959 };
42960 
42961 struct bvec_iter_all {
42962 	struct bio_vec bv;
42963 	int idx;
42964 	unsigned int done;
42965 };
42966 
42967 struct ext4_io_end_vec {
42968 	struct list_head list;
42969 	loff_t offset;
42970 	ssize_t size;
42971 };
42972 
42973 struct ext4_io_end {
42974 	struct list_head list;
42975 	handle_t *handle;
42976 	struct inode *inode;
42977 	struct bio *bio;
42978 	unsigned int flag;
42979 	refcount_t count;
42980 	struct list_head list_vec;
42981 };
42982 
42983 typedef struct ext4_io_end ext4_io_end_t;
42984 
42985 struct ext4_io_submit {
42986 	struct writeback_control *io_wbc;
42987 	struct bio *io_bio;
42988 	ext4_io_end_t *io_end;
42989 	sector_t io_next_block;
42990 };
42991 
42992 typedef int get_block_t(struct inode *, sector_t, struct buffer_head *, int);
42993 
42994 struct ext2_dir_entry_2 {
42995 	__le32 inode;
42996 	__le16 rec_len;
42997 	__u8 name_len;
42998 	__u8 file_type;
42999 	char name[0];
43000 };
43001 
43002 typedef struct ext2_dir_entry_2 ext2_dirent;
43003 
43004 struct jbd2_journal_revoke_header_s {
43005 	journal_header_t r_header;
43006 	__be32 r_count;
43007 };
43008 
43009 typedef struct jbd2_journal_revoke_header_s jbd2_journal_revoke_header_t;
43010 
43011 struct jbd2_revoke_table_s {
43012 	int hash_size;
43013 	int hash_shift;
43014 	struct list_head *hash_table;
43015 };
43016 
43017 struct jbd2_revoke_record_s {
43018 	struct list_head hash;
43019 	tid_t sequence;
43020 	long long unsigned int blocknr;
43021 };
43022 
43023 typedef __kernel_long_t __kernel_off_t;
43024 
43025 typedef __kernel_off_t off_t;
43026 
43027 struct cdrom_tocentry {
43028 	__u8 cdte_track;
43029 	__u8 cdte_adr: 4;
43030 	__u8 cdte_ctrl: 4;
43031 	__u8 cdte_format;
43032 	union cdrom_addr cdte_addr;
43033 	__u8 cdte_datamode;
43034 };
43035 
43036 struct match_token {
43037 	int token;
43038 	const char *pattern;
43039 };
43040 
43041 enum {
43042 	MAX_OPT_ARGS = 3,
43043 };
43044 
43045 typedef struct {
43046 	char *from;
43047 	char *to;
43048 } substring_t;
43049 
43050 struct iso_volume_descriptor {
43051 	__u8 type[1];
43052 	char id[5];
43053 	__u8 version[1];
43054 	__u8 data[2041];
43055 };
43056 
43057 struct iso_primary_descriptor {
43058 	__u8 type[1];
43059 	char id[5];
43060 	__u8 version[1];
43061 	__u8 unused1[1];
43062 	char system_id[32];
43063 	char volume_id[32];
43064 	__u8 unused2[8];
43065 	__u8 volume_space_size[8];
43066 	__u8 unused3[32];
43067 	__u8 volume_set_size[4];
43068 	__u8 volume_sequence_number[4];
43069 	__u8 logical_block_size[4];
43070 	__u8 path_table_size[8];
43071 	__u8 type_l_path_table[4];
43072 	__u8 opt_type_l_path_table[4];
43073 	__u8 type_m_path_table[4];
43074 	__u8 opt_type_m_path_table[4];
43075 	__u8 root_directory_record[34];
43076 	char volume_set_id[128];
43077 	char publisher_id[128];
43078 	char preparer_id[128];
43079 	char application_id[128];
43080 	char copyright_file_id[37];
43081 	char abstract_file_id[37];
43082 	char bibliographic_file_id[37];
43083 	__u8 creation_date[17];
43084 	__u8 modification_date[17];
43085 	__u8 expiration_date[17];
43086 	__u8 effective_date[17];
43087 	__u8 file_structure_version[1];
43088 	__u8 unused4[1];
43089 	__u8 application_data[512];
43090 	__u8 unused5[653];
43091 };
43092 
43093 struct iso_supplementary_descriptor {
43094 	__u8 type[1];
43095 	char id[5];
43096 	__u8 version[1];
43097 	__u8 flags[1];
43098 	char system_id[32];
43099 	char volume_id[32];
43100 	__u8 unused2[8];
43101 	__u8 volume_space_size[8];
43102 	__u8 escape[32];
43103 	__u8 volume_set_size[4];
43104 	__u8 volume_sequence_number[4];
43105 	__u8 logical_block_size[4];
43106 	__u8 path_table_size[8];
43107 	__u8 type_l_path_table[4];
43108 	__u8 opt_type_l_path_table[4];
43109 	__u8 type_m_path_table[4];
43110 	__u8 opt_type_m_path_table[4];
43111 	__u8 root_directory_record[34];
43112 	char volume_set_id[128];
43113 	char publisher_id[128];
43114 	char preparer_id[128];
43115 	char application_id[128];
43116 	char copyright_file_id[37];
43117 	char abstract_file_id[37];
43118 	char bibliographic_file_id[37];
43119 	__u8 creation_date[17];
43120 	__u8 modification_date[17];
43121 	__u8 expiration_date[17];
43122 	__u8 effective_date[17];
43123 	__u8 file_structure_version[1];
43124 	__u8 unused4[1];
43125 	__u8 application_data[512];
43126 	__u8 unused5[653];
43127 };
43128 
43129 struct hs_volume_descriptor {
43130 	__u8 foo[8];
43131 	__u8 type[1];
43132 	char id[5];
43133 	__u8 version[1];
43134 	__u8 data[2033];
43135 };
43136 
43137 struct hs_primary_descriptor {
43138 	__u8 foo[8];
43139 	__u8 type[1];
43140 	__u8 id[5];
43141 	__u8 version[1];
43142 	__u8 unused1[1];
43143 	char system_id[32];
43144 	char volume_id[32];
43145 	__u8 unused2[8];
43146 	__u8 volume_space_size[8];
43147 	__u8 unused3[32];
43148 	__u8 volume_set_size[4];
43149 	__u8 volume_sequence_number[4];
43150 	__u8 logical_block_size[4];
43151 	__u8 path_table_size[8];
43152 	__u8 type_l_path_table[4];
43153 	__u8 unused4[28];
43154 	__u8 root_directory_record[34];
43155 };
43156 
43157 struct iso_directory_record {
43158 	__u8 length[1];
43159 	__u8 ext_attr_length[1];
43160 	__u8 extent[8];
43161 	__u8 size[8];
43162 	__u8 date[7];
43163 	__u8 flags[1];
43164 	__u8 file_unit_size[1];
43165 	__u8 interleave[1];
43166 	__u8 volume_sequence_number[4];
43167 	__u8 name_len[1];
43168 	char name[0];
43169 };
43170 
43171 enum isofs_file_format {
43172 	isofs_file_normal = 0,
43173 	isofs_file_sparse = 1,
43174 	isofs_file_compressed = 2,
43175 };
43176 
43177 struct iso_inode_info {
43178 	long unsigned int i_iget5_block;
43179 	long unsigned int i_iget5_offset;
43180 	unsigned int i_first_extent;
43181 	unsigned char i_file_format;
43182 	unsigned char i_format_parm[3];
43183 	long unsigned int i_next_section_block;
43184 	long unsigned int i_next_section_offset;
43185 	off_t i_section_size;
43186 	struct inode vfs_inode;
43187 };
43188 
43189 struct isofs_sb_info {
43190 	long unsigned int s_ninodes;
43191 	long unsigned int s_nzones;
43192 	long unsigned int s_firstdatazone;
43193 	long unsigned int s_log_zone_size;
43194 	long unsigned int s_max_size;
43195 	int s_rock_offset;
43196 	s32 s_sbsector;
43197 	unsigned char s_joliet_level;
43198 	unsigned char s_mapping;
43199 	unsigned char s_check;
43200 	unsigned char s_session;
43201 	unsigned int s_high_sierra: 1;
43202 	unsigned int s_rock: 2;
43203 	unsigned int s_cruft: 1;
43204 	unsigned int s_nocompress: 1;
43205 	unsigned int s_hide: 1;
43206 	unsigned int s_showassoc: 1;
43207 	unsigned int s_overriderockperm: 1;
43208 	unsigned int s_uid_set: 1;
43209 	unsigned int s_gid_set: 1;
43210 	umode_t s_fmode;
43211 	umode_t s_dmode;
43212 	kgid_t s_gid;
43213 	kuid_t s_uid;
43214 	struct nls_table *s_nls_iocharset;
43215 };
43216 
43217 struct iso9660_options {
43218 	unsigned int rock: 1;
43219 	unsigned int joliet: 1;
43220 	unsigned int cruft: 1;
43221 	unsigned int hide: 1;
43222 	unsigned int showassoc: 1;
43223 	unsigned int nocompress: 1;
43224 	unsigned int overriderockperm: 1;
43225 	unsigned int uid_set: 1;
43226 	unsigned int gid_set: 1;
43227 	unsigned char map;
43228 	unsigned char check;
43229 	unsigned int blocksize;
43230 	umode_t fmode;
43231 	umode_t dmode;
43232 	kgid_t gid;
43233 	kuid_t uid;
43234 	char *iocharset;
43235 	s32 session;
43236 	s32 sbsector;
43237 };
43238 
43239 enum {
43240 	Opt_block = 0,
43241 	Opt_check_r = 1,
43242 	Opt_check_s = 2,
43243 	Opt_cruft = 3,
43244 	Opt_gid___3 = 4,
43245 	Opt_ignore = 5,
43246 	Opt_iocharset = 6,
43247 	Opt_map_a = 7,
43248 	Opt_map_n = 8,
43249 	Opt_map_o = 9,
43250 	Opt_mode___2 = 10,
43251 	Opt_nojoliet = 11,
43252 	Opt_norock = 12,
43253 	Opt_sb = 13,
43254 	Opt_session = 14,
43255 	Opt_uid___2 = 15,
43256 	Opt_unhide = 16,
43257 	Opt_utf8 = 17,
43258 	Opt_err = 18,
43259 	Opt_nocompress = 19,
43260 	Opt_hide = 20,
43261 	Opt_showassoc = 21,
43262 	Opt_dmode = 22,
43263 	Opt_overriderockperm = 23,
43264 };
43265 
43266 struct isofs_iget5_callback_data {
43267 	long unsigned int block;
43268 	long unsigned int offset;
43269 };
43270 
43271 typedef int (*writepage_t)(struct page *, struct writeback_control *, void *);
43272 
43273 struct rpc_task_setup {
43274 	struct rpc_task *task;
43275 	struct rpc_clnt *rpc_client;
43276 	struct rpc_xprt *rpc_xprt;
43277 	struct rpc_cred *rpc_op_cred;
43278 	const struct rpc_message *rpc_message;
43279 	const struct rpc_call_ops *callback_ops;
43280 	void *callback_data;
43281 	struct workqueue_struct *workqueue;
43282 	short unsigned int flags;
43283 	signed char priority;
43284 };
43285 
43286 struct pnfs_layout_range {
43287 	u32 iomode;
43288 	u64 offset;
43289 	u64 length;
43290 };
43291 
43292 struct pnfs_layout_hdr;
43293 
43294 struct pnfs_layout_segment {
43295 	struct list_head pls_list;
43296 	struct list_head pls_lc_list;
43297 	struct list_head pls_commits;
43298 	struct pnfs_layout_range pls_range;
43299 	refcount_t pls_refcount;
43300 	u32 pls_seq;
43301 	long unsigned int pls_flags;
43302 	struct pnfs_layout_hdr *pls_layout;
43303 };
43304 
43305 enum {
43306 	NFS_IOHDR_ERROR = 0,
43307 	NFS_IOHDR_EOF = 1,
43308 	NFS_IOHDR_REDO = 2,
43309 	NFS_IOHDR_STAT = 3,
43310 	NFS_IOHDR_RESEND_PNFS = 4,
43311 	NFS_IOHDR_RESEND_MDS = 5,
43312 	NFS_IOHDR_UNSTABLE_WRITES = 6,
43313 };
43314 
43315 struct nfs_page {
43316 	struct list_head wb_list;
43317 	struct page *wb_page;
43318 	struct nfs_lock_context *wb_lock_context;
43319 	long unsigned int wb_index;
43320 	unsigned int wb_offset;
43321 	unsigned int wb_pgbase;
43322 	unsigned int wb_bytes;
43323 	struct kref wb_kref;
43324 	long unsigned int wb_flags;
43325 	struct nfs_write_verifier wb_verf;
43326 	struct nfs_page *wb_this_page;
43327 	struct nfs_page *wb_head;
43328 	short unsigned int wb_nio;
43329 };
43330 
43331 struct nfs_io_completion {
43332 	void (*complete)(void *);
43333 	void *data;
43334 	struct kref refcount;
43335 };
43336 
43337 struct nfs_direct_req {
43338 	struct kref kref;
43339 	struct nfs_open_context *ctx;
43340 	struct nfs_lock_context *l_ctx;
43341 	struct kiocb *iocb;
43342 	struct inode *inode;
43343 	atomic_t io_count;
43344 	spinlock_t lock;
43345 	loff_t io_start;
43346 	ssize_t count;
43347 	ssize_t max_count;
43348 	ssize_t bytes_left;
43349 	ssize_t error;
43350 	struct completion completion;
43351 	struct nfs_mds_commit_info mds_cinfo;
43352 	struct pnfs_ds_commit_info ds_cinfo;
43353 	struct work_struct work;
43354 	int flags;
43355 };
43356 
43357 struct nfs_iostats {
43358 	long long unsigned int bytes[8];
43359 	long unsigned int events[27];
43360 	long: 64;
43361 	long: 64;
43362 	long: 64;
43363 	long: 64;
43364 	long: 64;
43365 	long: 64;
43366 	long: 64;
43367 	long: 64;
43368 	long: 64;
43369 	long: 64;
43370 	long: 64;
43371 	long: 64;
43372 	long: 64;
43373 };
43374 
43375 struct nfs4_cached_acl;
43376 
43377 struct nfs_delegation;
43378 
43379 struct nfs_inode {
43380 	__u64 fileid;
43381 	struct nfs_fh fh;
43382 	long unsigned int flags;
43383 	long unsigned int cache_validity;
43384 	long unsigned int read_cache_jiffies;
43385 	long unsigned int attrtimeo;
43386 	long unsigned int attrtimeo_timestamp;
43387 	long unsigned int attr_gencount;
43388 	struct rb_root access_cache;
43389 	struct list_head access_cache_entry_lru;
43390 	struct list_head access_cache_inode_lru;
43391 	union {
43392 		struct {
43393 			long unsigned int cache_change_attribute;
43394 			__be32 cookieverf[2];
43395 			struct rw_semaphore rmdir_sem;
43396 		};
43397 		struct {
43398 			atomic_long_t nrequests;
43399 			atomic_long_t redirtied_pages;
43400 			struct nfs_mds_commit_info commit_info;
43401 			struct mutex commit_mutex;
43402 		};
43403 	};
43404 	struct list_head open_files;
43405 	struct nfs4_cached_acl *nfs4_acl;
43406 	struct list_head open_states;
43407 	struct nfs_delegation *delegation;
43408 	struct rw_semaphore rwsem;
43409 	struct pnfs_layout_hdr *layout;
43410 	__u64 write_io;
43411 	__u64 read_io;
43412 	struct inode vfs_inode;
43413 };
43414 
43415 struct nfs_delegation {
43416 	struct list_head super_list;
43417 	const struct cred *cred;
43418 	struct inode *inode;
43419 	nfs4_stateid stateid;
43420 	fmode_t type;
43421 	long unsigned int pagemod_limit;
43422 	__u64 change_attr;
43423 	long unsigned int flags;
43424 	refcount_t refcount;
43425 	spinlock_t lock;
43426 	struct callback_head rcu;
43427 };
43428 
43429 enum {
43430 	PG_BUSY = 0,
43431 	PG_MAPPED = 1,
43432 	PG_CLEAN = 2,
43433 	PG_COMMIT_TO_DS = 3,
43434 	PG_INODE_REF = 4,
43435 	PG_HEADLOCK = 5,
43436 	PG_TEARDOWN = 6,
43437 	PG_UNLOCKPAGE = 7,
43438 	PG_UPTODATE = 8,
43439 	PG_WB_END = 9,
43440 	PG_REMOVE = 10,
43441 	PG_CONTENDED1 = 11,
43442 	PG_CONTENDED2 = 12,
43443 };
43444 
43445 struct nfs_pageio_descriptor;
43446 
43447 struct nfs_pgio_mirror;
43448 
43449 struct nfs_pageio_ops {
43450 	void (*pg_init)(struct nfs_pageio_descriptor *, struct nfs_page *);
43451 	size_t (*pg_test)(struct nfs_pageio_descriptor *, struct nfs_page *, struct nfs_page *);
43452 	int (*pg_doio)(struct nfs_pageio_descriptor *);
43453 	unsigned int (*pg_get_mirror_count)(struct nfs_pageio_descriptor *, struct nfs_page *);
43454 	void (*pg_cleanup)(struct nfs_pageio_descriptor *);
43455 	struct nfs_pgio_mirror * (*pg_get_mirror)(struct nfs_pageio_descriptor *, u32);
43456 	u32 (*pg_set_mirror)(struct nfs_pageio_descriptor *, u32);
43457 };
43458 
43459 struct nfs_pgio_mirror {
43460 	struct list_head pg_list;
43461 	long unsigned int pg_bytes_written;
43462 	size_t pg_count;
43463 	size_t pg_bsize;
43464 	unsigned int pg_base;
43465 	unsigned char pg_recoalesce: 1;
43466 };
43467 
43468 struct nfs_pageio_descriptor {
43469 	struct inode *pg_inode;
43470 	const struct nfs_pageio_ops *pg_ops;
43471 	const struct nfs_rw_ops *pg_rw_ops;
43472 	int pg_ioflags;
43473 	int pg_error;
43474 	const struct rpc_call_ops *pg_rpc_callops;
43475 	const struct nfs_pgio_completion_ops *pg_completion_ops;
43476 	struct pnfs_layout_segment *pg_lseg;
43477 	struct nfs_io_completion *pg_io_completion;
43478 	struct nfs_direct_req *pg_dreq;
43479 	unsigned int pg_bsize;
43480 	u32 pg_mirror_count;
43481 	struct nfs_pgio_mirror *pg_mirrors;
43482 	struct nfs_pgio_mirror pg_mirrors_static[1];
43483 	struct nfs_pgio_mirror *pg_mirrors_dynamic;
43484 	u32 pg_mirror_idx;
43485 	short unsigned int pg_maxretrans;
43486 	unsigned char pg_moreio: 1;
43487 };
43488 
43489 enum nfs_stat_bytecounters {
43490 	NFSIOS_NORMALREADBYTES = 0,
43491 	NFSIOS_NORMALWRITTENBYTES = 1,
43492 	NFSIOS_DIRECTREADBYTES = 2,
43493 	NFSIOS_DIRECTWRITTENBYTES = 3,
43494 	NFSIOS_SERVERREADBYTES = 4,
43495 	NFSIOS_SERVERWRITTENBYTES = 5,
43496 	NFSIOS_READPAGES = 6,
43497 	NFSIOS_WRITEPAGES = 7,
43498 	__NFSIOS_BYTESMAX = 8,
43499 };
43500 
43501 enum nfs_stat_eventcounters {
43502 	NFSIOS_INODEREVALIDATE = 0,
43503 	NFSIOS_DENTRYREVALIDATE = 1,
43504 	NFSIOS_DATAINVALIDATE = 2,
43505 	NFSIOS_ATTRINVALIDATE = 3,
43506 	NFSIOS_VFSOPEN = 4,
43507 	NFSIOS_VFSLOOKUP = 5,
43508 	NFSIOS_VFSACCESS = 6,
43509 	NFSIOS_VFSUPDATEPAGE = 7,
43510 	NFSIOS_VFSREADPAGE = 8,
43511 	NFSIOS_VFSREADPAGES = 9,
43512 	NFSIOS_VFSWRITEPAGE = 10,
43513 	NFSIOS_VFSWRITEPAGES = 11,
43514 	NFSIOS_VFSGETDENTS = 12,
43515 	NFSIOS_VFSSETATTR = 13,
43516 	NFSIOS_VFSFLUSH = 14,
43517 	NFSIOS_VFSFSYNC = 15,
43518 	NFSIOS_VFSLOCK = 16,
43519 	NFSIOS_VFSRELEASE = 17,
43520 	NFSIOS_CONGESTIONWAIT = 18,
43521 	NFSIOS_SETATTRTRUNC = 19,
43522 	NFSIOS_EXTENDWRITE = 20,
43523 	NFSIOS_SILLYRENAME = 21,
43524 	NFSIOS_SHORTREAD = 22,
43525 	NFSIOS_SHORTWRITE = 23,
43526 	NFSIOS_DELAY = 24,
43527 	NFSIOS_PNFS_READ = 25,
43528 	NFSIOS_PNFS_WRITE = 26,
43529 	__NFSIOS_COUNTSMAX = 27,
43530 };
43531 
43532 enum pnfs_try_status {
43533 	PNFS_ATTEMPTED = 0,
43534 	PNFS_NOT_ATTEMPTED = 1,
43535 	PNFS_TRY_AGAIN = 2,
43536 };
43537 
43538 enum nfs_stat {
43539 	NFS_OK = 0,
43540 	NFSERR_PERM = 1,
43541 	NFSERR_NOENT = 2,
43542 	NFSERR_IO = 5,
43543 	NFSERR_NXIO = 6,
43544 	NFSERR_EAGAIN = 11,
43545 	NFSERR_ACCES = 13,
43546 	NFSERR_EXIST = 17,
43547 	NFSERR_XDEV = 18,
43548 	NFSERR_NODEV = 19,
43549 	NFSERR_NOTDIR = 20,
43550 	NFSERR_ISDIR = 21,
43551 	NFSERR_INVAL = 22,
43552 	NFSERR_FBIG = 27,
43553 	NFSERR_NOSPC = 28,
43554 	NFSERR_ROFS = 30,
43555 	NFSERR_MLINK = 31,
43556 	NFSERR_OPNOTSUPP = 45,
43557 	NFSERR_NAMETOOLONG = 63,
43558 	NFSERR_NOTEMPTY = 66,
43559 	NFSERR_DQUOT = 69,
43560 	NFSERR_STALE = 70,
43561 	NFSERR_REMOTE = 71,
43562 	NFSERR_WFLUSH = 99,
43563 	NFSERR_BADHANDLE = 10001,
43564 	NFSERR_NOT_SYNC = 10002,
43565 	NFSERR_BAD_COOKIE = 10003,
43566 	NFSERR_NOTSUPP = 10004,
43567 	NFSERR_TOOSMALL = 10005,
43568 	NFSERR_SERVERFAULT = 10006,
43569 	NFSERR_BADTYPE = 10007,
43570 	NFSERR_JUKEBOX = 10008,
43571 	NFSERR_SAME = 10009,
43572 	NFSERR_DENIED = 10010,
43573 	NFSERR_EXPIRED = 10011,
43574 	NFSERR_LOCKED = 10012,
43575 	NFSERR_GRACE = 10013,
43576 	NFSERR_FHEXPIRED = 10014,
43577 	NFSERR_SHARE_DENIED = 10015,
43578 	NFSERR_WRONGSEC = 10016,
43579 	NFSERR_CLID_INUSE = 10017,
43580 	NFSERR_RESOURCE = 10018,
43581 	NFSERR_MOVED = 10019,
43582 	NFSERR_NOFILEHANDLE = 10020,
43583 	NFSERR_MINOR_VERS_MISMATCH = 10021,
43584 	NFSERR_STALE_CLIENTID = 10022,
43585 	NFSERR_STALE_STATEID = 10023,
43586 	NFSERR_OLD_STATEID = 10024,
43587 	NFSERR_BAD_STATEID = 10025,
43588 	NFSERR_BAD_SEQID = 10026,
43589 	NFSERR_NOT_SAME = 10027,
43590 	NFSERR_LOCK_RANGE = 10028,
43591 	NFSERR_SYMLINK = 10029,
43592 	NFSERR_RESTOREFH = 10030,
43593 	NFSERR_LEASE_MOVED = 10031,
43594 	NFSERR_ATTRNOTSUPP = 10032,
43595 	NFSERR_NO_GRACE = 10033,
43596 	NFSERR_RECLAIM_BAD = 10034,
43597 	NFSERR_RECLAIM_CONFLICT = 10035,
43598 	NFSERR_BAD_XDR = 10036,
43599 	NFSERR_LOCKS_HELD = 10037,
43600 	NFSERR_OPENMODE = 10038,
43601 	NFSERR_BADOWNER = 10039,
43602 	NFSERR_BADCHAR = 10040,
43603 	NFSERR_BADNAME = 10041,
43604 	NFSERR_BAD_RANGE = 10042,
43605 	NFSERR_LOCK_NOTSUPP = 10043,
43606 	NFSERR_OP_ILLEGAL = 10044,
43607 	NFSERR_DEADLOCK = 10045,
43608 	NFSERR_FILE_OPEN = 10046,
43609 	NFSERR_ADMIN_REVOKED = 10047,
43610 	NFSERR_CB_PATH_DOWN = 10048,
43611 };
43612 
43613 enum nfsstat4 {
43614 	NFS4_OK = 0,
43615 	NFS4ERR_PERM = 1,
43616 	NFS4ERR_NOENT = 2,
43617 	NFS4ERR_IO = 5,
43618 	NFS4ERR_NXIO = 6,
43619 	NFS4ERR_ACCESS = 13,
43620 	NFS4ERR_EXIST = 17,
43621 	NFS4ERR_XDEV = 18,
43622 	NFS4ERR_NOTDIR = 20,
43623 	NFS4ERR_ISDIR = 21,
43624 	NFS4ERR_INVAL = 22,
43625 	NFS4ERR_FBIG = 27,
43626 	NFS4ERR_NOSPC = 28,
43627 	NFS4ERR_ROFS = 30,
43628 	NFS4ERR_MLINK = 31,
43629 	NFS4ERR_NAMETOOLONG = 63,
43630 	NFS4ERR_NOTEMPTY = 66,
43631 	NFS4ERR_DQUOT = 69,
43632 	NFS4ERR_STALE = 70,
43633 	NFS4ERR_BADHANDLE = 10001,
43634 	NFS4ERR_BAD_COOKIE = 10003,
43635 	NFS4ERR_NOTSUPP = 10004,
43636 	NFS4ERR_TOOSMALL = 10005,
43637 	NFS4ERR_SERVERFAULT = 10006,
43638 	NFS4ERR_BADTYPE = 10007,
43639 	NFS4ERR_DELAY = 10008,
43640 	NFS4ERR_SAME = 10009,
43641 	NFS4ERR_DENIED = 10010,
43642 	NFS4ERR_EXPIRED = 10011,
43643 	NFS4ERR_LOCKED = 10012,
43644 	NFS4ERR_GRACE = 10013,
43645 	NFS4ERR_FHEXPIRED = 10014,
43646 	NFS4ERR_SHARE_DENIED = 10015,
43647 	NFS4ERR_WRONGSEC = 10016,
43648 	NFS4ERR_CLID_INUSE = 10017,
43649 	NFS4ERR_RESOURCE = 10018,
43650 	NFS4ERR_MOVED = 10019,
43651 	NFS4ERR_NOFILEHANDLE = 10020,
43652 	NFS4ERR_MINOR_VERS_MISMATCH = 10021,
43653 	NFS4ERR_STALE_CLIENTID = 10022,
43654 	NFS4ERR_STALE_STATEID = 10023,
43655 	NFS4ERR_OLD_STATEID = 10024,
43656 	NFS4ERR_BAD_STATEID = 10025,
43657 	NFS4ERR_BAD_SEQID = 10026,
43658 	NFS4ERR_NOT_SAME = 10027,
43659 	NFS4ERR_LOCK_RANGE = 10028,
43660 	NFS4ERR_SYMLINK = 10029,
43661 	NFS4ERR_RESTOREFH = 10030,
43662 	NFS4ERR_LEASE_MOVED = 10031,
43663 	NFS4ERR_ATTRNOTSUPP = 10032,
43664 	NFS4ERR_NO_GRACE = 10033,
43665 	NFS4ERR_RECLAIM_BAD = 10034,
43666 	NFS4ERR_RECLAIM_CONFLICT = 10035,
43667 	NFS4ERR_BADXDR = 10036,
43668 	NFS4ERR_LOCKS_HELD = 10037,
43669 	NFS4ERR_OPENMODE = 10038,
43670 	NFS4ERR_BADOWNER = 10039,
43671 	NFS4ERR_BADCHAR = 10040,
43672 	NFS4ERR_BADNAME = 10041,
43673 	NFS4ERR_BAD_RANGE = 10042,
43674 	NFS4ERR_LOCK_NOTSUPP = 10043,
43675 	NFS4ERR_OP_ILLEGAL = 10044,
43676 	NFS4ERR_DEADLOCK = 10045,
43677 	NFS4ERR_FILE_OPEN = 10046,
43678 	NFS4ERR_ADMIN_REVOKED = 10047,
43679 	NFS4ERR_CB_PATH_DOWN = 10048,
43680 	NFS4ERR_BADIOMODE = 10049,
43681 	NFS4ERR_BADLAYOUT = 10050,
43682 	NFS4ERR_BAD_SESSION_DIGEST = 10051,
43683 	NFS4ERR_BADSESSION = 10052,
43684 	NFS4ERR_BADSLOT = 10053,
43685 	NFS4ERR_COMPLETE_ALREADY = 10054,
43686 	NFS4ERR_CONN_NOT_BOUND_TO_SESSION = 10055,
43687 	NFS4ERR_DELEG_ALREADY_WANTED = 10056,
43688 	NFS4ERR_BACK_CHAN_BUSY = 10057,
43689 	NFS4ERR_LAYOUTTRYLATER = 10058,
43690 	NFS4ERR_LAYOUTUNAVAILABLE = 10059,
43691 	NFS4ERR_NOMATCHING_LAYOUT = 10060,
43692 	NFS4ERR_RECALLCONFLICT = 10061,
43693 	NFS4ERR_UNKNOWN_LAYOUTTYPE = 10062,
43694 	NFS4ERR_SEQ_MISORDERED = 10063,
43695 	NFS4ERR_SEQUENCE_POS = 10064,
43696 	NFS4ERR_REQ_TOO_BIG = 10065,
43697 	NFS4ERR_REP_TOO_BIG = 10066,
43698 	NFS4ERR_REP_TOO_BIG_TO_CACHE = 10067,
43699 	NFS4ERR_RETRY_UNCACHED_REP = 10068,
43700 	NFS4ERR_UNSAFE_COMPOUND = 10069,
43701 	NFS4ERR_TOO_MANY_OPS = 10070,
43702 	NFS4ERR_OP_NOT_IN_SESSION = 10071,
43703 	NFS4ERR_HASH_ALG_UNSUPP = 10072,
43704 	NFS4ERR_CLIENTID_BUSY = 10074,
43705 	NFS4ERR_PNFS_IO_HOLE = 10075,
43706 	NFS4ERR_SEQ_FALSE_RETRY = 10076,
43707 	NFS4ERR_BAD_HIGH_SLOT = 10077,
43708 	NFS4ERR_DEADSESSION = 10078,
43709 	NFS4ERR_ENCR_ALG_UNSUPP = 10079,
43710 	NFS4ERR_PNFS_NO_LAYOUT = 10080,
43711 	NFS4ERR_NOT_ONLY_OP = 10081,
43712 	NFS4ERR_WRONG_CRED = 10082,
43713 	NFS4ERR_WRONG_TYPE = 10083,
43714 	NFS4ERR_DIRDELEG_UNAVAIL = 10084,
43715 	NFS4ERR_REJECT_DELEG = 10085,
43716 	NFS4ERR_RETURNCONFLICT = 10086,
43717 	NFS4ERR_DELEG_REVOKED = 10087,
43718 	NFS4ERR_PARTNER_NOTSUPP = 10088,
43719 	NFS4ERR_PARTNER_NO_AUTH = 10089,
43720 	NFS4ERR_UNION_NOTSUPP = 10090,
43721 	NFS4ERR_OFFLOAD_DENIED = 10091,
43722 	NFS4ERR_WRONG_LFS = 10092,
43723 	NFS4ERR_BADLABEL = 10093,
43724 	NFS4ERR_OFFLOAD_NO_REQS = 10094,
43725 	NFS4ERR_NOXATTR = 10095,
43726 	NFS4ERR_XATTR2BIG = 10096,
43727 };
43728 
43729 enum nfs_ftype4 {
43730 	NF4BAD = 0,
43731 	NF4REG = 1,
43732 	NF4DIR = 2,
43733 	NF4BLK = 3,
43734 	NF4CHR = 4,
43735 	NF4LNK = 5,
43736 	NF4SOCK = 6,
43737 	NF4FIFO = 7,
43738 	NF4ATTRDIR = 8,
43739 	NF4NAMEDATTR = 9,
43740 };
43741 
43742 enum open_claim_type4 {
43743 	NFS4_OPEN_CLAIM_NULL = 0,
43744 	NFS4_OPEN_CLAIM_PREVIOUS = 1,
43745 	NFS4_OPEN_CLAIM_DELEGATE_CUR = 2,
43746 	NFS4_OPEN_CLAIM_DELEGATE_PREV = 3,
43747 	NFS4_OPEN_CLAIM_FH = 4,
43748 	NFS4_OPEN_CLAIM_DELEG_CUR_FH = 5,
43749 	NFS4_OPEN_CLAIM_DELEG_PREV_FH = 6,
43750 };
43751 
43752 enum opentype4 {
43753 	NFS4_OPEN_NOCREATE = 0,
43754 	NFS4_OPEN_CREATE = 1,
43755 };
43756 
43757 enum createmode4 {
43758 	NFS4_CREATE_UNCHECKED = 0,
43759 	NFS4_CREATE_GUARDED = 1,
43760 	NFS4_CREATE_EXCLUSIVE = 2,
43761 	NFS4_CREATE_EXCLUSIVE4_1 = 3,
43762 };
43763 
43764 enum limit_by4 {
43765 	NFS4_LIMIT_SIZE = 1,
43766 	NFS4_LIMIT_BLOCKS = 2,
43767 };
43768 
43769 enum open_delegation_type4 {
43770 	NFS4_OPEN_DELEGATE_NONE = 0,
43771 	NFS4_OPEN_DELEGATE_READ = 1,
43772 	NFS4_OPEN_DELEGATE_WRITE = 2,
43773 	NFS4_OPEN_DELEGATE_NONE_EXT = 3,
43774 };
43775 
43776 enum why_no_delegation4 {
43777 	WND4_NOT_WANTED = 0,
43778 	WND4_CONTENTION = 1,
43779 	WND4_RESOURCE = 2,
43780 	WND4_NOT_SUPP_FTYPE = 3,
43781 	WND4_WRITE_DELEG_NOT_SUPP_FTYPE = 4,
43782 	WND4_NOT_SUPP_UPGRADE = 5,
43783 	WND4_NOT_SUPP_DOWNGRADE = 6,
43784 	WND4_CANCELLED = 7,
43785 	WND4_IS_DIR = 8,
43786 };
43787 
43788 enum lock_type4 {
43789 	NFS4_UNLOCK_LT = 0,
43790 	NFS4_READ_LT = 1,
43791 	NFS4_WRITE_LT = 2,
43792 	NFS4_READW_LT = 3,
43793 	NFS4_WRITEW_LT = 4,
43794 };
43795 
43796 enum {
43797 	NFSPROC4_CLNT_NULL = 0,
43798 	NFSPROC4_CLNT_READ = 1,
43799 	NFSPROC4_CLNT_WRITE = 2,
43800 	NFSPROC4_CLNT_COMMIT = 3,
43801 	NFSPROC4_CLNT_OPEN = 4,
43802 	NFSPROC4_CLNT_OPEN_CONFIRM = 5,
43803 	NFSPROC4_CLNT_OPEN_NOATTR = 6,
43804 	NFSPROC4_CLNT_OPEN_DOWNGRADE = 7,
43805 	NFSPROC4_CLNT_CLOSE = 8,
43806 	NFSPROC4_CLNT_SETATTR = 9,
43807 	NFSPROC4_CLNT_FSINFO = 10,
43808 	NFSPROC4_CLNT_RENEW = 11,
43809 	NFSPROC4_CLNT_SETCLIENTID = 12,
43810 	NFSPROC4_CLNT_SETCLIENTID_CONFIRM = 13,
43811 	NFSPROC4_CLNT_LOCK = 14,
43812 	NFSPROC4_CLNT_LOCKT = 15,
43813 	NFSPROC4_CLNT_LOCKU = 16,
43814 	NFSPROC4_CLNT_ACCESS = 17,
43815 	NFSPROC4_CLNT_GETATTR = 18,
43816 	NFSPROC4_CLNT_LOOKUP = 19,
43817 	NFSPROC4_CLNT_LOOKUP_ROOT = 20,
43818 	NFSPROC4_CLNT_REMOVE = 21,
43819 	NFSPROC4_CLNT_RENAME = 22,
43820 	NFSPROC4_CLNT_LINK = 23,
43821 	NFSPROC4_CLNT_SYMLINK = 24,
43822 	NFSPROC4_CLNT_CREATE = 25,
43823 	NFSPROC4_CLNT_PATHCONF = 26,
43824 	NFSPROC4_CLNT_STATFS = 27,
43825 	NFSPROC4_CLNT_READLINK = 28,
43826 	NFSPROC4_CLNT_READDIR = 29,
43827 	NFSPROC4_CLNT_SERVER_CAPS = 30,
43828 	NFSPROC4_CLNT_DELEGRETURN = 31,
43829 	NFSPROC4_CLNT_GETACL = 32,
43830 	NFSPROC4_CLNT_SETACL = 33,
43831 	NFSPROC4_CLNT_FS_LOCATIONS = 34,
43832 	NFSPROC4_CLNT_RELEASE_LOCKOWNER = 35,
43833 	NFSPROC4_CLNT_SECINFO = 36,
43834 	NFSPROC4_CLNT_FSID_PRESENT = 37,
43835 	NFSPROC4_CLNT_EXCHANGE_ID = 38,
43836 	NFSPROC4_CLNT_CREATE_SESSION = 39,
43837 	NFSPROC4_CLNT_DESTROY_SESSION = 40,
43838 	NFSPROC4_CLNT_SEQUENCE = 41,
43839 	NFSPROC4_CLNT_GET_LEASE_TIME = 42,
43840 	NFSPROC4_CLNT_RECLAIM_COMPLETE = 43,
43841 	NFSPROC4_CLNT_LAYOUTGET = 44,
43842 	NFSPROC4_CLNT_GETDEVICEINFO = 45,
43843 	NFSPROC4_CLNT_LAYOUTCOMMIT = 46,
43844 	NFSPROC4_CLNT_LAYOUTRETURN = 47,
43845 	NFSPROC4_CLNT_SECINFO_NO_NAME = 48,
43846 	NFSPROC4_CLNT_TEST_STATEID = 49,
43847 	NFSPROC4_CLNT_FREE_STATEID = 50,
43848 	NFSPROC4_CLNT_GETDEVICELIST = 51,
43849 	NFSPROC4_CLNT_BIND_CONN_TO_SESSION = 52,
43850 	NFSPROC4_CLNT_DESTROY_CLIENTID = 53,
43851 	NFSPROC4_CLNT_SEEK = 54,
43852 	NFSPROC4_CLNT_ALLOCATE = 55,
43853 	NFSPROC4_CLNT_DEALLOCATE = 56,
43854 	NFSPROC4_CLNT_LAYOUTSTATS = 57,
43855 	NFSPROC4_CLNT_CLONE = 58,
43856 	NFSPROC4_CLNT_COPY = 59,
43857 	NFSPROC4_CLNT_OFFLOAD_CANCEL = 60,
43858 	NFSPROC4_CLNT_LOOKUPP = 61,
43859 	NFSPROC4_CLNT_LAYOUTERROR = 62,
43860 	NFSPROC4_CLNT_COPY_NOTIFY = 63,
43861 	NFSPROC4_CLNT_GETXATTR = 64,
43862 	NFSPROC4_CLNT_SETXATTR = 65,
43863 	NFSPROC4_CLNT_LISTXATTRS = 66,
43864 	NFSPROC4_CLNT_REMOVEXATTR = 67,
43865 	NFSPROC4_CLNT_READ_PLUS = 68,
43866 };
43867 
43868 struct nfs4_sessionid {
43869 	unsigned char data[16];
43870 };
43871 
43872 struct nfs4_channel_attrs {
43873 	u32 max_rqst_sz;
43874 	u32 max_resp_sz;
43875 	u32 max_resp_sz_cached;
43876 	u32 max_ops;
43877 	u32 max_reqs;
43878 };
43879 
43880 struct nfs4_slot {
43881 	struct nfs4_slot_table *table;
43882 	struct nfs4_slot *next;
43883 	long unsigned int generation;
43884 	u32 slot_nr;
43885 	u32 seq_nr;
43886 	u32 seq_nr_last_acked;
43887 	u32 seq_nr_highest_sent;
43888 	unsigned int privileged: 1;
43889 	unsigned int seq_done: 1;
43890 };
43891 
43892 struct nfs4_get_lease_time_args {
43893 	struct nfs4_sequence_args la_seq_args;
43894 };
43895 
43896 struct nfs4_get_lease_time_res {
43897 	struct nfs4_sequence_res lr_seq_res;
43898 	struct nfs_fsinfo *lr_fsinfo;
43899 };
43900 
43901 struct nfs4_xdr_opaque_data;
43902 
43903 struct nfs4_xdr_opaque_ops {
43904 	void (*encode)(struct xdr_stream *, const void *, const struct nfs4_xdr_opaque_data *);
43905 	void (*free)(struct nfs4_xdr_opaque_data *);
43906 };
43907 
43908 struct nfs4_xdr_opaque_data {
43909 	const struct nfs4_xdr_opaque_ops *ops;
43910 	void *data;
43911 };
43912 
43913 struct nfs4_layoutdriver_data {
43914 	struct page **pages;
43915 	__u32 pglen;
43916 	__u32 len;
43917 };
43918 
43919 struct nfs4_layoutget_args {
43920 	struct nfs4_sequence_args seq_args;
43921 	__u32 type;
43922 	struct pnfs_layout_range range;
43923 	__u64 minlength;
43924 	__u32 maxcount;
43925 	struct inode *inode;
43926 	struct nfs_open_context *ctx;
43927 	nfs4_stateid stateid;
43928 	struct nfs4_layoutdriver_data layout;
43929 };
43930 
43931 struct nfs4_layoutget_res {
43932 	struct nfs4_sequence_res seq_res;
43933 	int status;
43934 	__u32 return_on_close;
43935 	struct pnfs_layout_range range;
43936 	__u32 type;
43937 	nfs4_stateid stateid;
43938 	struct nfs4_layoutdriver_data *layoutp;
43939 };
43940 
43941 struct nfs4_layoutreturn_args {
43942 	struct nfs4_sequence_args seq_args;
43943 	struct pnfs_layout_hdr *layout;
43944 	struct inode *inode;
43945 	struct pnfs_layout_range range;
43946 	nfs4_stateid stateid;
43947 	__u32 layout_type;
43948 	struct nfs4_xdr_opaque_data *ld_private;
43949 };
43950 
43951 struct nfs4_layoutreturn_res {
43952 	struct nfs4_sequence_res seq_res;
43953 	u32 lrs_present;
43954 	nfs4_stateid stateid;
43955 };
43956 
43957 struct stateowner_id {
43958 	__u64 create_time;
43959 	__u32 uniquifier;
43960 };
43961 
43962 struct nfs_openargs {
43963 	struct nfs4_sequence_args seq_args;
43964 	const struct nfs_fh *fh;
43965 	struct nfs_seqid *seqid;
43966 	int open_flags;
43967 	fmode_t fmode;
43968 	u32 share_access;
43969 	u32 access;
43970 	__u64 clientid;
43971 	struct stateowner_id id;
43972 	union {
43973 		struct {
43974 			struct iattr *attrs;
43975 			nfs4_verifier verifier;
43976 		};
43977 		nfs4_stateid delegation;
43978 		fmode_t delegation_type;
43979 	} u;
43980 	const struct qstr *name;
43981 	const struct nfs_server *server;
43982 	const u32 *bitmask;
43983 	const u32 *open_bitmap;
43984 	enum open_claim_type4 claim;
43985 	enum createmode4 createmode;
43986 	const struct nfs4_label *label;
43987 	umode_t umask;
43988 	struct nfs4_layoutget_args *lg_args;
43989 };
43990 
43991 struct nfs_openres {
43992 	struct nfs4_sequence_res seq_res;
43993 	nfs4_stateid stateid;
43994 	struct nfs_fh fh;
43995 	struct nfs4_change_info cinfo;
43996 	__u32 rflags;
43997 	struct nfs_fattr *f_attr;
43998 	struct nfs_seqid *seqid;
43999 	const struct nfs_server *server;
44000 	fmode_t delegation_type;
44001 	nfs4_stateid delegation;
44002 	long unsigned int pagemod_limit;
44003 	__u32 do_recall;
44004 	__u32 attrset[3];
44005 	struct nfs4_string *owner;
44006 	struct nfs4_string *group_owner;
44007 	__u32 access_request;
44008 	__u32 access_supported;
44009 	__u32 access_result;
44010 	struct nfs4_layoutget_res *lg_res;
44011 };
44012 
44013 struct nfs_open_confirmargs {
44014 	struct nfs4_sequence_args seq_args;
44015 	const struct nfs_fh *fh;
44016 	nfs4_stateid *stateid;
44017 	struct nfs_seqid *seqid;
44018 };
44019 
44020 struct nfs_open_confirmres {
44021 	struct nfs4_sequence_res seq_res;
44022 	nfs4_stateid stateid;
44023 	struct nfs_seqid *seqid;
44024 };
44025 
44026 struct nfs_closeargs {
44027 	struct nfs4_sequence_args seq_args;
44028 	struct nfs_fh *fh;
44029 	nfs4_stateid stateid;
44030 	struct nfs_seqid *seqid;
44031 	fmode_t fmode;
44032 	u32 share_access;
44033 	const u32 *bitmask;
44034 	u32 bitmask_store[3];
44035 	struct nfs4_layoutreturn_args *lr_args;
44036 };
44037 
44038 struct nfs_closeres {
44039 	struct nfs4_sequence_res seq_res;
44040 	nfs4_stateid stateid;
44041 	struct nfs_fattr *fattr;
44042 	struct nfs_seqid *seqid;
44043 	const struct nfs_server *server;
44044 	struct nfs4_layoutreturn_res *lr_res;
44045 	int lr_ret;
44046 };
44047 
44048 struct nfs_lowner {
44049 	__u64 clientid;
44050 	__u64 id;
44051 	dev_t s_dev;
44052 };
44053 
44054 struct nfs_lock_args {
44055 	struct nfs4_sequence_args seq_args;
44056 	struct nfs_fh *fh;
44057 	struct file_lock *fl;
44058 	struct nfs_seqid *lock_seqid;
44059 	nfs4_stateid lock_stateid;
44060 	struct nfs_seqid *open_seqid;
44061 	nfs4_stateid open_stateid;
44062 	struct nfs_lowner lock_owner;
44063 	unsigned char block: 1;
44064 	unsigned char reclaim: 1;
44065 	unsigned char new_lock: 1;
44066 	unsigned char new_lock_owner: 1;
44067 };
44068 
44069 struct nfs_lock_res {
44070 	struct nfs4_sequence_res seq_res;
44071 	nfs4_stateid stateid;
44072 	struct nfs_seqid *lock_seqid;
44073 	struct nfs_seqid *open_seqid;
44074 };
44075 
44076 struct nfs_locku_args {
44077 	struct nfs4_sequence_args seq_args;
44078 	struct nfs_fh *fh;
44079 	struct file_lock *fl;
44080 	struct nfs_seqid *seqid;
44081 	nfs4_stateid stateid;
44082 };
44083 
44084 struct nfs_locku_res {
44085 	struct nfs4_sequence_res seq_res;
44086 	nfs4_stateid stateid;
44087 	struct nfs_seqid *seqid;
44088 };
44089 
44090 struct nfs_lockt_args {
44091 	struct nfs4_sequence_args seq_args;
44092 	struct nfs_fh *fh;
44093 	struct file_lock *fl;
44094 	struct nfs_lowner lock_owner;
44095 };
44096 
44097 struct nfs_lockt_res {
44098 	struct nfs4_sequence_res seq_res;
44099 	struct file_lock *denied;
44100 };
44101 
44102 struct nfs_release_lockowner_args {
44103 	struct nfs4_sequence_args seq_args;
44104 	struct nfs_lowner lock_owner;
44105 };
44106 
44107 struct nfs4_delegreturnargs {
44108 	struct nfs4_sequence_args seq_args;
44109 	const struct nfs_fh *fhandle;
44110 	const nfs4_stateid *stateid;
44111 	const u32 *bitmask;
44112 	u32 bitmask_store[3];
44113 	struct nfs4_layoutreturn_args *lr_args;
44114 };
44115 
44116 struct nfs4_delegreturnres {
44117 	struct nfs4_sequence_res seq_res;
44118 	struct nfs_fattr *fattr;
44119 	struct nfs_server *server;
44120 	struct nfs4_layoutreturn_res *lr_res;
44121 	int lr_ret;
44122 };
44123 
44124 struct nfs_setattrargs {
44125 	struct nfs4_sequence_args seq_args;
44126 	struct nfs_fh *fh;
44127 	nfs4_stateid stateid;
44128 	struct iattr *iap;
44129 	const struct nfs_server *server;
44130 	const u32 *bitmask;
44131 	const struct nfs4_label *label;
44132 };
44133 
44134 enum nfs4_acl_type {
44135 	NFS4ACL_NONE = 0,
44136 	NFS4ACL_ACL = 1,
44137 	NFS4ACL_DACL = 2,
44138 	NFS4ACL_SACL = 3,
44139 };
44140 
44141 struct nfs_setaclargs {
44142 	struct nfs4_sequence_args seq_args;
44143 	struct nfs_fh *fh;
44144 	enum nfs4_acl_type acl_type;
44145 	size_t acl_len;
44146 	struct page **acl_pages;
44147 };
44148 
44149 struct nfs_setaclres {
44150 	struct nfs4_sequence_res seq_res;
44151 };
44152 
44153 struct nfs_getaclargs {
44154 	struct nfs4_sequence_args seq_args;
44155 	struct nfs_fh *fh;
44156 	enum nfs4_acl_type acl_type;
44157 	size_t acl_len;
44158 	struct page **acl_pages;
44159 };
44160 
44161 struct nfs_getaclres {
44162 	struct nfs4_sequence_res seq_res;
44163 	enum nfs4_acl_type acl_type;
44164 	size_t acl_len;
44165 	size_t acl_data_offset;
44166 	int acl_flags;
44167 	struct page *acl_scratch;
44168 };
44169 
44170 struct nfs_setattrres {
44171 	struct nfs4_sequence_res seq_res;
44172 	struct nfs_fattr *fattr;
44173 	const struct nfs_server *server;
44174 };
44175 
44176 typedef u64 clientid4;
44177 
44178 struct nfs4_accessargs {
44179 	struct nfs4_sequence_args seq_args;
44180 	const struct nfs_fh *fh;
44181 	const u32 *bitmask;
44182 	u32 access;
44183 };
44184 
44185 struct nfs4_accessres {
44186 	struct nfs4_sequence_res seq_res;
44187 	const struct nfs_server *server;
44188 	struct nfs_fattr *fattr;
44189 	u32 supported;
44190 	u32 access;
44191 };
44192 
44193 struct nfs4_create_arg {
44194 	struct nfs4_sequence_args seq_args;
44195 	u32 ftype;
44196 	union {
44197 		struct {
44198 			struct page **pages;
44199 			unsigned int len;
44200 		} symlink;
44201 		struct {
44202 			u32 specdata1;
44203 			u32 specdata2;
44204 		} device;
44205 	} u;
44206 	const struct qstr *name;
44207 	const struct nfs_server *server;
44208 	const struct iattr *attrs;
44209 	const struct nfs_fh *dir_fh;
44210 	const u32 *bitmask;
44211 	const struct nfs4_label *label;
44212 	umode_t umask;
44213 };
44214 
44215 struct nfs4_create_res {
44216 	struct nfs4_sequence_res seq_res;
44217 	const struct nfs_server *server;
44218 	struct nfs_fh *fh;
44219 	struct nfs_fattr *fattr;
44220 	struct nfs4_change_info dir_cinfo;
44221 };
44222 
44223 struct nfs4_fsinfo_arg {
44224 	struct nfs4_sequence_args seq_args;
44225 	const struct nfs_fh *fh;
44226 	const u32 *bitmask;
44227 };
44228 
44229 struct nfs4_fsinfo_res {
44230 	struct nfs4_sequence_res seq_res;
44231 	struct nfs_fsinfo *fsinfo;
44232 };
44233 
44234 struct nfs4_getattr_arg {
44235 	struct nfs4_sequence_args seq_args;
44236 	const struct nfs_fh *fh;
44237 	const u32 *bitmask;
44238 };
44239 
44240 struct nfs4_getattr_res {
44241 	struct nfs4_sequence_res seq_res;
44242 	const struct nfs_server *server;
44243 	struct nfs_fattr *fattr;
44244 };
44245 
44246 struct nfs4_link_arg {
44247 	struct nfs4_sequence_args seq_args;
44248 	const struct nfs_fh *fh;
44249 	const struct nfs_fh *dir_fh;
44250 	const struct qstr *name;
44251 	const u32 *bitmask;
44252 };
44253 
44254 struct nfs4_link_res {
44255 	struct nfs4_sequence_res seq_res;
44256 	const struct nfs_server *server;
44257 	struct nfs_fattr *fattr;
44258 	struct nfs4_change_info cinfo;
44259 	struct nfs_fattr *dir_attr;
44260 };
44261 
44262 struct nfs4_lookup_arg {
44263 	struct nfs4_sequence_args seq_args;
44264 	const struct nfs_fh *dir_fh;
44265 	const struct qstr *name;
44266 	const u32 *bitmask;
44267 };
44268 
44269 struct nfs4_lookup_res {
44270 	struct nfs4_sequence_res seq_res;
44271 	const struct nfs_server *server;
44272 	struct nfs_fattr *fattr;
44273 	struct nfs_fh *fh;
44274 };
44275 
44276 struct nfs4_lookupp_arg {
44277 	struct nfs4_sequence_args seq_args;
44278 	const struct nfs_fh *fh;
44279 	const u32 *bitmask;
44280 };
44281 
44282 struct nfs4_lookupp_res {
44283 	struct nfs4_sequence_res seq_res;
44284 	const struct nfs_server *server;
44285 	struct nfs_fattr *fattr;
44286 	struct nfs_fh *fh;
44287 };
44288 
44289 struct nfs4_lookup_root_arg {
44290 	struct nfs4_sequence_args seq_args;
44291 	const u32 *bitmask;
44292 };
44293 
44294 struct nfs4_pathconf_arg {
44295 	struct nfs4_sequence_args seq_args;
44296 	const struct nfs_fh *fh;
44297 	const u32 *bitmask;
44298 };
44299 
44300 struct nfs4_pathconf_res {
44301 	struct nfs4_sequence_res seq_res;
44302 	struct nfs_pathconf *pathconf;
44303 };
44304 
44305 struct nfs4_readdir_arg {
44306 	struct nfs4_sequence_args seq_args;
44307 	const struct nfs_fh *fh;
44308 	u64 cookie;
44309 	nfs4_verifier verifier;
44310 	u32 count;
44311 	struct page **pages;
44312 	unsigned int pgbase;
44313 	const u32 *bitmask;
44314 	bool plus;
44315 };
44316 
44317 struct nfs4_readdir_res {
44318 	struct nfs4_sequence_res seq_res;
44319 	nfs4_verifier verifier;
44320 	unsigned int pgbase;
44321 };
44322 
44323 struct nfs4_readlink {
44324 	struct nfs4_sequence_args seq_args;
44325 	const struct nfs_fh *fh;
44326 	unsigned int pgbase;
44327 	unsigned int pglen;
44328 	struct page **pages;
44329 };
44330 
44331 struct nfs4_readlink_res {
44332 	struct nfs4_sequence_res seq_res;
44333 };
44334 
44335 struct nfs4_setclientid {
44336 	const nfs4_verifier *sc_verifier;
44337 	u32 sc_prog;
44338 	unsigned int sc_netid_len;
44339 	char sc_netid[6];
44340 	unsigned int sc_uaddr_len;
44341 	char sc_uaddr[58];
44342 	struct nfs_client *sc_clnt;
44343 	struct rpc_cred *sc_cred;
44344 };
44345 
44346 struct nfs4_setclientid_res {
44347 	u64 clientid;
44348 	nfs4_verifier confirm;
44349 };
44350 
44351 struct nfs4_statfs_arg {
44352 	struct nfs4_sequence_args seq_args;
44353 	const struct nfs_fh *fh;
44354 	const u32 *bitmask;
44355 };
44356 
44357 struct nfs4_statfs_res {
44358 	struct nfs4_sequence_res seq_res;
44359 	struct nfs_fsstat *fsstat;
44360 };
44361 
44362 struct nfs4_server_caps_arg {
44363 	struct nfs4_sequence_args seq_args;
44364 	struct nfs_fh *fhandle;
44365 	const u32 *bitmask;
44366 };
44367 
44368 struct nfs4_server_caps_res {
44369 	struct nfs4_sequence_res seq_res;
44370 	u32 attr_bitmask[3];
44371 	u32 exclcreat_bitmask[3];
44372 	u32 acl_bitmask;
44373 	u32 has_links;
44374 	u32 has_symlinks;
44375 	u32 fh_expire_type;
44376 	u32 case_insensitive;
44377 	u32 case_preserving;
44378 };
44379 
44380 struct nfs4_fs_locations_arg {
44381 	struct nfs4_sequence_args seq_args;
44382 	const struct nfs_fh *dir_fh;
44383 	const struct nfs_fh *fh;
44384 	const struct qstr *name;
44385 	struct page *page;
44386 	const u32 *bitmask;
44387 	clientid4 clientid;
44388 	unsigned char migration: 1;
44389 	unsigned char renew: 1;
44390 };
44391 
44392 struct nfs4_fs_locations_res {
44393 	struct nfs4_sequence_res seq_res;
44394 	struct nfs4_fs_locations *fs_locations;
44395 	unsigned char migration: 1;
44396 	unsigned char renew: 1;
44397 };
44398 
44399 struct nfs4_secinfo4 {
44400 	u32 flavor;
44401 	struct rpcsec_gss_info flavor_info;
44402 };
44403 
44404 struct nfs4_secinfo_flavors {
44405 	unsigned int num_flavors;
44406 	struct nfs4_secinfo4 flavors[0];
44407 };
44408 
44409 struct nfs4_secinfo_arg {
44410 	struct nfs4_sequence_args seq_args;
44411 	const struct nfs_fh *dir_fh;
44412 	const struct qstr *name;
44413 };
44414 
44415 struct nfs4_secinfo_res {
44416 	struct nfs4_sequence_res seq_res;
44417 	struct nfs4_secinfo_flavors *flavors;
44418 };
44419 
44420 struct nfs4_fsid_present_arg {
44421 	struct nfs4_sequence_args seq_args;
44422 	const struct nfs_fh *fh;
44423 	clientid4 clientid;
44424 	unsigned char renew: 1;
44425 };
44426 
44427 struct nfs4_fsid_present_res {
44428 	struct nfs4_sequence_res seq_res;
44429 	struct nfs_fh *fh;
44430 	unsigned char renew: 1;
44431 };
44432 
44433 struct nfs4_slot_table {
44434 	struct nfs4_session *session;
44435 	struct nfs4_slot *slots;
44436 	long unsigned int used_slots[16];
44437 	spinlock_t slot_tbl_lock;
44438 	struct rpc_wait_queue slot_tbl_waitq;
44439 	wait_queue_head_t slot_waitq;
44440 	u32 max_slots;
44441 	u32 max_slotid;
44442 	u32 highest_used_slotid;
44443 	u32 target_highest_slotid;
44444 	u32 server_highest_slotid;
44445 	s32 d_target_highest_slotid;
44446 	s32 d2_target_highest_slotid;
44447 	long unsigned int generation;
44448 	struct completion complete;
44449 	long unsigned int slot_tbl_state;
44450 };
44451 
44452 struct nfs4_session {
44453 	struct nfs4_sessionid sess_id;
44454 	u32 flags;
44455 	long unsigned int session_state;
44456 	u32 hash_alg;
44457 	u32 ssv_len;
44458 	struct nfs4_channel_attrs fc_attrs;
44459 	struct nfs4_slot_table fc_slot_table;
44460 	struct nfs4_channel_attrs bc_attrs;
44461 	struct nfs4_slot_table bc_slot_table;
44462 	struct nfs_client *clp;
44463 };
44464 
44465 struct compound_hdr {
44466 	int32_t status;
44467 	uint32_t nops;
44468 	__be32 *nops_p;
44469 	uint32_t taglen;
44470 	char *tag;
44471 	uint32_t replen;
44472 	u32 minorversion;
44473 };
44474 
44475 struct getdents_callback {
44476 	struct dir_context ctx;
44477 	char *name;
44478 	u64 ino;
44479 	int found;
44480 	int sequence;
44481 };
44482 
44483 struct sockaddr_in {
44484 	__kernel_sa_family_t sin_family;
44485 	__be16 sin_port;
44486 	struct in_addr sin_addr;
44487 	unsigned char __pad[8];
44488 };
44489 
44490 enum rpc_accept_stat {
44491 	RPC_SUCCESS = 0,
44492 	RPC_PROG_UNAVAIL = 1,
44493 	RPC_PROG_MISMATCH = 2,
44494 	RPC_PROC_UNAVAIL = 3,
44495 	RPC_GARBAGE_ARGS = 4,
44496 	RPC_SYSTEM_ERR = 5,
44497 	RPC_DROP_REPLY = 60000,
44498 };
44499 
44500 struct nlm_reboot {
44501 	char *mon;
44502 	unsigned int len;
44503 	u32 state;
44504 	struct nsm_private priv;
44505 };
44506 
44507 struct nlmsvc_binding {
44508 	__be32 (*fopen)(struct svc_rqst *, struct nfs_fh *, struct file **, int);
44509 	void (*fclose)(struct file *);
44510 };
44511 
44512 struct nlm_block;
44513 
44514 struct nlm_rqst {
44515 	refcount_t a_count;
44516 	unsigned int a_flags;
44517 	struct nlm_host *a_host;
44518 	struct nlm_args a_args;
44519 	struct nlm_res a_res;
44520 	struct nlm_block *a_block;
44521 	unsigned int a_retries;
44522 	u8 a_owner[74];
44523 	void *a_callback_data;
44524 };
44525 
44526 struct nlm_file;
44527 
44528 struct nlm_block {
44529 	struct kref b_count;
44530 	struct list_head b_list;
44531 	struct list_head b_flist;
44532 	struct nlm_rqst *b_call;
44533 	struct svc_serv *b_daemon;
44534 	struct nlm_host *b_host;
44535 	long unsigned int b_when;
44536 	unsigned int b_id;
44537 	unsigned char b_granted;
44538 	struct nlm_file *b_file;
44539 	struct cache_req *b_cache_req;
44540 	struct cache_deferred_req *b_deferred_req;
44541 	unsigned int b_flags;
44542 };
44543 
44544 struct nlm_share;
44545 
44546 struct nlm_file {
44547 	struct hlist_node f_list;
44548 	struct nfs_fh f_handle;
44549 	struct file *f_file[2];
44550 	struct nlm_share *f_shares;
44551 	struct list_head f_blocks;
44552 	unsigned int f_locks;
44553 	unsigned int f_count;
44554 	struct mutex f_mutex;
44555 };
44556 
44557 struct nlm_share {
44558 	struct nlm_share *s_next;
44559 	struct nlm_host *s_host;
44560 	struct nlm_file *s_file;
44561 	struct xdr_netobj s_owner;
44562 	u32 s_access;
44563 	u32 s_mode;
44564 };
44565 
44566 typedef uint32_t prid_t;
44567 
44568 typedef uint64_t xfs_extnum_t;
44569 
44570 typedef int64_t xfs_fsize_t;
44571 
44572 typedef struct {
44573 	struct rw_semaphore mr_lock;
44574 } mrlock_t;
44575 
44576 struct xfs_bmdr_block {
44577 	__be16 bb_level;
44578 	__be16 bb_numrecs;
44579 };
44580 
44581 typedef struct xfs_bmdr_block xfs_bmdr_block_t;
44582 
44583 typedef uint64_t xfs_bmbt_rec_base_t;
44584 
44585 typedef struct xfs_bmbt_key xfs_bmbt_key_t;
44586 
44587 typedef __be64 xfs_bmbt_ptr_t;
44588 
44589 typedef __be64 xfs_bmdr_ptr_t;
44590 
44591 struct xfs_imap {
44592 	xfs_daddr_t im_blkno;
44593 	short unsigned int im_len;
44594 	short unsigned int im_boffset;
44595 };
44596 
44597 struct xfs_ifork {
44598 	int64_t if_bytes;
44599 	struct xfs_btree_block *if_broot;
44600 	unsigned int if_seq;
44601 	int if_height;
44602 	union {
44603 		void *if_root;
44604 		char *if_data;
44605 	} if_u1;
44606 	xfs_extnum_t if_nextents;
44607 	short int if_broot_bytes;
44608 	int8_t if_format;
44609 };
44610 
44611 struct xfs_dquot;
44612 
44613 struct xfs_inode_log_item;
44614 
44615 struct xfs_inode {
44616 	struct xfs_mount *i_mount;
44617 	struct xfs_dquot *i_udquot;
44618 	struct xfs_dquot *i_gdquot;
44619 	struct xfs_dquot *i_pdquot;
44620 	xfs_ino_t i_ino;
44621 	struct xfs_imap i_imap;
44622 	struct xfs_ifork *i_cowfp;
44623 	struct xfs_ifork i_df;
44624 	struct xfs_ifork i_af;
44625 	struct xfs_inode_log_item *i_itemp;
44626 	mrlock_t i_lock;
44627 	atomic_t i_pincount;
44628 	struct llist_node i_gclist;
44629 	uint16_t i_checked;
44630 	uint16_t i_sick;
44631 	spinlock_t i_flags_lock;
44632 	long unsigned int i_flags;
44633 	uint64_t i_delayed_blks;
44634 	xfs_fsize_t i_disk_size;
44635 	xfs_rfsblock_t i_nblocks;
44636 	prid_t i_projid;
44637 	xfs_extlen_t i_extsize;
44638 	union {
44639 		xfs_extlen_t i_cowextsize;
44640 		uint16_t i_flushiter;
44641 	};
44642 	uint8_t i_forkoff;
44643 	uint16_t i_diflags;
44644 	uint64_t i_diflags2;
44645 	struct timespec64 i_crtime;
44646 	xfs_agino_t i_next_unlinked;
44647 	xfs_agino_t i_prev_unlinked;
44648 	struct inode i_vnode;
44649 	spinlock_t i_ioend_lock;
44650 	struct work_struct i_ioend_work;
44651 	struct list_head i_ioend_list;
44652 };
44653 
44654 struct xfs_agi {
44655 	__be32 agi_magicnum;
44656 	__be32 agi_versionnum;
44657 	__be32 agi_seqno;
44658 	__be32 agi_length;
44659 	__be32 agi_count;
44660 	__be32 agi_root;
44661 	__be32 agi_level;
44662 	__be32 agi_freecount;
44663 	__be32 agi_newino;
44664 	__be32 agi_dirino;
44665 	__be32 agi_unlinked[64];
44666 	uuid_t agi_uuid;
44667 	__be32 agi_crc;
44668 	__be32 agi_pad32;
44669 	__be64 agi_lsn;
44670 	__be32 agi_free_root;
44671 	__be32 agi_free_level;
44672 	__be32 agi_iblocks;
44673 	__be32 agi_fblocks;
44674 };
44675 
44676 typedef uint32_t xfs_dablk_t;
44677 
44678 typedef uint xfs_dir2_data_aoff_t;
44679 
44680 struct xfs_da_geometry {
44681 	unsigned int blksize;
44682 	unsigned int fsbcount;
44683 	uint8_t fsblog;
44684 	uint8_t blklog;
44685 	unsigned int node_hdr_size;
44686 	unsigned int node_ents;
44687 	unsigned int magicpct;
44688 	xfs_dablk_t datablk;
44689 	unsigned int leaf_hdr_size;
44690 	unsigned int leaf_max_ents;
44691 	xfs_dablk_t leafblk;
44692 	unsigned int free_hdr_size;
44693 	unsigned int free_max_bests;
44694 	xfs_dablk_t freeblk;
44695 	xfs_extnum_t max_extents;
44696 	xfs_dir2_data_aoff_t data_first_offset;
44697 	size_t data_entry_offset;
44698 };
44699 
44700 struct xfs_da_blkinfo {
44701 	__be32 forw;
44702 	__be32 back;
44703 	__be16 magic;
44704 	__be16 pad;
44705 };
44706 
44707 typedef struct xfs_da_blkinfo xfs_da_blkinfo_t;
44708 
44709 struct xfs_da3_blkinfo {
44710 	struct xfs_da_blkinfo hdr;
44711 	__be32 crc;
44712 	__be64 blkno;
44713 	__be64 lsn;
44714 	uuid_t uuid;
44715 	__be64 owner;
44716 };
44717 
44718 struct xfs_da_node_hdr {
44719 	struct xfs_da_blkinfo info;
44720 	__be16 __count;
44721 	__be16 __level;
44722 };
44723 
44724 struct xfs_da_node_entry {
44725 	__be32 hashval;
44726 	__be32 before;
44727 };
44728 
44729 struct xfs_da_intnode {
44730 	struct xfs_da_node_hdr hdr;
44731 	struct xfs_da_node_entry __btree[0];
44732 };
44733 
44734 struct xfs_attr_leaf_map {
44735 	__be16 base;
44736 	__be16 size;
44737 };
44738 
44739 typedef struct xfs_attr_leaf_map xfs_attr_leaf_map_t;
44740 
44741 struct xfs_attr_leaf_hdr {
44742 	xfs_da_blkinfo_t info;
44743 	__be16 count;
44744 	__be16 usedbytes;
44745 	__be16 firstused;
44746 	__u8 holes;
44747 	__u8 pad1;
44748 	xfs_attr_leaf_map_t freemap[3];
44749 };
44750 
44751 typedef struct xfs_attr_leaf_hdr xfs_attr_leaf_hdr_t;
44752 
44753 struct xfs_attr_leaf_entry {
44754 	__be32 hashval;
44755 	__be16 nameidx;
44756 	__u8 flags;
44757 	__u8 pad2;
44758 };
44759 
44760 typedef struct xfs_attr_leaf_entry xfs_attr_leaf_entry_t;
44761 
44762 struct xfs_attr_leaf_name_remote {
44763 	__be32 valueblk;
44764 	__be32 valuelen;
44765 	__u8 namelen;
44766 	__u8 name[1];
44767 };
44768 
44769 typedef struct xfs_attr_leaf_name_remote xfs_attr_leaf_name_remote_t;
44770 
44771 struct xfs_attr_leafblock {
44772 	xfs_attr_leaf_hdr_t hdr;
44773 	xfs_attr_leaf_entry_t entries[1];
44774 };
44775 
44776 typedef struct xfs_attr_leafblock xfs_attr_leafblock_t;
44777 
44778 struct xfs_attr3_leaf_hdr {
44779 	struct xfs_da3_blkinfo info;
44780 	__be16 count;
44781 	__be16 usedbytes;
44782 	__be16 firstused;
44783 	__u8 holes;
44784 	__u8 pad1;
44785 	struct xfs_attr_leaf_map freemap[3];
44786 	__be32 pad2;
44787 };
44788 
44789 struct xfs_attr3_leafblock {
44790 	struct xfs_attr3_leaf_hdr hdr;
44791 	struct xfs_attr_leaf_entry entries[1];
44792 };
44793 
44794 struct xfs_da3_icnode_hdr {
44795 	uint32_t forw;
44796 	uint32_t back;
44797 	uint16_t magic;
44798 	uint16_t count;
44799 	uint16_t level;
44800 	struct xfs_da_node_entry *btree;
44801 };
44802 
44803 typedef struct xfs_inode xfs_inode_t;
44804 
44805 struct xfs_attr3_icleaf_hdr {
44806 	uint32_t forw;
44807 	uint32_t back;
44808 	uint16_t magic;
44809 	uint16_t count;
44810 	uint16_t usedbytes;
44811 	uint32_t firstused;
44812 	__u8 holes;
44813 	struct {
44814 		uint16_t base;
44815 		uint16_t size;
44816 	} freemap[3];
44817 };
44818 
44819 struct xfs_fsop_geom {
44820 	__u32 blocksize;
44821 	__u32 rtextsize;
44822 	__u32 agblocks;
44823 	__u32 agcount;
44824 	__u32 logblocks;
44825 	__u32 sectsize;
44826 	__u32 inodesize;
44827 	__u32 imaxpct;
44828 	__u64 datablocks;
44829 	__u64 rtblocks;
44830 	__u64 rtextents;
44831 	__u64 logstart;
44832 	unsigned char uuid[16];
44833 	__u32 sunit;
44834 	__u32 swidth;
44835 	__s32 version;
44836 	__u32 flags;
44837 	__u32 logsectsize;
44838 	__u32 rtsectsize;
44839 	__u32 dirblocksize;
44840 	__u32 logsunit;
44841 	uint32_t sick;
44842 	uint32_t checked;
44843 	__u64 reserved[17];
44844 };
44845 
44846 struct xfs_ag_geometry {
44847 	uint32_t ag_number;
44848 	uint32_t ag_length;
44849 	uint32_t ag_freeblks;
44850 	uint32_t ag_icount;
44851 	uint32_t ag_ifree;
44852 	uint32_t ag_sick;
44853 	uint32_t ag_checked;
44854 	uint32_t ag_flags;
44855 	uint64_t ag_reserved[12];
44856 };
44857 
44858 struct xfs_bulkstat {
44859 	uint64_t bs_ino;
44860 	uint64_t bs_size;
44861 	uint64_t bs_blocks;
44862 	uint64_t bs_xflags;
44863 	int64_t bs_atime;
44864 	int64_t bs_mtime;
44865 	int64_t bs_ctime;
44866 	int64_t bs_btime;
44867 	uint32_t bs_gen;
44868 	uint32_t bs_uid;
44869 	uint32_t bs_gid;
44870 	uint32_t bs_projectid;
44871 	uint32_t bs_atime_nsec;
44872 	uint32_t bs_mtime_nsec;
44873 	uint32_t bs_ctime_nsec;
44874 	uint32_t bs_btime_nsec;
44875 	uint32_t bs_blksize;
44876 	uint32_t bs_rdev;
44877 	uint32_t bs_cowextsize_blks;
44878 	uint32_t bs_extsize_blks;
44879 	uint32_t bs_nlink;
44880 	uint32_t bs_extents;
44881 	uint32_t bs_aextents;
44882 	uint16_t bs_version;
44883 	uint16_t bs_forkoff;
44884 	uint16_t bs_sick;
44885 	uint16_t bs_checked;
44886 	uint16_t bs_mode;
44887 	uint16_t bs_pad2;
44888 	uint64_t bs_extents64;
44889 	uint64_t bs_pad[6];
44890 };
44891 
44892 struct ioctl_sick_map {
44893 	unsigned int sick_mask;
44894 	unsigned int ioctl_mask;
44895 };
44896 
44897 struct xfs_name {
44898 	const unsigned char *name;
44899 	int len;
44900 	int type;
44901 };
44902 
44903 typedef struct xfs_bmbt_irec xfs_bmbt_irec_t;
44904 
44905 enum xfs_dinode_fmt {
44906 	XFS_DINODE_FMT_DEV = 0,
44907 	XFS_DINODE_FMT_LOCAL = 1,
44908 	XFS_DINODE_FMT_EXTENTS = 2,
44909 	XFS_DINODE_FMT_BTREE = 3,
44910 	XFS_DINODE_FMT_UUID = 4,
44911 };
44912 
44913 enum xfs_blft {
44914 	XFS_BLFT_UNKNOWN_BUF = 0,
44915 	XFS_BLFT_UDQUOT_BUF = 1,
44916 	XFS_BLFT_PDQUOT_BUF = 2,
44917 	XFS_BLFT_GDQUOT_BUF = 3,
44918 	XFS_BLFT_BTREE_BUF = 4,
44919 	XFS_BLFT_AGF_BUF = 5,
44920 	XFS_BLFT_AGFL_BUF = 6,
44921 	XFS_BLFT_AGI_BUF = 7,
44922 	XFS_BLFT_DINO_BUF = 8,
44923 	XFS_BLFT_SYMLINK_BUF = 9,
44924 	XFS_BLFT_DIR_BLOCK_BUF = 10,
44925 	XFS_BLFT_DIR_DATA_BUF = 11,
44926 	XFS_BLFT_DIR_FREE_BUF = 12,
44927 	XFS_BLFT_DIR_LEAF1_BUF = 13,
44928 	XFS_BLFT_DIR_LEAFN_BUF = 14,
44929 	XFS_BLFT_DA_NODE_BUF = 15,
44930 	XFS_BLFT_ATTR_LEAF_BUF = 16,
44931 	XFS_BLFT_ATTR_RMT_BUF = 17,
44932 	XFS_BLFT_SB_BUF = 18,
44933 	XFS_BLFT_RTBITMAP_BUF = 19,
44934 	XFS_BLFT_RTSUMMARY_BUF = 20,
44935 	XFS_BLFT_MAX_BUF = 32,
44936 };
44937 
44938 struct xfs_buf_log_format {
44939 	short unsigned int blf_type;
44940 	short unsigned int blf_size;
44941 	short unsigned int blf_flags;
44942 	short unsigned int blf_len;
44943 	int64_t blf_blkno;
44944 	unsigned int blf_map_size;
44945 	unsigned int blf_data_map[17];
44946 };
44947 
44948 struct xfs_buf_log_item {
44949 	struct xfs_log_item bli_item;
44950 	struct xfs_buf *bli_buf;
44951 	unsigned int bli_flags;
44952 	unsigned int bli_recur;
44953 	atomic_t bli_refcount;
44954 	int bli_format_count;
44955 	struct xfs_buf_log_format *bli_formats;
44956 	struct xfs_buf_log_format __bli_format;
44957 };
44958 
44959 typedef __be64 xfs_timestamp_t;
44960 
44961 struct xfs_dinode {
44962 	__be16 di_magic;
44963 	__be16 di_mode;
44964 	__u8 di_version;
44965 	__u8 di_format;
44966 	__be16 di_onlink;
44967 	__be32 di_uid;
44968 	__be32 di_gid;
44969 	__be32 di_nlink;
44970 	__be16 di_projid_lo;
44971 	__be16 di_projid_hi;
44972 	union {
44973 		__be64 di_big_nextents;
44974 		__be64 di_v3_pad;
44975 		struct {
44976 			__u8 di_v2_pad[6];
44977 			__be16 di_flushiter;
44978 		};
44979 	};
44980 	xfs_timestamp_t di_atime;
44981 	xfs_timestamp_t di_mtime;
44982 	xfs_timestamp_t di_ctime;
44983 	__be64 di_size;
44984 	__be64 di_nblocks;
44985 	__be32 di_extsize;
44986 	union {
44987 		struct {
44988 			__be32 di_nextents;
44989 			__be16 di_anextents;
44990 		} __attribute__((packed));
44991 		struct {
44992 			__be32 di_big_anextents;
44993 			__be16 di_nrext64_pad;
44994 		} __attribute__((packed));
44995 	};
44996 	__u8 di_forkoff;
44997 	__s8 di_aformat;
44998 	__be32 di_dmevmask;
44999 	__be16 di_dmstate;
45000 	__be16 di_flags;
45001 	__be32 di_gen;
45002 	__be32 di_next_unlinked;
45003 	__le32 di_crc;
45004 	__be64 di_changecount;
45005 	__be64 di_lsn;
45006 	__be64 di_flags2;
45007 	__be32 di_cowextsize;
45008 	__u8 di_pad2[12];
45009 	xfs_timestamp_t di_crtime;
45010 	__be64 di_ino;
45011 	uuid_t di_uuid;
45012 };
45013 
45014 struct xlog_op_header {
45015 	__be32 oh_tid;
45016 	__be32 oh_len;
45017 	__u8 oh_clientid;
45018 	__u8 oh_flags;
45019 	__u16 oh_res2;
45020 };
45021 
45022 struct xfs_inode_log_format {
45023 	uint16_t ilf_type;
45024 	uint16_t ilf_size;
45025 	uint32_t ilf_fields;
45026 	uint16_t ilf_asize;
45027 	uint16_t ilf_dsize;
45028 	uint32_t ilf_pad;
45029 	uint64_t ilf_ino;
45030 	union {
45031 		uint32_t ilfu_rdev;
45032 		uint8_t __pad[16];
45033 	} ilf_u;
45034 	int64_t ilf_blkno;
45035 	int32_t ilf_len;
45036 	int32_t ilf_boffset;
45037 };
45038 
45039 struct xfs_inode_log_format_32 {
45040 	uint16_t ilf_type;
45041 	uint16_t ilf_size;
45042 	uint32_t ilf_fields;
45043 	uint16_t ilf_asize;
45044 	uint16_t ilf_dsize;
45045 	uint64_t ilf_ino;
45046 	union {
45047 		uint32_t ilfu_rdev;
45048 		uint8_t __pad[16];
45049 	} ilf_u;
45050 	int64_t ilf_blkno;
45051 	int32_t ilf_len;
45052 	int32_t ilf_boffset;
45053 } __attribute__((packed));
45054 
45055 typedef uint64_t xfs_log_timestamp_t;
45056 
45057 struct xfs_log_legacy_timestamp {
45058 	int32_t t_sec;
45059 	int32_t t_nsec;
45060 };
45061 
45062 struct xfs_log_dinode {
45063 	uint16_t di_magic;
45064 	uint16_t di_mode;
45065 	int8_t di_version;
45066 	int8_t di_format;
45067 	uint8_t di_pad3[2];
45068 	uint32_t di_uid;
45069 	uint32_t di_gid;
45070 	uint32_t di_nlink;
45071 	uint16_t di_projid_lo;
45072 	uint16_t di_projid_hi;
45073 	union {
45074 		uint64_t di_big_nextents;
45075 		uint64_t di_v3_pad;
45076 		struct {
45077 			uint8_t di_v2_pad[6];
45078 			uint16_t di_flushiter;
45079 		};
45080 	};
45081 	xfs_log_timestamp_t di_atime;
45082 	xfs_log_timestamp_t di_mtime;
45083 	xfs_log_timestamp_t di_ctime;
45084 	xfs_fsize_t di_size;
45085 	xfs_rfsblock_t di_nblocks;
45086 	xfs_extlen_t di_extsize;
45087 	union {
45088 		struct {
45089 			uint32_t di_nextents;
45090 			uint16_t di_anextents;
45091 		} __attribute__((packed));
45092 		struct {
45093 			uint32_t di_big_anextents;
45094 			uint16_t di_nrext64_pad;
45095 		} __attribute__((packed));
45096 	};
45097 	uint8_t di_forkoff;
45098 	int8_t di_aformat;
45099 	uint32_t di_dmevmask;
45100 	uint16_t di_dmstate;
45101 	uint16_t di_flags;
45102 	uint32_t di_gen;
45103 	xfs_agino_t di_next_unlinked;
45104 	uint32_t di_crc;
45105 	uint64_t di_changecount;
45106 	xfs_lsn_t di_lsn;
45107 	uint64_t di_flags2;
45108 	uint32_t di_cowextsize;
45109 	uint8_t di_pad2[12];
45110 	xfs_log_timestamp_t di_crtime;
45111 	xfs_ino_t di_ino;
45112 	uuid_t di_uuid;
45113 };
45114 
45115 struct xfs_inode_log_item {
45116 	struct xfs_log_item ili_item;
45117 	struct xfs_inode *ili_inode;
45118 	short unsigned int ili_lock_flags;
45119 	spinlock_t ili_lock;
45120 	unsigned int ili_last_fields;
45121 	unsigned int ili_fields;
45122 	unsigned int ili_fsync_fields;
45123 	xfs_lsn_t ili_flush_lsn;
45124 	xfs_csn_t ili_commit_seq;
45125 };
45126 
45127 typedef int __kernel_key_t;
45128 
45129 typedef unsigned int __kernel_mode_t;
45130 
45131 typedef int __kernel_ipc_pid_t;
45132 
45133 typedef unsigned int __kernel_uid_t;
45134 
45135 typedef unsigned int __kernel_gid_t;
45136 
45137 typedef __kernel_long_t __kernel_old_time_t;
45138 
45139 typedef __kernel_key_t key_t;
45140 
45141 struct ipc_perm {
45142 	__kernel_key_t key;
45143 	__kernel_uid_t uid;
45144 	__kernel_gid_t gid;
45145 	__kernel_uid_t cuid;
45146 	__kernel_gid_t cgid;
45147 	__kernel_mode_t mode;
45148 	short unsigned int seq;
45149 };
45150 
45151 struct ipc64_perm {
45152 	__kernel_key_t key;
45153 	__kernel_uid_t uid;
45154 	__kernel_gid_t gid;
45155 	__kernel_uid_t cuid;
45156 	__kernel_gid_t cgid;
45157 	__kernel_mode_t mode;
45158 	unsigned int seq;
45159 	unsigned int __pad1;
45160 	long long unsigned int __unused1;
45161 	long long unsigned int __unused2;
45162 };
45163 
45164 struct kern_ipc_perm {
45165 	spinlock_t lock;
45166 	bool deleted;
45167 	int id;
45168 	key_t key;
45169 	kuid_t uid;
45170 	kgid_t gid;
45171 	kuid_t cuid;
45172 	kgid_t cgid;
45173 	umode_t mode;
45174 	long unsigned int seq;
45175 	void *security;
45176 	struct rhash_head khtnode;
45177 	struct callback_head rcu;
45178 	refcount_t refcount;
45179 	long: 64;
45180 	long: 64;
45181 	long: 64;
45182 	long: 64;
45183 	long: 64;
45184 };
45185 
45186 struct shmid_ds {
45187 	struct ipc_perm shm_perm;
45188 	int shm_segsz;
45189 	__kernel_old_time_t shm_atime;
45190 	__kernel_old_time_t shm_dtime;
45191 	__kernel_old_time_t shm_ctime;
45192 	__kernel_ipc_pid_t shm_cpid;
45193 	__kernel_ipc_pid_t shm_lpid;
45194 	short unsigned int shm_nattch;
45195 	short unsigned int shm_unused;
45196 	void *shm_unused2;
45197 	void *shm_unused3;
45198 };
45199 
45200 struct shmid64_ds {
45201 	struct ipc64_perm shm_perm;
45202 	long int shm_atime;
45203 	long int shm_dtime;
45204 	long int shm_ctime;
45205 	__kernel_size_t shm_segsz;
45206 	__kernel_pid_t shm_cpid;
45207 	__kernel_pid_t shm_lpid;
45208 	long unsigned int shm_nattch;
45209 	long unsigned int __unused5;
45210 	long unsigned int __unused6;
45211 };
45212 
45213 struct shminfo64 {
45214 	long unsigned int shmmax;
45215 	long unsigned int shmmin;
45216 	long unsigned int shmmni;
45217 	long unsigned int shmseg;
45218 	long unsigned int shmall;
45219 	long unsigned int __unused1;
45220 	long unsigned int __unused2;
45221 	long unsigned int __unused3;
45222 	long unsigned int __unused4;
45223 };
45224 
45225 struct shminfo {
45226 	int shmmax;
45227 	int shmmin;
45228 	int shmmni;
45229 	int shmseg;
45230 	int shmall;
45231 };
45232 
45233 struct shm_info {
45234 	int used_ids;
45235 	__kernel_ulong_t shm_tot;
45236 	__kernel_ulong_t shm_rss;
45237 	__kernel_ulong_t shm_swp;
45238 	__kernel_ulong_t swap_attempts;
45239 	__kernel_ulong_t swap_successes;
45240 };
45241 
45242 struct ipc_params {
45243 	key_t key;
45244 	int flg;
45245 	union {
45246 		size_t size;
45247 		int nsems;
45248 	} u;
45249 };
45250 
45251 struct ipc_ops {
45252 	int (*getnew)(struct ipc_namespace *, struct ipc_params *);
45253 	int (*associate)(struct kern_ipc_perm *, int);
45254 	int (*more_checks)(struct kern_ipc_perm *, struct ipc_params *);
45255 };
45256 
45257 struct shmid_kernel {
45258 	struct kern_ipc_perm shm_perm;
45259 	struct file *shm_file;
45260 	long unsigned int shm_nattch;
45261 	long unsigned int shm_segsz;
45262 	time64_t shm_atim;
45263 	time64_t shm_dtim;
45264 	time64_t shm_ctim;
45265 	struct pid *shm_cprid;
45266 	struct pid *shm_lprid;
45267 	struct ucounts *mlock_ucounts;
45268 	struct task_struct *shm_creator;
45269 	struct list_head shm_clist;
45270 	struct ipc_namespace *ns;
45271 	long: 64;
45272 	long: 64;
45273 	long: 64;
45274 };
45275 
45276 struct shm_file_data {
45277 	int id;
45278 	struct ipc_namespace *ns;
45279 	struct file *file;
45280 	const struct vm_operations_struct *vm_ops;
45281 };
45282 
45283 struct crypto_template;
45284 
45285 struct crypto_spawn;
45286 
45287 struct crypto_instance {
45288 	struct crypto_alg alg;
45289 	struct crypto_template *tmpl;
45290 	union {
45291 		struct hlist_node list;
45292 		struct crypto_spawn *spawns;
45293 	};
45294 	void *__ctx[0];
45295 };
45296 
45297 struct crypto_spawn {
45298 	struct list_head list;
45299 	struct crypto_alg *alg;
45300 	union {
45301 		struct crypto_instance *inst;
45302 		struct crypto_spawn *next;
45303 	};
45304 	const struct crypto_type *frontend;
45305 	u32 mask;
45306 	bool dead;
45307 	bool registered;
45308 };
45309 
45310 struct rtattr;
45311 
45312 struct crypto_template {
45313 	struct list_head list;
45314 	struct hlist_head instances;
45315 	struct module *module;
45316 	int (*create)(struct crypto_template *, struct rtattr **);
45317 	char name[128];
45318 };
45319 
45320 struct scatter_walk {
45321 	struct scatterlist *sg;
45322 	unsigned int offset;
45323 };
45324 
45325 struct skcipher_request {
45326 	unsigned int cryptlen;
45327 	u8 *iv;
45328 	struct scatterlist *src;
45329 	struct scatterlist *dst;
45330 	struct crypto_async_request base;
45331 	void *__ctx[0];
45332 };
45333 
45334 struct crypto_skcipher {
45335 	unsigned int reqsize;
45336 	struct crypto_tfm base;
45337 };
45338 
45339 struct crypto_sync_skcipher {
45340 	struct crypto_skcipher base;
45341 };
45342 
45343 struct skcipher_alg {
45344 	int (*setkey)(struct crypto_skcipher *, const u8 *, unsigned int);
45345 	int (*encrypt)(struct skcipher_request *);
45346 	int (*decrypt)(struct skcipher_request *);
45347 	int (*init)(struct crypto_skcipher *);
45348 	void (*exit)(struct crypto_skcipher *);
45349 	unsigned int min_keysize;
45350 	unsigned int max_keysize;
45351 	unsigned int ivsize;
45352 	unsigned int chunksize;
45353 	unsigned int walksize;
45354 	struct crypto_alg base;
45355 };
45356 
45357 struct skcipher_walk {
45358 	union {
45359 		struct {
45360 			struct page *page;
45361 			long unsigned int offset;
45362 		} phys;
45363 		struct {
45364 			u8 *page;
45365 			void *addr;
45366 		} virt;
45367 	} src;
45368 	union {
45369 		struct {
45370 			struct page *page;
45371 			long unsigned int offset;
45372 		} phys;
45373 		struct {
45374 			u8 *page;
45375 			void *addr;
45376 		} virt;
45377 	} dst;
45378 	struct scatter_walk in;
45379 	unsigned int nbytes;
45380 	struct scatter_walk out;
45381 	unsigned int total;
45382 	struct list_head buffers;
45383 	u8 *page;
45384 	u8 *buffer;
45385 	u8 *oiv;
45386 	void *iv;
45387 	unsigned int ivsize;
45388 	int flags;
45389 	unsigned int blocksize;
45390 	unsigned int stride;
45391 	unsigned int alignmask;
45392 };
45393 
45394 struct disk_stats {
45395 	u64 nsecs[4];
45396 	long unsigned int sectors[4];
45397 	long unsigned int ios[4];
45398 	long unsigned int merges[4];
45399 	long unsigned int io_ticks;
45400 	local_t in_flight[2];
45401 };
45402 
45403 enum {
45404 	BIO_NO_PAGE_REF = 0,
45405 	BIO_CLONED = 1,
45406 	BIO_BOUNCED = 2,
45407 	BIO_WORKINGSET = 3,
45408 	BIO_QUIET = 4,
45409 	BIO_CHAIN = 5,
45410 	BIO_REFFED = 6,
45411 	BIO_THROTTLED = 7,
45412 	BIO_TRACE_COMPLETION = 8,
45413 	BIO_CGROUP_ACCT = 9,
45414 	BIO_QOS_THROTTLED = 10,
45415 	BIO_QOS_MERGED = 11,
45416 	BIO_REMAPPED = 12,
45417 	BIO_ZONE_WRITE_LOCKED = 13,
45418 	BIO_FLAG_LAST = 14,
45419 };
45420 
45421 enum stat_group {
45422 	STAT_READ = 0,
45423 	STAT_WRITE = 1,
45424 	STAT_DISCARD = 2,
45425 	STAT_FLUSH = 3,
45426 	NR_STAT_GROUPS = 4,
45427 };
45428 
45429 enum rq_qos_id {
45430 	RQ_QOS_WBT = 0,
45431 	RQ_QOS_LATENCY = 1,
45432 	RQ_QOS_COST = 2,
45433 	RQ_QOS_IOPRIO = 3,
45434 };
45435 
45436 struct rq_qos_ops;
45437 
45438 struct rq_qos {
45439 	struct rq_qos_ops *ops;
45440 	struct request_queue *q;
45441 	enum rq_qos_id id;
45442 	struct rq_qos *next;
45443 	struct dentry *debugfs_dir;
45444 };
45445 
45446 struct req_iterator {
45447 	struct bvec_iter iter;
45448 	struct bio *bio;
45449 };
45450 
45451 enum xen_domain_type {
45452 	XEN_NATIVE = 0,
45453 	XEN_PV_DOMAIN = 1,
45454 	XEN_HVM_DOMAIN = 2,
45455 };
45456 
45457 struct rq_qos_ops {
45458 	void (*throttle)(struct rq_qos *, struct bio *);
45459 	void (*track)(struct rq_qos *, struct request *, struct bio *);
45460 	void (*merge)(struct rq_qos *, struct request *, struct bio *);
45461 	void (*issue)(struct rq_qos *, struct request *);
45462 	void (*requeue)(struct rq_qos *, struct request *);
45463 	void (*done)(struct rq_qos *, struct request *);
45464 	void (*done_bio)(struct rq_qos *, struct bio *);
45465 	void (*cleanup)(struct rq_qos *, struct bio *);
45466 	void (*queue_depth_changed)(struct rq_qos *);
45467 	void (*exit)(struct rq_qos *);
45468 	const struct blk_mq_debugfs_attr *debugfs_attrs;
45469 };
45470 
45471 enum blkg_rwstat_type {
45472 	BLKG_RWSTAT_READ = 0,
45473 	BLKG_RWSTAT_WRITE = 1,
45474 	BLKG_RWSTAT_SYNC = 2,
45475 	BLKG_RWSTAT_ASYNC = 3,
45476 	BLKG_RWSTAT_DISCARD = 4,
45477 	BLKG_RWSTAT_NR = 5,
45478 	BLKG_RWSTAT_TOTAL = 5,
45479 };
45480 
45481 enum {
45482 	LIMIT_LOW = 0,
45483 	LIMIT_MAX = 1,
45484 	LIMIT_CNT = 2,
45485 };
45486 
45487 enum bio_merge_status {
45488 	BIO_MERGE_OK = 0,
45489 	BIO_MERGE_NONE = 1,
45490 	BIO_MERGE_FAILED = 2,
45491 };
45492 
45493 enum {
45494 	DISK_EVENT_MEDIA_CHANGE = 1,
45495 	DISK_EVENT_EJECT_REQUEST = 2,
45496 };
45497 
45498 enum {
45499 	DISK_EVENT_FLAG_POLL = 1,
45500 	DISK_EVENT_FLAG_UEVENT = 2,
45501 	DISK_EVENT_FLAG_BLOCK_ON_EXCL_WRITE = 4,
45502 };
45503 
45504 struct disk_events {
45505 	struct list_head node;
45506 	struct gendisk *disk;
45507 	spinlock_t lock;
45508 	struct mutex block_mutex;
45509 	int block;
45510 	unsigned int pending;
45511 	unsigned int clearing;
45512 	long int poll_msecs;
45513 	struct delayed_work dwork;
45514 };
45515 
45516 struct io_splice {
45517 	struct file *file_out;
45518 	loff_t off_out;
45519 	loff_t off_in;
45520 	u64 len;
45521 	int splice_fd_in;
45522 	unsigned int flags;
45523 };
45524 
45525 struct io_uring_rsrc_update {
45526 	__u32 offset;
45527 	__u32 resv;
45528 	__u64 data;
45529 };
45530 
45531 typedef struct io_wq_work *free_work_fn(struct io_wq_work *);
45532 
45533 typedef void io_wq_work_fn(struct io_wq_work *);
45534 
45535 struct io_wq_data {
45536 	struct io_wq_hash *hash;
45537 	struct task_struct *task;
45538 	io_wq_work_fn *do_work;
45539 	free_work_fn *free_work;
45540 };
45541 
45542 struct io_tctx_node {
45543 	struct list_head ctx_node;
45544 	struct task_struct *task;
45545 	struct io_ring_ctx *ctx;
45546 };
45547 
45548 typedef void (*swap_r_func_t)(void *, void *, int, const void *);
45549 
45550 typedef int (*cmp_r_func_t)(const void *, const void *, const void *);
45551 
45552 struct wrapper {
45553 	cmp_func_t cmp;
45554 	swap_func_t swap;
45555 };
45556 
45557 struct rnd_state {
45558 	__u32 s1;
45559 	__u32 s2;
45560 	__u32 s3;
45561 	__u32 s4;
45562 };
45563 
45564 struct sha256_state {
45565 	u32 state[8];
45566 	u64 count;
45567 	u8 buf[64];
45568 };
45569 
45570 typedef long unsigned int (*genpool_algo_t)(long unsigned int *, long unsigned int, long unsigned int, unsigned int, void *, struct gen_pool *, long unsigned int);
45571 
45572 struct gen_pool {
45573 	spinlock_t lock;
45574 	struct list_head chunks;
45575 	int min_alloc_order;
45576 	genpool_algo_t algo;
45577 	void *data;
45578 	const char *name;
45579 };
45580 
45581 struct gen_pool_chunk {
45582 	struct list_head next_chunk;
45583 	atomic_long_t avail;
45584 	phys_addr_t phys_addr;
45585 	void *owner;
45586 	long unsigned int start_addr;
45587 	long unsigned int end_addr;
45588 	long unsigned int bits[0];
45589 };
45590 
45591 struct genpool_data_align {
45592 	int align;
45593 };
45594 
45595 struct genpool_data_fixed {
45596 	long unsigned int offset;
45597 };
45598 
45599 typedef u32 depot_stack_handle_t;
45600 
45601 union handle_parts {
45602 	depot_stack_handle_t handle;
45603 	struct {
45604 		u32 slabindex: 17;
45605 		u32 offset: 14;
45606 		u32 valid: 1;
45607 	};
45608 };
45609 
45610 struct stack_record {
45611 	struct stack_record *next;
45612 	u32 hash;
45613 	u32 size;
45614 	union handle_parts handle;
45615 	long unsigned int entries[0];
45616 };
45617 
45618 typedef __be64 fdt64_t;
45619 
45620 struct fdt_reserve_entry {
45621 	fdt64_t address;
45622 	fdt64_t size;
45623 };
45624 
45625 struct fdt_node_header {
45626 	fdt32_t tag;
45627 	char name[0];
45628 };
45629 
45630 struct fdt_property {
45631 	fdt32_t tag;
45632 	fdt32_t len;
45633 	fdt32_t nameoff;
45634 	char data[0];
45635 };
45636 
45637 enum {
45638 	ASSUME_PERFECT = 255,
45639 	ASSUME_VALID_DTB = 1,
45640 	ASSUME_VALID_INPUT = 2,
45641 	ASSUME_LATEST = 4,
45642 	ASSUME_NO_ROLLBACK = 8,
45643 	ASSUME_LIBFDT_ORDER = 16,
45644 	ASSUME_LIBFDT_FLAWLESS = 32,
45645 };
45646 
45647 struct radix_tree_iter {
45648 	long unsigned int index;
45649 	long unsigned int next_index;
45650 	long unsigned int tags;
45651 	struct xa_node *node;
45652 };
45653 
45654 enum {
45655 	RADIX_TREE_ITER_TAG_MASK = 15,
45656 	RADIX_TREE_ITER_TAGGED = 16,
45657 	RADIX_TREE_ITER_CONTIG = 32,
45658 };
45659 
45660 struct ida_bitmap {
45661 	long unsigned int bitmap[16];
45662 };
45663 
45664 struct pci_cap_saved_data {
45665 	u16 cap_nr;
45666 	bool cap_extended;
45667 	unsigned int size;
45668 	u32 data[0];
45669 };
45670 
45671 struct pci_cap_saved_state {
45672 	struct hlist_node next;
45673 	struct pci_cap_saved_data cap;
45674 };
45675 
45676 struct aperture_range {
45677 	struct device *dev;
45678 	resource_size_t base;
45679 	resource_size_t size;
45680 	struct list_head lh;
45681 	void (*detach)(struct device *);
45682 };
45683 
45684 struct i2c_algo_bit_data {
45685 	void *data;
45686 	void (*setsda)(void *, int);
45687 	void (*setscl)(void *, int);
45688 	int (*getsda)(void *);
45689 	int (*getscl)(void *);
45690 	int (*pre_xfer)(struct i2c_adapter *);
45691 	void (*post_xfer)(struct i2c_adapter *);
45692 	int udelay;
45693 	int timeout;
45694 	bool can_do_atomic;
45695 };
45696 
45697 enum radeon_family {
45698 	CHIP_FAMILY_UNKNOW = 0,
45699 	CHIP_FAMILY_LEGACY = 1,
45700 	CHIP_FAMILY_RADEON = 2,
45701 	CHIP_FAMILY_RV100 = 3,
45702 	CHIP_FAMILY_RS100 = 4,
45703 	CHIP_FAMILY_RV200 = 5,
45704 	CHIP_FAMILY_RS200 = 6,
45705 	CHIP_FAMILY_R200 = 7,
45706 	CHIP_FAMILY_RV250 = 8,
45707 	CHIP_FAMILY_RS300 = 9,
45708 	CHIP_FAMILY_RV280 = 10,
45709 	CHIP_FAMILY_R300 = 11,
45710 	CHIP_FAMILY_R350 = 12,
45711 	CHIP_FAMILY_RV350 = 13,
45712 	CHIP_FAMILY_RV380 = 14,
45713 	CHIP_FAMILY_R420 = 15,
45714 	CHIP_FAMILY_RC410 = 16,
45715 	CHIP_FAMILY_RS400 = 17,
45716 	CHIP_FAMILY_RS480 = 18,
45717 	CHIP_FAMILY_LAST = 19,
45718 };
45719 
45720 struct pll_info {
45721 	int ppll_max;
45722 	int ppll_min;
45723 	int sclk;
45724 	int mclk;
45725 	int ref_div;
45726 	int ref_clk;
45727 };
45728 
45729 struct radeon_regs {
45730 	u32 ovr_clr;
45731 	u32 ovr_wid_left_right;
45732 	u32 ovr_wid_top_bottom;
45733 	u32 ov0_scale_cntl;
45734 	u32 mpp_tb_config;
45735 	u32 mpp_gp_config;
45736 	u32 subpic_cntl;
45737 	u32 viph_control;
45738 	u32 i2c_cntl_1;
45739 	u32 gen_int_cntl;
45740 	u32 cap0_trig_cntl;
45741 	u32 cap1_trig_cntl;
45742 	u32 bus_cntl;
45743 	u32 surface_cntl;
45744 	u32 bios_5_scratch;
45745 	u32 dp_datatype;
45746 	u32 rbbm_soft_reset;
45747 	u32 clock_cntl_index;
45748 	u32 amcgpio_en_reg;
45749 	u32 amcgpio_mask;
45750 	u32 surf_lower_bound[8];
45751 	u32 surf_upper_bound[8];
45752 	u32 surf_info[8];
45753 	u32 crtc_gen_cntl;
45754 	u32 crtc_ext_cntl;
45755 	u32 dac_cntl;
45756 	u32 crtc_h_total_disp;
45757 	u32 crtc_h_sync_strt_wid;
45758 	u32 crtc_v_total_disp;
45759 	u32 crtc_v_sync_strt_wid;
45760 	u32 crtc_offset;
45761 	u32 crtc_offset_cntl;
45762 	u32 crtc_pitch;
45763 	u32 disp_merge_cntl;
45764 	u32 grph_buffer_cntl;
45765 	u32 crtc_more_cntl;
45766 	u32 crtc2_gen_cntl;
45767 	u32 dac2_cntl;
45768 	u32 disp_output_cntl;
45769 	u32 disp_hw_debug;
45770 	u32 disp2_merge_cntl;
45771 	u32 grph2_buffer_cntl;
45772 	u32 crtc2_h_total_disp;
45773 	u32 crtc2_h_sync_strt_wid;
45774 	u32 crtc2_v_total_disp;
45775 	u32 crtc2_v_sync_strt_wid;
45776 	u32 crtc2_offset;
45777 	u32 crtc2_offset_cntl;
45778 	u32 crtc2_pitch;
45779 	u32 fp_crtc_h_total_disp;
45780 	u32 fp_crtc_v_total_disp;
45781 	u32 fp_gen_cntl;
45782 	u32 fp2_gen_cntl;
45783 	u32 fp_h_sync_strt_wid;
45784 	u32 fp2_h_sync_strt_wid;
45785 	u32 fp_horz_stretch;
45786 	u32 fp_panel_cntl;
45787 	u32 fp_v_sync_strt_wid;
45788 	u32 fp2_v_sync_strt_wid;
45789 	u32 fp_vert_stretch;
45790 	u32 lvds_gen_cntl;
45791 	u32 lvds_pll_cntl;
45792 	u32 tmds_crc;
45793 	u32 tmds_transmitter_cntl;
45794 	u32 dot_clock_freq;
45795 	int feedback_div;
45796 	int post_div;
45797 	u32 ppll_div_3;
45798 	u32 ppll_ref_div;
45799 	u32 vclk_ecp_cntl;
45800 	u32 clk_cntl_index;
45801 	u32 dot_clock_freq_2;
45802 	int feedback_div_2;
45803 	int post_div_2;
45804 	u32 p2pll_ref_div;
45805 	u32 p2pll_div_0;
45806 	u32 htotal_cntl2;
45807 	int palette_valid;
45808 };
45809 
45810 struct panel_info {
45811 	int xres;
45812 	int yres;
45813 	int valid;
45814 	int clock;
45815 	int hOver_plus;
45816 	int hSync_width;
45817 	int hblank;
45818 	int vOver_plus;
45819 	int vSync_width;
45820 	int vblank;
45821 	int hAct_high;
45822 	int vAct_high;
45823 	int interlaced;
45824 	int pwr_delay;
45825 	int use_bios_dividers;
45826 	int ref_divider;
45827 	int post_divider;
45828 	int fbk_divider;
45829 };
45830 
45831 struct radeonfb_info;
45832 
45833 struct radeon_i2c_chan {
45834 	struct radeonfb_info *rinfo;
45835 	u32 ddc_reg;
45836 	struct i2c_adapter adapter;
45837 	struct i2c_algo_bit_data algo;
45838 };
45839 
45840 enum radeon_pm_mode {
45841 	radeon_pm_none = 0,
45842 	radeon_pm_d2 = 1,
45843 	radeon_pm_off = 2,
45844 };
45845 
45846 typedef void (*reinit_function_ptr)(struct radeonfb_info *);
45847 
45848 struct radeonfb_info {
45849 	struct fb_info *info;
45850 	struct radeon_regs state;
45851 	struct radeon_regs init_state;
45852 	char name[50];
45853 	long unsigned int mmio_base_phys;
45854 	long unsigned int fb_base_phys;
45855 	void *mmio_base;
45856 	void *fb_base;
45857 	long unsigned int fb_local_base;
45858 	struct pci_dev *pdev;
45859 	struct device_node *of_node;
45860 	void *bios_seg;
45861 	int fp_bios_start;
45862 	u32 pseudo_palette[16];
45863 	struct {
45864 		u8 red;
45865 		u8 green;
45866 		u8 blue;
45867 		u8 pad;
45868 	} palette[256];
45869 	int chipset;
45870 	u8 family;
45871 	u8 rev;
45872 	unsigned int errata;
45873 	long unsigned int video_ram;
45874 	long unsigned int mapped_vram;
45875 	int vram_width;
45876 	int vram_ddr;
45877 	int pitch;
45878 	int bpp;
45879 	int depth;
45880 	int has_CRTC2;
45881 	int is_mobility;
45882 	int is_IGP;
45883 	int reversed_DAC;
45884 	int reversed_TMDS;
45885 	struct panel_info panel_info;
45886 	int mon1_type;
45887 	u8 *mon1_EDID;
45888 	struct fb_videomode *mon1_modedb;
45889 	int mon1_dbsize;
45890 	int mon2_type;
45891 	u8 *mon2_EDID;
45892 	u32 dp_gui_master_cntl;
45893 	struct pll_info pll;
45894 	int wc_cookie;
45895 	u32 save_regs[100];
45896 	int asleep;
45897 	int lock_blank;
45898 	int dynclk;
45899 	int no_schedule;
45900 	enum radeon_pm_mode pm_mode;
45901 	reinit_function_ptr reinit_func;
45902 	spinlock_t reg_lock;
45903 	struct timer_list lvds_timer;
45904 	u32 pending_lvds_gen_cntl;
45905 	struct radeon_i2c_chan i2c[4];
45906 };
45907 
45908 struct hv_ops;
45909 
45910 struct hvc_struct {
45911 	struct tty_port port;
45912 	spinlock_t lock;
45913 	int index;
45914 	int do_wakeup;
45915 	char *outbuf;
45916 	int outbuf_size;
45917 	int n_outbuf;
45918 	uint32_t vtermno;
45919 	const struct hv_ops *ops;
45920 	int irq_requested;
45921 	int data;
45922 	struct winsize ws;
45923 	struct work_struct tty_resize;
45924 	struct list_head next;
45925 	long unsigned int flags;
45926 };
45927 
45928 struct hv_ops {
45929 	int (*get_chars)(uint32_t, char *, int);
45930 	int (*put_chars)(uint32_t, const char *, int);
45931 	int (*flush)(uint32_t, bool);
45932 	int (*notifier_add)(struct hvc_struct *, int);
45933 	void (*notifier_del)(struct hvc_struct *, int);
45934 	void (*notifier_hangup)(struct hvc_struct *, int);
45935 	int (*tiocmget)(struct hvc_struct *);
45936 	int (*tiocmset)(struct hvc_struct *, unsigned int, unsigned int);
45937 	void (*dtr_rts)(struct hvc_struct *, int);
45938 };
45939 
45940 typedef long unsigned int cycles_t;
45941 
45942 struct timer_rand_state {
45943 	long unsigned int last_time;
45944 	long int last_delta;
45945 	long int last_delta2;
45946 };
45947 
45948 enum chacha_constants {
45949 	CHACHA_CONSTANT_EXPA = 1634760805,
45950 	CHACHA_CONSTANT_ND_3 = 857760878,
45951 	CHACHA_CONSTANT_2_BY = 2036477234,
45952 	CHACHA_CONSTANT_TE_K = 1797285236,
45953 };
45954 
45955 enum blake2s_lengths {
45956 	BLAKE2S_BLOCK_SIZE = 64,
45957 	BLAKE2S_HASH_SIZE = 32,
45958 	BLAKE2S_KEY_SIZE = 32,
45959 	BLAKE2S_128_HASH_SIZE = 16,
45960 	BLAKE2S_160_HASH_SIZE = 20,
45961 	BLAKE2S_224_HASH_SIZE = 28,
45962 	BLAKE2S_256_HASH_SIZE = 32,
45963 };
45964 
45965 struct blake2s_state {
45966 	u32 h[8];
45967 	u32 t[2];
45968 	u32 f[2];
45969 	u8 buf[64];
45970 	unsigned int buflen;
45971 	unsigned int outlen;
45972 };
45973 
45974 enum blake2s_iv {
45975 	BLAKE2S_IV0 = 1779033703,
45976 	BLAKE2S_IV1 = 3144134277,
45977 	BLAKE2S_IV2 = 1013904242,
45978 	BLAKE2S_IV3 = 2773480762,
45979 	BLAKE2S_IV4 = 1359893119,
45980 	BLAKE2S_IV5 = 2600822924,
45981 	BLAKE2S_IV6 = 528734635,
45982 	BLAKE2S_IV7 = 1541459225,
45983 };
45984 
45985 enum {
45986 	CRNG_EMPTY = 0,
45987 	CRNG_EARLY = 1,
45988 	CRNG_READY = 2,
45989 };
45990 
45991 enum {
45992 	CRNG_RESEED_START_INTERVAL = 100,
45993 	CRNG_RESEED_INTERVAL = 6000,
45994 };
45995 
45996 struct crng {
45997 	u8 key[32];
45998 	long unsigned int generation;
45999 	local_lock_t lock;
46000 };
46001 
46002 struct batch_u64 {
46003 	u64 entropy[12];
46004 	local_lock_t lock;
46005 	long unsigned int generation;
46006 	unsigned int position;
46007 };
46008 
46009 struct batch_u32 {
46010 	u32 entropy[24];
46011 	local_lock_t lock;
46012 	long unsigned int generation;
46013 	unsigned int position;
46014 };
46015 
46016 enum {
46017 	POOL_BITS = 256,
46018 	POOL_READY_BITS = 256,
46019 	POOL_EARLY_BITS = 128,
46020 };
46021 
46022 struct fast_pool {
46023 	struct work_struct mix;
46024 	long unsigned int pool[4];
46025 	long unsigned int last;
46026 	unsigned int count;
46027 };
46028 
46029 struct entropy_timer_state {
46030 	long unsigned int entropy;
46031 	struct timer_list timer;
46032 	unsigned int samples;
46033 	unsigned int samples_per_bit;
46034 };
46035 
46036 enum {
46037 	NUM_TRIAL_SAMPLES = 8192,
46038 	MAX_SAMPLES_PER_BIT = 3,
46039 };
46040 
46041 enum {
46042 	MIX_INFLIGHT = 2147483648,
46043 };
46044 
46045 struct software_node_ref_args {
46046 	const struct software_node *node;
46047 	unsigned int nargs;
46048 	u64 args[8];
46049 };
46050 
46051 struct swnode {
46052 	struct kobject kobj;
46053 	struct fwnode_handle fwnode;
46054 	const struct software_node *node;
46055 	int id;
46056 	struct ida child_ids;
46057 	struct list_head entry;
46058 	struct list_head children;
46059 	struct swnode *parent;
46060 	unsigned int allocated: 1;
46061 	unsigned int managed: 1;
46062 };
46063 
46064 struct sysinfo {
46065 	__kernel_long_t uptime;
46066 	__kernel_ulong_t loads[3];
46067 	__kernel_ulong_t totalram;
46068 	__kernel_ulong_t freeram;
46069 	__kernel_ulong_t sharedram;
46070 	__kernel_ulong_t bufferram;
46071 	__kernel_ulong_t totalswap;
46072 	__kernel_ulong_t freeswap;
46073 	__u16 procs;
46074 	__u16 pad;
46075 	__kernel_ulong_t totalhigh;
46076 	__kernel_ulong_t freehigh;
46077 	__u32 mem_unit;
46078 	char _f[0];
46079 };
46080 
46081 enum meminit_context {
46082 	MEMINIT_EARLY = 0,
46083 	MEMINIT_HOTPLUG = 1,
46084 };
46085 
46086 struct mem_section_usage {
46087 	long unsigned int subsection_map[1];
46088 	long unsigned int pageblock_flags[0];
46089 };
46090 
46091 struct mem_section {
46092 	long unsigned int section_mem_map;
46093 	struct mem_section_usage *usage;
46094 };
46095 
46096 enum {
46097 	SECTION_MARKED_PRESENT_BIT = 0,
46098 	SECTION_HAS_MEM_MAP_BIT = 1,
46099 	SECTION_IS_ONLINE_BIT = 2,
46100 	SECTION_IS_EARLY_BIT = 3,
46101 	SECTION_MAP_LAST_BIT = 4,
46102 };
46103 
46104 typedef void (*node_registration_func_t)(struct node *);
46105 
46106 struct memory_group {
46107 	int nid;
46108 	struct list_head memory_blocks;
46109 	long unsigned int present_kernel_pages;
46110 	long unsigned int present_movable_pages;
46111 	bool is_dynamic;
46112 	union {
46113 		struct {
46114 			long unsigned int max_pages;
46115 		} s;
46116 		struct {
46117 			long unsigned int unit_pages;
46118 		} d;
46119 	};
46120 };
46121 
46122 struct memory_block {
46123 	long unsigned int start_section_nr;
46124 	long unsigned int state;
46125 	int online_type;
46126 	int nid;
46127 	struct zone *zone;
46128 	struct device dev;
46129 	long unsigned int nr_vmemmap_pages;
46130 	struct memory_group *group;
46131 	struct list_head group_next;
46132 };
46133 
46134 struct memory_notify {
46135 	long unsigned int start_pfn;
46136 	long unsigned int nr_pages;
46137 	int status_change_nid_normal;
46138 	int status_change_nid;
46139 };
46140 
46141 typedef int (*walk_memory_blocks_func_t)(struct memory_block *, void *);
46142 
46143 struct node_access_nodes {
46144 	struct device dev;
46145 	struct list_head list_node;
46146 	unsigned int access;
46147 };
46148 
46149 struct node_attr {
46150 	struct device_attribute attr;
46151 	enum node_states state;
46152 };
46153 
46154 struct badrange_entry {
46155 	u64 start;
46156 	u64 length;
46157 	struct list_head list;
46158 };
46159 
46160 struct nd_cmd_desc {
46161 	int in_num;
46162 	int out_num;
46163 	u32 in_sizes[5];
46164 	int out_sizes[5];
46165 };
46166 
46167 typedef void (*async_func_t)(void *, async_cookie_t);
46168 
46169 struct async_domain {
46170 	struct list_head pending;
46171 	unsigned int registered: 1;
46172 };
46173 
46174 struct nd_cmd_set_config_hdr {
46175 	__u32 in_offset;
46176 	__u32 in_length;
46177 	__u8 in_buf[0];
46178 };
46179 
46180 struct nd_cmd_vendor_hdr {
46181 	__u32 opcode;
46182 	__u32 in_length;
46183 	__u8 in_buf[0];
46184 };
46185 
46186 struct nd_cmd_ars_cap {
46187 	__u64 address;
46188 	__u64 length;
46189 	__u32 status;
46190 	__u32 max_ars_out;
46191 	__u32 clear_err_unit;
46192 	__u16 flags;
46193 	__u16 reserved;
46194 };
46195 
46196 struct nd_cmd_clear_error {
46197 	__u64 address;
46198 	__u64 length;
46199 	__u32 status;
46200 	__u8 reserved[4];
46201 	__u64 cleared;
46202 };
46203 
46204 enum {
46205 	ND_CMD_IMPLEMENTED = 0,
46206 	ND_CMD_ARS_CAP = 1,
46207 	ND_CMD_ARS_START = 2,
46208 	ND_CMD_ARS_STATUS = 3,
46209 	ND_CMD_CLEAR_ERROR = 4,
46210 	ND_CMD_SMART = 1,
46211 	ND_CMD_SMART_THRESHOLD = 2,
46212 	ND_CMD_DIMM_FLAGS = 3,
46213 	ND_CMD_GET_CONFIG_SIZE = 4,
46214 	ND_CMD_GET_CONFIG_DATA = 5,
46215 	ND_CMD_SET_CONFIG_DATA = 6,
46216 	ND_CMD_VENDOR_EFFECT_LOG_SIZE = 7,
46217 	ND_CMD_VENDOR_EFFECT_LOG = 8,
46218 	ND_CMD_VENDOR = 9,
46219 	ND_CMD_CALL = 10,
46220 };
46221 
46222 struct nd_cmd_pkg {
46223 	__u64 nd_family;
46224 	__u64 nd_command;
46225 	__u32 nd_size_in;
46226 	__u32 nd_size_out;
46227 	__u32 nd_reserved2[9];
46228 	__u32 nd_fw_size;
46229 	unsigned char nd_payload[0];
46230 };
46231 
46232 enum nvdimm_event {
46233 	NVDIMM_REVALIDATE_POISON = 0,
46234 	NVDIMM_REVALIDATE_REGION = 1,
46235 };
46236 
46237 struct nd_device_driver {
46238 	struct device_driver drv;
46239 	long unsigned int type;
46240 	int (*probe)(struct device *);
46241 	void (*remove)(struct device *);
46242 	void (*shutdown)(struct device *);
46243 	void (*notify)(struct device *, enum nvdimm_event);
46244 };
46245 
46246 struct clear_badblocks_context {
46247 	resource_size_t phys;
46248 	resource_size_t cleared;
46249 };
46250 
46251 enum nd_ioctl_mode {
46252 	BUS_IOCTL = 0,
46253 	DIMM_IOCTL = 1,
46254 };
46255 
46256 struct dma_fence_ops;
46257 
46258 struct dma_fence {
46259 	spinlock_t *lock;
46260 	const struct dma_fence_ops *ops;
46261 	union {
46262 		struct list_head cb_list;
46263 		ktime_t timestamp;
46264 		struct callback_head rcu;
46265 	};
46266 	u64 context;
46267 	u64 seqno;
46268 	long unsigned int flags;
46269 	struct kref refcount;
46270 	int error;
46271 };
46272 
46273 struct dma_fence_ops {
46274 	bool use_64bit_seqno;
46275 	const char * (*get_driver_name)(struct dma_fence *);
46276 	const char * (*get_timeline_name)(struct dma_fence *);
46277 	bool (*enable_signaling)(struct dma_fence *);
46278 	bool (*signaled)(struct dma_fence *);
46279 	long int (*wait)(struct dma_fence *, bool, long int);
46280 	void (*release)(struct dma_fence *);
46281 	void (*fence_value_str)(struct dma_fence *, char *, int);
46282 	void (*timeline_value_str)(struct dma_fence *, char *, int);
46283 };
46284 
46285 enum dma_fence_flag_bits {
46286 	DMA_FENCE_FLAG_SIGNALED_BIT = 0,
46287 	DMA_FENCE_FLAG_TIMESTAMP_BIT = 1,
46288 	DMA_FENCE_FLAG_ENABLE_SIGNAL_BIT = 2,
46289 	DMA_FENCE_FLAG_USER_BITS = 3,
46290 };
46291 
46292 struct dma_fence_cb;
46293 
46294 typedef void (*dma_fence_func_t)(struct dma_fence *, struct dma_fence_cb *);
46295 
46296 struct dma_fence_cb {
46297 	struct list_head node;
46298 	dma_fence_func_t func;
46299 };
46300 
46301 struct dma_fence_chain {
46302 	struct dma_fence base;
46303 	struct dma_fence *prev;
46304 	u64 prev_seqno;
46305 	struct dma_fence *fence;
46306 	union {
46307 		struct dma_fence_cb cb;
46308 		struct irq_work work;
46309 	};
46310 	spinlock_t lock;
46311 };
46312 
46313 enum scsi_host_status {
46314 	DID_OK = 0,
46315 	DID_NO_CONNECT = 1,
46316 	DID_BUS_BUSY = 2,
46317 	DID_TIME_OUT = 3,
46318 	DID_BAD_TARGET = 4,
46319 	DID_ABORT = 5,
46320 	DID_PARITY = 6,
46321 	DID_ERROR = 7,
46322 	DID_RESET = 8,
46323 	DID_BAD_INTR = 9,
46324 	DID_PASSTHROUGH = 10,
46325 	DID_SOFT_ERROR = 11,
46326 	DID_IMM_RETRY = 12,
46327 	DID_REQUEUE = 13,
46328 	DID_TRANSPORT_DISRUPTED = 14,
46329 	DID_TRANSPORT_FAILFAST = 15,
46330 	DID_TARGET_FAILURE = 16,
46331 	DID_NEXUS_FAILURE = 17,
46332 	DID_ALLOC_FAILURE = 18,
46333 	DID_MEDIUM_ERROR = 19,
46334 	DID_TRANSPORT_MARGINAL = 20,
46335 };
46336 
46337 struct value_name_pair;
46338 
46339 struct sa_name_list {
46340 	int opcode;
46341 	const struct value_name_pair *arr;
46342 	int arr_sz;
46343 };
46344 
46345 struct value_name_pair {
46346 	int value;
46347 	const char *name;
46348 };
46349 
46350 struct error_info {
46351 	short unsigned int code12;
46352 	short unsigned int size;
46353 };
46354 
46355 struct error_info2 {
46356 	unsigned char code1;
46357 	unsigned char code2_min;
46358 	unsigned char code2_max;
46359 	const char *str;
46360 	const char *fmt;
46361 };
46362 
46363 typedef void (*activate_complete)(void *, int);
46364 
46365 struct scsi_device_handler {
46366 	struct list_head list;
46367 	struct module *module;
46368 	const char *name;
46369 	enum scsi_disposition (*check_sense)(struct scsi_device *, struct scsi_sense_hdr *);
46370 	int (*attach)(struct scsi_device *);
46371 	void (*detach)(struct scsi_device *);
46372 	int (*activate)(struct scsi_device *, activate_complete, void *);
46373 	blk_status_t (*prep_fn)(struct scsi_device *, struct request *);
46374 	int (*set_params)(struct scsi_device *, const char *);
46375 	void (*rescan)(struct scsi_device *);
46376 };
46377 
46378 enum {
46379 	SCSI_DH_OK = 0,
46380 	SCSI_DH_DEV_FAILED = 1,
46381 	SCSI_DH_DEV_TEMP_BUSY = 2,
46382 	SCSI_DH_DEV_UNSUPP = 3,
46383 	SCSI_DH_DEVICE_MAX = 4,
46384 	SCSI_DH_NOTCONN = 5,
46385 	SCSI_DH_CONN_FAILURE = 6,
46386 	SCSI_DH_TRANSPORT_MAX = 7,
46387 	SCSI_DH_IO = 8,
46388 	SCSI_DH_INVALID_IO = 9,
46389 	SCSI_DH_RETRY = 10,
46390 	SCSI_DH_IMM_RETRY = 11,
46391 	SCSI_DH_TIMED_OUT = 12,
46392 	SCSI_DH_RES_TEMP_UNAVAIL = 13,
46393 	SCSI_DH_DEV_OFFLINED = 14,
46394 	SCSI_DH_NOMEM = 15,
46395 	SCSI_DH_NOSYS = 16,
46396 	SCSI_DH_DRIVER_MAX = 17,
46397 };
46398 
46399 struct scsi_dh_blist {
46400 	const char *vendor;
46401 	const char *model;
46402 	const char *driver;
46403 };
46404 
46405 struct ata_port_info {
46406 	long unsigned int flags;
46407 	long unsigned int link_flags;
46408 	unsigned int pio_mask;
46409 	unsigned int mwdma_mask;
46410 	unsigned int udma_mask;
46411 	struct ata_port_operations *port_ops;
46412 	void *private_data;
46413 };
46414 
46415 enum e1000_state_t {
46416 	__E1000_TESTING = 0,
46417 	__E1000_RESETTING = 1,
46418 	__E1000_ACCESS_SHARED_RESOURCE = 2,
46419 	__E1000_DOWN = 3,
46420 };
46421 
46422 struct ich8_hsfsts {
46423 	u16 flcdone: 1;
46424 	u16 flcerr: 1;
46425 	u16 dael: 1;
46426 	u16 berasesz: 2;
46427 	u16 flcinprog: 1;
46428 	u16 reserved1: 2;
46429 	u16 reserved2: 6;
46430 	u16 fldesvalid: 1;
46431 	u16 flockdn: 1;
46432 };
46433 
46434 union ich8_hws_flash_status {
46435 	struct ich8_hsfsts hsf_status;
46436 	u16 regval;
46437 };
46438 
46439 struct ich8_hsflctl {
46440 	u16 flcgo: 1;
46441 	u16 flcycle: 2;
46442 	u16 reserved: 5;
46443 	u16 fldbcount: 2;
46444 	u16 flockdn: 6;
46445 };
46446 
46447 union ich8_hws_flash_ctrl {
46448 	struct ich8_hsflctl hsf_ctrl;
46449 	u16 regval;
46450 };
46451 
46452 struct ich8_pr {
46453 	u32 base: 13;
46454 	u32 reserved1: 2;
46455 	u32 rpe: 1;
46456 	u32 limit: 13;
46457 	u32 reserved2: 2;
46458 	u32 wpe: 1;
46459 };
46460 
46461 union ich8_flash_protected_range {
46462 	struct ich8_pr range;
46463 	u32 regval;
46464 };
46465 
46466 typedef unsigned char u_char;
46467 
46468 typedef short unsigned int u_short;
46469 
46470 typedef unsigned int u_int;
46471 
46472 typedef long unsigned int u_long;
46473 
46474 struct socket_state_t {
46475 	u_int flags;
46476 	u_int csc_mask;
46477 	u_char Vcc;
46478 	u_char Vpp;
46479 	u_char io_irq;
46480 };
46481 
46482 typedef struct socket_state_t socket_state_t;
46483 
46484 struct pccard_io_map {
46485 	u_char map;
46486 	u_char flags;
46487 	u_short speed;
46488 	phys_addr_t start;
46489 	phys_addr_t stop;
46490 };
46491 
46492 struct pccard_mem_map {
46493 	u_char map;
46494 	u_char flags;
46495 	u_short speed;
46496 	phys_addr_t static_start;
46497 	u_int card_start;
46498 	struct resource *res;
46499 };
46500 
46501 typedef struct pccard_mem_map pccard_mem_map;
46502 
46503 struct io_window_t {
46504 	u_int InUse;
46505 	u_int Config;
46506 	struct resource *res;
46507 };
46508 
46509 typedef struct io_window_t io_window_t;
46510 
46511 struct pcmcia_socket;
46512 
46513 struct pccard_operations {
46514 	int (*init)(struct pcmcia_socket *);
46515 	int (*suspend)(struct pcmcia_socket *);
46516 	int (*get_status)(struct pcmcia_socket *, u_int *);
46517 	int (*set_socket)(struct pcmcia_socket *, socket_state_t *);
46518 	int (*set_io_map)(struct pcmcia_socket *, struct pccard_io_map *);
46519 	int (*set_mem_map)(struct pcmcia_socket *, struct pccard_mem_map *);
46520 };
46521 
46522 struct pccard_resource_ops;
46523 
46524 struct pcmcia_callback;
46525 
46526 struct pcmcia_socket {
46527 	struct module *owner;
46528 	socket_state_t socket;
46529 	u_int state;
46530 	u_int suspended_state;
46531 	u_short functions;
46532 	u_short lock_count;
46533 	pccard_mem_map cis_mem;
46534 	void *cis_virt;
46535 	io_window_t io[2];
46536 	pccard_mem_map win[4];
46537 	struct list_head cis_cache;
46538 	size_t fake_cis_len;
46539 	u8 *fake_cis;
46540 	struct list_head socket_list;
46541 	struct completion socket_released;
46542 	unsigned int sock;
46543 	u_int features;
46544 	u_int irq_mask;
46545 	u_int map_size;
46546 	u_int io_offset;
46547 	u_int pci_irq;
46548 	struct pci_dev *cb_dev;
46549 	u8 resource_setup_done;
46550 	struct pccard_operations *ops;
46551 	struct pccard_resource_ops *resource_ops;
46552 	void *resource_data;
46553 	void (*zoom_video)(struct pcmcia_socket *, int);
46554 	int (*power_hook)(struct pcmcia_socket *, int);
46555 	void (*tune_bridge)(struct pcmcia_socket *, struct pci_bus *);
46556 	struct task_struct *thread;
46557 	struct completion thread_done;
46558 	unsigned int thread_events;
46559 	unsigned int sysfs_events;
46560 	struct mutex skt_mutex;
46561 	struct mutex ops_mutex;
46562 	spinlock_t thread_lock;
46563 	struct pcmcia_callback *callback;
46564 	struct list_head devices_list;
46565 	u8 device_count;
46566 	u8 pcmcia_pfc;
46567 	atomic_t present;
46568 	unsigned int pcmcia_irq;
46569 	struct device dev;
46570 	void *driver_data;
46571 	int resume_status;
46572 };
46573 
46574 struct pccard_resource_ops {
46575 	int (*validate_mem)(struct pcmcia_socket *);
46576 	int (*find_io)(struct pcmcia_socket *, unsigned int, unsigned int *, unsigned int, unsigned int, struct resource **);
46577 	struct resource * (*find_mem)(long unsigned int, long unsigned int, long unsigned int, int, struct pcmcia_socket *);
46578 	int (*init)(struct pcmcia_socket *);
46579 	void (*exit)(struct pcmcia_socket *);
46580 };
46581 
46582 struct pcmcia_callback {
46583 	struct module *owner;
46584 	int (*add)(struct pcmcia_socket *);
46585 	int (*remove)(struct pcmcia_socket *);
46586 	void (*requery)(struct pcmcia_socket *);
46587 	int (*validate)(struct pcmcia_socket *, unsigned int *);
46588 	int (*suspend)(struct pcmcia_socket *);
46589 	int (*early_resume)(struct pcmcia_socket *);
46590 	int (*resume)(struct pcmcia_socket *);
46591 };
46592 
46593 typedef unsigned char cisdata_t;
46594 
46595 struct cistpl_longlink_t {
46596 	u_int addr;
46597 };
46598 
46599 typedef struct cistpl_longlink_t cistpl_longlink_t;
46600 
46601 struct cistpl_checksum_t {
46602 	u_short addr;
46603 	u_short len;
46604 	u_char sum;
46605 };
46606 
46607 typedef struct cistpl_checksum_t cistpl_checksum_t;
46608 
46609 struct cistpl_longlink_mfc_t {
46610 	u_char nfn;
46611 	struct {
46612 		u_char space;
46613 		u_int addr;
46614 	} fn[8];
46615 };
46616 
46617 typedef struct cistpl_longlink_mfc_t cistpl_longlink_mfc_t;
46618 
46619 struct cistpl_altstr_t {
46620 	u_char ns;
46621 	u_char ofs[4];
46622 	char str[254];
46623 };
46624 
46625 typedef struct cistpl_altstr_t cistpl_altstr_t;
46626 
46627 struct cistpl_device_t {
46628 	u_char ndev;
46629 	struct {
46630 		u_char type;
46631 		u_char wp;
46632 		u_int speed;
46633 		u_int size;
46634 	} dev[4];
46635 };
46636 
46637 typedef struct cistpl_device_t cistpl_device_t;
46638 
46639 struct cistpl_vers_1_t {
46640 	u_char major;
46641 	u_char minor;
46642 	u_char ns;
46643 	u_char ofs[4];
46644 	char str[254];
46645 };
46646 
46647 typedef struct cistpl_vers_1_t cistpl_vers_1_t;
46648 
46649 struct cistpl_jedec_t {
46650 	u_char nid;
46651 	struct {
46652 		u_char mfr;
46653 		u_char info;
46654 	} id[4];
46655 };
46656 
46657 typedef struct cistpl_jedec_t cistpl_jedec_t;
46658 
46659 struct cistpl_manfid_t {
46660 	u_short manf;
46661 	u_short card;
46662 };
46663 
46664 typedef struct cistpl_manfid_t cistpl_manfid_t;
46665 
46666 struct cistpl_funcid_t {
46667 	u_char func;
46668 	u_char sysinit;
46669 };
46670 
46671 typedef struct cistpl_funcid_t cistpl_funcid_t;
46672 
46673 struct cistpl_funce_t {
46674 	u_char type;
46675 	u_char data[0];
46676 };
46677 
46678 typedef struct cistpl_funce_t cistpl_funce_t;
46679 
46680 struct cistpl_bar_t {
46681 	u_char attr;
46682 	u_int size;
46683 };
46684 
46685 typedef struct cistpl_bar_t cistpl_bar_t;
46686 
46687 struct cistpl_config_t {
46688 	u_char last_idx;
46689 	u_int base;
46690 	u_int rmask[4];
46691 	u_char subtuples;
46692 };
46693 
46694 typedef struct cistpl_config_t cistpl_config_t;
46695 
46696 struct cistpl_power_t {
46697 	u_char present;
46698 	u_char flags;
46699 	u_int param[7];
46700 };
46701 
46702 typedef struct cistpl_power_t cistpl_power_t;
46703 
46704 struct cistpl_timing_t {
46705 	u_int wait;
46706 	u_int waitscale;
46707 	u_int ready;
46708 	u_int rdyscale;
46709 	u_int reserved;
46710 	u_int rsvscale;
46711 };
46712 
46713 typedef struct cistpl_timing_t cistpl_timing_t;
46714 
46715 struct cistpl_io_t {
46716 	u_char flags;
46717 	u_char nwin;
46718 	struct {
46719 		u_int base;
46720 		u_int len;
46721 	} win[16];
46722 };
46723 
46724 typedef struct cistpl_io_t cistpl_io_t;
46725 
46726 struct cistpl_irq_t {
46727 	u_int IRQInfo1;
46728 	u_int IRQInfo2;
46729 };
46730 
46731 typedef struct cistpl_irq_t cistpl_irq_t;
46732 
46733 struct cistpl_mem_t {
46734 	u_char flags;
46735 	u_char nwin;
46736 	struct {
46737 		u_int len;
46738 		u_int card_addr;
46739 		u_int host_addr;
46740 	} win[8];
46741 };
46742 
46743 typedef struct cistpl_mem_t cistpl_mem_t;
46744 
46745 struct cistpl_cftable_entry_t {
46746 	u_char index;
46747 	u_short flags;
46748 	u_char interface;
46749 	cistpl_power_t vcc;
46750 	cistpl_power_t vpp1;
46751 	cistpl_power_t vpp2;
46752 	cistpl_timing_t timing;
46753 	cistpl_io_t io;
46754 	cistpl_irq_t irq;
46755 	cistpl_mem_t mem;
46756 	u_char subtuples;
46757 };
46758 
46759 typedef struct cistpl_cftable_entry_t cistpl_cftable_entry_t;
46760 
46761 struct cistpl_cftable_entry_cb_t {
46762 	u_char index;
46763 	u_int flags;
46764 	cistpl_power_t vcc;
46765 	cistpl_power_t vpp1;
46766 	cistpl_power_t vpp2;
46767 	u_char io;
46768 	cistpl_irq_t irq;
46769 	u_char mem;
46770 	u_char subtuples;
46771 };
46772 
46773 typedef struct cistpl_cftable_entry_cb_t cistpl_cftable_entry_cb_t;
46774 
46775 struct cistpl_device_geo_t {
46776 	u_char ngeo;
46777 	struct {
46778 		u_char buswidth;
46779 		u_int erase_block;
46780 		u_int read_block;
46781 		u_int write_block;
46782 		u_int partition;
46783 		u_int interleave;
46784 	} geo[4];
46785 };
46786 
46787 typedef struct cistpl_device_geo_t cistpl_device_geo_t;
46788 
46789 struct cistpl_vers_2_t {
46790 	u_char vers;
46791 	u_char comply;
46792 	u_short dindex;
46793 	u_char vspec8;
46794 	u_char vspec9;
46795 	u_char nhdr;
46796 	u_char vendor;
46797 	u_char info;
46798 	char str[244];
46799 };
46800 
46801 typedef struct cistpl_vers_2_t cistpl_vers_2_t;
46802 
46803 struct cistpl_org_t {
46804 	u_char data_org;
46805 	char desc[30];
46806 };
46807 
46808 typedef struct cistpl_org_t cistpl_org_t;
46809 
46810 struct cistpl_format_t {
46811 	u_char type;
46812 	u_char edc;
46813 	u_int offset;
46814 	u_int length;
46815 };
46816 
46817 typedef struct cistpl_format_t cistpl_format_t;
46818 
46819 union cisparse_t {
46820 	cistpl_device_t device;
46821 	cistpl_checksum_t checksum;
46822 	cistpl_longlink_t longlink;
46823 	cistpl_longlink_mfc_t longlink_mfc;
46824 	cistpl_vers_1_t version_1;
46825 	cistpl_altstr_t altstr;
46826 	cistpl_jedec_t jedec;
46827 	cistpl_manfid_t manfid;
46828 	cistpl_funcid_t funcid;
46829 	cistpl_funce_t funce;
46830 	cistpl_bar_t bar;
46831 	cistpl_config_t config;
46832 	cistpl_cftable_entry_t cftable_entry;
46833 	cistpl_cftable_entry_cb_t cftable_entry_cb;
46834 	cistpl_device_geo_t device_geo;
46835 	cistpl_vers_2_t vers_2;
46836 	cistpl_org_t org;
46837 	cistpl_format_t format;
46838 };
46839 
46840 typedef union cisparse_t cisparse_t;
46841 
46842 struct tuple_t {
46843 	u_int Attributes;
46844 	cisdata_t DesiredTuple;
46845 	u_int Flags;
46846 	u_int LinkOffset;
46847 	u_int CISOffset;
46848 	cisdata_t TupleCode;
46849 	cisdata_t TupleLink;
46850 	cisdata_t TupleOffset;
46851 	cisdata_t TupleDataMax;
46852 	cisdata_t TupleDataLen;
46853 	cisdata_t *TupleData;
46854 };
46855 
46856 typedef struct tuple_t tuple_t;
46857 
46858 enum {
46859 	PCMCIA_IOPORT_0 = 0,
46860 	PCMCIA_IOPORT_1 = 1,
46861 	PCMCIA_IOMEM_0 = 2,
46862 	PCMCIA_IOMEM_1 = 3,
46863 	PCMCIA_IOMEM_2 = 4,
46864 	PCMCIA_IOMEM_3 = 5,
46865 	PCMCIA_NUM_RESOURCES = 6,
46866 };
46867 
46868 struct cis_cache_entry {
46869 	struct list_head node;
46870 	unsigned int addr;
46871 	unsigned int len;
46872 	unsigned int attr;
46873 	unsigned char cache[0];
46874 };
46875 
46876 struct tuple_flags {
46877 	u_int link_space: 4;
46878 	u_int has_link: 1;
46879 	u_int mfc_fn: 3;
46880 	u_int space: 4;
46881 };
46882 
46883 struct irq_affinity {
46884 	unsigned int pre_vectors;
46885 	unsigned int post_vectors;
46886 	unsigned int nr_sets;
46887 	unsigned int set_size[4];
46888 	void (*calc_sets)(struct irq_affinity *, unsigned int);
46889 	void *priv;
46890 };
46891 
46892 typedef void (*companion_fn)(struct pci_dev *, struct usb_hcd *, struct pci_dev *, struct usb_hcd *);
46893 
46894 struct ml_effect_state {
46895 	struct ff_effect *effect;
46896 	long unsigned int flags;
46897 	int count;
46898 	long unsigned int play_at;
46899 	long unsigned int stop_at;
46900 	long unsigned int adj_at;
46901 };
46902 
46903 struct ml_device {
46904 	void *private;
46905 	struct ml_effect_state states[16];
46906 	int gain;
46907 	struct timer_list timer;
46908 	struct input_dev *dev;
46909 	int (*play_effect)(struct input_dev *, void *, struct ff_effect *);
46910 };
46911 
46912 typedef __u64 timeu64_t;
46913 
46914 struct nvmem_cell_info {
46915 	const char *name;
46916 	unsigned int offset;
46917 	unsigned int bytes;
46918 	unsigned int bit_offset;
46919 	unsigned int nbits;
46920 	struct device_node *np;
46921 };
46922 
46923 typedef int (*nvmem_reg_read_t)(void *, unsigned int, void *, size_t);
46924 
46925 typedef int (*nvmem_reg_write_t)(void *, unsigned int, void *, size_t);
46926 
46927 typedef int (*nvmem_cell_post_process_t)(void *, const char *, unsigned int, void *, size_t);
46928 
46929 enum nvmem_type {
46930 	NVMEM_TYPE_UNKNOWN = 0,
46931 	NVMEM_TYPE_EEPROM = 1,
46932 	NVMEM_TYPE_OTP = 2,
46933 	NVMEM_TYPE_BATTERY_BACKED = 3,
46934 	NVMEM_TYPE_FRAM = 4,
46935 };
46936 
46937 struct nvmem_keepout {
46938 	unsigned int start;
46939 	unsigned int end;
46940 	unsigned char value;
46941 };
46942 
46943 struct nvmem_config {
46944 	struct device *dev;
46945 	const char *name;
46946 	int id;
46947 	struct module *owner;
46948 	struct gpio_desc *wp_gpio;
46949 	const struct nvmem_cell_info *cells;
46950 	int ncells;
46951 	const struct nvmem_keepout *keepout;
46952 	unsigned int nkeepout;
46953 	enum nvmem_type type;
46954 	bool read_only;
46955 	bool root_only;
46956 	bool ignore_wp;
46957 	struct device_node *of_node;
46958 	bool no_of_node;
46959 	nvmem_reg_read_t reg_read;
46960 	nvmem_reg_write_t reg_write;
46961 	nvmem_cell_post_process_t cell_post_process;
46962 	int size;
46963 	int word_size;
46964 	int stride;
46965 	void *priv;
46966 	bool compat;
46967 	struct device *base_dev;
46968 };
46969 
46970 struct rtc_time {
46971 	int tm_sec;
46972 	int tm_min;
46973 	int tm_hour;
46974 	int tm_mday;
46975 	int tm_mon;
46976 	int tm_year;
46977 	int tm_wday;
46978 	int tm_yday;
46979 	int tm_isdst;
46980 };
46981 
46982 struct rtc_wkalrm {
46983 	unsigned char enabled;
46984 	unsigned char pending;
46985 	struct rtc_time time;
46986 };
46987 
46988 struct rtc_param {
46989 	__u64 param;
46990 	union {
46991 		__u64 uvalue;
46992 		__s64 svalue;
46993 		__u64 ptr;
46994 	};
46995 	__u32 index;
46996 	__u32 __pad;
46997 };
46998 
46999 struct rtc_class_ops {
47000 	int (*ioctl)(struct device *, unsigned int, long unsigned int);
47001 	int (*read_time)(struct device *, struct rtc_time *);
47002 	int (*set_time)(struct device *, struct rtc_time *);
47003 	int (*read_alarm)(struct device *, struct rtc_wkalrm *);
47004 	int (*set_alarm)(struct device *, struct rtc_wkalrm *);
47005 	int (*proc)(struct device *, struct seq_file *);
47006 	int (*alarm_irq_enable)(struct device *, unsigned int);
47007 	int (*read_offset)(struct device *, long int *);
47008 	int (*set_offset)(struct device *, long int);
47009 	int (*param_get)(struct device *, struct rtc_param *);
47010 	int (*param_set)(struct device *, struct rtc_param *);
47011 };
47012 
47013 struct rtc_device;
47014 
47015 struct rtc_timer {
47016 	struct timerqueue_node node;
47017 	ktime_t period;
47018 	void (*func)(struct rtc_device *);
47019 	struct rtc_device *rtc;
47020 	int enabled;
47021 };
47022 
47023 struct rtc_device {
47024 	struct device dev;
47025 	struct module *owner;
47026 	int id;
47027 	const struct rtc_class_ops *ops;
47028 	struct mutex ops_lock;
47029 	struct cdev char_dev;
47030 	long unsigned int flags;
47031 	long unsigned int irq_data;
47032 	spinlock_t irq_lock;
47033 	wait_queue_head_t irq_queue;
47034 	struct fasync_struct *async_queue;
47035 	int irq_freq;
47036 	int max_user_freq;
47037 	struct timerqueue_head timerqueue;
47038 	struct rtc_timer aie_timer;
47039 	struct rtc_timer uie_rtctimer;
47040 	struct hrtimer pie_timer;
47041 	int pie_enabled;
47042 	struct work_struct irqwork;
47043 	long unsigned int set_offset_nsec;
47044 	long unsigned int features[1];
47045 	time64_t range_min;
47046 	timeu64_t range_max;
47047 	time64_t start_secs;
47048 	time64_t offset_secs;
47049 	bool set_start_time;
47050 };
47051 
47052 struct nvmem_device;
47053 
47054 struct pps_ktime {
47055 	__s64 sec;
47056 	__s32 nsec;
47057 	__u32 flags;
47058 };
47059 
47060 struct pps_kinfo {
47061 	__u32 assert_sequence;
47062 	__u32 clear_sequence;
47063 	struct pps_ktime assert_tu;
47064 	struct pps_ktime clear_tu;
47065 	int current_mode;
47066 };
47067 
47068 struct pps_kparams {
47069 	int api_version;
47070 	int mode;
47071 	struct pps_ktime assert_off_tu;
47072 	struct pps_ktime clear_off_tu;
47073 };
47074 
47075 struct pps_fdata {
47076 	struct pps_kinfo info;
47077 	struct pps_ktime timeout;
47078 };
47079 
47080 struct pps_bind_args {
47081 	int tsformat;
47082 	int edge;
47083 	int consumer;
47084 };
47085 
47086 struct pps_device;
47087 
47088 struct pps_source_info {
47089 	char name[32];
47090 	char path[32];
47091 	int mode;
47092 	void (*echo)(struct pps_device *, int, void *);
47093 	struct module *owner;
47094 	struct device *dev;
47095 };
47096 
47097 struct pps_device {
47098 	struct pps_source_info info;
47099 	struct pps_kparams params;
47100 	__u32 assert_sequence;
47101 	__u32 clear_sequence;
47102 	struct pps_ktime assert_tu;
47103 	struct pps_ktime clear_tu;
47104 	int current_mode;
47105 	unsigned int last_ev;
47106 	wait_queue_head_t queue;
47107 	unsigned int id;
47108 	const void *lookup_cookie;
47109 	struct cdev cdev;
47110 	struct device *dev;
47111 	struct fasync_struct *async_queue;
47112 	spinlock_t lock;
47113 };
47114 
47115 struct md_cluster_info;
47116 
47117 struct md_personality;
47118 
47119 struct md_thread;
47120 
47121 struct bitmap;
47122 
47123 struct md_rdev;
47124 
47125 struct mddev {
47126 	void *private;
47127 	struct md_personality *pers;
47128 	dev_t unit;
47129 	int md_minor;
47130 	struct list_head disks;
47131 	long unsigned int flags;
47132 	long unsigned int sb_flags;
47133 	int suspended;
47134 	atomic_t active_io;
47135 	int ro;
47136 	int sysfs_active;
47137 	struct gendisk *gendisk;
47138 	struct kobject kobj;
47139 	int hold_active;
47140 	int major_version;
47141 	int minor_version;
47142 	int patch_version;
47143 	int persistent;
47144 	int external;
47145 	char metadata_type[17];
47146 	int chunk_sectors;
47147 	time64_t ctime;
47148 	time64_t utime;
47149 	int level;
47150 	int layout;
47151 	char clevel[16];
47152 	int raid_disks;
47153 	int max_disks;
47154 	sector_t dev_sectors;
47155 	sector_t array_sectors;
47156 	int external_size;
47157 	__u64 events;
47158 	int can_decrease_events;
47159 	char uuid[16];
47160 	sector_t reshape_position;
47161 	int delta_disks;
47162 	int new_level;
47163 	int new_layout;
47164 	int new_chunk_sectors;
47165 	int reshape_backwards;
47166 	struct md_thread *thread;
47167 	struct md_thread *sync_thread;
47168 	char *last_sync_action;
47169 	sector_t curr_resync;
47170 	sector_t curr_resync_completed;
47171 	long unsigned int resync_mark;
47172 	sector_t resync_mark_cnt;
47173 	sector_t curr_mark_cnt;
47174 	sector_t resync_max_sectors;
47175 	atomic64_t resync_mismatches;
47176 	sector_t suspend_lo;
47177 	sector_t suspend_hi;
47178 	int sync_speed_min;
47179 	int sync_speed_max;
47180 	int parallel_resync;
47181 	int ok_start_degraded;
47182 	long unsigned int recovery;
47183 	int recovery_disabled;
47184 	int in_sync;
47185 	struct mutex open_mutex;
47186 	struct mutex reconfig_mutex;
47187 	atomic_t active;
47188 	atomic_t openers;
47189 	int changed;
47190 	int degraded;
47191 	atomic_t recovery_active;
47192 	wait_queue_head_t recovery_wait;
47193 	sector_t recovery_cp;
47194 	sector_t resync_min;
47195 	sector_t resync_max;
47196 	struct kernfs_node *sysfs_state;
47197 	struct kernfs_node *sysfs_action;
47198 	struct kernfs_node *sysfs_completed;
47199 	struct kernfs_node *sysfs_degraded;
47200 	struct kernfs_node *sysfs_level;
47201 	struct work_struct del_work;
47202 	spinlock_t lock;
47203 	wait_queue_head_t sb_wait;
47204 	atomic_t pending_writes;
47205 	unsigned int safemode;
47206 	unsigned int safemode_delay;
47207 	struct timer_list safemode_timer;
47208 	struct percpu_ref writes_pending;
47209 	int sync_checkers;
47210 	struct request_queue *queue;
47211 	struct bitmap *bitmap;
47212 	struct {
47213 		struct file *file;
47214 		loff_t offset;
47215 		long unsigned int space;
47216 		loff_t default_offset;
47217 		long unsigned int default_space;
47218 		struct mutex mutex;
47219 		long unsigned int chunksize;
47220 		long unsigned int daemon_sleep;
47221 		long unsigned int max_write_behind;
47222 		int external;
47223 		int nodes;
47224 		char cluster_name[64];
47225 	} bitmap_info;
47226 	atomic_t max_corr_read_errors;
47227 	struct list_head all_mddevs;
47228 	const struct attribute_group *to_remove;
47229 	struct bio_set bio_set;
47230 	struct bio_set sync_set;
47231 	struct bio_set io_acct_set;
47232 	struct bio *flush_bio;
47233 	atomic_t flush_pending;
47234 	ktime_t start_flush;
47235 	ktime_t prev_flush_start;
47236 	struct work_struct flush_work;
47237 	struct work_struct event_work;
47238 	mempool_t *serial_info_pool;
47239 	void (*sync_super)(struct mddev *, struct md_rdev *);
47240 	struct md_cluster_info *cluster_info;
47241 	unsigned int good_device_nr;
47242 	unsigned int noio_flag;
47243 	bool has_superblocks: 1;
47244 	bool fail_last_dev: 1;
47245 	bool serialize_policy: 1;
47246 };
47247 
47248 struct serial_in_rdev;
47249 
47250 struct md_rdev {
47251 	struct list_head same_set;
47252 	sector_t sectors;
47253 	struct mddev *mddev;
47254 	int last_events;
47255 	struct block_device *meta_bdev;
47256 	struct block_device *bdev;
47257 	struct page *sb_page;
47258 	struct page *bb_page;
47259 	int sb_loaded;
47260 	__u64 sb_events;
47261 	sector_t data_offset;
47262 	sector_t new_data_offset;
47263 	sector_t sb_start;
47264 	int sb_size;
47265 	int preferred_minor;
47266 	struct kobject kobj;
47267 	long unsigned int flags;
47268 	wait_queue_head_t blocked_wait;
47269 	int desc_nr;
47270 	int raid_disk;
47271 	int new_raid_disk;
47272 	int saved_raid_disk;
47273 	union {
47274 		sector_t recovery_offset;
47275 		sector_t journal_tail;
47276 	};
47277 	atomic_t nr_pending;
47278 	atomic_t read_errors;
47279 	time64_t last_read_error;
47280 	atomic_t corrected_errors;
47281 	struct serial_in_rdev *serial;
47282 	struct work_struct del_work;
47283 	struct kernfs_node *sysfs_state;
47284 	struct kernfs_node *sysfs_unack_badblocks;
47285 	struct kernfs_node *sysfs_badblocks;
47286 	struct badblocks badblocks;
47287 	struct {
47288 		short int offset;
47289 		unsigned int size;
47290 		sector_t sector;
47291 	} ppl;
47292 };
47293 
47294 struct serial_in_rdev {
47295 	struct rb_root_cached serial_rb;
47296 	spinlock_t serial_lock;
47297 	wait_queue_head_t serial_io_wait;
47298 };
47299 
47300 enum mddev_flags {
47301 	MD_ARRAY_FIRST_USE = 0,
47302 	MD_CLOSING = 1,
47303 	MD_JOURNAL_CLEAN = 2,
47304 	MD_HAS_JOURNAL = 3,
47305 	MD_CLUSTER_RESYNC_LOCKED = 4,
47306 	MD_FAILFAST_SUPPORTED = 5,
47307 	MD_HAS_PPL = 6,
47308 	MD_HAS_MULTIPLE_PPLS = 7,
47309 	MD_ALLOW_SB_UPDATE = 8,
47310 	MD_UPDATING_SB = 9,
47311 	MD_NOT_READY = 10,
47312 	MD_BROKEN = 11,
47313 	MD_DELETED = 12,
47314 };
47315 
47316 struct md_personality {
47317 	char *name;
47318 	int level;
47319 	struct list_head list;
47320 	struct module *owner;
47321 	bool (*make_request)(struct mddev *, struct bio *);
47322 	int (*run)(struct mddev *);
47323 	int (*start)(struct mddev *);
47324 	void (*free)(struct mddev *, void *);
47325 	void (*status)(struct seq_file *, struct mddev *);
47326 	void (*error_handler)(struct mddev *, struct md_rdev *);
47327 	int (*hot_add_disk)(struct mddev *, struct md_rdev *);
47328 	int (*hot_remove_disk)(struct mddev *, struct md_rdev *);
47329 	int (*spare_active)(struct mddev *);
47330 	sector_t (*sync_request)(struct mddev *, sector_t, int *);
47331 	int (*resize)(struct mddev *, sector_t);
47332 	sector_t (*size)(struct mddev *, sector_t, int);
47333 	int (*check_reshape)(struct mddev *);
47334 	int (*start_reshape)(struct mddev *);
47335 	void (*finish_reshape)(struct mddev *);
47336 	void (*update_reshape_pos)(struct mddev *);
47337 	void (*quiesce)(struct mddev *, int);
47338 	void * (*takeover)(struct mddev *);
47339 	int (*change_consistency_policy)(struct mddev *, const char *);
47340 };
47341 
47342 struct md_thread {
47343 	void (*run)(struct md_thread *);
47344 	struct mddev *mddev;
47345 	wait_queue_head_t wqueue;
47346 	long unsigned int flags;
47347 	struct task_struct *tsk;
47348 	long unsigned int timeout;
47349 	void *private;
47350 };
47351 
47352 struct strip_zone {
47353 	sector_t zone_end;
47354 	sector_t dev_start;
47355 	int nb_dev;
47356 };
47357 
47358 enum r0layout {
47359 	RAID0_ORIG_LAYOUT = 1,
47360 	RAID0_ALT_MULTIZONE_LAYOUT = 2,
47361 };
47362 
47363 struct r0conf {
47364 	struct strip_zone *strip_zone;
47365 	struct md_rdev **devlist;
47366 	int nr_strip_zones;
47367 	enum r0layout layout;
47368 };
47369 
47370 struct dm_sysfs_attr {
47371 	struct attribute attr;
47372 	ssize_t (*show)(struct mapped_device *, char *);
47373 	ssize_t (*store)(struct mapped_device *, const char *, size_t);
47374 };
47375 
47376 struct cpufreq_policy_data {
47377 	struct cpufreq_cpuinfo cpuinfo;
47378 	struct cpufreq_frequency_table *freq_table;
47379 	unsigned int cpu;
47380 	unsigned int min;
47381 	unsigned int max;
47382 };
47383 
47384 struct freq_attr {
47385 	struct attribute attr;
47386 	ssize_t (*show)(struct cpufreq_policy *, char *);
47387 	ssize_t (*store)(struct cpufreq_policy *, const char *, size_t);
47388 };
47389 
47390 struct cpuidle_state_usage {
47391 	long long unsigned int disable;
47392 	long long unsigned int usage;
47393 	u64 time_ns;
47394 	long long unsigned int above;
47395 	long long unsigned int below;
47396 	long long unsigned int rejected;
47397 	long long unsigned int s2idle_usage;
47398 	long long unsigned int s2idle_time;
47399 };
47400 
47401 struct cpuidle_device;
47402 
47403 struct cpuidle_driver;
47404 
47405 struct cpuidle_state {
47406 	char name[16];
47407 	char desc[32];
47408 	s64 exit_latency_ns;
47409 	s64 target_residency_ns;
47410 	unsigned int flags;
47411 	unsigned int exit_latency;
47412 	int power_usage;
47413 	unsigned int target_residency;
47414 	int (*enter)(struct cpuidle_device *, struct cpuidle_driver *, int);
47415 	int (*enter_dead)(struct cpuidle_device *, int);
47416 	int (*enter_s2idle)(struct cpuidle_device *, struct cpuidle_driver *, int);
47417 };
47418 
47419 struct cpuidle_driver_kobj;
47420 
47421 struct cpuidle_state_kobj;
47422 
47423 struct cpuidle_device_kobj;
47424 
47425 struct cpuidle_device {
47426 	unsigned int registered: 1;
47427 	unsigned int enabled: 1;
47428 	unsigned int poll_time_limit: 1;
47429 	unsigned int cpu;
47430 	ktime_t next_hrtimer;
47431 	int last_state_idx;
47432 	u64 last_residency_ns;
47433 	u64 poll_limit_ns;
47434 	u64 forced_idle_latency_limit_ns;
47435 	struct cpuidle_state_usage states_usage[10];
47436 	struct cpuidle_state_kobj *kobjs[10];
47437 	struct cpuidle_driver_kobj *kobj_driver;
47438 	struct cpuidle_device_kobj *kobj_dev;
47439 	struct list_head device_list;
47440 };
47441 
47442 struct cpuidle_driver {
47443 	const char *name;
47444 	struct module *owner;
47445 	unsigned int bctimer: 1;
47446 	struct cpuidle_state states[10];
47447 	int state_count;
47448 	int safe_state_index;
47449 	struct cpumask *cpumask;
47450 	const char *governor;
47451 };
47452 
47453 struct cpuidle_governor {
47454 	char name[16];
47455 	struct list_head governor_list;
47456 	unsigned int rating;
47457 	int (*enable)(struct cpuidle_driver *, struct cpuidle_device *);
47458 	void (*disable)(struct cpuidle_driver *, struct cpuidle_device *);
47459 	int (*select)(struct cpuidle_driver *, struct cpuidle_device *, bool *);
47460 	void (*reflect)(struct cpuidle_device *, int);
47461 };
47462 
47463 struct earlycon_device {
47464 	struct console *con;
47465 	struct uart_port port;
47466 	char options[16];
47467 	unsigned int baud;
47468 };
47469 
47470 struct earlycon_id {
47471 	char name[15];
47472 	char name_term;
47473 	char compatible[128];
47474 	int (*setup)(struct earlycon_device *, const char *);
47475 };
47476 
47477 struct gnet_stats_rate_est64 {
47478 	__u64 bps;
47479 	__u64 pps;
47480 };
47481 
47482 struct gnet_estimator {
47483 	signed char interval;
47484 	unsigned char ewma_log;
47485 };
47486 
47487 struct net_rate_estimator {
47488 	struct gnet_stats_basic_sync *bstats;
47489 	spinlock_t *stats_lock;
47490 	bool running;
47491 	struct gnet_stats_basic_sync *cpu_bstats;
47492 	u8 ewma_log;
47493 	u8 intvl_log;
47494 	seqcount_t seq;
47495 	u64 last_packets;
47496 	u64 last_bytes;
47497 	u64 avpps;
47498 	u64 avbps;
47499 	long unsigned int next_jiffies;
47500 	struct timer_list timer;
47501 	struct callback_head rcu;
47502 };
47503 
47504 typedef struct __call_single_data call_single_data_t;
47505 
47506 enum {
47507 	SKB_GSO_TCPV4 = 1,
47508 	SKB_GSO_DODGY = 2,
47509 	SKB_GSO_TCP_ECN = 4,
47510 	SKB_GSO_TCP_FIXEDID = 8,
47511 	SKB_GSO_TCPV6 = 16,
47512 	SKB_GSO_FCOE = 32,
47513 	SKB_GSO_GRE = 64,
47514 	SKB_GSO_GRE_CSUM = 128,
47515 	SKB_GSO_IPXIP4 = 256,
47516 	SKB_GSO_IPXIP6 = 512,
47517 	SKB_GSO_UDP_TUNNEL = 1024,
47518 	SKB_GSO_UDP_TUNNEL_CSUM = 2048,
47519 	SKB_GSO_PARTIAL = 4096,
47520 	SKB_GSO_TUNNEL_REMCSUM = 8192,
47521 	SKB_GSO_SCTP = 16384,
47522 	SKB_GSO_ESP = 32768,
47523 	SKB_GSO_UDP = 65536,
47524 	SKB_GSO_UDP_L4 = 131072,
47525 	SKB_GSO_FRAGLIST = 262144,
47526 };
47527 
47528 struct seg6_pernet_data {
47529 	struct mutex lock;
47530 	struct in6_addr *tun_src;
47531 };
47532 
47533 enum xdp_mem_type {
47534 	MEM_TYPE_PAGE_SHARED = 0,
47535 	MEM_TYPE_PAGE_ORDER0 = 1,
47536 	MEM_TYPE_PAGE_POOL = 2,
47537 	MEM_TYPE_XSK_BUFF_POOL = 3,
47538 	MEM_TYPE_MAX = 4,
47539 };
47540 
47541 enum xdp_buff_flags {
47542 	XDP_FLAGS_HAS_FRAGS = 1,
47543 	XDP_FLAGS_FRAGS_PF_MEMALLOC = 2,
47544 };
47545 
47546 struct sd_flow_limit;
47547 
47548 struct softnet_data {
47549 	struct list_head poll_list;
47550 	struct sk_buff_head process_queue;
47551 	unsigned int processed;
47552 	unsigned int time_squeeze;
47553 	unsigned int received_rps;
47554 	struct softnet_data *rps_ipi_list;
47555 	struct sd_flow_limit *flow_limit;
47556 	struct Qdisc *output_queue;
47557 	struct Qdisc **output_queue_tailp;
47558 	struct sk_buff *completion_queue;
47559 	struct {
47560 		u16 recursion;
47561 		u8 more;
47562 		u8 skip_txqueue;
47563 	} xmit;
47564 	long: 64;
47565 	long: 64;
47566 	long: 64;
47567 	unsigned int input_queue_head;
47568 	long: 64;
47569 	long: 64;
47570 	long: 64;
47571 	long: 64;
47572 	long: 64;
47573 	long: 64;
47574 	long: 64;
47575 	long: 64;
47576 	long: 64;
47577 	long: 64;
47578 	long: 64;
47579 	long: 64;
47580 	long: 64;
47581 	long: 64;
47582 	long: 64;
47583 	call_single_data_t csd;
47584 	struct softnet_data *rps_ipi_next;
47585 	unsigned int cpu;
47586 	unsigned int input_queue_tail;
47587 	unsigned int dropped;
47588 	struct sk_buff_head input_pkt_queue;
47589 	struct napi_struct backlog;
47590 	long: 64;
47591 	long: 64;
47592 	long: 64;
47593 	long: 64;
47594 	spinlock_t defer_lock;
47595 	int defer_count;
47596 	int defer_ipi_scheduled;
47597 	struct sk_buff *defer_list;
47598 	long: 64;
47599 	call_single_data_t defer_csd;
47600 	long: 64;
47601 	long: 64;
47602 	long: 64;
47603 	long: 64;
47604 	long: 64;
47605 	long: 64;
47606 	long: 64;
47607 	long: 64;
47608 };
47609 
47610 enum sk_pacing {
47611 	SK_PACING_NONE = 0,
47612 	SK_PACING_NEEDED = 1,
47613 	SK_PACING_FQ = 2,
47614 };
47615 
47616 struct minmax_sample {
47617 	u32 t;
47618 	u32 v;
47619 };
47620 
47621 struct minmax {
47622 	struct minmax_sample s[3];
47623 };
47624 
47625 struct inet_timewait_sock {
47626 	struct sock_common __tw_common;
47627 	__u32 tw_mark;
47628 	volatile unsigned char tw_substate;
47629 	unsigned char tw_rcv_wscale;
47630 	__be16 tw_sport;
47631 	unsigned int tw_transparent: 1;
47632 	unsigned int tw_flowlabel: 20;
47633 	unsigned int tw_pad: 3;
47634 	unsigned int tw_tos: 8;
47635 	u32 tw_txhash;
47636 	u32 tw_priority;
47637 	struct timer_list tw_timer;
47638 	struct inet_bind_bucket *tw_tb;
47639 };
47640 
47641 struct tcp_fastopen_cookie {
47642 	__le64 val[2];
47643 	s8 len;
47644 	bool exp;
47645 };
47646 
47647 struct tcp_sack_block {
47648 	u32 start_seq;
47649 	u32 end_seq;
47650 };
47651 
47652 struct tcp_options_received {
47653 	int ts_recent_stamp;
47654 	u32 ts_recent;
47655 	u32 rcv_tsval;
47656 	u32 rcv_tsecr;
47657 	u16 saw_tstamp: 1;
47658 	u16 tstamp_ok: 1;
47659 	u16 dsack: 1;
47660 	u16 wscale_ok: 1;
47661 	u16 sack_ok: 3;
47662 	u16 smc_ok: 1;
47663 	u16 snd_wscale: 4;
47664 	u16 rcv_wscale: 4;
47665 	u8 saw_unknown: 1;
47666 	u8 unused: 7;
47667 	u8 num_sacks;
47668 	u16 user_mss;
47669 	u16 mss_clamp;
47670 };
47671 
47672 struct tcp_rack {
47673 	u64 mstamp;
47674 	u32 rtt_us;
47675 	u32 end_seq;
47676 	u32 last_delivered;
47677 	u8 reo_wnd_steps;
47678 	u8 reo_wnd_persist: 5;
47679 	u8 dsack_seen: 1;
47680 	u8 advanced: 1;
47681 };
47682 
47683 struct tcp_fastopen_request;
47684 
47685 struct tcp_sock {
47686 	struct inet_connection_sock inet_conn;
47687 	u16 tcp_header_len;
47688 	u16 gso_segs;
47689 	__be32 pred_flags;
47690 	u64 bytes_received;
47691 	u32 segs_in;
47692 	u32 data_segs_in;
47693 	u32 rcv_nxt;
47694 	u32 copied_seq;
47695 	u32 rcv_wup;
47696 	u32 snd_nxt;
47697 	u32 segs_out;
47698 	u32 data_segs_out;
47699 	u64 bytes_sent;
47700 	u64 bytes_acked;
47701 	u32 dsack_dups;
47702 	u32 snd_una;
47703 	u32 snd_sml;
47704 	u32 rcv_tstamp;
47705 	u32 lsndtime;
47706 	u32 last_oow_ack_time;
47707 	u32 compressed_ack_rcv_nxt;
47708 	u32 tsoffset;
47709 	struct list_head tsq_node;
47710 	struct list_head tsorted_sent_queue;
47711 	u32 snd_wl1;
47712 	u32 snd_wnd;
47713 	u32 max_window;
47714 	u32 mss_cache;
47715 	u32 window_clamp;
47716 	u32 rcv_ssthresh;
47717 	struct tcp_rack rack;
47718 	u16 advmss;
47719 	u8 compressed_ack;
47720 	u8 dup_ack_counter: 2;
47721 	u8 tlp_retrans: 1;
47722 	u8 unused: 5;
47723 	u32 chrono_start;
47724 	u32 chrono_stat[3];
47725 	u8 chrono_type: 2;
47726 	u8 rate_app_limited: 1;
47727 	u8 fastopen_connect: 1;
47728 	u8 fastopen_no_cookie: 1;
47729 	u8 is_sack_reneg: 1;
47730 	u8 fastopen_client_fail: 2;
47731 	u8 nonagle: 4;
47732 	u8 thin_lto: 1;
47733 	u8 recvmsg_inq: 1;
47734 	u8 repair: 1;
47735 	u8 frto: 1;
47736 	u8 repair_queue;
47737 	u8 save_syn: 2;
47738 	u8 syn_data: 1;
47739 	u8 syn_fastopen: 1;
47740 	u8 syn_fastopen_exp: 1;
47741 	u8 syn_fastopen_ch: 1;
47742 	u8 syn_data_acked: 1;
47743 	u8 is_cwnd_limited: 1;
47744 	u32 tlp_high_seq;
47745 	u32 tcp_tx_delay;
47746 	u64 tcp_wstamp_ns;
47747 	u64 tcp_clock_cache;
47748 	u64 tcp_mstamp;
47749 	u32 srtt_us;
47750 	u32 mdev_us;
47751 	u32 mdev_max_us;
47752 	u32 rttvar_us;
47753 	u32 rtt_seq;
47754 	struct minmax rtt_min;
47755 	u32 packets_out;
47756 	u32 retrans_out;
47757 	u32 max_packets_out;
47758 	u32 max_packets_seq;
47759 	u16 urg_data;
47760 	u8 ecn_flags;
47761 	u8 keepalive_probes;
47762 	u32 reordering;
47763 	u32 reord_seen;
47764 	u32 snd_up;
47765 	struct tcp_options_received rx_opt;
47766 	u32 snd_ssthresh;
47767 	u32 snd_cwnd;
47768 	u32 snd_cwnd_cnt;
47769 	u32 snd_cwnd_clamp;
47770 	u32 snd_cwnd_used;
47771 	u32 snd_cwnd_stamp;
47772 	u32 prior_cwnd;
47773 	u32 prr_delivered;
47774 	u32 prr_out;
47775 	u32 delivered;
47776 	u32 delivered_ce;
47777 	u32 lost;
47778 	u32 app_limited;
47779 	u64 first_tx_mstamp;
47780 	u64 delivered_mstamp;
47781 	u32 rate_delivered;
47782 	u32 rate_interval_us;
47783 	u32 rcv_wnd;
47784 	u32 write_seq;
47785 	u32 notsent_lowat;
47786 	u32 pushed_seq;
47787 	u32 lost_out;
47788 	u32 sacked_out;
47789 	struct hrtimer pacing_timer;
47790 	struct hrtimer compressed_ack_timer;
47791 	struct sk_buff *lost_skb_hint;
47792 	struct sk_buff *retransmit_skb_hint;
47793 	struct rb_root out_of_order_queue;
47794 	struct sk_buff *ooo_last_skb;
47795 	struct tcp_sack_block duplicate_sack[1];
47796 	struct tcp_sack_block selective_acks[4];
47797 	struct tcp_sack_block recv_sack_cache[4];
47798 	struct sk_buff *highest_sack;
47799 	int lost_cnt_hint;
47800 	u32 prior_ssthresh;
47801 	u32 high_seq;
47802 	u32 retrans_stamp;
47803 	u32 undo_marker;
47804 	int undo_retrans;
47805 	u64 bytes_retrans;
47806 	u32 total_retrans;
47807 	u32 urg_seq;
47808 	unsigned int keepalive_time;
47809 	unsigned int keepalive_intvl;
47810 	int linger2;
47811 	u8 bpf_sock_ops_cb_flags;
47812 	u16 timeout_rehash;
47813 	u32 rcv_ooopack;
47814 	u32 rcv_rtt_last_tsecr;
47815 	struct {
47816 		u32 rtt_us;
47817 		u32 seq;
47818 		u64 time;
47819 	} rcv_rtt_est;
47820 	struct {
47821 		u32 space;
47822 		u32 seq;
47823 		u64 time;
47824 	} rcvq_space;
47825 	struct {
47826 		u32 probe_seq_start;
47827 		u32 probe_seq_end;
47828 	} mtu_probe;
47829 	u32 mtu_info;
47830 	struct tcp_fastopen_request *fastopen_req;
47831 	struct request_sock *fastopen_rsk;
47832 	struct saved_syn *saved_syn;
47833 };
47834 
47835 struct tcp_fastopen_request {
47836 	struct tcp_fastopen_cookie cookie;
47837 	struct msghdr *data;
47838 	size_t size;
47839 	int copied;
47840 	struct ubuf_info *uarg;
47841 };
47842 
47843 struct tcp_timewait_sock {
47844 	struct inet_timewait_sock tw_sk;
47845 	u32 tw_rcv_wnd;
47846 	u32 tw_ts_offset;
47847 	u32 tw_ts_recent;
47848 	u32 tw_last_oow_ack_time;
47849 	int tw_ts_recent_stamp;
47850 	u32 tw_tx_delay;
47851 };
47852 
47853 struct udp_sock {
47854 	struct inet_sock inet;
47855 	int pending;
47856 	unsigned int corkflag;
47857 	__u8 encap_type;
47858 	unsigned char no_check6_tx: 1;
47859 	unsigned char no_check6_rx: 1;
47860 	unsigned char encap_enabled: 1;
47861 	unsigned char gro_enabled: 1;
47862 	unsigned char accept_udp_l4: 1;
47863 	unsigned char accept_udp_fraglist: 1;
47864 	__u16 len;
47865 	__u16 gso_size;
47866 	__u16 pcslen;
47867 	__u16 pcrlen;
47868 	__u8 pcflag;
47869 	__u8 unused[3];
47870 	int (*encap_rcv)(struct sock *, struct sk_buff *);
47871 	void (*encap_err_rcv)(struct sock *, struct sk_buff *, unsigned int);
47872 	int (*encap_err_lookup)(struct sock *, struct sk_buff *);
47873 	void (*encap_destroy)(struct sock *);
47874 	struct sk_buff * (*gro_receive)(struct sock *, struct list_head *, struct sk_buff *);
47875 	int (*gro_complete)(struct sock *, struct sk_buff *, int);
47876 	long: 64;
47877 	struct sk_buff_head reader_queue;
47878 	int forward_deficit;
47879 	long: 64;
47880 	long: 64;
47881 	long: 64;
47882 	long: 64;
47883 	long: 64;
47884 	long: 64;
47885 	long: 64;
47886 	long: 64;
47887 	long: 64;
47888 	long: 64;
47889 	long: 64;
47890 	long: 64;
47891 };
47892 
47893 struct udp6_sock {
47894 	struct udp_sock udp;
47895 	struct ipv6_pinfo inet6;
47896 	long: 64;
47897 	long: 64;
47898 	long: 64;
47899 	long: 64;
47900 	long: 64;
47901 	long: 64;
47902 	long: 64;
47903 	long: 64;
47904 	long: 64;
47905 	long: 64;
47906 	long: 64;
47907 	long: 64;
47908 	long: 64;
47909 };
47910 
47911 struct tcp6_sock {
47912 	struct tcp_sock tcp;
47913 	struct ipv6_pinfo inet6;
47914 };
47915 
47916 struct ipv6_bpf_stub {
47917 	int (*inet6_bind)(struct sock *, struct sockaddr *, int, u32);
47918 	struct sock * (*udp6_lib_lookup)(struct net *, const struct in6_addr *, __be16, const struct in6_addr *, __be16, int, int, struct udp_table *, struct sk_buff *);
47919 };
47920 
47921 enum {
47922 	BPF_F_RECOMPUTE_CSUM = 1,
47923 	BPF_F_INVALIDATE_HASH = 2,
47924 };
47925 
47926 enum {
47927 	BPF_F_HDR_FIELD_MASK = 15,
47928 };
47929 
47930 enum {
47931 	BPF_F_PSEUDO_HDR = 16,
47932 	BPF_F_MARK_MANGLED_0 = 32,
47933 	BPF_F_MARK_ENFORCE = 64,
47934 };
47935 
47936 enum {
47937 	BPF_F_TUNINFO_IPV6 = 1,
47938 };
47939 
47940 enum {
47941 	BPF_F_ZERO_CSUM_TX = 2,
47942 	BPF_F_DONT_FRAGMENT = 4,
47943 	BPF_F_SEQ_NUMBER = 8,
47944 };
47945 
47946 enum {
47947 	BPF_F_INDEX_MASK = 4294967295ULL,
47948 	BPF_F_CURRENT_CPU = 4294967295ULL,
47949 	BPF_F_CTXLEN_MASK = 4503595332403200ULL,
47950 };
47951 
47952 enum {
47953 	BPF_CSUM_LEVEL_QUERY = 0,
47954 	BPF_CSUM_LEVEL_INC = 1,
47955 	BPF_CSUM_LEVEL_DEC = 2,
47956 	BPF_CSUM_LEVEL_RESET = 3,
47957 };
47958 
47959 enum {
47960 	BPF_F_ADJ_ROOM_FIXED_GSO = 1,
47961 	BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = 2,
47962 	BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = 4,
47963 	BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 8,
47964 	BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 16,
47965 	BPF_F_ADJ_ROOM_NO_CSUM_RESET = 32,
47966 	BPF_F_ADJ_ROOM_ENCAP_L2_ETH = 64,
47967 };
47968 
47969 enum {
47970 	BPF_ADJ_ROOM_ENCAP_L2_MASK = 255,
47971 	BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 56,
47972 };
47973 
47974 enum {
47975 	BPF_SK_LOOKUP_F_REPLACE = 1,
47976 	BPF_SK_LOOKUP_F_NO_REUSEPORT = 2,
47977 };
47978 
47979 enum bpf_adj_room_mode {
47980 	BPF_ADJ_ROOM_NET = 0,
47981 	BPF_ADJ_ROOM_MAC = 1,
47982 };
47983 
47984 enum bpf_hdr_start_off {
47985 	BPF_HDR_START_MAC = 0,
47986 	BPF_HDR_START_NET = 1,
47987 };
47988 
47989 enum {
47990 	BPF_F_BROADCAST = 8,
47991 	BPF_F_EXCLUDE_INGRESS = 16,
47992 };
47993 
47994 enum {
47995 	BPF_SKB_TSTAMP_UNSPEC = 0,
47996 	BPF_SKB_TSTAMP_DELIVERY_MONO = 1,
47997 };
47998 
47999 struct bpf_tunnel_key {
48000 	__u32 tunnel_id;
48001 	union {
48002 		__u32 remote_ipv4;
48003 		__u32 remote_ipv6[4];
48004 	};
48005 	__u8 tunnel_tos;
48006 	__u8 tunnel_ttl;
48007 	__u16 tunnel_ext;
48008 	__u32 tunnel_label;
48009 	union {
48010 		__u32 local_ipv4;
48011 		__u32 local_ipv6[4];
48012 	};
48013 };
48014 
48015 struct bpf_xfrm_state {
48016 	__u32 reqid;
48017 	__u32 spi;
48018 	__u16 family;
48019 	__u16 ext;
48020 	union {
48021 		__u32 remote_ipv4;
48022 		__u32 remote_ipv6[4];
48023 	};
48024 };
48025 
48026 struct bpf_tcp_sock {
48027 	__u32 snd_cwnd;
48028 	__u32 srtt_us;
48029 	__u32 rtt_min;
48030 	__u32 snd_ssthresh;
48031 	__u32 rcv_nxt;
48032 	__u32 snd_nxt;
48033 	__u32 snd_una;
48034 	__u32 mss_cache;
48035 	__u32 ecn_flags;
48036 	__u32 rate_delivered;
48037 	__u32 rate_interval_us;
48038 	__u32 packets_out;
48039 	__u32 retrans_out;
48040 	__u32 total_retrans;
48041 	__u32 segs_in;
48042 	__u32 data_segs_in;
48043 	__u32 segs_out;
48044 	__u32 data_segs_out;
48045 	__u32 lost_out;
48046 	__u32 sacked_out;
48047 	__u64 bytes_received;
48048 	__u64 bytes_acked;
48049 	__u32 dsack_dups;
48050 	__u32 delivered;
48051 	__u32 delivered_ce;
48052 	__u32 icsk_retransmits;
48053 };
48054 
48055 struct bpf_sock_tuple {
48056 	union {
48057 		struct {
48058 			__be32 saddr;
48059 			__be32 daddr;
48060 			__be16 sport;
48061 			__be16 dport;
48062 		} ipv4;
48063 		struct {
48064 			__be32 saddr[4];
48065 			__be32 daddr[4];
48066 			__be16 sport;
48067 			__be16 dport;
48068 		} ipv6;
48069 	};
48070 };
48071 
48072 struct bpf_xdp_sock {
48073 	__u32 queue_id;
48074 };
48075 
48076 enum xdp_action {
48077 	XDP_ABORTED = 0,
48078 	XDP_DROP = 1,
48079 	XDP_PASS = 2,
48080 	XDP_TX = 3,
48081 	XDP_REDIRECT = 4,
48082 };
48083 
48084 enum sk_action {
48085 	SK_DROP = 0,
48086 	SK_PASS = 1,
48087 };
48088 
48089 enum {
48090 	BPF_SOCK_OPS_RTO_CB_FLAG = 1,
48091 	BPF_SOCK_OPS_RETRANS_CB_FLAG = 2,
48092 	BPF_SOCK_OPS_STATE_CB_FLAG = 4,
48093 	BPF_SOCK_OPS_RTT_CB_FLAG = 8,
48094 	BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG = 16,
48095 	BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG = 32,
48096 	BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG = 64,
48097 	BPF_SOCK_OPS_ALL_CB_FLAGS = 127,
48098 };
48099 
48100 enum {
48101 	BPF_SOCK_OPS_VOID = 0,
48102 	BPF_SOCK_OPS_TIMEOUT_INIT = 1,
48103 	BPF_SOCK_OPS_RWND_INIT = 2,
48104 	BPF_SOCK_OPS_TCP_CONNECT_CB = 3,
48105 	BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 4,
48106 	BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 5,
48107 	BPF_SOCK_OPS_NEEDS_ECN = 6,
48108 	BPF_SOCK_OPS_BASE_RTT = 7,
48109 	BPF_SOCK_OPS_RTO_CB = 8,
48110 	BPF_SOCK_OPS_RETRANS_CB = 9,
48111 	BPF_SOCK_OPS_STATE_CB = 10,
48112 	BPF_SOCK_OPS_TCP_LISTEN_CB = 11,
48113 	BPF_SOCK_OPS_RTT_CB = 12,
48114 	BPF_SOCK_OPS_PARSE_HDR_OPT_CB = 13,
48115 	BPF_SOCK_OPS_HDR_OPT_LEN_CB = 14,
48116 	BPF_SOCK_OPS_WRITE_HDR_OPT_CB = 15,
48117 };
48118 
48119 enum {
48120 	TCP_BPF_IW = 1001,
48121 	TCP_BPF_SNDCWND_CLAMP = 1002,
48122 	TCP_BPF_DELACK_MAX = 1003,
48123 	TCP_BPF_RTO_MIN = 1004,
48124 	TCP_BPF_SYN = 1005,
48125 	TCP_BPF_SYN_IP = 1006,
48126 	TCP_BPF_SYN_MAC = 1007,
48127 };
48128 
48129 enum {
48130 	BPF_LOAD_HDR_OPT_TCP_SYN = 1,
48131 };
48132 
48133 enum {
48134 	BPF_FIB_LOOKUP_DIRECT = 1,
48135 	BPF_FIB_LOOKUP_OUTPUT = 2,
48136 };
48137 
48138 enum {
48139 	BPF_FIB_LKUP_RET_SUCCESS = 0,
48140 	BPF_FIB_LKUP_RET_BLACKHOLE = 1,
48141 	BPF_FIB_LKUP_RET_UNREACHABLE = 2,
48142 	BPF_FIB_LKUP_RET_PROHIBIT = 3,
48143 	BPF_FIB_LKUP_RET_NOT_FWDED = 4,
48144 	BPF_FIB_LKUP_RET_FWD_DISABLED = 5,
48145 	BPF_FIB_LKUP_RET_UNSUPP_LWT = 6,
48146 	BPF_FIB_LKUP_RET_NO_NEIGH = 7,
48147 	BPF_FIB_LKUP_RET_FRAG_NEEDED = 8,
48148 };
48149 
48150 struct bpf_fib_lookup {
48151 	__u8 family;
48152 	__u8 l4_protocol;
48153 	__be16 sport;
48154 	__be16 dport;
48155 	union {
48156 		__u16 tot_len;
48157 		__u16 mtu_result;
48158 	};
48159 	__u32 ifindex;
48160 	union {
48161 		__u8 tos;
48162 		__be32 flowinfo;
48163 		__u32 rt_metric;
48164 	};
48165 	union {
48166 		__be32 ipv4_src;
48167 		__u32 ipv6_src[4];
48168 	};
48169 	union {
48170 		__be32 ipv4_dst;
48171 		__u32 ipv6_dst[4];
48172 	};
48173 	__be16 h_vlan_proto;
48174 	__be16 h_vlan_TCI;
48175 	__u8 smac[6];
48176 	__u8 dmac[6];
48177 };
48178 
48179 struct bpf_redir_neigh {
48180 	__u32 nh_family;
48181 	union {
48182 		__be32 ipv4_nh;
48183 		__u32 ipv6_nh[4];
48184 	};
48185 };
48186 
48187 enum bpf_check_mtu_flags {
48188 	BPF_MTU_CHK_SEGS = 1,
48189 };
48190 
48191 enum bpf_check_mtu_ret {
48192 	BPF_MTU_CHK_RET_SUCCESS = 0,
48193 	BPF_MTU_CHK_RET_FRAG_NEEDED = 1,
48194 	BPF_MTU_CHK_RET_SEGS_TOOBIG = 2,
48195 };
48196 
48197 struct sock_fprog {
48198 	short unsigned int len;
48199 	struct sock_filter *filter;
48200 };
48201 
48202 struct bpf_dispatcher_prog {
48203 	struct bpf_prog *prog;
48204 	refcount_t users;
48205 };
48206 
48207 struct bpf_dispatcher {
48208 	struct mutex mutex;
48209 	void *func;
48210 	struct bpf_dispatcher_prog progs[48];
48211 	int num_progs;
48212 	void *image;
48213 	u32 image_off;
48214 	struct bpf_ksym ksym;
48215 };
48216 
48217 struct bpf_array_aux {
48218 	struct list_head poke_progs;
48219 	struct bpf_map *map;
48220 	struct mutex poke_mutex;
48221 	struct work_struct work;
48222 };
48223 
48224 struct bpf_array {
48225 	struct bpf_map map;
48226 	u32 elem_size;
48227 	u32 index_mask;
48228 	struct bpf_array_aux *aux;
48229 	union {
48230 		char value[0];
48231 		void *ptrs[0];
48232 		void *pptrs[0];
48233 	};
48234 	long: 64;
48235 	long: 64;
48236 	long: 64;
48237 	long: 64;
48238 	long: 64;
48239 	long: 64;
48240 	long: 64;
48241 	long: 64;
48242 	long: 64;
48243 	long: 64;
48244 	long: 64;
48245 	long: 64;
48246 	long: 64;
48247 	long: 64;
48248 };
48249 
48250 typedef long unsigned int (*bpf_ctx_copy_t)(void *, const void *, long unsigned int, long unsigned int);
48251 
48252 struct bpf_empty_prog_array {
48253 	struct bpf_prog_array hdr;
48254 	struct bpf_prog *null_prog;
48255 };
48256 
48257 struct compat_sock_fprog {
48258 	u16 len;
48259 	compat_uptr_t filter;
48260 };
48261 
48262 struct bpf_skb_data_end {
48263 	struct qdisc_skb_cb qdisc_cb;
48264 	void *data_meta;
48265 	void *data_end;
48266 };
48267 
48268 struct bpf_nh_params {
48269 	u32 nh_family;
48270 	union {
48271 		u32 ipv4_nh;
48272 		struct in6_addr ipv6_nh;
48273 	};
48274 };
48275 
48276 struct bpf_redirect_info {
48277 	u32 flags;
48278 	u32 tgt_index;
48279 	void *tgt_value;
48280 	struct bpf_map *map;
48281 	u32 map_id;
48282 	enum bpf_map_type map_type;
48283 	u32 kern_flags;
48284 	struct bpf_nh_params nh;
48285 };
48286 
48287 typedef int (*bpf_aux_classic_check_t)(struct sock_filter *, unsigned int);
48288 
48289 enum {
48290 	INET_ECN_NOT_ECT = 0,
48291 	INET_ECN_ECT_1 = 1,
48292 	INET_ECN_ECT_0 = 2,
48293 	INET_ECN_CE = 3,
48294 	INET_ECN_MASK = 3,
48295 };
48296 
48297 struct mptcp_sock {};
48298 
48299 struct tcp_skb_cb {
48300 	__u32 seq;
48301 	__u32 end_seq;
48302 	union {
48303 		__u32 tcp_tw_isn;
48304 		struct {
48305 			u16 tcp_gso_segs;
48306 			u16 tcp_gso_size;
48307 		};
48308 	};
48309 	__u8 tcp_flags;
48310 	__u8 sacked;
48311 	__u8 ip_dsfield;
48312 	__u8 txstamp_ack: 1;
48313 	__u8 eor: 1;
48314 	__u8 has_rxtstamp: 1;
48315 	__u8 unused: 5;
48316 	__u32 ack_seq;
48317 	union {
48318 		struct {
48319 			__u32 is_app_limited: 1;
48320 			__u32 delivered_ce: 20;
48321 			__u32 unused: 11;
48322 			__u32 delivered;
48323 			u64 first_tx_mstamp;
48324 			u64 delivered_mstamp;
48325 		} tx;
48326 		union {
48327 			struct inet_skb_parm h4;
48328 			struct inet6_skb_parm h6;
48329 		} header;
48330 	};
48331 };
48332 
48333 struct strp_msg {
48334 	int full_len;
48335 	int offset;
48336 };
48337 
48338 struct _strp_msg {
48339 	struct strp_msg strp;
48340 	int accum_len;
48341 };
48342 
48343 struct tls_msg {
48344 	u8 control;
48345 };
48346 
48347 struct sk_skb_cb {
48348 	unsigned char data[20];
48349 	unsigned char pad[4];
48350 	struct _strp_msg strp;
48351 	struct tls_msg tls;
48352 	u64 temp_reg;
48353 };
48354 
48355 struct xdp_umem {
48356 	void *addrs;
48357 	u64 size;
48358 	u32 headroom;
48359 	u32 chunk_size;
48360 	u32 chunks;
48361 	u32 npgs;
48362 	struct user_struct *user;
48363 	refcount_t users;
48364 	u8 flags;
48365 	bool zc;
48366 	struct page **pgs;
48367 	int id;
48368 	struct list_head xsk_dma_list;
48369 	struct work_struct work;
48370 };
48371 
48372 struct xsk_queue;
48373 
48374 struct xdp_sock {
48375 	struct sock sk;
48376 	long: 64;
48377 	long: 64;
48378 	long: 64;
48379 	long: 64;
48380 	struct xsk_queue *rx;
48381 	struct net_device *dev;
48382 	struct xdp_umem *umem;
48383 	struct list_head flush_node;
48384 	struct xsk_buff_pool *pool;
48385 	u16 queue_id;
48386 	bool zc;
48387 	enum {
48388 		XSK_READY = 0,
48389 		XSK_BOUND = 1,
48390 		XSK_UNBOUND = 2,
48391 	} state;
48392 	long: 64;
48393 	long: 64;
48394 	long: 64;
48395 	long: 64;
48396 	long: 64;
48397 	long: 64;
48398 	long: 64;
48399 	long: 64;
48400 	long: 64;
48401 	struct xsk_queue *tx;
48402 	struct list_head tx_list;
48403 	spinlock_t rx_lock;
48404 	u64 rx_dropped;
48405 	u64 rx_queue_full;
48406 	struct list_head map_list;
48407 	spinlock_t map_list_lock;
48408 	struct mutex mutex;
48409 	struct xsk_queue *fq_tmp;
48410 	struct xsk_queue *cq_tmp;
48411 };
48412 
48413 struct tls_strparser {
48414 	struct sock *sk;
48415 	u32 mark: 8;
48416 	u32 stopped: 1;
48417 	u32 copy_mode: 1;
48418 	u32 msg_ready: 1;
48419 	struct strp_msg stm;
48420 	struct sk_buff *anchor;
48421 	struct work_struct work;
48422 };
48423 
48424 struct tls_sw_context_rx {
48425 	struct crypto_aead *aead_recv;
48426 	struct crypto_wait async_wait;
48427 	struct sk_buff_head rx_list;
48428 	void (*saved_data_ready)(struct sock *);
48429 	u8 reader_present;
48430 	u8 async_capable: 1;
48431 	u8 zc_capable: 1;
48432 	u8 reader_contended: 1;
48433 	struct tls_strparser strp;
48434 	atomic_t decrypt_pending;
48435 	spinlock_t decrypt_compl_lock;
48436 	struct sk_buff_head async_hold;
48437 	struct wait_queue_head wq;
48438 };
48439 
48440 typedef u64 (*btf_bpf_skb_get_pay_offset)(struct sk_buff *);
48441 
48442 typedef u64 (*btf_bpf_skb_get_nlattr)(struct sk_buff *, u32, u32);
48443 
48444 typedef u64 (*btf_bpf_skb_get_nlattr_nest)(struct sk_buff *, u32, u32);
48445 
48446 typedef u64 (*btf_bpf_skb_load_helper_8)(const struct sk_buff *, const void *, int, int);
48447 
48448 typedef u64 (*btf_bpf_skb_load_helper_8_no_cache)(const struct sk_buff *, int);
48449 
48450 typedef u64 (*btf_bpf_skb_load_helper_16)(const struct sk_buff *, const void *, int, int);
48451 
48452 typedef u64 (*btf_bpf_skb_load_helper_16_no_cache)(const struct sk_buff *, int);
48453 
48454 typedef u64 (*btf_bpf_skb_load_helper_32)(const struct sk_buff *, const void *, int, int);
48455 
48456 typedef u64 (*btf_bpf_skb_load_helper_32_no_cache)(const struct sk_buff *, int);
48457 
48458 struct bpf_scratchpad {
48459 	union {
48460 		__be32 diff[128];
48461 		u8 buff[512];
48462 	};
48463 };
48464 
48465 typedef u64 (*btf_bpf_skb_store_bytes)(struct sk_buff *, u32, const void *, u32, u64);
48466 
48467 typedef u64 (*btf_bpf_skb_load_bytes)(const struct sk_buff *, u32, void *, u32);
48468 
48469 typedef u64 (*btf_bpf_flow_dissector_load_bytes)(const struct bpf_flow_dissector *, u32, void *, u32);
48470 
48471 typedef u64 (*btf_bpf_skb_load_bytes_relative)(const struct sk_buff *, u32, void *, u32, u32);
48472 
48473 typedef u64 (*btf_bpf_skb_pull_data)(struct sk_buff *, u32);
48474 
48475 typedef u64 (*btf_bpf_sk_fullsock)(struct sock *);
48476 
48477 typedef u64 (*btf_sk_skb_pull_data)(struct sk_buff *, u32);
48478 
48479 typedef u64 (*btf_bpf_l3_csum_replace)(struct sk_buff *, u32, u64, u64, u64);
48480 
48481 typedef u64 (*btf_bpf_l4_csum_replace)(struct sk_buff *, u32, u64, u64, u64);
48482 
48483 typedef u64 (*btf_bpf_csum_diff)(__be32 *, u32, __be32 *, u32, __wsum);
48484 
48485 typedef u64 (*btf_bpf_csum_update)(struct sk_buff *, __wsum);
48486 
48487 typedef u64 (*btf_bpf_csum_level)(struct sk_buff *, u64);
48488 
48489 enum {
48490 	BPF_F_NEIGH = 2,
48491 	BPF_F_PEER = 4,
48492 	BPF_F_NEXTHOP = 8,
48493 };
48494 
48495 typedef u64 (*btf_bpf_clone_redirect)(struct sk_buff *, u32, u64);
48496 
48497 typedef u64 (*btf_bpf_redirect)(u32, u64);
48498 
48499 typedef u64 (*btf_bpf_redirect_peer)(u32, u64);
48500 
48501 typedef u64 (*btf_bpf_redirect_neigh)(u32, struct bpf_redir_neigh *, int, u64);
48502 
48503 typedef u64 (*btf_bpf_msg_apply_bytes)(struct sk_msg *, u32);
48504 
48505 typedef u64 (*btf_bpf_msg_cork_bytes)(struct sk_msg *, u32);
48506 
48507 typedef u64 (*btf_bpf_msg_pull_data)(struct sk_msg *, u32, u32, u64);
48508 
48509 typedef u64 (*btf_bpf_msg_push_data)(struct sk_msg *, u32, u32, u64);
48510 
48511 typedef u64 (*btf_bpf_msg_pop_data)(struct sk_msg *, u32, u32, u64);
48512 
48513 typedef u64 (*btf_bpf_get_cgroup_classid)(const struct sk_buff *);
48514 
48515 typedef u64 (*btf_bpf_get_route_realm)(const struct sk_buff *);
48516 
48517 typedef u64 (*btf_bpf_get_hash_recalc)(struct sk_buff *);
48518 
48519 typedef u64 (*btf_bpf_set_hash_invalid)(struct sk_buff *);
48520 
48521 typedef u64 (*btf_bpf_set_hash)(struct sk_buff *, u32);
48522 
48523 typedef u64 (*btf_bpf_skb_vlan_push)(struct sk_buff *, __be16, u16);
48524 
48525 typedef u64 (*btf_bpf_skb_vlan_pop)(struct sk_buff *);
48526 
48527 typedef u64 (*btf_bpf_skb_change_proto)(struct sk_buff *, __be16, u64);
48528 
48529 typedef u64 (*btf_bpf_skb_change_type)(struct sk_buff *, u32);
48530 
48531 typedef u64 (*btf_sk_skb_adjust_room)(struct sk_buff *, s32, u32, u64);
48532 
48533 typedef u64 (*btf_bpf_skb_adjust_room)(struct sk_buff *, s32, u32, u64);
48534 
48535 typedef u64 (*btf_bpf_skb_change_tail)(struct sk_buff *, u32, u64);
48536 
48537 typedef u64 (*btf_sk_skb_change_tail)(struct sk_buff *, u32, u64);
48538 
48539 typedef u64 (*btf_bpf_skb_change_head)(struct sk_buff *, u32, u64);
48540 
48541 typedef u64 (*btf_sk_skb_change_head)(struct sk_buff *, u32, u64);
48542 
48543 typedef u64 (*btf_bpf_xdp_get_buff_len)(struct xdp_buff *);
48544 
48545 typedef u64 (*btf_bpf_xdp_adjust_head)(struct xdp_buff *, int);
48546 
48547 typedef u64 (*btf_bpf_xdp_load_bytes)(struct xdp_buff *, u32, void *, u32);
48548 
48549 typedef u64 (*btf_bpf_xdp_store_bytes)(struct xdp_buff *, u32, void *, u32);
48550 
48551 typedef u64 (*btf_bpf_xdp_adjust_tail)(struct xdp_buff *, int);
48552 
48553 typedef u64 (*btf_bpf_xdp_adjust_meta)(struct xdp_buff *, int);
48554 
48555 typedef u64 (*btf_bpf_xdp_redirect)(u32, u64);
48556 
48557 typedef u64 (*btf_bpf_xdp_redirect_map)(struct bpf_map *, u32, u64);
48558 
48559 typedef u64 (*btf_bpf_skb_event_output)(struct sk_buff *, struct bpf_map *, u64, void *, u64);
48560 
48561 typedef u64 (*btf_bpf_skb_get_tunnel_key)(struct sk_buff *, struct bpf_tunnel_key *, u32, u64);
48562 
48563 typedef u64 (*btf_bpf_skb_get_tunnel_opt)(struct sk_buff *, u8 *, u32);
48564 
48565 typedef u64 (*btf_bpf_skb_set_tunnel_key)(struct sk_buff *, const struct bpf_tunnel_key *, u32, u64);
48566 
48567 typedef u64 (*btf_bpf_skb_set_tunnel_opt)(struct sk_buff *, const u8 *, u32);
48568 
48569 typedef u64 (*btf_bpf_skb_under_cgroup)(struct sk_buff *, struct bpf_map *, u32);
48570 
48571 typedef u64 (*btf_bpf_skb_cgroup_id)(const struct sk_buff *);
48572 
48573 typedef u64 (*btf_bpf_skb_ancestor_cgroup_id)(const struct sk_buff *, int);
48574 
48575 typedef u64 (*btf_bpf_sk_cgroup_id)(struct sock *);
48576 
48577 typedef u64 (*btf_bpf_sk_ancestor_cgroup_id)(struct sock *, int);
48578 
48579 typedef u64 (*btf_bpf_xdp_event_output)(struct xdp_buff *, struct bpf_map *, u64, void *, u64);
48580 
48581 typedef u64 (*btf_bpf_get_socket_cookie)(struct sk_buff *);
48582 
48583 typedef u64 (*btf_bpf_get_socket_cookie_sock_addr)(struct bpf_sock_addr_kern *);
48584 
48585 typedef u64 (*btf_bpf_get_socket_cookie_sock)(struct sock *);
48586 
48587 typedef u64 (*btf_bpf_get_socket_ptr_cookie)(struct sock *);
48588 
48589 typedef u64 (*btf_bpf_get_socket_cookie_sock_ops)(struct bpf_sock_ops_kern *);
48590 
48591 typedef u64 (*btf_bpf_get_netns_cookie_sock)(struct sock *);
48592 
48593 typedef u64 (*btf_bpf_get_netns_cookie_sock_addr)(struct bpf_sock_addr_kern *);
48594 
48595 typedef u64 (*btf_bpf_get_netns_cookie_sock_ops)(struct bpf_sock_ops_kern *);
48596 
48597 typedef u64 (*btf_bpf_get_netns_cookie_sk_msg)(struct sk_msg *);
48598 
48599 typedef u64 (*btf_bpf_get_socket_uid)(struct sk_buff *);
48600 
48601 typedef u64 (*btf_bpf_sk_setsockopt)(struct sock *, int, int, char *, int);
48602 
48603 typedef u64 (*btf_bpf_sk_getsockopt)(struct sock *, int, int, char *, int);
48604 
48605 typedef u64 (*btf_bpf_unlocked_sk_setsockopt)(struct sock *, int, int, char *, int);
48606 
48607 typedef u64 (*btf_bpf_unlocked_sk_getsockopt)(struct sock *, int, int, char *, int);
48608 
48609 typedef u64 (*btf_bpf_sock_addr_setsockopt)(struct bpf_sock_addr_kern *, int, int, char *, int);
48610 
48611 typedef u64 (*btf_bpf_sock_addr_getsockopt)(struct bpf_sock_addr_kern *, int, int, char *, int);
48612 
48613 typedef u64 (*btf_bpf_sock_ops_setsockopt)(struct bpf_sock_ops_kern *, int, int, char *, int);
48614 
48615 typedef u64 (*btf_bpf_sock_ops_getsockopt)(struct bpf_sock_ops_kern *, int, int, char *, int);
48616 
48617 typedef u64 (*btf_bpf_sock_ops_cb_flags_set)(struct bpf_sock_ops_kern *, int);
48618 
48619 typedef u64 (*btf_bpf_bind)(struct bpf_sock_addr_kern *, struct sockaddr *, int);
48620 
48621 typedef u64 (*btf_bpf_skb_get_xfrm_state)(struct sk_buff *, u32, struct bpf_xfrm_state *, u32, u64);
48622 
48623 typedef u64 (*btf_bpf_xdp_fib_lookup)(struct xdp_buff *, struct bpf_fib_lookup *, int, u32);
48624 
48625 typedef u64 (*btf_bpf_skb_fib_lookup)(struct sk_buff *, struct bpf_fib_lookup *, int, u32);
48626 
48627 typedef u64 (*btf_bpf_skb_check_mtu)(struct sk_buff *, u32, u32 *, s32, u64);
48628 
48629 typedef u64 (*btf_bpf_xdp_check_mtu)(struct xdp_buff *, u32, u32 *, s32, u64);
48630 
48631 typedef u64 (*btf_bpf_lwt_in_push_encap)(struct sk_buff *, u32, void *, u32);
48632 
48633 typedef u64 (*btf_bpf_lwt_xmit_push_encap)(struct sk_buff *, u32, void *, u32);
48634 
48635 typedef u64 (*btf_bpf_skc_lookup_tcp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
48636 
48637 typedef u64 (*btf_bpf_sk_lookup_tcp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
48638 
48639 typedef u64 (*btf_bpf_sk_lookup_udp)(struct sk_buff *, struct bpf_sock_tuple *, u32, u64, u64);
48640 
48641 typedef u64 (*btf_bpf_sk_release)(struct sock *);
48642 
48643 typedef u64 (*btf_bpf_xdp_sk_lookup_udp)(struct xdp_buff *, struct bpf_sock_tuple *, u32, u32, u64);
48644 
48645 typedef u64 (*btf_bpf_xdp_skc_lookup_tcp)(struct xdp_buff *, struct bpf_sock_tuple *, u32, u32, u64);
48646 
48647 typedef u64 (*btf_bpf_xdp_sk_lookup_tcp)(struct xdp_buff *, struct bpf_sock_tuple *, u32, u32, u64);
48648 
48649 typedef u64 (*btf_bpf_sock_addr_skc_lookup_tcp)(struct bpf_sock_addr_kern *, struct bpf_sock_tuple *, u32, u64, u64);
48650 
48651 typedef u64 (*btf_bpf_sock_addr_sk_lookup_tcp)(struct bpf_sock_addr_kern *, struct bpf_sock_tuple *, u32, u64, u64);
48652 
48653 typedef u64 (*btf_bpf_sock_addr_sk_lookup_udp)(struct bpf_sock_addr_kern *, struct bpf_sock_tuple *, u32, u64, u64);
48654 
48655 typedef u64 (*btf_bpf_tcp_sock)(struct sock *);
48656 
48657 typedef u64 (*btf_bpf_get_listener_sock)(struct sock *);
48658 
48659 typedef u64 (*btf_bpf_skb_ecn_set_ce)(struct sk_buff *);
48660 
48661 typedef u64 (*btf_bpf_tcp_check_syncookie)(struct sock *, void *, u32, struct tcphdr *, u32);
48662 
48663 typedef u64 (*btf_bpf_tcp_gen_syncookie)(struct sock *, void *, u32, struct tcphdr *, u32);
48664 
48665 typedef u64 (*btf_bpf_sk_assign)(struct sk_buff *, struct sock *, u64);
48666 
48667 typedef u64 (*btf_bpf_sock_ops_load_hdr_opt)(struct bpf_sock_ops_kern *, void *, u32, u64);
48668 
48669 typedef u64 (*btf_bpf_sock_ops_store_hdr_opt)(struct bpf_sock_ops_kern *, const void *, u32, u64);
48670 
48671 typedef u64 (*btf_bpf_sock_ops_reserve_hdr_opt)(struct bpf_sock_ops_kern *, u32, u64);
48672 
48673 typedef u64 (*btf_bpf_skb_set_tstamp)(struct sk_buff *, u64, u32);
48674 
48675 typedef u64 (*btf_bpf_tcp_raw_gen_syncookie_ipv4)(struct iphdr *, struct tcphdr *, u32);
48676 
48677 typedef u64 (*btf_bpf_tcp_raw_gen_syncookie_ipv6)(struct ipv6hdr *, struct tcphdr *, u32);
48678 
48679 typedef u64 (*btf_bpf_tcp_raw_check_syncookie_ipv4)(struct iphdr *, struct tcphdr *);
48680 
48681 typedef u64 (*btf_bpf_tcp_raw_check_syncookie_ipv6)(struct ipv6hdr *, struct tcphdr *);
48682 
48683 typedef u64 (*btf_sk_select_reuseport)(struct sk_reuseport_kern *, struct bpf_map *, void *, u32);
48684 
48685 typedef u64 (*btf_sk_reuseport_load_bytes)(const struct sk_reuseport_kern *, u32, void *, u32);
48686 
48687 typedef u64 (*btf_sk_reuseport_load_bytes_relative)(const struct sk_reuseport_kern *, u32, void *, u32, u32);
48688 
48689 typedef u64 (*btf_bpf_sk_lookup_assign)(struct bpf_sk_lookup_kern *, struct sock *, u64);
48690 
48691 typedef u64 (*btf_bpf_skc_to_tcp6_sock)(struct sock *);
48692 
48693 typedef u64 (*btf_bpf_skc_to_tcp_sock)(struct sock *);
48694 
48695 typedef u64 (*btf_bpf_skc_to_tcp_timewait_sock)(struct sock *);
48696 
48697 typedef u64 (*btf_bpf_skc_to_tcp_request_sock)(struct sock *);
48698 
48699 typedef u64 (*btf_bpf_skc_to_udp6_sock)(struct sock *);
48700 
48701 typedef u64 (*btf_bpf_skc_to_unix_sock)(struct sock *);
48702 
48703 typedef u64 (*btf_bpf_skc_to_mptcp_sock)(struct sock *);
48704 
48705 typedef u64 (*btf_bpf_sock_from_file)(struct file *);
48706 
48707 struct bpf_cpu_map_entry;
48708 
48709 struct bpf_dtab_netdev;
48710 
48711 struct unix_sock;
48712 
48713 enum netlink_attribute_type {
48714 	NL_ATTR_TYPE_INVALID = 0,
48715 	NL_ATTR_TYPE_FLAG = 1,
48716 	NL_ATTR_TYPE_U8 = 2,
48717 	NL_ATTR_TYPE_U16 = 3,
48718 	NL_ATTR_TYPE_U32 = 4,
48719 	NL_ATTR_TYPE_U64 = 5,
48720 	NL_ATTR_TYPE_S8 = 6,
48721 	NL_ATTR_TYPE_S16 = 7,
48722 	NL_ATTR_TYPE_S32 = 8,
48723 	NL_ATTR_TYPE_S64 = 9,
48724 	NL_ATTR_TYPE_BINARY = 10,
48725 	NL_ATTR_TYPE_STRING = 11,
48726 	NL_ATTR_TYPE_NUL_STRING = 12,
48727 	NL_ATTR_TYPE_NESTED = 13,
48728 	NL_ATTR_TYPE_NESTED_ARRAY = 14,
48729 	NL_ATTR_TYPE_BITFIELD32 = 15,
48730 };
48731 
48732 enum netlink_policy_type_attr {
48733 	NL_POLICY_TYPE_ATTR_UNSPEC = 0,
48734 	NL_POLICY_TYPE_ATTR_TYPE = 1,
48735 	NL_POLICY_TYPE_ATTR_MIN_VALUE_S = 2,
48736 	NL_POLICY_TYPE_ATTR_MAX_VALUE_S = 3,
48737 	NL_POLICY_TYPE_ATTR_MIN_VALUE_U = 4,
48738 	NL_POLICY_TYPE_ATTR_MAX_VALUE_U = 5,
48739 	NL_POLICY_TYPE_ATTR_MIN_LENGTH = 6,
48740 	NL_POLICY_TYPE_ATTR_MAX_LENGTH = 7,
48741 	NL_POLICY_TYPE_ATTR_POLICY_IDX = 8,
48742 	NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE = 9,
48743 	NL_POLICY_TYPE_ATTR_BITFIELD32_MASK = 10,
48744 	NL_POLICY_TYPE_ATTR_PAD = 11,
48745 	NL_POLICY_TYPE_ATTR_MASK = 12,
48746 	__NL_POLICY_TYPE_ATTR_MAX = 13,
48747 	NL_POLICY_TYPE_ATTR_MAX = 12,
48748 };
48749 
48750 struct netlink_policy_dump_state {
48751 	unsigned int policy_idx;
48752 	unsigned int attr_idx;
48753 	unsigned int n_alloc;
48754 	struct {
48755 		const struct nla_policy *policy;
48756 		unsigned int maxtype;
48757 	} policies[0];
48758 };
48759 
48760 struct linkstate_reply_data {
48761 	struct ethnl_reply_data base;
48762 	int link;
48763 	int sqi;
48764 	int sqi_max;
48765 	bool link_ext_state_provided;
48766 	struct ethtool_link_ext_state_info ethtool_link_ext_state_info;
48767 };
48768 
48769 enum {
48770 	ETHTOOL_A_STATS_GRP_UNSPEC = 0,
48771 	ETHTOOL_A_STATS_GRP_PAD = 1,
48772 	ETHTOOL_A_STATS_GRP_ID = 2,
48773 	ETHTOOL_A_STATS_GRP_SS_ID = 3,
48774 	ETHTOOL_A_STATS_GRP_STAT = 4,
48775 	ETHTOOL_A_STATS_GRP_HIST_RX = 5,
48776 	ETHTOOL_A_STATS_GRP_HIST_TX = 6,
48777 	ETHTOOL_A_STATS_GRP_HIST_BKT_LOW = 7,
48778 	ETHTOOL_A_STATS_GRP_HIST_BKT_HI = 8,
48779 	ETHTOOL_A_STATS_GRP_HIST_VAL = 9,
48780 	__ETHTOOL_A_STATS_GRP_CNT = 10,
48781 	ETHTOOL_A_STATS_GRP_MAX = 4,
48782 };
48783 
48784 struct stats_req_info {
48785 	struct ethnl_req_info base;
48786 	long unsigned int stat_mask[1];
48787 };
48788 
48789 struct stats_reply_data {
48790 	struct ethnl_reply_data base;
48791 	union {
48792 		struct {
48793 			struct ethtool_eth_phy_stats phy_stats;
48794 			struct ethtool_eth_mac_stats mac_stats;
48795 			struct ethtool_eth_ctrl_stats ctrl_stats;
48796 			struct ethtool_rmon_stats rmon_stats;
48797 		};
48798 		struct {
48799 			struct ethtool_eth_phy_stats phy_stats;
48800 			struct ethtool_eth_mac_stats mac_stats;
48801 			struct ethtool_eth_ctrl_stats ctrl_stats;
48802 			struct ethtool_rmon_stats rmon_stats;
48803 		} stats;
48804 	};
48805 	const struct ethtool_rmon_hist_range *rmon_ranges;
48806 };
48807 
48808 struct skb_gso_cb {
48809 	union {
48810 		int mac_offset;
48811 		int data_offset;
48812 	};
48813 	int encap_level;
48814 	__wsum csum;
48815 	__u16 csum_start;
48816 };
48817 
48818 typedef struct sock * (*udp_lookup_t)(const struct sk_buff *, __be16, __be16);
48819 
48820 typedef struct sk_buff * (*gro_receive_t)(struct list_head *, struct sk_buff *);
48821 
48822 typedef struct sk_buff * (*gro_receive_sk_t)(struct sock *, struct list_head *, struct sk_buff *);
48823 
48824 enum {
48825 	UDP_BPF_IPV4 = 0,
48826 	UDP_BPF_IPV6 = 1,
48827 	UDP_BPF_NUM_PROTS = 2,
48828 };
48829 
48830 struct inet6_protocol {
48831 	int (*handler)(struct sk_buff *);
48832 	int (*err_handler)(struct sk_buff *, struct inet6_skb_parm *, u8, u8, int, __be32);
48833 	unsigned int flags;
48834 };
48835 
48836 struct ipv6_sr_hdr {
48837 	__u8 nexthdr;
48838 	__u8 hdrlen;
48839 	__u8 type;
48840 	__u8 segments_left;
48841 	__u8 first_segment;
48842 	__u8 flags;
48843 	__u16 tag;
48844 	struct in6_addr segments[0];
48845 };
48846 
48847 struct udp_skb_cb {
48848 	union {
48849 		struct inet_skb_parm h4;
48850 		struct inet6_skb_parm h6;
48851 	} header;
48852 	__u16 cscov;
48853 	__u8 partial_cov;
48854 };
48855 
48856 struct udp_dev_scratch {
48857 	u32 _tsize_state;
48858 	u16 len;
48859 	bool is_linear;
48860 	bool csum_unnecessary;
48861 };
48862 
48863 struct udp_seq_afinfo {
48864 	sa_family_t family;
48865 	struct udp_table *udp_table;
48866 };
48867 
48868 struct udp_iter_state {
48869 	struct seq_net_private p;
48870 	int bucket;
48871 	struct udp_seq_afinfo *bpf_seq_afinfo;
48872 };
48873 
48874 struct rpc_sysfs_xprt {
48875 	struct kobject kobject;
48876 	struct rpc_xprt *xprt;
48877 	struct rpc_xprt_switch *xprt_switch;
48878 };
48879 
48880 struct rpc_sysfs_xprt_switch {
48881 	struct kobject kobject;
48882 	struct net *net;
48883 	struct rpc_xprt_switch *xprt_switch;
48884 	struct rpc_xprt *xprt;
48885 };
48886 
48887 struct rpc_sysfs_client {
48888 	struct kobject kobject;
48889 	struct net *net;
48890 	struct rpc_clnt *clnt;
48891 	struct rpc_xprt_switch *xprt_switch;
48892 };
48893 
48894 struct cache_detail {
48895 	struct module *owner;
48896 	int hash_size;
48897 	struct hlist_head *hash_table;
48898 	spinlock_t hash_lock;
48899 	char *name;
48900 	void (*cache_put)(struct kref *);
48901 	int (*cache_upcall)(struct cache_detail *, struct cache_head *);
48902 	void (*cache_request)(struct cache_detail *, struct cache_head *, char **, int *);
48903 	int (*cache_parse)(struct cache_detail *, char *, int);
48904 	int (*cache_show)(struct seq_file *, struct cache_detail *, struct cache_head *);
48905 	void (*warn_no_listener)(struct cache_detail *, int);
48906 	struct cache_head * (*alloc)();
48907 	void (*flush)();
48908 	int (*match)(struct cache_head *, struct cache_head *);
48909 	void (*init)(struct cache_head *, struct cache_head *);
48910 	void (*update)(struct cache_head *, struct cache_head *);
48911 	time64_t flush_time;
48912 	struct list_head others;
48913 	time64_t nextcheck;
48914 	int entries;
48915 	struct list_head queue;
48916 	atomic_t writers;
48917 	time64_t last_close;
48918 	time64_t last_warn;
48919 	union {
48920 		struct proc_dir_entry *procfs;
48921 		struct dentry *pipefs;
48922 	};
48923 	struct net *net;
48924 };
48925 
48926 struct sunrpc_net {
48927 	struct proc_dir_entry *proc_net_rpc;
48928 	struct cache_detail *ip_map_cache;
48929 	struct cache_detail *unix_gid_cache;
48930 	struct cache_detail *rsc_cache;
48931 	struct cache_detail *rsi_cache;
48932 	struct super_block *pipefs_sb;
48933 	struct rpc_pipe *gssd_dummy;
48934 	struct mutex pipefs_sb_lock;
48935 	struct list_head all_clients;
48936 	spinlock_t rpc_client_lock;
48937 	struct rpc_clnt *rpcb_local_clnt;
48938 	struct rpc_clnt *rpcb_local_clnt4;
48939 	spinlock_t rpcb_clnt_lock;
48940 	unsigned int rpcb_users;
48941 	unsigned int rpcb_is_af_local: 1;
48942 	struct mutex gssp_lock;
48943 	struct rpc_clnt *gssp_clnt;
48944 	int use_gss_proxy;
48945 	int pipe_version;
48946 	atomic_t pipe_users;
48947 	struct proc_dir_entry *use_gssp_proc;
48948 };
48949 
48950 struct user_key_payload {
48951 	struct callback_head rcu;
48952 	short unsigned int datalen;
48953 	long: 0;
48954 	char data[0];
48955 };
48956 
48957 enum {
48958 	dns_key_data = 0,
48959 	dns_key_error = 1,
48960 };
48961 
48962 enum die_val {
48963 	DIE_OOPS = 1,
48964 	DIE_IABR_MATCH = 2,
48965 	DIE_DABR_MATCH = 3,
48966 	DIE_BPT = 4,
48967 	DIE_SSTEP = 5,
48968 };
48969 
48970 struct kernel_clone_args {
48971 	u64 flags;
48972 	int *pidfd;
48973 	int *child_tid;
48974 	int *parent_tid;
48975 	int exit_signal;
48976 	long unsigned int stack;
48977 	long unsigned int stack_size;
48978 	long unsigned int tls;
48979 	pid_t *set_tid;
48980 	size_t set_tid_size;
48981 	int cgroup;
48982 	int io_thread;
48983 	int kthread;
48984 	int idle;
48985 	int (*fn)(void *);
48986 	void *fn_arg;
48987 	struct cgroup *cgrp;
48988 	struct css_set *cset;
48989 };
48990 
48991 struct regbit {
48992 	long unsigned int bit;
48993 	const char *name;
48994 };
48995 
48996 struct pci_address {
48997 	u32 a_hi;
48998 	u32 a_mid;
48999 	u32 a_lo;
49000 };
49001 
49002 struct isa_address {
49003 	u32 a_hi;
49004 	u32 a_lo;
49005 };
49006 
49007 struct isa_range {
49008 	struct isa_address isa_addr;
49009 	struct pci_address pci_addr;
49010 	unsigned int size;
49011 };
49012 
49013 struct of_drconf_cell_v1 {
49014 	__be64 base_addr;
49015 	__be32 drc_index;
49016 	__be32 reserved;
49017 	__be32 aa_index;
49018 	__be32 flags;
49019 };
49020 
49021 struct of_drconf_cell_v2 {
49022 	u32 seq_lmbs;
49023 	u64 base_addr;
49024 	u32 drc_index;
49025 	u32 aa_index;
49026 	u32 flags;
49027 } __attribute__((packed));
49028 
49029 struct assoc_arrays {
49030 	u32 n_arrays;
49031 	u32 array_sz;
49032 	const __be32 *arrays;
49033 };
49034 
49035 enum mpic_reg_type {
49036 	mpic_access_mmio_le = 0,
49037 	mpic_access_mmio_be = 1,
49038 };
49039 
49040 struct mpic_reg_bank {
49041 	u32 *base;
49042 };
49043 
49044 struct mpic_irq_save {
49045 	u32 vecprio;
49046 	u32 dest;
49047 };
49048 
49049 struct mpic {
49050 	struct device_node *node;
49051 	struct irq_domain *irqhost;
49052 	struct irq_chip hc_irq;
49053 	struct irq_chip hc_ipi;
49054 	struct irq_chip hc_tm;
49055 	struct irq_chip hc_err;
49056 	const char *name;
49057 	unsigned int flags;
49058 	unsigned int isu_size;
49059 	unsigned int isu_shift;
49060 	unsigned int isu_mask;
49061 	unsigned int num_sources;
49062 	unsigned int ipi_vecs[4];
49063 	unsigned int timer_vecs[8];
49064 	unsigned int err_int_vecs[32];
49065 	unsigned int spurious_vec;
49066 	enum mpic_reg_type reg_type;
49067 	phys_addr_t paddr;
49068 	struct mpic_reg_bank thiscpuregs;
49069 	struct mpic_reg_bank gregs;
49070 	struct mpic_reg_bank tmregs;
49071 	struct mpic_reg_bank cpuregs[32];
49072 	struct mpic_reg_bank isus[32];
49073 	u32 *err_regs;
49074 	long unsigned int *protected;
49075 	struct msi_bitmap msi_bitmap;
49076 	struct mpic *next;
49077 	struct mpic_irq_save *save_data;
49078 };
49079 
49080 enum OpalPendingState {
49081 	OPAL_EVENT_OPAL_INTERNAL = 1,
49082 	OPAL_EVENT_NVRAM = 2,
49083 	OPAL_EVENT_RTC = 4,
49084 	OPAL_EVENT_CONSOLE_OUTPUT = 8,
49085 	OPAL_EVENT_CONSOLE_INPUT = 16,
49086 	OPAL_EVENT_ERROR_LOG_AVAIL = 32,
49087 	OPAL_EVENT_ERROR_LOG = 64,
49088 	OPAL_EVENT_EPOW = 128,
49089 	OPAL_EVENT_LED_STATUS = 256,
49090 	OPAL_EVENT_PCI_ERROR = 512,
49091 	OPAL_EVENT_DUMP_AVAIL = 1024,
49092 	OPAL_EVENT_MSG_PENDING = 2048,
49093 };
49094 
49095 struct elog_obj {
49096 	struct kobject kobj;
49097 	struct bin_attribute raw_attr;
49098 	uint64_t id;
49099 	uint64_t type;
49100 	size_t size;
49101 	char *buffer;
49102 };
49103 
49104 struct elog_attribute {
49105 	struct attribute attr;
49106 	ssize_t (*show)(struct elog_obj *, struct elog_attribute *, char *);
49107 	ssize_t (*store)(struct elog_obj *, struct elog_attribute *, const char *, size_t);
49108 };
49109 
49110 enum {
49111 	OPAL_REBOOT_NORMAL = 0,
49112 	OPAL_REBOOT_PLATFORM_ERROR = 1,
49113 	OPAL_REBOOT_FULL_IPL = 2,
49114 	OPAL_REBOOT_MPIPL = 3,
49115 	OPAL_REBOOT_FAST = 4,
49116 };
49117 
49118 enum opal_mpipl_ops {
49119 	OPAL_MPIPL_ADD_RANGE = 0,
49120 	OPAL_MPIPL_REMOVE_RANGE = 1,
49121 	OPAL_MPIPL_REMOVE_ALL = 2,
49122 	OPAL_MPIPL_FREE_PRESERVED_MEMORY = 3,
49123 };
49124 
49125 enum opal_mpipl_tags {
49126 	OPAL_MPIPL_TAG_CPU = 0,
49127 	OPAL_MPIPL_TAG_OPAL = 1,
49128 	OPAL_MPIPL_TAG_KERNEL = 2,
49129 	OPAL_MPIPL_TAG_BOOT_MEM = 3,
49130 };
49131 
49132 struct opal_mpipl_region {
49133 	__be64 src;
49134 	__be64 dest;
49135 	__be64 size;
49136 };
49137 
49138 struct opal_mpipl_fadump {
49139 	u8 version;
49140 	u8 reserved[7];
49141 	__be32 crashing_pir;
49142 	__be32 cpu_data_version;
49143 	__be32 cpu_data_size;
49144 	__be32 region_cnt;
49145 	struct opal_mpipl_region region[0];
49146 };
49147 
49148 struct opal_fadump_mem_struct {
49149 	u8 version;
49150 	u8 reserved[3];
49151 	__be16 region_cnt;
49152 	__be16 registered_regions;
49153 	__be64 fadumphdr_addr;
49154 	struct opal_mpipl_region rgn[128];
49155 };
49156 
49157 struct hdat_fadump_thread_hdr {
49158 	__be32 pir;
49159 	u8 core_state;
49160 	u8 reserved[3];
49161 	__be32 offset;
49162 	__be32 ecnt;
49163 	__be32 esize;
49164 	__be32 eactsz;
49165 };
49166 
49167 struct hdat_fadump_reg_entry {
49168 	__be32 reg_type;
49169 	__be32 reg_num;
49170 	__be64 reg_val;
49171 };
49172 
49173 struct of_drc_info {
49174 	char *drc_type;
49175 	char *drc_name_prefix;
49176 	u32 drc_index_start;
49177 	u32 drc_name_suffix_start;
49178 	u32 num_sequential_elems;
49179 	u32 sequential_inc;
49180 	u32 drc_power_domain;
49181 	u32 last_drc_index;
49182 };
49183 
49184 struct hypertas_fw_feature {
49185 	long unsigned int val;
49186 	char *name;
49187 };
49188 
49189 struct vec5_fw_feature {
49190 	long unsigned int val;
49191 	unsigned int feature;
49192 };
49193 
49194 struct of_reconfig_data {
49195 	struct device_node *dn;
49196 	struct property *prop;
49197 	struct property *old_prop;
49198 };
49199 
49200 struct coprocessor_completion_block {
49201 	__be64 value;
49202 	__be64 address;
49203 };
49204 
49205 struct coprocessor_status_block {
49206 	u8 flags;
49207 	u8 cs;
49208 	u8 cc;
49209 	u8 ce;
49210 	__be32 count;
49211 	__be64 address;
49212 };
49213 
49214 struct data_descriptor_entry {
49215 	__be16 flags;
49216 	u8 count;
49217 	u8 index;
49218 	__be32 length;
49219 	__be64 address;
49220 };
49221 
49222 struct nx_fault_stamp {
49223 	__be64 fault_storage_addr;
49224 	__be16 reserved;
49225 	__u8 flags;
49226 	__u8 fault_status;
49227 	__be32 pswid;
49228 };
49229 
49230 struct coprocessor_request_block {
49231 	__be32 ccw;
49232 	__be32 flags;
49233 	__be64 csb_addr;
49234 	struct data_descriptor_entry source;
49235 	struct data_descriptor_entry target;
49236 	struct coprocessor_completion_block ccb;
49237 	union {
49238 		struct nx_fault_stamp nx;
49239 		u8 reserved[16];
49240 	} stamp;
49241 	u8 reserved[32];
49242 	struct coprocessor_status_block csb;
49243 };
49244 
49245 struct hv_vas_all_caps {
49246 	__be64 descriptor;
49247 	__be64 feat_type;
49248 	long: 64;
49249 	long: 64;
49250 	long: 64;
49251 	long: 64;
49252 	long: 64;
49253 	long: 64;
49254 	long: 64;
49255 	long: 64;
49256 	long: 64;
49257 	long: 64;
49258 	long: 64;
49259 	long: 64;
49260 	long: 64;
49261 	long: 64;
49262 	long: 64;
49263 	long: 64;
49264 	long: 64;
49265 	long: 64;
49266 	long: 64;
49267 	long: 64;
49268 	long: 64;
49269 	long: 64;
49270 	long: 64;
49271 	long: 64;
49272 	long: 64;
49273 	long: 64;
49274 	long: 64;
49275 	long: 64;
49276 	long: 64;
49277 	long: 64;
49278 	long: 64;
49279 	long: 64;
49280 	long: 64;
49281 	long: 64;
49282 	long: 64;
49283 	long: 64;
49284 	long: 64;
49285 	long: 64;
49286 	long: 64;
49287 	long: 64;
49288 	long: 64;
49289 	long: 64;
49290 	long: 64;
49291 	long: 64;
49292 	long: 64;
49293 	long: 64;
49294 	long: 64;
49295 	long: 64;
49296 	long: 64;
49297 	long: 64;
49298 	long: 64;
49299 	long: 64;
49300 	long: 64;
49301 	long: 64;
49302 	long: 64;
49303 	long: 64;
49304 	long: 64;
49305 	long: 64;
49306 	long: 64;
49307 	long: 64;
49308 	long: 64;
49309 	long: 64;
49310 	long: 64;
49311 	long: 64;
49312 	long: 64;
49313 	long: 64;
49314 	long: 64;
49315 	long: 64;
49316 	long: 64;
49317 	long: 64;
49318 	long: 64;
49319 	long: 64;
49320 	long: 64;
49321 	long: 64;
49322 	long: 64;
49323 	long: 64;
49324 	long: 64;
49325 	long: 64;
49326 	long: 64;
49327 	long: 64;
49328 	long: 64;
49329 	long: 64;
49330 	long: 64;
49331 	long: 64;
49332 	long: 64;
49333 	long: 64;
49334 	long: 64;
49335 	long: 64;
49336 	long: 64;
49337 	long: 64;
49338 	long: 64;
49339 	long: 64;
49340 	long: 64;
49341 	long: 64;
49342 	long: 64;
49343 	long: 64;
49344 	long: 64;
49345 	long: 64;
49346 	long: 64;
49347 	long: 64;
49348 	long: 64;
49349 	long: 64;
49350 	long: 64;
49351 	long: 64;
49352 	long: 64;
49353 	long: 64;
49354 	long: 64;
49355 	long: 64;
49356 	long: 64;
49357 	long: 64;
49358 	long: 64;
49359 	long: 64;
49360 	long: 64;
49361 	long: 64;
49362 	long: 64;
49363 	long: 64;
49364 	long: 64;
49365 	long: 64;
49366 	long: 64;
49367 	long: 64;
49368 	long: 64;
49369 	long: 64;
49370 	long: 64;
49371 	long: 64;
49372 	long: 64;
49373 	long: 64;
49374 	long: 64;
49375 	long: 64;
49376 	long: 64;
49377 	long: 64;
49378 	long: 64;
49379 	long: 64;
49380 	long: 64;
49381 	long: 64;
49382 	long: 64;
49383 	long: 64;
49384 	long: 64;
49385 	long: 64;
49386 	long: 64;
49387 	long: 64;
49388 	long: 64;
49389 	long: 64;
49390 	long: 64;
49391 	long: 64;
49392 	long: 64;
49393 	long: 64;
49394 	long: 64;
49395 	long: 64;
49396 	long: 64;
49397 	long: 64;
49398 	long: 64;
49399 	long: 64;
49400 	long: 64;
49401 	long: 64;
49402 	long: 64;
49403 	long: 64;
49404 	long: 64;
49405 	long: 64;
49406 	long: 64;
49407 	long: 64;
49408 	long: 64;
49409 	long: 64;
49410 	long: 64;
49411 	long: 64;
49412 	long: 64;
49413 	long: 64;
49414 	long: 64;
49415 	long: 64;
49416 	long: 64;
49417 	long: 64;
49418 	long: 64;
49419 	long: 64;
49420 	long: 64;
49421 	long: 64;
49422 	long: 64;
49423 	long: 64;
49424 	long: 64;
49425 	long: 64;
49426 	long: 64;
49427 	long: 64;
49428 	long: 64;
49429 	long: 64;
49430 	long: 64;
49431 	long: 64;
49432 	long: 64;
49433 	long: 64;
49434 	long: 64;
49435 	long: 64;
49436 	long: 64;
49437 	long: 64;
49438 	long: 64;
49439 	long: 64;
49440 	long: 64;
49441 	long: 64;
49442 	long: 64;
49443 	long: 64;
49444 	long: 64;
49445 	long: 64;
49446 	long: 64;
49447 	long: 64;
49448 	long: 64;
49449 	long: 64;
49450 	long: 64;
49451 	long: 64;
49452 	long: 64;
49453 	long: 64;
49454 	long: 64;
49455 	long: 64;
49456 	long: 64;
49457 	long: 64;
49458 	long: 64;
49459 	long: 64;
49460 	long: 64;
49461 	long: 64;
49462 	long: 64;
49463 	long: 64;
49464 	long: 64;
49465 	long: 64;
49466 	long: 64;
49467 	long: 64;
49468 	long: 64;
49469 	long: 64;
49470 	long: 64;
49471 	long: 64;
49472 	long: 64;
49473 	long: 64;
49474 	long: 64;
49475 	long: 64;
49476 	long: 64;
49477 	long: 64;
49478 	long: 64;
49479 	long: 64;
49480 	long: 64;
49481 	long: 64;
49482 	long: 64;
49483 	long: 64;
49484 	long: 64;
49485 	long: 64;
49486 	long: 64;
49487 	long: 64;
49488 	long: 64;
49489 	long: 64;
49490 	long: 64;
49491 	long: 64;
49492 	long: 64;
49493 	long: 64;
49494 	long: 64;
49495 	long: 64;
49496 	long: 64;
49497 	long: 64;
49498 	long: 64;
49499 	long: 64;
49500 	long: 64;
49501 	long: 64;
49502 	long: 64;
49503 	long: 64;
49504 	long: 64;
49505 	long: 64;
49506 	long: 64;
49507 	long: 64;
49508 	long: 64;
49509 	long: 64;
49510 	long: 64;
49511 	long: 64;
49512 	long: 64;
49513 	long: 64;
49514 	long: 64;
49515 	long: 64;
49516 	long: 64;
49517 	long: 64;
49518 	long: 64;
49519 	long: 64;
49520 	long: 64;
49521 	long: 64;
49522 	long: 64;
49523 	long: 64;
49524 	long: 64;
49525 	long: 64;
49526 	long: 64;
49527 	long: 64;
49528 	long: 64;
49529 	long: 64;
49530 	long: 64;
49531 	long: 64;
49532 	long: 64;
49533 	long: 64;
49534 	long: 64;
49535 	long: 64;
49536 	long: 64;
49537 	long: 64;
49538 	long: 64;
49539 	long: 64;
49540 	long: 64;
49541 	long: 64;
49542 	long: 64;
49543 	long: 64;
49544 	long: 64;
49545 	long: 64;
49546 	long: 64;
49547 	long: 64;
49548 	long: 64;
49549 	long: 64;
49550 	long: 64;
49551 	long: 64;
49552 	long: 64;
49553 	long: 64;
49554 	long: 64;
49555 	long: 64;
49556 	long: 64;
49557 	long: 64;
49558 	long: 64;
49559 	long: 64;
49560 	long: 64;
49561 	long: 64;
49562 	long: 64;
49563 	long: 64;
49564 	long: 64;
49565 	long: 64;
49566 	long: 64;
49567 	long: 64;
49568 	long: 64;
49569 	long: 64;
49570 	long: 64;
49571 	long: 64;
49572 	long: 64;
49573 	long: 64;
49574 	long: 64;
49575 	long: 64;
49576 	long: 64;
49577 	long: 64;
49578 	long: 64;
49579 	long: 64;
49580 	long: 64;
49581 	long: 64;
49582 	long: 64;
49583 	long: 64;
49584 	long: 64;
49585 	long: 64;
49586 	long: 64;
49587 	long: 64;
49588 	long: 64;
49589 	long: 64;
49590 	long: 64;
49591 	long: 64;
49592 	long: 64;
49593 	long: 64;
49594 	long: 64;
49595 	long: 64;
49596 	long: 64;
49597 	long: 64;
49598 	long: 64;
49599 	long: 64;
49600 	long: 64;
49601 	long: 64;
49602 	long: 64;
49603 	long: 64;
49604 	long: 64;
49605 	long: 64;
49606 	long: 64;
49607 	long: 64;
49608 	long: 64;
49609 	long: 64;
49610 	long: 64;
49611 	long: 64;
49612 	long: 64;
49613 	long: 64;
49614 	long: 64;
49615 	long: 64;
49616 	long: 64;
49617 	long: 64;
49618 	long: 64;
49619 	long: 64;
49620 	long: 64;
49621 	long: 64;
49622 	long: 64;
49623 	long: 64;
49624 	long: 64;
49625 	long: 64;
49626 	long: 64;
49627 	long: 64;
49628 	long: 64;
49629 	long: 64;
49630 	long: 64;
49631 	long: 64;
49632 	long: 64;
49633 	long: 64;
49634 	long: 64;
49635 	long: 64;
49636 	long: 64;
49637 	long: 64;
49638 	long: 64;
49639 	long: 64;
49640 	long: 64;
49641 	long: 64;
49642 	long: 64;
49643 	long: 64;
49644 	long: 64;
49645 	long: 64;
49646 	long: 64;
49647 	long: 64;
49648 	long: 64;
49649 	long: 64;
49650 	long: 64;
49651 	long: 64;
49652 	long: 64;
49653 	long: 64;
49654 	long: 64;
49655 	long: 64;
49656 	long: 64;
49657 	long: 64;
49658 	long: 64;
49659 	long: 64;
49660 	long: 64;
49661 	long: 64;
49662 	long: 64;
49663 	long: 64;
49664 	long: 64;
49665 	long: 64;
49666 	long: 64;
49667 	long: 64;
49668 	long: 64;
49669 	long: 64;
49670 	long: 64;
49671 	long: 64;
49672 	long: 64;
49673 	long: 64;
49674 	long: 64;
49675 	long: 64;
49676 	long: 64;
49677 	long: 64;
49678 	long: 64;
49679 	long: 64;
49680 	long: 64;
49681 	long: 64;
49682 	long: 64;
49683 	long: 64;
49684 	long: 64;
49685 	long: 64;
49686 	long: 64;
49687 	long: 64;
49688 	long: 64;
49689 	long: 64;
49690 	long: 64;
49691 	long: 64;
49692 	long: 64;
49693 	long: 64;
49694 	long: 64;
49695 	long: 64;
49696 	long: 64;
49697 	long: 64;
49698 	long: 64;
49699 	long: 64;
49700 	long: 64;
49701 	long: 64;
49702 	long: 64;
49703 	long: 64;
49704 	long: 64;
49705 	long: 64;
49706 	long: 64;
49707 	long: 64;
49708 	long: 64;
49709 	long: 64;
49710 	long: 64;
49711 	long: 64;
49712 	long: 64;
49713 	long: 64;
49714 	long: 64;
49715 	long: 64;
49716 	long: 64;
49717 	long: 64;
49718 	long: 64;
49719 	long: 64;
49720 	long: 64;
49721 	long: 64;
49722 	long: 64;
49723 	long: 64;
49724 	long: 64;
49725 	long: 64;
49726 	long: 64;
49727 	long: 64;
49728 	long: 64;
49729 	long: 64;
49730 	long: 64;
49731 	long: 64;
49732 	long: 64;
49733 	long: 64;
49734 	long: 64;
49735 	long: 64;
49736 	long: 64;
49737 	long: 64;
49738 	long: 64;
49739 	long: 64;
49740 	long: 64;
49741 	long: 64;
49742 	long: 64;
49743 	long: 64;
49744 	long: 64;
49745 	long: 64;
49746 	long: 64;
49747 	long: 64;
49748 	long: 64;
49749 	long: 64;
49750 	long: 64;
49751 	long: 64;
49752 	long: 64;
49753 	long: 64;
49754 	long: 64;
49755 	long: 64;
49756 	long: 64;
49757 	long: 64;
49758 };
49759 
49760 struct vas_all_caps {
49761 	u64 descriptor;
49762 	u64 feat_type;
49763 };
49764 
49765 enum vas_migrate_action {
49766 	VAS_SUSPEND = 0,
49767 	VAS_RESUME = 1,
49768 };
49769 
49770 enum vas_cop_feat_type {
49771 	VAS_GZIP_QOS_FEAT_TYPE = 0,
49772 	VAS_GZIP_DEF_FEAT_TYPE = 1,
49773 	VAS_MAX_FEAT_TYPE = 2,
49774 };
49775 
49776 struct hv_vas_cop_feat_caps {
49777 	__be64 descriptor;
49778 	u8 win_type;
49779 	u8 user_mode;
49780 	__be16 max_lpar_creds;
49781 	__be16 max_win_creds;
49782 	union {
49783 		__be16 reserved;
49784 		__be16 def_lpar_creds;
49785 	};
49786 	__be16 target_lpar_creds;
49787 	long: 64;
49788 	long: 64;
49789 	long: 64;
49790 	long: 64;
49791 	long: 64;
49792 	long: 64;
49793 	long: 64;
49794 	long: 64;
49795 	long: 64;
49796 	long: 64;
49797 	long: 64;
49798 	long: 64;
49799 	long: 64;
49800 	long: 64;
49801 	long: 64;
49802 	long: 64;
49803 	long: 64;
49804 	long: 64;
49805 	long: 64;
49806 	long: 64;
49807 	long: 64;
49808 	long: 64;
49809 	long: 64;
49810 	long: 64;
49811 	long: 64;
49812 	long: 64;
49813 	long: 64;
49814 	long: 64;
49815 	long: 64;
49816 	long: 64;
49817 	long: 64;
49818 	long: 64;
49819 	long: 64;
49820 	long: 64;
49821 	long: 64;
49822 	long: 64;
49823 	long: 64;
49824 	long: 64;
49825 	long: 64;
49826 	long: 64;
49827 	long: 64;
49828 	long: 64;
49829 	long: 64;
49830 	long: 64;
49831 	long: 64;
49832 	long: 64;
49833 	long: 64;
49834 	long: 64;
49835 	long: 64;
49836 	long: 64;
49837 	long: 64;
49838 	long: 64;
49839 	long: 64;
49840 	long: 64;
49841 	long: 64;
49842 	long: 64;
49843 	long: 64;
49844 	long: 64;
49845 	long: 64;
49846 	long: 64;
49847 	long: 64;
49848 	long: 64;
49849 	long: 64;
49850 	long: 64;
49851 	long: 64;
49852 	long: 64;
49853 	long: 64;
49854 	long: 64;
49855 	long: 64;
49856 	long: 64;
49857 	long: 64;
49858 	long: 64;
49859 	long: 64;
49860 	long: 64;
49861 	long: 64;
49862 	long: 64;
49863 	long: 64;
49864 	long: 64;
49865 	long: 64;
49866 	long: 64;
49867 	long: 64;
49868 	long: 64;
49869 	long: 64;
49870 	long: 64;
49871 	long: 64;
49872 	long: 64;
49873 	long: 64;
49874 	long: 64;
49875 	long: 64;
49876 	long: 64;
49877 	long: 64;
49878 	long: 64;
49879 	long: 64;
49880 	long: 64;
49881 	long: 64;
49882 	long: 64;
49883 	long: 64;
49884 	long: 64;
49885 	long: 64;
49886 	long: 64;
49887 	long: 64;
49888 	long: 64;
49889 	long: 64;
49890 	long: 64;
49891 	long: 64;
49892 	long: 64;
49893 	long: 64;
49894 	long: 64;
49895 	long: 64;
49896 	long: 64;
49897 	long: 64;
49898 	long: 64;
49899 	long: 64;
49900 	long: 64;
49901 	long: 64;
49902 	long: 64;
49903 	long: 64;
49904 	long: 64;
49905 	long: 64;
49906 	long: 64;
49907 	long: 64;
49908 	long: 64;
49909 	long: 64;
49910 	long: 64;
49911 	long: 64;
49912 	long: 64;
49913 	long: 64;
49914 	long: 64;
49915 	long: 64;
49916 	long: 64;
49917 	long: 64;
49918 	long: 64;
49919 	long: 64;
49920 	long: 64;
49921 	long: 64;
49922 	long: 64;
49923 	long: 64;
49924 	long: 64;
49925 	long: 64;
49926 	long: 64;
49927 	long: 64;
49928 	long: 64;
49929 	long: 64;
49930 	long: 64;
49931 	long: 64;
49932 	long: 64;
49933 	long: 64;
49934 	long: 64;
49935 	long: 64;
49936 	long: 64;
49937 	long: 64;
49938 	long: 64;
49939 	long: 64;
49940 	long: 64;
49941 	long: 64;
49942 	long: 64;
49943 	long: 64;
49944 	long: 64;
49945 	long: 64;
49946 	long: 64;
49947 	long: 64;
49948 	long: 64;
49949 	long: 64;
49950 	long: 64;
49951 	long: 64;
49952 	long: 64;
49953 	long: 64;
49954 	long: 64;
49955 	long: 64;
49956 	long: 64;
49957 	long: 64;
49958 	long: 64;
49959 	long: 64;
49960 	long: 64;
49961 	long: 64;
49962 	long: 64;
49963 	long: 64;
49964 	long: 64;
49965 	long: 64;
49966 	long: 64;
49967 	long: 64;
49968 	long: 64;
49969 	long: 64;
49970 	long: 64;
49971 	long: 64;
49972 	long: 64;
49973 	long: 64;
49974 	long: 64;
49975 	long: 64;
49976 	long: 64;
49977 	long: 64;
49978 	long: 64;
49979 	long: 64;
49980 	long: 64;
49981 	long: 64;
49982 	long: 64;
49983 	long: 64;
49984 	long: 64;
49985 	long: 64;
49986 	long: 64;
49987 	long: 64;
49988 	long: 64;
49989 	long: 64;
49990 	long: 64;
49991 	long: 64;
49992 	long: 64;
49993 	long: 64;
49994 	long: 64;
49995 	long: 64;
49996 	long: 64;
49997 	long: 64;
49998 	long: 64;
49999 	long: 64;
50000 	long: 64;
50001 	long: 64;
50002 	long: 64;
50003 	long: 64;
50004 	long: 64;
50005 	long: 64;
50006 	long: 64;
50007 	long: 64;
50008 	long: 64;
50009 	long: 64;
50010 	long: 64;
50011 	long: 64;
50012 	long: 64;
50013 	long: 64;
50014 	long: 64;
50015 	long: 64;
50016 	long: 64;
50017 	long: 64;
50018 	long: 64;
50019 	long: 64;
50020 	long: 64;
50021 	long: 64;
50022 	long: 64;
50023 	long: 64;
50024 	long: 64;
50025 	long: 64;
50026 	long: 64;
50027 	long: 64;
50028 	long: 64;
50029 	long: 64;
50030 	long: 64;
50031 	long: 64;
50032 	long: 64;
50033 	long: 64;
50034 	long: 64;
50035 	long: 64;
50036 	long: 64;
50037 	long: 64;
50038 	long: 64;
50039 	long: 64;
50040 	long: 64;
50041 	long: 64;
50042 	long: 64;
50043 	long: 64;
50044 	long: 64;
50045 	long: 64;
50046 	long: 64;
50047 	long: 64;
50048 	long: 64;
50049 	long: 64;
50050 	long: 64;
50051 	long: 64;
50052 	long: 64;
50053 	long: 64;
50054 	long: 64;
50055 	long: 64;
50056 	long: 64;
50057 	long: 64;
50058 	long: 64;
50059 	long: 64;
50060 	long: 64;
50061 	long: 64;
50062 	long: 64;
50063 	long: 64;
50064 	long: 64;
50065 	long: 64;
50066 	long: 64;
50067 	long: 64;
50068 	long: 64;
50069 	long: 64;
50070 	long: 64;
50071 	long: 64;
50072 	long: 64;
50073 	long: 64;
50074 	long: 64;
50075 	long: 64;
50076 	long: 64;
50077 	long: 64;
50078 	long: 64;
50079 	long: 64;
50080 	long: 64;
50081 	long: 64;
50082 	long: 64;
50083 	long: 64;
50084 	long: 64;
50085 	long: 64;
50086 	long: 64;
50087 	long: 64;
50088 	long: 64;
50089 	long: 64;
50090 	long: 64;
50091 	long: 64;
50092 	long: 64;
50093 	long: 64;
50094 	long: 64;
50095 	long: 64;
50096 	long: 64;
50097 	long: 64;
50098 	long: 64;
50099 	long: 64;
50100 	long: 64;
50101 	long: 64;
50102 	long: 64;
50103 	long: 64;
50104 	long: 64;
50105 	long: 64;
50106 	long: 64;
50107 	long: 64;
50108 	long: 64;
50109 	long: 64;
50110 	long: 64;
50111 	long: 64;
50112 	long: 64;
50113 	long: 64;
50114 	long: 64;
50115 	long: 64;
50116 	long: 64;
50117 	long: 64;
50118 	long: 64;
50119 	long: 64;
50120 	long: 64;
50121 	long: 64;
50122 	long: 64;
50123 	long: 64;
50124 	long: 64;
50125 	long: 64;
50126 	long: 64;
50127 	long: 64;
50128 	long: 64;
50129 	long: 64;
50130 	long: 64;
50131 	long: 64;
50132 	long: 64;
50133 	long: 64;
50134 	long: 64;
50135 	long: 64;
50136 	long: 64;
50137 	long: 64;
50138 	long: 64;
50139 	long: 64;
50140 	long: 64;
50141 	long: 64;
50142 	long: 64;
50143 	long: 64;
50144 	long: 64;
50145 	long: 64;
50146 	long: 64;
50147 	long: 64;
50148 	long: 64;
50149 	long: 64;
50150 	long: 64;
50151 	long: 64;
50152 	long: 64;
50153 	long: 64;
50154 	long: 64;
50155 	long: 64;
50156 	long: 64;
50157 	long: 64;
50158 	long: 64;
50159 	long: 64;
50160 	long: 64;
50161 	long: 64;
50162 	long: 64;
50163 	long: 64;
50164 	long: 64;
50165 	long: 64;
50166 	long: 64;
50167 	long: 64;
50168 	long: 64;
50169 	long: 64;
50170 	long: 64;
50171 	long: 64;
50172 	long: 64;
50173 	long: 64;
50174 	long: 64;
50175 	long: 64;
50176 	long: 64;
50177 	long: 64;
50178 	long: 64;
50179 	long: 64;
50180 	long: 64;
50181 	long: 64;
50182 	long: 64;
50183 	long: 64;
50184 	long: 64;
50185 	long: 64;
50186 	long: 64;
50187 	long: 64;
50188 	long: 64;
50189 	long: 64;
50190 	long: 64;
50191 	long: 64;
50192 	long: 64;
50193 	long: 64;
50194 	long: 64;
50195 	long: 64;
50196 	long: 64;
50197 	long: 64;
50198 	long: 64;
50199 	long: 64;
50200 	long: 64;
50201 	long: 64;
50202 	long: 64;
50203 	long: 64;
50204 	long: 64;
50205 	long: 64;
50206 	long: 64;
50207 	long: 64;
50208 	long: 64;
50209 	long: 64;
50210 	long: 64;
50211 	long: 64;
50212 	long: 64;
50213 	long: 64;
50214 	long: 64;
50215 	long: 64;
50216 	long: 64;
50217 	long: 64;
50218 	long: 64;
50219 	long: 64;
50220 	long: 64;
50221 	long: 64;
50222 	long: 64;
50223 	long: 64;
50224 	long: 64;
50225 	long: 64;
50226 	long: 64;
50227 	long: 64;
50228 	long: 64;
50229 	long: 64;
50230 	long: 64;
50231 	long: 64;
50232 	long: 64;
50233 	long: 64;
50234 	long: 64;
50235 	long: 64;
50236 	long: 64;
50237 	long: 64;
50238 	long: 64;
50239 	long: 64;
50240 	long: 64;
50241 	long: 64;
50242 	long: 64;
50243 	long: 64;
50244 	long: 64;
50245 	long: 64;
50246 	long: 64;
50247 	long: 64;
50248 	long: 64;
50249 	long: 64;
50250 	long: 64;
50251 	long: 64;
50252 	long: 64;
50253 	long: 64;
50254 	long: 64;
50255 	long: 64;
50256 	long: 64;
50257 	long: 64;
50258 	long: 64;
50259 	long: 64;
50260 	long: 64;
50261 	long: 64;
50262 	long: 64;
50263 	long: 64;
50264 	long: 64;
50265 	long: 64;
50266 	long: 64;
50267 	long: 64;
50268 	long: 64;
50269 	long: 64;
50270 	long: 64;
50271 	long: 64;
50272 	long: 64;
50273 	long: 64;
50274 	long: 64;
50275 	long: 64;
50276 	long: 64;
50277 	long: 64;
50278 	long: 64;
50279 	long: 64;
50280 	long: 64;
50281 	long: 64;
50282 	long: 64;
50283 	long: 64;
50284 	long: 64;
50285 	long: 64;
50286 	long: 64;
50287 	long: 64;
50288 	long: 64;
50289 	long: 64;
50290 	long: 64;
50291 	long: 64;
50292 	long: 64;
50293 	long: 64;
50294 	long: 64;
50295 	long: 64;
50296 };
50297 
50298 struct vas_cop_feat_caps {
50299 	u64 descriptor;
50300 	u8 win_type;
50301 	u8 user_mode;
50302 	u16 max_lpar_creds;
50303 	u16 max_win_creds;
50304 	union {
50305 		u16 reserved;
50306 		u16 def_lpar_creds;
50307 	};
50308 	atomic_t nr_total_credits;
50309 	atomic_t nr_used_credits;
50310 };
50311 
50312 struct vas_caps {
50313 	struct vas_cop_feat_caps caps;
50314 	struct list_head list;
50315 	int nr_close_wins;
50316 	int nr_open_windows;
50317 	u8 feat;
50318 };
50319 
50320 struct pseries_vas_window {
50321 	struct vas_window vas_win;
50322 	u64 win_addr;
50323 	u8 win_type;
50324 	u32 complete_irq;
50325 	u32 fault_irq;
50326 	u64 domain[6];
50327 	u64 util;
50328 	u32 pid;
50329 	struct list_head win_list;
50330 	u64 flags;
50331 	char *name;
50332 	int fault_virq;
50333 };
50334 
50335 struct sigaltstack {
50336 	void *ss_sp;
50337 	int ss_flags;
50338 	__kernel_size_t ss_size;
50339 };
50340 
50341 typedef struct sigaltstack stack_t;
50342 
50343 struct siginfo {
50344 	union {
50345 		struct {
50346 			int si_signo;
50347 			int si_errno;
50348 			int si_code;
50349 			union __sifields _sifields;
50350 		};
50351 		int _si_pad[32];
50352 	};
50353 };
50354 
50355 typedef double elf_fpreg_t;
50356 
50357 typedef elf_fpreg_t elf_fpregset_t[33];
50358 
50359 struct sigcontext {
50360 	long unsigned int _unused[4];
50361 	int signal;
50362 	int _pad0;
50363 	long unsigned int handler;
50364 	long unsigned int oldmask;
50365 	struct user_pt_regs *regs;
50366 	elf_gregset_t gp_regs;
50367 	elf_fpregset_t fp_regs;
50368 	elf_vrreg_t *v_regs;
50369 	long int vmx_reserve[101];
50370 };
50371 
50372 struct ucontext {
50373 	long unsigned int uc_flags;
50374 	struct ucontext *uc_link;
50375 	stack_t uc_stack;
50376 	sigset_t uc_sigmask;
50377 	sigset_t __unused[15];
50378 	struct sigcontext uc_mcontext;
50379 };
50380 
50381 struct signal_frame_64 {
50382 	char dummy[128];
50383 	struct ucontext uc;
50384 	long unsigned int unused[2];
50385 	unsigned int tramp[6];
50386 	struct siginfo *pinfo;
50387 	void *puc;
50388 	struct siginfo info;
50389 	char abigap[288];
50390 };
50391 
50392 enum {
50393 	PM_CYC_ALT = 65776,
50394 	PM_CYC_INST_CMPL = 65778,
50395 	PM_FLOP_CMPL = 65780,
50396 	PM_L1_ITLB_MISS = 65782,
50397 	PM_NO_INST_AVAIL = 65784,
50398 	PM_LD_CMPL = 65788,
50399 	PM_INST_CMPL_ALT = 65790,
50400 	PM_ST_CMPL = 131312,
50401 	PM_INST_DISP___2 = 131314,
50402 	PM_RUN_CYC___2 = 131316,
50403 	PM_L1_DTLB_RELOAD = 131318,
50404 	PM_BR_TAKEN_CMPL = 131322,
50405 	PM_L1_ICACHE_MISS___2 = 131324,
50406 	PM_L1_RELOAD_FROM_MEM = 131326,
50407 	PM_ST_MISS_L1___2 = 196848,
50408 	PM_INST_DISP_ALT___2 = 196850,
50409 	PM_BR_MISPREDICT = 196854,
50410 	PM_DTLB_MISS___2 = 196860,
50411 	PM_DATA_FROM_L3MISS___2 = 196862,
50412 	PM_LD_MISS_L1___2 = 262384,
50413 	PM_CYC_INST_DISP = 262386,
50414 	PM_BR_MPRED_CMPL___2 = 262390,
50415 	PM_RUN_INST_CMPL___2 = 262394,
50416 	PM_ITLB_MISS___2 = 262396,
50417 	PM_LD_NOT_CACHED = 262398,
50418 	PM_INST_CMPL___2 = 327930,
50419 	PM_CYC___2 = 393460,
50420 };
50421 
50422 struct waitid_info {
50423 	pid_t pid;
50424 	uid_t uid;
50425 	int status;
50426 	int cause;
50427 };
50428 
50429 struct wait_opts {
50430 	enum pid_type wo_type;
50431 	int wo_flags;
50432 	struct pid *wo_pid;
50433 	struct waitid_info *wo_info;
50434 	int wo_stat;
50435 	struct rusage *wo_rusage;
50436 	wait_queue_entry_t child_wait;
50437 	int notask_error;
50438 };
50439 
50440 enum {
50441 	IRQTF_RUNTHREAD = 0,
50442 	IRQTF_WARNED = 1,
50443 	IRQTF_AFFINITY = 2,
50444 	IRQTF_FORCED_THREAD = 3,
50445 	IRQTF_READY = 4,
50446 };
50447 
50448 struct io_tlb_area {
50449 	long unsigned int used;
50450 	unsigned int index;
50451 	spinlock_t lock;
50452 };
50453 
50454 struct io_tlb_slot {
50455 	phys_addr_t orig_addr;
50456 	size_t alloc_size;
50457 	unsigned int list;
50458 };
50459 
50460 struct trace_event_raw_swiotlb_bounced {
50461 	struct trace_entry ent;
50462 	u32 __data_loc_dev_name;
50463 	u64 dma_mask;
50464 	dma_addr_t dev_addr;
50465 	size_t size;
50466 	bool force;
50467 	char __data[0];
50468 };
50469 
50470 struct trace_event_data_offsets_swiotlb_bounced {
50471 	u32 dev_name;
50472 };
50473 
50474 typedef void (*btf_trace_swiotlb_bounced)(void *, struct device *, dma_addr_t, size_t);
50475 
50476 typedef __kernel_timer_t timer_t;
50477 
50478 struct __kernel_timex_timeval {
50479 	__kernel_time64_t tv_sec;
50480 	long long int tv_usec;
50481 };
50482 
50483 struct __kernel_timex {
50484 	unsigned int modes;
50485 	long long int offset;
50486 	long long int freq;
50487 	long long int maxerror;
50488 	long long int esterror;
50489 	int status;
50490 	long long int constant;
50491 	long long int precision;
50492 	long long int tolerance;
50493 	struct __kernel_timex_timeval time;
50494 	long long int tick;
50495 	long long int ppsfreq;
50496 	long long int jitter;
50497 	int shift;
50498 	long long int stabil;
50499 	long long int jitcnt;
50500 	long long int calcnt;
50501 	long long int errcnt;
50502 	long long int stbcnt;
50503 	int tai;
50504 	long: 64;
50505 	long: 64;
50506 	long: 64;
50507 	long: 64;
50508 	long: 64;
50509 };
50510 
50511 struct sigqueue {
50512 	struct list_head list;
50513 	int flags;
50514 	kernel_siginfo_t info;
50515 	struct ucounts *ucounts;
50516 };
50517 
50518 struct cpu_timer {
50519 	struct timerqueue_node node;
50520 	struct timerqueue_head *head;
50521 	struct pid *pid;
50522 	struct list_head elist;
50523 	int firing;
50524 };
50525 
50526 struct k_clock;
50527 
50528 struct k_itimer {
50529 	struct list_head list;
50530 	struct hlist_node t_hash;
50531 	spinlock_t it_lock;
50532 	const struct k_clock *kclock;
50533 	clockid_t it_clock;
50534 	timer_t it_id;
50535 	int it_active;
50536 	s64 it_overrun;
50537 	s64 it_overrun_last;
50538 	int it_requeue_pending;
50539 	int it_sigev_notify;
50540 	ktime_t it_interval;
50541 	struct signal_struct *it_signal;
50542 	union {
50543 		struct pid *it_pid;
50544 		struct task_struct *it_process;
50545 	};
50546 	struct sigqueue *sigq;
50547 	union {
50548 		struct {
50549 			struct hrtimer timer;
50550 		} real;
50551 		struct cpu_timer cpu;
50552 		struct {
50553 			struct alarm alarmtimer;
50554 		} alarm;
50555 	} it;
50556 	struct callback_head rcu;
50557 };
50558 
50559 struct k_clock {
50560 	int (*clock_getres)(const clockid_t, struct timespec64 *);
50561 	int (*clock_set)(const clockid_t, const struct timespec64 *);
50562 	int (*clock_get_timespec)(const clockid_t, struct timespec64 *);
50563 	ktime_t (*clock_get_ktime)(const clockid_t);
50564 	int (*clock_adj)(const clockid_t, struct __kernel_timex *);
50565 	int (*timer_create)(struct k_itimer *);
50566 	int (*nsleep)(const clockid_t, int, const struct timespec64 *);
50567 	int (*timer_set)(struct k_itimer *, int, struct itimerspec64 *, struct itimerspec64 *);
50568 	int (*timer_del)(struct k_itimer *);
50569 	void (*timer_get)(struct k_itimer *, struct itimerspec64 *);
50570 	void (*timer_rearm)(struct k_itimer *);
50571 	s64 (*timer_forward)(struct k_itimer *, ktime_t);
50572 	ktime_t (*timer_remaining)(struct k_itimer *, ktime_t);
50573 	int (*timer_try_to_cancel)(struct k_itimer *);
50574 	void (*timer_arm)(struct k_itimer *, ktime_t, bool, bool);
50575 	void (*timer_wait_running)(struct k_itimer *);
50576 };
50577 
50578 struct class_interface {
50579 	struct list_head node;
50580 	struct class *class;
50581 	int (*add_dev)(struct device *, struct class_interface *);
50582 	void (*remove_dev)(struct device *, struct class_interface *);
50583 };
50584 
50585 struct platform_device_info {
50586 	struct device *parent;
50587 	struct fwnode_handle *fwnode;
50588 	bool of_node_reused;
50589 	const char *name;
50590 	int id;
50591 	const struct resource *res;
50592 	unsigned int num_res;
50593 	const void *data;
50594 	size_t size_data;
50595 	u64 dma_mask;
50596 	const struct property_entry *properties;
50597 };
50598 
50599 struct trace_event_raw_alarmtimer_suspend {
50600 	struct trace_entry ent;
50601 	s64 expires;
50602 	unsigned char alarm_type;
50603 	char __data[0];
50604 };
50605 
50606 struct trace_event_raw_alarm_class {
50607 	struct trace_entry ent;
50608 	void *alarm;
50609 	unsigned char alarm_type;
50610 	s64 expires;
50611 	s64 now;
50612 	char __data[0];
50613 };
50614 
50615 struct trace_event_data_offsets_alarmtimer_suspend {};
50616 
50617 struct trace_event_data_offsets_alarm_class {};
50618 
50619 typedef void (*btf_trace_alarmtimer_suspend)(void *, ktime_t, int);
50620 
50621 typedef void (*btf_trace_alarmtimer_fired)(void *, struct alarm *, ktime_t);
50622 
50623 typedef void (*btf_trace_alarmtimer_start)(void *, struct alarm *, ktime_t);
50624 
50625 typedef void (*btf_trace_alarmtimer_cancel)(void *, struct alarm *, ktime_t);
50626 
50627 struct alarm_base {
50628 	spinlock_t lock;
50629 	struct timerqueue_head timerqueue;
50630 	ktime_t (*get_ktime)();
50631 	void (*get_timespec)(struct timespec64 *);
50632 	clockid_t base_clockid;
50633 };
50634 
50635 struct dma_chan___2 {
50636 	int lock;
50637 	const char *device_id;
50638 };
50639 
50640 enum freezer_state_flags {
50641 	CGROUP_FREEZER_ONLINE = 1,
50642 	CGROUP_FREEZING_SELF = 2,
50643 	CGROUP_FREEZING_PARENT = 4,
50644 	CGROUP_FROZEN = 8,
50645 	CGROUP_FREEZING = 6,
50646 };
50647 
50648 struct freezer {
50649 	struct cgroup_subsys_state css;
50650 	unsigned int state;
50651 };
50652 
50653 struct trace_bprintk_fmt {
50654 	struct list_head list;
50655 	const char *fmt;
50656 };
50657 
50658 struct trace_probe_log {
50659 	const char *subsystem;
50660 	const char **argv;
50661 	int argc;
50662 	int index;
50663 };
50664 
50665 struct pcpu_freelist_node;
50666 
50667 struct pcpu_freelist_head {
50668 	struct pcpu_freelist_node *first;
50669 	raw_spinlock_t lock;
50670 };
50671 
50672 struct pcpu_freelist_node {
50673 	struct pcpu_freelist_node *next;
50674 };
50675 
50676 struct pcpu_freelist {
50677 	struct pcpu_freelist_head *freelist;
50678 	struct pcpu_freelist_head extralist;
50679 };
50680 
50681 enum bpf_lru_list_type {
50682 	BPF_LRU_LIST_T_ACTIVE = 0,
50683 	BPF_LRU_LIST_T_INACTIVE = 1,
50684 	BPF_LRU_LIST_T_FREE = 2,
50685 	BPF_LRU_LOCAL_LIST_T_FREE = 3,
50686 	BPF_LRU_LOCAL_LIST_T_PENDING = 4,
50687 };
50688 
50689 struct bpf_lru_node {
50690 	struct list_head list;
50691 	u16 cpu;
50692 	u8 type;
50693 	u8 ref;
50694 };
50695 
50696 struct bpf_lru_list {
50697 	struct list_head lists[3];
50698 	unsigned int counts[2];
50699 	struct list_head *next_inactive_rotation;
50700 	long: 64;
50701 	long: 64;
50702 	long: 64;
50703 	long: 64;
50704 	long: 64;
50705 	long: 64;
50706 	long: 64;
50707 	long: 64;
50708 	raw_spinlock_t lock;
50709 	long: 64;
50710 	long: 64;
50711 	long: 64;
50712 	long: 64;
50713 	long: 64;
50714 	long: 64;
50715 	long: 64;
50716 	long: 64;
50717 	long: 64;
50718 	long: 64;
50719 	long: 64;
50720 	long: 64;
50721 	long: 64;
50722 	long: 64;
50723 	long: 64;
50724 };
50725 
50726 struct bpf_lru_locallist {
50727 	struct list_head lists[2];
50728 	u16 next_steal;
50729 	raw_spinlock_t lock;
50730 };
50731 
50732 struct bpf_common_lru {
50733 	struct bpf_lru_list lru_list;
50734 	struct bpf_lru_locallist *local_list;
50735 	long: 64;
50736 	long: 64;
50737 	long: 64;
50738 	long: 64;
50739 	long: 64;
50740 	long: 64;
50741 	long: 64;
50742 	long: 64;
50743 	long: 64;
50744 	long: 64;
50745 	long: 64;
50746 	long: 64;
50747 	long: 64;
50748 	long: 64;
50749 	long: 64;
50750 };
50751 
50752 typedef bool (*del_from_htab_func)(void *, struct bpf_lru_node *);
50753 
50754 struct bpf_lru {
50755 	union {
50756 		struct bpf_common_lru common_lru;
50757 		struct bpf_lru_list *percpu_lru;
50758 	};
50759 	del_from_htab_func del_from_htab;
50760 	void *del_arg;
50761 	unsigned int hash_offset;
50762 	unsigned int nr_scans;
50763 	bool percpu;
50764 	long: 64;
50765 	long: 64;
50766 	long: 64;
50767 	long: 64;
50768 	long: 64;
50769 	long: 64;
50770 	long: 64;
50771 	long: 64;
50772 	long: 64;
50773 	long: 64;
50774 	long: 64;
50775 	long: 64;
50776 };
50777 
50778 enum {
50779 	BPF_F_NO_PREALLOC = 1,
50780 	BPF_F_NO_COMMON_LRU = 2,
50781 	BPF_F_NUMA_NODE = 4,
50782 	BPF_F_RDONLY = 8,
50783 	BPF_F_WRONLY = 16,
50784 	BPF_F_STACK_BUILD_ID = 32,
50785 	BPF_F_ZERO_SEED = 64,
50786 	BPF_F_RDONLY_PROG = 128,
50787 	BPF_F_WRONLY_PROG = 256,
50788 	BPF_F_CLONE = 512,
50789 	BPF_F_MMAPABLE = 1024,
50790 	BPF_F_PRESERVE_ELEMS = 2048,
50791 	BPF_F_INNER_MAP = 4096,
50792 };
50793 
50794 struct bpf_bloom_filter {
50795 	struct bpf_map map;
50796 	u32 bitset_mask;
50797 	u32 hash_seed;
50798 	u32 aligned_u32_count;
50799 	u32 nr_hash_funcs;
50800 	long unsigned int bitset[0];
50801 	long: 64;
50802 	long: 64;
50803 	long: 64;
50804 	long: 64;
50805 	long: 64;
50806 	long: 64;
50807 	long: 64;
50808 	long: 64;
50809 	long: 64;
50810 	long: 64;
50811 	long: 64;
50812 	long: 64;
50813 	long: 64;
50814 	long: 64;
50815 };
50816 
50817 enum bpf_text_poke_type {
50818 	BPF_MOD_CALL = 0,
50819 	BPF_MOD_JUMP = 1,
50820 };
50821 
50822 enum perf_type_id {
50823 	PERF_TYPE_HARDWARE = 0,
50824 	PERF_TYPE_SOFTWARE = 1,
50825 	PERF_TYPE_TRACEPOINT = 2,
50826 	PERF_TYPE_HW_CACHE = 3,
50827 	PERF_TYPE_RAW = 4,
50828 	PERF_TYPE_BREAKPOINT = 5,
50829 	PERF_TYPE_MAX = 6,
50830 };
50831 
50832 enum perf_event_sample_format {
50833 	PERF_SAMPLE_IP = 1ULL,
50834 	PERF_SAMPLE_TID = 2ULL,
50835 	PERF_SAMPLE_TIME = 4ULL,
50836 	PERF_SAMPLE_ADDR = 8ULL,
50837 	PERF_SAMPLE_READ = 16ULL,
50838 	PERF_SAMPLE_CALLCHAIN = 32ULL,
50839 	PERF_SAMPLE_ID = 64ULL,
50840 	PERF_SAMPLE_CPU = 128ULL,
50841 	PERF_SAMPLE_PERIOD = 256ULL,
50842 	PERF_SAMPLE_STREAM_ID = 512ULL,
50843 	PERF_SAMPLE_RAW = 1024ULL,
50844 	PERF_SAMPLE_BRANCH_STACK = 2048ULL,
50845 	PERF_SAMPLE_REGS_USER = 4096ULL,
50846 	PERF_SAMPLE_STACK_USER = 8192ULL,
50847 	PERF_SAMPLE_WEIGHT = 16384ULL,
50848 	PERF_SAMPLE_DATA_SRC = 32768ULL,
50849 	PERF_SAMPLE_IDENTIFIER = 65536ULL,
50850 	PERF_SAMPLE_TRANSACTION = 131072ULL,
50851 	PERF_SAMPLE_REGS_INTR = 262144ULL,
50852 	PERF_SAMPLE_PHYS_ADDR = 524288ULL,
50853 	PERF_SAMPLE_AUX = 1048576ULL,
50854 	PERF_SAMPLE_CGROUP = 2097152ULL,
50855 	PERF_SAMPLE_DATA_PAGE_SIZE = 4194304ULL,
50856 	PERF_SAMPLE_CODE_PAGE_SIZE = 8388608ULL,
50857 	PERF_SAMPLE_WEIGHT_STRUCT = 16777216ULL,
50858 	PERF_SAMPLE_MAX = 33554432ULL,
50859 	__PERF_SAMPLE_CALLCHAIN_EARLY = 9223372036854775808ULL,
50860 };
50861 
50862 enum {
50863 	HW_BREAKPOINT_EMPTY = 0,
50864 	HW_BREAKPOINT_R = 1,
50865 	HW_BREAKPOINT_W = 2,
50866 	HW_BREAKPOINT_RW = 3,
50867 	HW_BREAKPOINT_X = 4,
50868 	HW_BREAKPOINT_INVALID = 7,
50869 };
50870 
50871 enum bp_type_idx {
50872 	TYPE_INST = 0,
50873 	TYPE_DATA = 1,
50874 	TYPE_MAX = 2,
50875 };
50876 
50877 struct bp_cpuinfo {
50878 	unsigned int cpu_pinned;
50879 	unsigned int *tsk_pinned;
50880 	unsigned int flexible;
50881 };
50882 
50883 struct bp_busy_slots {
50884 	unsigned int pinned;
50885 	unsigned int flexible;
50886 };
50887 
50888 enum slab_state {
50889 	DOWN = 0,
50890 	PARTIAL = 1,
50891 	PARTIAL_NODE = 2,
50892 	UP = 3,
50893 	FULL = 4,
50894 };
50895 
50896 struct kmalloc_info_struct {
50897 	const char *name[3];
50898 	unsigned int size;
50899 };
50900 
50901 struct slabinfo {
50902 	long unsigned int active_objs;
50903 	long unsigned int num_objs;
50904 	long unsigned int active_slabs;
50905 	long unsigned int num_slabs;
50906 	long unsigned int shared_avail;
50907 	unsigned int limit;
50908 	unsigned int batchcount;
50909 	unsigned int shared;
50910 	unsigned int objects_per_slab;
50911 	unsigned int cache_order;
50912 };
50913 
50914 struct kmem_obj_info {
50915 	void *kp_ptr;
50916 	struct slab *kp_slab;
50917 	void *kp_objp;
50918 	long unsigned int kp_data_offset;
50919 	struct kmem_cache *kp_slab_cache;
50920 	void *kp_ret;
50921 	void *kp_stack[16];
50922 	void *kp_free_stack[16];
50923 };
50924 
50925 enum compact_priority {
50926 	COMPACT_PRIO_SYNC_FULL = 0,
50927 	MIN_COMPACT_PRIORITY = 0,
50928 	COMPACT_PRIO_SYNC_LIGHT = 1,
50929 	MIN_COMPACT_COSTLY_PRIORITY = 1,
50930 	DEF_COMPACT_PRIORITY = 1,
50931 	COMPACT_PRIO_ASYNC = 2,
50932 	INIT_COMPACT_PRIORITY = 2,
50933 };
50934 
50935 enum compact_result {
50936 	COMPACT_NOT_SUITABLE_ZONE = 0,
50937 	COMPACT_SKIPPED = 1,
50938 	COMPACT_DEFERRED = 2,
50939 	COMPACT_NO_SUITABLE_PAGE = 3,
50940 	COMPACT_CONTINUE = 4,
50941 	COMPACT_COMPLETE = 5,
50942 	COMPACT_PARTIAL_SKIPPED = 6,
50943 	COMPACT_CONTENDED = 7,
50944 	COMPACT_SUCCESS = 8,
50945 };
50946 
50947 struct trace_event_raw_kmem_alloc {
50948 	struct trace_entry ent;
50949 	long unsigned int call_site;
50950 	const void *ptr;
50951 	size_t bytes_req;
50952 	size_t bytes_alloc;
50953 	long unsigned int gfp_flags;
50954 	bool accounted;
50955 	char __data[0];
50956 };
50957 
50958 struct trace_event_raw_kmem_alloc_node {
50959 	struct trace_entry ent;
50960 	long unsigned int call_site;
50961 	const void *ptr;
50962 	size_t bytes_req;
50963 	size_t bytes_alloc;
50964 	long unsigned int gfp_flags;
50965 	int node;
50966 	bool accounted;
50967 	char __data[0];
50968 };
50969 
50970 struct trace_event_raw_kfree {
50971 	struct trace_entry ent;
50972 	long unsigned int call_site;
50973 	const void *ptr;
50974 	char __data[0];
50975 };
50976 
50977 struct trace_event_raw_kmem_cache_free {
50978 	struct trace_entry ent;
50979 	long unsigned int call_site;
50980 	const void *ptr;
50981 	u32 __data_loc_name;
50982 	char __data[0];
50983 };
50984 
50985 struct trace_event_raw_mm_page_free {
50986 	struct trace_entry ent;
50987 	long unsigned int pfn;
50988 	unsigned int order;
50989 	char __data[0];
50990 };
50991 
50992 struct trace_event_raw_mm_page_free_batched {
50993 	struct trace_entry ent;
50994 	long unsigned int pfn;
50995 	char __data[0];
50996 };
50997 
50998 struct trace_event_raw_mm_page_alloc {
50999 	struct trace_entry ent;
51000 	long unsigned int pfn;
51001 	unsigned int order;
51002 	long unsigned int gfp_flags;
51003 	int migratetype;
51004 	char __data[0];
51005 };
51006 
51007 struct trace_event_raw_mm_page {
51008 	struct trace_entry ent;
51009 	long unsigned int pfn;
51010 	unsigned int order;
51011 	int migratetype;
51012 	int percpu_refill;
51013 	char __data[0];
51014 };
51015 
51016 struct trace_event_raw_mm_page_pcpu_drain {
51017 	struct trace_entry ent;
51018 	long unsigned int pfn;
51019 	unsigned int order;
51020 	int migratetype;
51021 	char __data[0];
51022 };
51023 
51024 struct trace_event_raw_mm_page_alloc_extfrag {
51025 	struct trace_entry ent;
51026 	long unsigned int pfn;
51027 	int alloc_order;
51028 	int fallback_order;
51029 	int alloc_migratetype;
51030 	int fallback_migratetype;
51031 	int change_ownership;
51032 	char __data[0];
51033 };
51034 
51035 struct trace_event_raw_rss_stat {
51036 	struct trace_entry ent;
51037 	unsigned int mm_id;
51038 	unsigned int curr;
51039 	int member;
51040 	long int size;
51041 	char __data[0];
51042 };
51043 
51044 struct trace_event_data_offsets_kmem_alloc {};
51045 
51046 struct trace_event_data_offsets_kmem_alloc_node {};
51047 
51048 struct trace_event_data_offsets_kfree {};
51049 
51050 struct trace_event_data_offsets_kmem_cache_free {
51051 	u32 name;
51052 };
51053 
51054 struct trace_event_data_offsets_mm_page_free {};
51055 
51056 struct trace_event_data_offsets_mm_page_free_batched {};
51057 
51058 struct trace_event_data_offsets_mm_page_alloc {};
51059 
51060 struct trace_event_data_offsets_mm_page {};
51061 
51062 struct trace_event_data_offsets_mm_page_pcpu_drain {};
51063 
51064 struct trace_event_data_offsets_mm_page_alloc_extfrag {};
51065 
51066 struct trace_event_data_offsets_rss_stat {};
51067 
51068 typedef void (*btf_trace_kmalloc)(void *, long unsigned int, const void *, struct kmem_cache *, size_t, size_t, gfp_t);
51069 
51070 typedef void (*btf_trace_kmem_cache_alloc)(void *, long unsigned int, const void *, struct kmem_cache *, size_t, size_t, gfp_t);
51071 
51072 typedef void (*btf_trace_kmalloc_node)(void *, long unsigned int, const void *, struct kmem_cache *, size_t, size_t, gfp_t, int);
51073 
51074 typedef void (*btf_trace_kmem_cache_alloc_node)(void *, long unsigned int, const void *, struct kmem_cache *, size_t, size_t, gfp_t, int);
51075 
51076 typedef void (*btf_trace_kfree)(void *, long unsigned int, const void *);
51077 
51078 typedef void (*btf_trace_kmem_cache_free)(void *, long unsigned int, const void *, const char *);
51079 
51080 typedef void (*btf_trace_mm_page_free)(void *, struct page *, unsigned int);
51081 
51082 typedef void (*btf_trace_mm_page_free_batched)(void *, struct page *);
51083 
51084 typedef void (*btf_trace_mm_page_alloc)(void *, struct page *, unsigned int, gfp_t, int);
51085 
51086 typedef void (*btf_trace_mm_page_alloc_zone_locked)(void *, struct page *, unsigned int, int, int);
51087 
51088 typedef void (*btf_trace_mm_page_pcpu_drain)(void *, struct page *, unsigned int, int);
51089 
51090 typedef void (*btf_trace_mm_page_alloc_extfrag)(void *, struct page *, int, int, int, int);
51091 
51092 typedef void (*btf_trace_rss_stat)(void *, struct mm_struct *, int, long int);
51093 
51094 typedef long unsigned int pte_marker;
51095 
51096 typedef struct {
51097 	__be64 pdbe;
51098 } hugepd_t;
51099 
51100 typedef unsigned int zap_flags_t;
51101 
51102 enum string_size_units {
51103 	STRING_UNITS_10 = 0,
51104 	STRING_UNITS_2 = 1,
51105 };
51106 
51107 enum {
51108 	SUBPAGE_INDEX_SUBPOOL = 1,
51109 	__NR_USED_SUBPAGE = 2,
51110 };
51111 
51112 struct resv_map {
51113 	struct kref refs;
51114 	spinlock_t lock;
51115 	struct list_head regions;
51116 	long int adds_in_progress;
51117 	struct list_head region_cache;
51118 	long int region_cache_count;
51119 };
51120 
51121 struct file_region {
51122 	struct list_head link;
51123 	long int from;
51124 	long int to;
51125 };
51126 
51127 enum hugetlb_page_flags {
51128 	HPG_restore_reserve = 0,
51129 	HPG_migratable = 1,
51130 	HPG_temporary = 2,
51131 	HPG_freed = 3,
51132 	HPG_vmemmap_optimized = 4,
51133 	HPG_raw_hwp_unreliable = 5,
51134 	__NR_HPAGEFLAGS = 6,
51135 };
51136 
51137 struct huge_bootmem_page {
51138 	struct list_head list;
51139 	struct hstate *hstate;
51140 };
51141 
51142 enum vma_resv_mode {
51143 	VMA_NEEDS_RESV = 0,
51144 	VMA_COMMIT_RESV = 1,
51145 	VMA_END_RESV = 2,
51146 	VMA_ADD_RESV = 3,
51147 	VMA_DEL_RESV = 4,
51148 };
51149 
51150 struct node_hstate {
51151 	struct kobject *hugepages_kobj;
51152 	struct kobject *hstate_kobjs[15];
51153 };
51154 
51155 struct hugetlb_cgroup;
51156 
51157 enum inode_i_mutex_lock_class {
51158 	I_MUTEX_NORMAL = 0,
51159 	I_MUTEX_PARENT = 1,
51160 	I_MUTEX_CHILD = 2,
51161 	I_MUTEX_XATTR = 3,
51162 	I_MUTEX_NONDIR2 = 4,
51163 	I_MUTEX_PARENT2 = 5,
51164 };
51165 
51166 struct pseudo_fs_context {
51167 	const struct super_operations *ops;
51168 	const struct xattr_handler **xattr;
51169 	const struct dentry_operations *dops;
51170 	long unsigned int magic;
51171 };
51172 
51173 typedef __kernel_rwf_t rwf_t;
51174 
51175 struct splice_desc {
51176 	size_t total_len;
51177 	unsigned int len;
51178 	unsigned int flags;
51179 	union {
51180 		void *userptr;
51181 		struct file *file;
51182 		void *data;
51183 	} u;
51184 	loff_t pos;
51185 	loff_t *opos;
51186 	size_t num_spliced;
51187 	bool need_wakeup;
51188 };
51189 
51190 struct partial_page {
51191 	unsigned int offset;
51192 	unsigned int len;
51193 	long unsigned int private;
51194 };
51195 
51196 struct splice_pipe_desc {
51197 	struct page **pages;
51198 	struct partial_page *partial;
51199 	int nr_pages;
51200 	unsigned int nr_pages_max;
51201 	const struct pipe_buf_operations *ops;
51202 	void (*spd_release)(struct splice_pipe_desc *, unsigned int);
51203 };
51204 
51205 typedef int splice_actor(struct pipe_inode_info *, struct pipe_buffer *, struct splice_desc *);
51206 
51207 typedef int splice_direct_actor(struct pipe_inode_info *, struct splice_desc *);
51208 
51209 struct dnotify_struct {
51210 	struct dnotify_struct *dn_next;
51211 	__u32 dn_mask;
51212 	int dn_fd;
51213 	struct file *dn_filp;
51214 	fl_owner_t dn_owner;
51215 };
51216 
51217 struct fsnotify_group;
51218 
51219 struct fsnotify_iter_info;
51220 
51221 struct fsnotify_mark;
51222 
51223 struct fsnotify_event;
51224 
51225 struct fsnotify_ops {
51226 	int (*handle_event)(struct fsnotify_group *, u32, const void *, int, struct inode *, const struct qstr *, u32, struct fsnotify_iter_info *);
51227 	int (*handle_inode_event)(struct fsnotify_mark *, u32, struct inode *, struct inode *, const struct qstr *, u32);
51228 	void (*free_group_priv)(struct fsnotify_group *);
51229 	void (*freeing_mark)(struct fsnotify_mark *, struct fsnotify_group *);
51230 	void (*free_event)(struct fsnotify_group *, struct fsnotify_event *);
51231 	void (*free_mark)(struct fsnotify_mark *);
51232 };
51233 
51234 struct inotify_group_private_data {
51235 	spinlock_t idr_lock;
51236 	struct idr idr;
51237 	struct ucounts *ucounts;
51238 };
51239 
51240 struct fsnotify_group {
51241 	const struct fsnotify_ops *ops;
51242 	refcount_t refcnt;
51243 	spinlock_t notification_lock;
51244 	struct list_head notification_list;
51245 	wait_queue_head_t notification_waitq;
51246 	unsigned int q_len;
51247 	unsigned int max_events;
51248 	unsigned int priority;
51249 	bool shutdown;
51250 	int flags;
51251 	unsigned int owner_flags;
51252 	struct mutex mark_mutex;
51253 	atomic_t user_waits;
51254 	struct list_head marks_list;
51255 	struct fasync_struct *fsn_fa;
51256 	struct fsnotify_event *overflow_event;
51257 	struct mem_cgroup *memcg;
51258 	union {
51259 		void *private;
51260 		struct inotify_group_private_data inotify_data;
51261 	};
51262 };
51263 
51264 struct fsnotify_iter_info {
51265 	struct fsnotify_mark *marks[5];
51266 	struct fsnotify_group *current_group;
51267 	unsigned int report_mask;
51268 	int srcu_idx;
51269 };
51270 
51271 struct fsnotify_mark {
51272 	__u32 mask;
51273 	refcount_t refcnt;
51274 	struct fsnotify_group *group;
51275 	struct list_head g_list;
51276 	spinlock_t lock;
51277 	struct hlist_node obj_list;
51278 	struct fsnotify_mark_connector *connector;
51279 	__u32 ignore_mask;
51280 	unsigned int flags;
51281 };
51282 
51283 struct fsnotify_event {
51284 	struct list_head list;
51285 };
51286 
51287 enum fsnotify_obj_type {
51288 	FSNOTIFY_OBJ_TYPE_ANY = -1,
51289 	FSNOTIFY_OBJ_TYPE_INODE = 0,
51290 	FSNOTIFY_OBJ_TYPE_VFSMOUNT = 1,
51291 	FSNOTIFY_OBJ_TYPE_SB = 2,
51292 	FSNOTIFY_OBJ_TYPE_COUNT = 3,
51293 	FSNOTIFY_OBJ_TYPE_DETACHED = 3,
51294 };
51295 
51296 struct dnotify_mark {
51297 	struct fsnotify_mark fsn_mark;
51298 	struct dnotify_struct *dn;
51299 };
51300 
51301 typedef struct siginfo siginfo_t;
51302 
51303 struct elf64_note {
51304 	Elf64_Word n_namesz;
51305 	Elf64_Word n_descsz;
51306 	Elf64_Word n_type;
51307 };
51308 
51309 struct core_vma_metadata;
51310 
51311 struct coredump_params {
51312 	const kernel_siginfo_t *siginfo;
51313 	struct pt_regs *regs;
51314 	struct file *file;
51315 	long unsigned int limit;
51316 	long unsigned int mm_flags;
51317 	loff_t written;
51318 	loff_t pos;
51319 	loff_t to_skip;
51320 	int vma_count;
51321 	size_t vma_data_size;
51322 	struct core_vma_metadata *vma_meta;
51323 };
51324 
51325 enum {
51326 	PER_LINUX = 0,
51327 	PER_LINUX_32BIT = 8388608,
51328 	PER_LINUX_FDPIC = 524288,
51329 	PER_SVR4 = 68157441,
51330 	PER_SVR3 = 83886082,
51331 	PER_SCOSVR3 = 117440515,
51332 	PER_OSR5 = 100663299,
51333 	PER_WYSEV386 = 83886084,
51334 	PER_ISCR4 = 67108869,
51335 	PER_BSD = 6,
51336 	PER_SUNOS = 67108870,
51337 	PER_XENIX = 83886087,
51338 	PER_LINUX32 = 8,
51339 	PER_LINUX32_3GB = 134217736,
51340 	PER_IRIX32 = 67108873,
51341 	PER_IRIXN32 = 67108874,
51342 	PER_IRIX64 = 67108875,
51343 	PER_RISCOS = 12,
51344 	PER_SOLARIS = 67108877,
51345 	PER_UW7 = 68157454,
51346 	PER_OSF4 = 15,
51347 	PER_HPUX = 16,
51348 	PER_MASK = 255,
51349 };
51350 
51351 struct elf_prpsinfo {
51352 	char pr_state;
51353 	char pr_sname;
51354 	char pr_zomb;
51355 	char pr_nice;
51356 	long unsigned int pr_flag;
51357 	__kernel_uid_t pr_uid;
51358 	__kernel_gid_t pr_gid;
51359 	pid_t pr_pid;
51360 	pid_t pr_ppid;
51361 	pid_t pr_pgrp;
51362 	pid_t pr_sid;
51363 	char pr_fname[16];
51364 	char pr_psargs[80];
51365 };
51366 
51367 struct core_vma_metadata {
51368 	long unsigned int start;
51369 	long unsigned int end;
51370 	long unsigned int flags;
51371 	long unsigned int dump_size;
51372 	long unsigned int pgoff;
51373 	struct file *file;
51374 };
51375 
51376 struct arch_elf_state {};
51377 
51378 struct memelfnote {
51379 	const char *name;
51380 	int type;
51381 	unsigned int datasz;
51382 	void *data;
51383 };
51384 
51385 struct user_regset_view {
51386 	const char *name;
51387 	const struct user_regset *regsets;
51388 	unsigned int n;
51389 	u32 e_flags;
51390 	u16 e_machine;
51391 	u8 ei_osabi;
51392 };
51393 
51394 struct elf_thread_core_info {
51395 	struct elf_thread_core_info *next;
51396 	struct task_struct *task;
51397 	struct elf_prstatus prstatus;
51398 	struct memelfnote notes[0];
51399 };
51400 
51401 struct elf_note_info {
51402 	struct elf_thread_core_info *thread;
51403 	struct memelfnote psinfo;
51404 	struct memelfnote signote;
51405 	struct memelfnote auxv;
51406 	struct memelfnote files;
51407 	siginfo_t csigdata;
51408 	size_t size;
51409 	int thread_notes;
51410 };
51411 
51412 struct iomap_dio_ops {
51413 	int (*end_io)(struct kiocb *, ssize_t, int, unsigned int);
51414 	void (*submit_io)(const struct iomap_iter *, struct bio *, loff_t);
51415 	struct bio_set *bio_set;
51416 };
51417 
51418 struct iomap_dio {
51419 	struct kiocb *iocb;
51420 	const struct iomap_dio_ops *dops;
51421 	loff_t i_size;
51422 	loff_t size;
51423 	atomic_t ref;
51424 	unsigned int flags;
51425 	int error;
51426 	size_t done_before;
51427 	bool wait_for_completion;
51428 	union {
51429 		struct {
51430 			struct iov_iter *iter;
51431 			struct task_struct *waiter;
51432 			struct bio *poll_bio;
51433 		} submit;
51434 		struct {
51435 			struct work_struct work;
51436 		} aio;
51437 	};
51438 };
51439 
51440 struct ext4_map_blocks {
51441 	ext4_fsblk_t m_pblk;
51442 	ext4_lblk_t m_lblk;
51443 	unsigned int m_len;
51444 	unsigned int m_flags;
51445 };
51446 
51447 enum {
51448 	EXT4_INODE_SECRM = 0,
51449 	EXT4_INODE_UNRM = 1,
51450 	EXT4_INODE_COMPR = 2,
51451 	EXT4_INODE_SYNC = 3,
51452 	EXT4_INODE_IMMUTABLE = 4,
51453 	EXT4_INODE_APPEND = 5,
51454 	EXT4_INODE_NODUMP = 6,
51455 	EXT4_INODE_NOATIME = 7,
51456 	EXT4_INODE_DIRTY = 8,
51457 	EXT4_INODE_COMPRBLK = 9,
51458 	EXT4_INODE_NOCOMPR = 10,
51459 	EXT4_INODE_ENCRYPT = 11,
51460 	EXT4_INODE_INDEX = 12,
51461 	EXT4_INODE_IMAGIC = 13,
51462 	EXT4_INODE_JOURNAL_DATA = 14,
51463 	EXT4_INODE_NOTAIL = 15,
51464 	EXT4_INODE_DIRSYNC = 16,
51465 	EXT4_INODE_TOPDIR = 17,
51466 	EXT4_INODE_HUGE_FILE = 18,
51467 	EXT4_INODE_EXTENTS = 19,
51468 	EXT4_INODE_VERITY = 20,
51469 	EXT4_INODE_EA_INODE = 21,
51470 	EXT4_INODE_DAX = 25,
51471 	EXT4_INODE_INLINE_DATA = 28,
51472 	EXT4_INODE_PROJINHERIT = 29,
51473 	EXT4_INODE_CASEFOLD = 30,
51474 	EXT4_INODE_RESERVED = 31,
51475 };
51476 
51477 enum ext4_journal_trigger_type {
51478 	EXT4_JTR_ORPHAN_FILE = 0,
51479 	EXT4_JTR_NONE = 1,
51480 };
51481 
51482 typedef struct {
51483 	__le32 *p;
51484 	__le32 key;
51485 	struct buffer_head *bh;
51486 } Indirect;
51487 
51488 enum {
51489 	attr_noop = 0,
51490 	attr_delayed_allocation_blocks = 1,
51491 	attr_session_write_kbytes = 2,
51492 	attr_lifetime_write_kbytes = 3,
51493 	attr_reserved_clusters = 4,
51494 	attr_sra_exceeded_retry_limit = 5,
51495 	attr_inode_readahead = 6,
51496 	attr_trigger_test_error = 7,
51497 	attr_first_error_time = 8,
51498 	attr_last_error_time = 9,
51499 	attr_feature = 10,
51500 	attr_pointer_ui = 11,
51501 	attr_pointer_ul = 12,
51502 	attr_pointer_u64 = 13,
51503 	attr_pointer_u8 = 14,
51504 	attr_pointer_string = 15,
51505 	attr_pointer_atomic = 16,
51506 	attr_journal_task = 17,
51507 };
51508 
51509 enum {
51510 	ptr_explicit = 0,
51511 	ptr_ext4_sb_info_offset = 1,
51512 	ptr_ext4_super_block_offset = 2,
51513 };
51514 
51515 struct ext4_attr {
51516 	struct attribute attr;
51517 	short int attr_id;
51518 	short int attr_ptr;
51519 	short unsigned int attr_size;
51520 	union {
51521 		int offset;
51522 		void *explicit_ptr;
51523 	} u;
51524 };
51525 
51526 struct commit_header {
51527 	__be32 h_magic;
51528 	__be32 h_blocktype;
51529 	__be32 h_sequence;
51530 	unsigned char h_chksum_type;
51531 	unsigned char h_chksum_size;
51532 	unsigned char h_padding[2];
51533 	__be32 h_chksum[8];
51534 	__be64 h_commit_sec;
51535 	__be32 h_commit_nsec;
51536 };
51537 
51538 struct journal_block_tag3_s {
51539 	__be32 t_blocknr;
51540 	__be32 t_flags;
51541 	__be32 t_blocknr_high;
51542 	__be32 t_checksum;
51543 };
51544 
51545 typedef struct journal_block_tag3_s journal_block_tag3_t;
51546 
51547 struct journal_block_tag_s {
51548 	__be32 t_blocknr;
51549 	__be16 t_checksum;
51550 	__be16 t_flags;
51551 	__be32 t_blocknr_high;
51552 };
51553 
51554 typedef struct journal_block_tag_s journal_block_tag_t;
51555 
51556 struct nfs_readdesc {
51557 	struct nfs_pageio_descriptor pgio;
51558 	struct nfs_open_context *ctx;
51559 };
51560 
51561 enum xprt_transports {
51562 	XPRT_TRANSPORT_UDP = 17,
51563 	XPRT_TRANSPORT_TCP = 6,
51564 	XPRT_TRANSPORT_BC_TCP = -2147483642,
51565 	XPRT_TRANSPORT_RDMA = 256,
51566 	XPRT_TRANSPORT_BC_RDMA = -2147483392,
51567 	XPRT_TRANSPORT_LOCAL = 257,
51568 };
51569 
51570 enum nfs4_callback_procnum {
51571 	CB_NULL = 0,
51572 	CB_COMPOUND = 1,
51573 };
51574 
51575 enum nfs4_callback_opnum {
51576 	OP_CB_GETATTR = 3,
51577 	OP_CB_RECALL = 4,
51578 	OP_CB_LAYOUTRECALL = 5,
51579 	OP_CB_NOTIFY = 6,
51580 	OP_CB_PUSH_DELEG = 7,
51581 	OP_CB_RECALL_ANY = 8,
51582 	OP_CB_RECALLABLE_OBJ_AVAIL = 9,
51583 	OP_CB_RECALL_SLOT = 10,
51584 	OP_CB_SEQUENCE = 11,
51585 	OP_CB_WANTS_CANCELLED = 12,
51586 	OP_CB_NOTIFY_LOCK = 13,
51587 	OP_CB_NOTIFY_DEVICEID = 14,
51588 	OP_CB_OFFLOAD = 15,
51589 	OP_CB_ILLEGAL = 10044,
51590 };
51591 
51592 struct cb_process_state {
51593 	__be32 drc_status;
51594 	struct nfs_client *clp;
51595 	struct nfs4_slot *slot;
51596 	u32 minorversion;
51597 	struct net *net;
51598 };
51599 
51600 struct cb_compound_hdr_arg {
51601 	unsigned int taglen;
51602 	const char *tag;
51603 	unsigned int minorversion;
51604 	unsigned int cb_ident;
51605 	unsigned int nops;
51606 };
51607 
51608 struct cb_compound_hdr_res {
51609 	__be32 *status;
51610 	unsigned int taglen;
51611 	const char *tag;
51612 	__be32 *nops;
51613 };
51614 
51615 struct cb_getattrargs {
51616 	struct nfs_fh fh;
51617 	uint32_t bitmap[2];
51618 };
51619 
51620 struct cb_getattrres {
51621 	__be32 status;
51622 	uint32_t bitmap[2];
51623 	uint64_t size;
51624 	uint64_t change_attr;
51625 	struct timespec64 ctime;
51626 	struct timespec64 mtime;
51627 };
51628 
51629 struct cb_recallargs {
51630 	struct nfs_fh fh;
51631 	nfs4_stateid stateid;
51632 	uint32_t truncate;
51633 };
51634 
51635 struct callback_op {
51636 	__be32 (*process_op)(void *, void *, struct cb_process_state *);
51637 	__be32 (*decode_args)(struct svc_rqst *, struct xdr_stream *, void *);
51638 	__be32 (*encode_res)(struct svc_rqst *, struct xdr_stream *, const void *);
51639 	long int res_maxsize;
51640 };
51641 
51642 typedef int (*nlm_host_match_fn_t)(void *, struct nlm_host *);
51643 
51644 struct xfs_dsb {
51645 	__be32 sb_magicnum;
51646 	__be32 sb_blocksize;
51647 	__be64 sb_dblocks;
51648 	__be64 sb_rblocks;
51649 	__be64 sb_rextents;
51650 	uuid_t sb_uuid;
51651 	__be64 sb_logstart;
51652 	__be64 sb_rootino;
51653 	__be64 sb_rbmino;
51654 	__be64 sb_rsumino;
51655 	__be32 sb_rextsize;
51656 	__be32 sb_agblocks;
51657 	__be32 sb_agcount;
51658 	__be32 sb_rbmblocks;
51659 	__be32 sb_logblocks;
51660 	__be16 sb_versionnum;
51661 	__be16 sb_sectsize;
51662 	__be16 sb_inodesize;
51663 	__be16 sb_inopblock;
51664 	char sb_fname[12];
51665 	__u8 sb_blocklog;
51666 	__u8 sb_sectlog;
51667 	__u8 sb_inodelog;
51668 	__u8 sb_inopblog;
51669 	__u8 sb_agblklog;
51670 	__u8 sb_rextslog;
51671 	__u8 sb_inprogress;
51672 	__u8 sb_imax_pct;
51673 	__be64 sb_icount;
51674 	__be64 sb_ifree;
51675 	__be64 sb_fdblocks;
51676 	__be64 sb_frextents;
51677 	__be64 sb_uquotino;
51678 	__be64 sb_gquotino;
51679 	__be16 sb_qflags;
51680 	__u8 sb_flags;
51681 	__u8 sb_shared_vn;
51682 	__be32 sb_inoalignmt;
51683 	__be32 sb_unit;
51684 	__be32 sb_width;
51685 	__u8 sb_dirblklog;
51686 	__u8 sb_logsectlog;
51687 	__be16 sb_logsectsize;
51688 	__be32 sb_logsunit;
51689 	__be32 sb_features2;
51690 	__be32 sb_bad_features2;
51691 	__be32 sb_features_compat;
51692 	__be32 sb_features_ro_compat;
51693 	__be32 sb_features_incompat;
51694 	__be32 sb_features_log_incompat;
51695 	__le32 sb_crc;
51696 	__be32 sb_spino_align;
51697 	__be64 sb_pquotino;
51698 	__be64 sb_lsn;
51699 	uuid_t sb_meta_uuid;
51700 };
51701 
51702 struct xfs_agfl {
51703 	__be32 agfl_magicnum;
51704 	__be32 agfl_seqno;
51705 	uuid_t agfl_uuid;
51706 	__be64 agfl_lsn;
51707 	__be32 agfl_crc;
51708 } __attribute__((packed));
51709 
51710 typedef struct xfs_alloc_rec xfs_alloc_rec_t;
51711 
51712 struct aghdr_init_data {
51713 	xfs_agblock_t agno;
51714 	xfs_extlen_t agsize;
51715 	struct list_head buffer_list;
51716 	xfs_rfsblock_t nfree;
51717 	xfs_daddr_t daddr;
51718 	size_t numblks;
51719 	xfs_btnum_t type;
51720 };
51721 
51722 typedef void (*aghdr_init_work_f)(struct xfs_mount *, struct xfs_buf *, struct aghdr_init_data *);
51723 
51724 struct xfs_aghdr_grow_data {
51725 	xfs_daddr_t daddr;
51726 	size_t numblks;
51727 	const struct xfs_buf_ops *ops;
51728 	aghdr_init_work_f work;
51729 	xfs_btnum_t type;
51730 	bool need_init;
51731 };
51732 
51733 typedef __s64 xfs_off_t;
51734 
51735 typedef uint32_t xfs_dahash_t;
51736 
51737 typedef uint16_t xfs_dir2_data_off_t;
51738 
51739 typedef uint32_t xfs_dir2_dataptr_t;
51740 
51741 typedef xfs_off_t xfs_dir2_off_t;
51742 
51743 typedef uint32_t xfs_dir2_db_t;
51744 
51745 struct xfs_dir2_data_free {
51746 	__be16 offset;
51747 	__be16 length;
51748 };
51749 
51750 typedef struct xfs_dir2_data_free xfs_dir2_data_free_t;
51751 
51752 struct xfs_dir2_data_hdr {
51753 	__be32 magic;
51754 	xfs_dir2_data_free_t bestfree[3];
51755 };
51756 
51757 typedef struct xfs_dir2_data_hdr xfs_dir2_data_hdr_t;
51758 
51759 struct xfs_dir3_blk_hdr {
51760 	__be32 magic;
51761 	__be32 crc;
51762 	__be64 blkno;
51763 	__be64 lsn;
51764 	uuid_t uuid;
51765 	__be64 owner;
51766 };
51767 
51768 struct xfs_dir2_data_entry {
51769 	__be64 inumber;
51770 	__u8 namelen;
51771 	__u8 name[0];
51772 };
51773 
51774 typedef struct xfs_dir2_data_entry xfs_dir2_data_entry_t;
51775 
51776 struct xfs_dir2_data_unused {
51777 	__be16 freetag;
51778 	__be16 length;
51779 	__be16 tag;
51780 };
51781 
51782 typedef struct xfs_dir2_data_unused xfs_dir2_data_unused_t;
51783 
51784 struct xfs_dir2_leaf_hdr {
51785 	xfs_da_blkinfo_t info;
51786 	__be16 count;
51787 	__be16 stale;
51788 };
51789 
51790 typedef struct xfs_dir2_leaf_hdr xfs_dir2_leaf_hdr_t;
51791 
51792 struct xfs_dir2_leaf_entry {
51793 	__be32 hashval;
51794 	__be32 address;
51795 };
51796 
51797 typedef struct xfs_dir2_leaf_entry xfs_dir2_leaf_entry_t;
51798 
51799 struct xfs_dir2_leaf_tail {
51800 	__be32 bestcount;
51801 };
51802 
51803 typedef struct xfs_dir2_leaf_tail xfs_dir2_leaf_tail_t;
51804 
51805 struct xfs_dir2_leaf {
51806 	xfs_dir2_leaf_hdr_t hdr;
51807 	xfs_dir2_leaf_entry_t __ents[0];
51808 };
51809 
51810 typedef struct xfs_dir2_leaf xfs_dir2_leaf_t;
51811 
51812 struct xfs_dir2_free_hdr {
51813 	__be32 magic;
51814 	__be32 firstdb;
51815 	__be32 nvalid;
51816 	__be32 nused;
51817 };
51818 
51819 typedef struct xfs_dir2_free_hdr xfs_dir2_free_hdr_t;
51820 
51821 struct xfs_dir2_free {
51822 	xfs_dir2_free_hdr_t hdr;
51823 	__be16 bests[0];
51824 };
51825 
51826 typedef struct xfs_dir2_free xfs_dir2_free_t;
51827 
51828 struct xfs_dir3_free_hdr {
51829 	struct xfs_dir3_blk_hdr hdr;
51830 	__be32 firstdb;
51831 	__be32 nvalid;
51832 	__be32 nused;
51833 	__be32 pad;
51834 };
51835 
51836 struct xfs_dir3_free {
51837 	struct xfs_dir3_free_hdr hdr;
51838 	__be16 bests[0];
51839 };
51840 
51841 enum xfs_dacmp {
51842 	XFS_CMP_DIFFERENT = 0,
51843 	XFS_CMP_EXACT = 1,
51844 	XFS_CMP_CASE = 2,
51845 };
51846 
51847 struct xfs_da_args {
51848 	struct xfs_da_geometry *geo;
51849 	const uint8_t *name;
51850 	int namelen;
51851 	uint8_t filetype;
51852 	void *value;
51853 	int valuelen;
51854 	unsigned int attr_filter;
51855 	unsigned int attr_flags;
51856 	xfs_dahash_t hashval;
51857 	xfs_ino_t inumber;
51858 	struct xfs_inode *dp;
51859 	struct xfs_trans *trans;
51860 	xfs_extlen_t total;
51861 	int whichfork;
51862 	xfs_dablk_t blkno;
51863 	int index;
51864 	xfs_dablk_t rmtblkno;
51865 	int rmtblkcnt;
51866 	int rmtvaluelen;
51867 	xfs_dablk_t blkno2;
51868 	int index2;
51869 	xfs_dablk_t rmtblkno2;
51870 	int rmtblkcnt2;
51871 	int rmtvaluelen2;
51872 	uint32_t op_flags;
51873 	enum xfs_dacmp cmpresult;
51874 };
51875 
51876 typedef struct xfs_da_args xfs_da_args_t;
51877 
51878 struct xfs_da_state_blk {
51879 	struct xfs_buf *bp;
51880 	xfs_dablk_t blkno;
51881 	xfs_daddr_t disk_blkno;
51882 	int index;
51883 	xfs_dahash_t hashval;
51884 	int magic;
51885 };
51886 
51887 typedef struct xfs_da_state_blk xfs_da_state_blk_t;
51888 
51889 struct xfs_da_state_path {
51890 	int active;
51891 	xfs_da_state_blk_t blk[5];
51892 };
51893 
51894 typedef struct xfs_da_state_path xfs_da_state_path_t;
51895 
51896 struct xfs_da_state {
51897 	xfs_da_args_t *args;
51898 	struct xfs_mount *mp;
51899 	xfs_da_state_path_t path;
51900 	xfs_da_state_path_t altpath;
51901 	unsigned char inleaf;
51902 	unsigned char extravalid;
51903 	unsigned char extraafter;
51904 	xfs_da_state_blk_t extrablk;
51905 };
51906 
51907 typedef struct xfs_da_state xfs_da_state_t;
51908 
51909 struct xfs_dir3_icleaf_hdr {
51910 	uint32_t forw;
51911 	uint32_t back;
51912 	uint16_t magic;
51913 	uint16_t count;
51914 	uint16_t stale;
51915 	struct xfs_dir2_leaf_entry *ents;
51916 };
51917 
51918 struct xfs_dir3_icfree_hdr {
51919 	uint32_t magic;
51920 	uint32_t firstdb;
51921 	uint32_t nvalid;
51922 	uint32_t nused;
51923 	__be16 *bests;
51924 };
51925 
51926 typedef uint32_t xfs_dqid_t;
51927 
51928 typedef uint64_t xfs_qcnt_t;
51929 
51930 struct xfs_quota_limits {
51931 	xfs_qcnt_t hard;
51932 	xfs_qcnt_t soft;
51933 	time64_t time;
51934 };
51935 
51936 struct xfs_def_quota {
51937 	struct xfs_quota_limits blk;
51938 	struct xfs_quota_limits ino;
51939 	struct xfs_quota_limits rtb;
51940 };
51941 
51942 struct xfs_quotainfo {
51943 	struct xarray qi_uquota_tree;
51944 	struct xarray qi_gquota_tree;
51945 	struct xarray qi_pquota_tree;
51946 	struct mutex qi_tree_lock;
51947 	struct xfs_inode *qi_uquotaip;
51948 	struct xfs_inode *qi_gquotaip;
51949 	struct xfs_inode *qi_pquotaip;
51950 	struct list_lru qi_lru;
51951 	int qi_dquots;
51952 	struct mutex qi_quotaofflock;
51953 	xfs_filblks_t qi_dqchunklen;
51954 	uint qi_dqperchunk;
51955 	struct xfs_def_quota qi_usr_default;
51956 	struct xfs_def_quota qi_grp_default;
51957 	struct xfs_def_quota qi_prj_default;
51958 	struct shrinker qi_shrinker;
51959 	time64_t qi_expiry_min;
51960 	time64_t qi_expiry_max;
51961 };
51962 
51963 typedef uint8_t xfs_dqtype_t;
51964 
51965 struct xfs_dquot_res {
51966 	xfs_qcnt_t reserved;
51967 	xfs_qcnt_t count;
51968 	xfs_qcnt_t hardlimit;
51969 	xfs_qcnt_t softlimit;
51970 	time64_t timer;
51971 };
51972 
51973 struct xfs_dq_logitem {
51974 	struct xfs_log_item qli_item;
51975 	struct xfs_dquot *qli_dquot;
51976 	xfs_lsn_t qli_flush_lsn;
51977 };
51978 
51979 struct xfs_dquot {
51980 	struct list_head q_lru;
51981 	struct xfs_mount *q_mount;
51982 	xfs_dqtype_t q_type;
51983 	uint16_t q_flags;
51984 	xfs_dqid_t q_id;
51985 	uint q_nrefs;
51986 	int q_bufoffset;
51987 	xfs_daddr_t q_blkno;
51988 	xfs_fileoff_t q_fileoffset;
51989 	struct xfs_dquot_res q_blk;
51990 	struct xfs_dquot_res q_ino;
51991 	struct xfs_dquot_res q_rtb;
51992 	struct xfs_dq_logitem q_logitem;
51993 	xfs_qcnt_t q_prealloc_lo_wmark;
51994 	xfs_qcnt_t q_prealloc_hi_wmark;
51995 	int64_t q_low_space[3];
51996 	struct mutex q_qlock;
51997 	struct completion q_flush;
51998 	atomic_t q_pincount;
51999 	struct wait_queue_head q_pinwait;
52000 };
52001 
52002 struct xfs_dqtrx {
52003 	struct xfs_dquot *qt_dquot;
52004 	uint64_t qt_blk_res;
52005 	int64_t qt_bcount_delta;
52006 	int64_t qt_delbcnt_delta;
52007 	uint64_t qt_rtblk_res;
52008 	uint64_t qt_rtblk_res_used;
52009 	int64_t qt_rtbcount_delta;
52010 	int64_t qt_delrtb_delta;
52011 	uint64_t qt_ino_res;
52012 	uint64_t qt_ino_res_used;
52013 	int64_t qt_icount_delta;
52014 };
52015 
52016 struct xfs_dquot_acct {
52017 	struct xfs_dqtrx dqs[6];
52018 };
52019 
52020 typedef int (*xfs_rmap_query_range_fn)(struct xfs_btree_cur *, const struct xfs_rmap_irec *, void *);
52021 
52022 typedef int (*xfs_alloc_query_range_fn)(struct xfs_btree_cur *, const struct xfs_alloc_rec_incore *, void *);
52023 
52024 struct fsmap {
52025 	__u32 fmr_device;
52026 	__u32 fmr_flags;
52027 	__u64 fmr_physical;
52028 	__u64 fmr_owner;
52029 	__u64 fmr_offset;
52030 	__u64 fmr_length;
52031 	__u64 fmr_reserved[3];
52032 };
52033 
52034 struct xfs_fsmap {
52035 	dev_t fmr_device;
52036 	uint32_t fmr_flags;
52037 	uint64_t fmr_physical;
52038 	uint64_t fmr_owner;
52039 	xfs_fileoff_t fmr_offset;
52040 	xfs_filblks_t fmr_length;
52041 };
52042 
52043 struct xfs_fsmap_head {
52044 	uint32_t fmh_iflags;
52045 	uint32_t fmh_oflags;
52046 	unsigned int fmh_count;
52047 	unsigned int fmh_entries;
52048 	struct xfs_fsmap fmh_keys[2];
52049 };
52050 
52051 struct xfs_getfsmap_info {
52052 	struct xfs_fsmap_head *head;
52053 	struct fsmap *fsmap_recs;
52054 	struct xfs_buf *agf_bp;
52055 	struct xfs_perag *pag;
52056 	xfs_daddr_t next_daddr;
52057 	u64 missing_owner;
52058 	u32 dev;
52059 	struct xfs_rmap_irec low;
52060 	struct xfs_rmap_irec high;
52061 	bool last;
52062 };
52063 
52064 struct xfs_getfsmap_dev {
52065 	u32 dev;
52066 	int (*fn)(struct xfs_trans *, const struct xfs_fsmap *, struct xfs_getfsmap_info *);
52067 };
52068 
52069 struct xfs_mount;
52070 
52071 struct xstats_entry {
52072 	char *desc;
52073 	int endpoint;
52074 };
52075 
52076 struct xfs_icreate_log {
52077 	uint16_t icl_type;
52078 	uint16_t icl_size;
52079 	__be32 icl_ag;
52080 	__be32 icl_agbno;
52081 	__be32 icl_count;
52082 	__be32 icl_isize;
52083 	__be32 icl_length;
52084 	__be32 icl_gen;
52085 };
52086 
52087 struct xfs_icreate_item {
52088 	struct xfs_log_item ic_item;
52089 	struct xfs_icreate_log ic_format;
52090 };
52091 
52092 enum xlog_recover_reorder {
52093 	XLOG_REORDER_BUFFER_LIST = 0,
52094 	XLOG_REORDER_ITEM_LIST = 1,
52095 	XLOG_REORDER_INODE_BUFFER_LIST = 2,
52096 	XLOG_REORDER_CANCEL_LIST = 3,
52097 };
52098 
52099 struct xlog_recover_item;
52100 
52101 struct xlog_recover_item_ops {
52102 	uint16_t item_type;
52103 	enum xlog_recover_reorder (*reorder)(struct xlog_recover_item *);
52104 	void (*ra_pass2)(struct xlog *, struct xlog_recover_item *);
52105 	int (*commit_pass1)(struct xlog *, struct xlog_recover_item *);
52106 	int (*commit_pass2)(struct xlog *, struct list_head *, struct xlog_recover_item *, xfs_lsn_t);
52107 };
52108 
52109 struct xlog_recover_item {
52110 	struct list_head ri_list;
52111 	int ri_cnt;
52112 	int ri_total;
52113 	struct xfs_log_iovec *ri_buf;
52114 	const struct xlog_recover_item_ops *ri_ops;
52115 };
52116 
52117 struct ipc_proc_iface {
52118 	const char *path;
52119 	const char *header;
52120 	int ids;
52121 	int (*show)(struct seq_file *, void *);
52122 };
52123 
52124 struct ipc_proc_iter {
52125 	struct ipc_namespace *ns;
52126 	struct pid_namespace *pid_ns;
52127 	struct ipc_proc_iface *iface;
52128 };
52129 
52130 struct subprocess_info {
52131 	struct work_struct work;
52132 	struct completion *complete;
52133 	const char *path;
52134 	char **argv;
52135 	char **envp;
52136 	int wait;
52137 	int retval;
52138 	int (*init)(struct subprocess_info *, struct cred *);
52139 	void (*cleanup)(struct subprocess_info *);
52140 	void *data;
52141 };
52142 
52143 struct keyring_search_context {
52144 	struct keyring_index_key index_key;
52145 	const struct cred *cred;
52146 	struct key_match_data match_data;
52147 	unsigned int flags;
52148 	int (*iterator)(const void *, void *);
52149 	int skipped_ret;
52150 	bool possessed;
52151 	key_ref_t result;
52152 	time64_t now;
52153 };
52154 
52155 struct request_key_auth {
52156 	struct callback_head rcu;
52157 	struct key *target_key;
52158 	struct key *dest_keyring;
52159 	const struct cred *cred;
52160 	void *callout_info;
52161 	size_t callout_len;
52162 	pid_t pid;
52163 	char op[8];
52164 };
52165 
52166 struct assoc_array_edit;
52167 
52168 enum {
52169 	IOPRIO_CLASS_NONE = 0,
52170 	IOPRIO_CLASS_RT = 1,
52171 	IOPRIO_CLASS_BE = 2,
52172 	IOPRIO_CLASS_IDLE = 3,
52173 };
52174 
52175 enum {
52176 	IOPRIO_WHO_PROCESS = 1,
52177 	IOPRIO_WHO_PGRP = 2,
52178 	IOPRIO_WHO_USER = 3,
52179 };
52180 
52181 struct xattr_name {
52182 	char name[256];
52183 };
52184 
52185 struct xattr_ctx {
52186 	union {
52187 		const void *cvalue;
52188 		void *value;
52189 	};
52190 	void *kvalue;
52191 	size_t size;
52192 	struct xattr_name *kname;
52193 	unsigned int flags;
52194 };
52195 
52196 struct io_xattr {
52197 	struct file *file;
52198 	struct xattr_ctx ctx;
52199 	struct filename *filename;
52200 };
52201 
52202 struct io_timeout_data {
52203 	struct io_kiocb *req;
52204 	struct hrtimer timer;
52205 	struct timespec64 ts;
52206 	enum hrtimer_mode mode;
52207 	u32 flags;
52208 };
52209 
52210 struct io_timeout {
52211 	struct file *file;
52212 	u32 off;
52213 	u32 target_seq;
52214 	struct list_head list;
52215 	struct io_kiocb *head;
52216 	struct io_kiocb *prev;
52217 };
52218 
52219 struct io_timeout_rem {
52220 	struct file *file;
52221 	u64 addr;
52222 	struct timespec64 ts;
52223 	u32 flags;
52224 	bool ltimeout;
52225 };
52226 
52227 struct region {
52228 	unsigned int start;
52229 	unsigned int off;
52230 	unsigned int group_len;
52231 	unsigned int end;
52232 	unsigned int nbits;
52233 };
52234 
52235 enum {
52236 	REG_OP_ISFREE = 0,
52237 	REG_OP_ALLOC = 1,
52238 	REG_OP_RELEASE = 2,
52239 };
52240 
52241 enum {
52242 	DUMP_PREFIX_NONE = 0,
52243 	DUMP_PREFIX_ADDRESS = 1,
52244 	DUMP_PREFIX_OFFSET = 2,
52245 };
52246 
52247 struct sw842_param {
52248 	u8 *in;
52249 	u8 bit;
52250 	u64 ilen;
52251 	u8 *out;
52252 	u8 *ostart;
52253 	u64 olen;
52254 };
52255 
52256 struct word_at_a_time {};
52257 
52258 struct rc {
52259 	long int (*fill)(void *, long unsigned int);
52260 	uint8_t *ptr;
52261 	uint8_t *buffer;
52262 	uint8_t *buffer_end;
52263 	long int buffer_size;
52264 	uint32_t code;
52265 	uint32_t range;
52266 	uint32_t bound;
52267 	void (*error)(char *);
52268 };
52269 
52270 struct lzma_header {
52271 	uint8_t pos;
52272 	uint32_t dict_size;
52273 	uint64_t dst_size;
52274 } __attribute__((packed));
52275 
52276 struct writer {
52277 	uint8_t *buffer;
52278 	uint8_t previous_byte;
52279 	size_t buffer_pos;
52280 	int bufsize;
52281 	size_t global_pos;
52282 	long int (*flush)(void *, long unsigned int);
52283 	struct lzma_header *header;
52284 };
52285 
52286 struct cstate {
52287 	int state;
52288 	uint32_t rep0;
52289 	uint32_t rep1;
52290 	uint32_t rep2;
52291 	uint32_t rep3;
52292 };
52293 
52294 struct dmi_strmatch {
52295 	unsigned char slot: 7;
52296 	unsigned char exact_match: 1;
52297 	char substr[79];
52298 };
52299 
52300 struct dmi_system_id {
52301 	int (*callback)(const struct dmi_system_id *);
52302 	const char *ident;
52303 	struct dmi_strmatch matches[4];
52304 	void *driver_data;
52305 };
52306 
52307 struct bus_attribute {
52308 	struct attribute attr;
52309 	ssize_t (*show)(struct bus_type *, char *);
52310 	ssize_t (*store)(struct bus_type *, const char *, size_t);
52311 };
52312 
52313 enum {
52314 	LOGIC_PIO_INDIRECT = 0,
52315 	LOGIC_PIO_CPU_MMIO = 1,
52316 };
52317 
52318 struct logic_pio_host_ops;
52319 
52320 struct logic_pio_hwaddr {
52321 	struct list_head list;
52322 	struct fwnode_handle *fwnode;
52323 	resource_size_t hw_start;
52324 	resource_size_t io_start;
52325 	resource_size_t size;
52326 	long unsigned int flags;
52327 	void *hostdata;
52328 	const struct logic_pio_host_ops *ops;
52329 };
52330 
52331 struct logic_pio_host_ops {
52332 	u32 (*in)(void *, long unsigned int, size_t);
52333 	void (*out)(void *, long unsigned int, u32, size_t);
52334 	u32 (*ins)(void *, long unsigned int, void *, size_t, unsigned int);
52335 	void (*outs)(void *, long unsigned int, const void *, size_t, unsigned int);
52336 };
52337 
52338 enum pcie_reset_state {
52339 	pcie_deassert_reset = 1,
52340 	pcie_warm_reset = 2,
52341 	pcie_hot_reset = 3,
52342 };
52343 
52344 enum pci_dev_flags {
52345 	PCI_DEV_FLAGS_MSI_INTX_DISABLE_BUG = 1,
52346 	PCI_DEV_FLAGS_NO_D3 = 2,
52347 	PCI_DEV_FLAGS_ASSIGNED = 4,
52348 	PCI_DEV_FLAGS_ACS_ENABLED_QUIRK = 8,
52349 	PCI_DEV_FLAG_PCIE_BRIDGE_ALIAS = 32,
52350 	PCI_DEV_FLAGS_NO_BUS_RESET = 64,
52351 	PCI_DEV_FLAGS_NO_PM_RESET = 128,
52352 	PCI_DEV_FLAGS_VPD_REF_F0 = 256,
52353 	PCI_DEV_FLAGS_BRIDGE_XLATE_ROOT = 512,
52354 	PCI_DEV_FLAGS_NO_FLR_RESET = 1024,
52355 	PCI_DEV_FLAGS_NO_RELAXED_ORDERING = 2048,
52356 	PCI_DEV_FLAGS_HAS_MSI_MASKING = 4096,
52357 };
52358 
52359 enum pci_bus_flags {
52360 	PCI_BUS_FLAGS_NO_MSI = 1,
52361 	PCI_BUS_FLAGS_NO_MMRBC = 2,
52362 	PCI_BUS_FLAGS_NO_AERSID = 4,
52363 	PCI_BUS_FLAGS_NO_EXTCFG = 8,
52364 };
52365 
52366 enum pcie_link_width {
52367 	PCIE_LNK_WIDTH_RESRV = 0,
52368 	PCIE_LNK_X1 = 1,
52369 	PCIE_LNK_X2 = 2,
52370 	PCIE_LNK_X4 = 4,
52371 	PCIE_LNK_X8 = 8,
52372 	PCIE_LNK_X12 = 12,
52373 	PCIE_LNK_X16 = 16,
52374 	PCIE_LNK_X32 = 32,
52375 	PCIE_LNK_WIDTH_UNKNOWN = 255,
52376 };
52377 
52378 enum pci_bus_speed {
52379 	PCI_SPEED_33MHz = 0,
52380 	PCI_SPEED_66MHz = 1,
52381 	PCI_SPEED_66MHz_PCIX = 2,
52382 	PCI_SPEED_100MHz_PCIX = 3,
52383 	PCI_SPEED_133MHz_PCIX = 4,
52384 	PCI_SPEED_66MHz_PCIX_ECC = 5,
52385 	PCI_SPEED_100MHz_PCIX_ECC = 6,
52386 	PCI_SPEED_133MHz_PCIX_ECC = 7,
52387 	PCI_SPEED_66MHz_PCIX_266 = 9,
52388 	PCI_SPEED_100MHz_PCIX_266 = 10,
52389 	PCI_SPEED_133MHz_PCIX_266 = 11,
52390 	AGP_UNKNOWN = 12,
52391 	AGP_1X = 13,
52392 	AGP_2X = 14,
52393 	AGP_4X = 15,
52394 	AGP_8X = 16,
52395 	PCI_SPEED_66MHz_PCIX_533 = 17,
52396 	PCI_SPEED_100MHz_PCIX_533 = 18,
52397 	PCI_SPEED_133MHz_PCIX_533 = 19,
52398 	PCIE_SPEED_2_5GT = 20,
52399 	PCIE_SPEED_5_0GT = 21,
52400 	PCIE_SPEED_8_0GT = 22,
52401 	PCIE_SPEED_16_0GT = 23,
52402 	PCIE_SPEED_32_0GT = 24,
52403 	PCIE_SPEED_64_0GT = 25,
52404 	PCI_SPEED_UNKNOWN = 255,
52405 };
52406 
52407 enum pcie_bus_config_types {
52408 	PCIE_BUS_TUNE_OFF = 0,
52409 	PCIE_BUS_DEFAULT = 1,
52410 	PCIE_BUS_SAFE = 2,
52411 	PCIE_BUS_PERFORMANCE = 3,
52412 	PCIE_BUS_PEER2PEER = 4,
52413 };
52414 
52415 typedef int (*arch_set_vga_state_t)(struct pci_dev *, bool, unsigned int, u32);
52416 
52417 enum pci_fixup_pass {
52418 	pci_fixup_early = 0,
52419 	pci_fixup_header = 1,
52420 	pci_fixup_final = 2,
52421 	pci_fixup_enable = 3,
52422 	pci_fixup_resume = 4,
52423 	pci_fixup_suspend = 5,
52424 	pci_fixup_resume_early = 6,
52425 	pci_fixup_suspend_late = 7,
52426 };
52427 
52428 struct pci_reset_fn_method {
52429 	int (*reset_fn)(struct pci_dev *, bool);
52430 	char *name;
52431 };
52432 
52433 struct pci_pme_device {
52434 	struct list_head list;
52435 	struct pci_dev *dev;
52436 };
52437 
52438 struct pci_saved_state {
52439 	u32 config_space[16];
52440 	struct pci_cap_saved_data cap[0];
52441 };
52442 
52443 struct pci_devres {
52444 	unsigned int enabled: 1;
52445 	unsigned int pinned: 1;
52446 	unsigned int orig_intx: 1;
52447 	unsigned int restore_intx: 1;
52448 	unsigned int mwi: 1;
52449 	u32 region_mask;
52450 };
52451 
52452 struct linux_logo {
52453 	int type;
52454 	unsigned int width;
52455 	unsigned int height;
52456 	unsigned int clutsize;
52457 	const unsigned char *clut;
52458 	const unsigned char *data;
52459 };
52460 
52461 struct fb_cmap_user {
52462 	__u32 start;
52463 	__u32 len;
52464 	__u16 *red;
52465 	__u16 *green;
52466 	__u16 *blue;
52467 	__u16 *transp;
52468 };
52469 
52470 enum {
52471 	M_SYSTEM_PLL = 0,
52472 	M_PIXEL_PLL_A = 1,
52473 	M_PIXEL_PLL_B = 2,
52474 	M_PIXEL_PLL_C = 3,
52475 	M_VIDEO_PLL = 4,
52476 };
52477 
52478 enum POS1064 {
52479 	POS1064_XCURADDL = 0,
52480 	POS1064_XCURADDH = 1,
52481 	POS1064_XCURCTRL = 2,
52482 	POS1064_XCURCOL0RED = 3,
52483 	POS1064_XCURCOL0GREEN = 4,
52484 	POS1064_XCURCOL0BLUE = 5,
52485 	POS1064_XCURCOL1RED = 6,
52486 	POS1064_XCURCOL1GREEN = 7,
52487 	POS1064_XCURCOL1BLUE = 8,
52488 	POS1064_XCURCOL2RED = 9,
52489 	POS1064_XCURCOL2GREEN = 10,
52490 	POS1064_XCURCOL2BLUE = 11,
52491 	POS1064_XVREFCTRL = 12,
52492 	POS1064_XMULCTRL = 13,
52493 	POS1064_XPIXCLKCTRL = 14,
52494 	POS1064_XGENCTRL = 15,
52495 	POS1064_XMISCCTRL = 16,
52496 	POS1064_XGENIOCTRL = 17,
52497 	POS1064_XGENIODATA = 18,
52498 	POS1064_XZOOMCTRL = 19,
52499 	POS1064_XSENSETEST = 20,
52500 	POS1064_XCRCBITSEL = 21,
52501 	POS1064_XCOLKEYMASKL = 22,
52502 	POS1064_XCOLKEYMASKH = 23,
52503 	POS1064_XCOLKEYL = 24,
52504 	POS1064_XCOLKEYH = 25,
52505 	POS1064_XOUTPUTCONN = 26,
52506 	POS1064_XPANMODE = 27,
52507 	POS1064_XPWRCTRL = 28,
52508 };
52509 
52510 struct tty_file_private {
52511 	struct tty_struct *tty;
52512 	struct file *file;
52513 	struct list_head list;
52514 };
52515 
52516 struct miscdevice {
52517 	int minor;
52518 	const char *name;
52519 	const struct file_operations *fops;
52520 	struct list_head list;
52521 	struct device *parent;
52522 	struct device *this_device;
52523 	const struct attribute_group **groups;
52524 	const char *nodename;
52525 	umode_t mode;
52526 };
52527 
52528 struct va_format {
52529 	const char *fmt;
52530 	va_list *va;
52531 };
52532 
52533 struct wake_irq {
52534 	struct device *dev;
52535 	unsigned int status;
52536 	int irq;
52537 	const char *name;
52538 };
52539 
52540 struct device_attach_data {
52541 	struct device *dev;
52542 	bool check_async;
52543 	bool want_async;
52544 	bool have_async;
52545 };
52546 
52547 enum nd_driver_flags {
52548 	ND_DRIVER_DIMM = 2,
52549 	ND_DRIVER_REGION_PMEM = 4,
52550 	ND_DRIVER_REGION_BLK = 8,
52551 	ND_DRIVER_NAMESPACE_IO = 16,
52552 	ND_DRIVER_NAMESPACE_PMEM = 32,
52553 	ND_DRIVER_DAX_PMEM = 128,
52554 };
52555 
52556 struct nd_region_data {
52557 	int ns_count;
52558 	int ns_active;
52559 	unsigned int hints_shift;
52560 	void *flush_wpq[0];
52561 };
52562 
52563 struct driver_attribute {
52564 	struct attribute attr;
52565 	ssize_t (*show)(struct device_driver *, char *);
52566 	ssize_t (*store)(struct device_driver *, const char *, size_t);
52567 };
52568 
52569 struct dax_operations {
52570 	long int (*direct_access)(struct dax_device *, long unsigned int, long int, enum dax_access_mode, void **, pfn_t *);
52571 	bool (*dax_supported)(struct dax_device *, struct block_device *, int, sector_t, sector_t);
52572 	int (*zero_page_range)(struct dax_device *, long unsigned int, size_t);
52573 	size_t (*recovery_write)(struct dax_device *, long unsigned int, void *, size_t, struct iov_iter *);
52574 };
52575 
52576 struct dax_region {
52577 	int id;
52578 	int target_node;
52579 	struct kref kref;
52580 	struct device *dev;
52581 	unsigned int align;
52582 	struct ida ida;
52583 	struct resource res;
52584 	struct device *seed;
52585 	struct device *youngest;
52586 };
52587 
52588 struct dax_mapping {
52589 	struct device dev;
52590 	int range_id;
52591 	int id;
52592 };
52593 
52594 struct dev_dax_range {
52595 	long unsigned int pgoff;
52596 	struct range range;
52597 	struct dax_mapping *mapping;
52598 };
52599 
52600 struct dev_dax {
52601 	struct dax_region *region;
52602 	struct dax_device *dax_dev;
52603 	unsigned int align;
52604 	int target_node;
52605 	int id;
52606 	struct ida ida;
52607 	struct device dev;
52608 	struct dev_pagemap *pgmap;
52609 	int nr_range;
52610 	struct dev_dax_range *ranges;
52611 };
52612 
52613 struct dev_dax_data {
52614 	struct dax_region *dax_region;
52615 	struct dev_pagemap *pgmap;
52616 	resource_size_t size;
52617 	int id;
52618 };
52619 
52620 struct dax_device_driver {
52621 	struct device_driver drv;
52622 	struct list_head ids;
52623 	int match_always;
52624 	int (*probe)(struct dev_dax *);
52625 	void (*remove)(struct dev_dax *);
52626 };
52627 
52628 struct dax_id {
52629 	struct list_head list;
52630 	char dev_name[30];
52631 };
52632 
52633 enum id_action {
52634 	ID_REMOVE = 0,
52635 	ID_ADD = 1,
52636 };
52637 
52638 struct vio_device_id {
52639 	char type[32];
52640 	char compat[32];
52641 };
52642 
52643 enum vio_dev_family {
52644 	VDEVICE = 0,
52645 	PFO = 1,
52646 };
52647 
52648 struct vio_dev {
52649 	const char *name;
52650 	const char *type;
52651 	uint32_t unit_address;
52652 	uint32_t resource_id;
52653 	unsigned int irq;
52654 	struct {
52655 		size_t desired;
52656 		size_t entitled;
52657 		size_t allocated;
52658 		atomic_t allocs_failed;
52659 	} cmo;
52660 	enum vio_dev_family family;
52661 	struct device dev;
52662 };
52663 
52664 struct vio_driver {
52665 	const char *name;
52666 	const struct vio_device_id *id_table;
52667 	int (*probe)(struct vio_dev *, const struct vio_device_id *);
52668 	void (*remove)(struct vio_dev *);
52669 	void (*shutdown)(struct vio_dev *);
52670 	long unsigned int (*get_desired_dma)(struct vio_dev *);
52671 	const struct dev_pm_ops *pm;
52672 	struct device_driver driver;
52673 };
52674 
52675 enum sam_status {
52676 	SAM_STAT_GOOD = 0,
52677 	SAM_STAT_CHECK_CONDITION = 2,
52678 	SAM_STAT_CONDITION_MET = 4,
52679 	SAM_STAT_BUSY = 8,
52680 	SAM_STAT_INTERMEDIATE = 16,
52681 	SAM_STAT_INTERMEDIATE_CONDITION_MET = 20,
52682 	SAM_STAT_RESERVATION_CONFLICT = 24,
52683 	SAM_STAT_COMMAND_TERMINATED = 34,
52684 	SAM_STAT_TASK_SET_FULL = 40,
52685 	SAM_STAT_ACA_ACTIVE = 48,
52686 	SAM_STAT_TASK_ABORTED = 64,
52687 };
52688 
52689 struct scsi_lun {
52690 	__u8 scsi_lun[8];
52691 };
52692 
52693 struct srp_rport_identifiers {
52694 	u8 port_id[16];
52695 	u8 roles;
52696 };
52697 
52698 enum srp_rport_state {
52699 	SRP_RPORT_RUNNING = 0,
52700 	SRP_RPORT_BLOCKED = 1,
52701 	SRP_RPORT_FAIL_FAST = 2,
52702 	SRP_RPORT_LOST = 3,
52703 };
52704 
52705 struct srp_rport {
52706 	struct device dev;
52707 	u8 port_id[16];
52708 	u8 roles;
52709 	void *lld_data;
52710 	struct mutex mutex;
52711 	enum srp_rport_state state;
52712 	int reconnect_delay;
52713 	int failed_reconnects;
52714 	struct delayed_work reconnect_work;
52715 	int fast_io_fail_tmo;
52716 	int dev_loss_tmo;
52717 	struct delayed_work fast_io_fail_work;
52718 	struct delayed_work dev_loss_work;
52719 };
52720 
52721 struct srp_function_template {
52722 	bool has_rport_state;
52723 	bool reset_timer_if_blocked;
52724 	int *reconnect_delay;
52725 	int *fast_io_fail_tmo;
52726 	int *dev_loss_tmo;
52727 	int (*reconnect)(struct srp_rport *);
52728 	void (*terminate_rport_io)(struct srp_rport *);
52729 	void (*rport_delete)(struct srp_rport *);
52730 };
52731 
52732 enum {
52733 	TASKLET_STATE_SCHED = 0,
52734 	TASKLET_STATE_RUN = 1,
52735 };
52736 
52737 enum {
52738 	SRP_LOGIN_REQ = 0,
52739 	SRP_TSK_MGMT = 1,
52740 	SRP_CMD = 2,
52741 	SRP_I_LOGOUT = 3,
52742 	SRP_LOGIN_RSP = 192,
52743 	SRP_RSP = 193,
52744 	SRP_LOGIN_REJ = 194,
52745 	SRP_T_LOGOUT = 128,
52746 	SRP_CRED_REQ = 129,
52747 	SRP_AER_REQ = 130,
52748 	SRP_CRED_RSP = 65,
52749 	SRP_AER_RSP = 66,
52750 };
52751 
52752 enum {
52753 	SRP_BUF_FORMAT_DIRECT = 2,
52754 	SRP_BUF_FORMAT_INDIRECT = 4,
52755 };
52756 
52757 enum {
52758 	SRP_NO_DATA_DESC = 0,
52759 	SRP_DATA_DESC_DIRECT = 1,
52760 	SRP_DATA_DESC_INDIRECT = 2,
52761 	SRP_DATA_DESC_IMM = 3,
52762 };
52763 
52764 enum {
52765 	SRP_TSK_ABORT_TASK = 1,
52766 	SRP_TSK_ABORT_TASK_SET = 2,
52767 	SRP_TSK_CLEAR_TASK_SET = 4,
52768 	SRP_TSK_LUN_RESET = 8,
52769 	SRP_TSK_CLEAR_ACA = 64,
52770 };
52771 
52772 struct srp_direct_buf {
52773 	__be64 va;
52774 	__be32 key;
52775 	__be32 len;
52776 };
52777 
52778 struct srp_indirect_buf {
52779 	struct srp_direct_buf table_desc;
52780 	__be32 len;
52781 	struct srp_direct_buf desc_list[0];
52782 } __attribute__((packed));
52783 
52784 struct srp_login_req {
52785 	u8 opcode;
52786 	u8 reserved1[7];
52787 	u64 tag;
52788 	__be32 req_it_iu_len;
52789 	u8 reserved2[4];
52790 	__be16 req_buf_fmt;
52791 	u8 req_flags;
52792 	u8 reserved3[1];
52793 	__be16 imm_data_offset;
52794 	u8 reserved4[2];
52795 	u8 initiator_port_id[16];
52796 	u8 target_port_id[16];
52797 };
52798 
52799 struct srp_login_rsp {
52800 	u8 opcode;
52801 	u8 reserved1[3];
52802 	__be32 req_lim_delta;
52803 	u64 tag;
52804 	__be32 max_it_iu_len;
52805 	__be32 max_ti_iu_len;
52806 	__be16 buf_fmt;
52807 	u8 rsp_flags;
52808 	u8 reserved2[25];
52809 } __attribute__((packed));
52810 
52811 struct srp_login_rej {
52812 	u8 opcode;
52813 	u8 reserved1[3];
52814 	__be32 reason;
52815 	u64 tag;
52816 	u8 reserved2[8];
52817 	__be16 buf_fmt;
52818 	u8 reserved3[6];
52819 };
52820 
52821 struct srp_i_logout {
52822 	u8 opcode;
52823 	u8 reserved[7];
52824 	u64 tag;
52825 };
52826 
52827 struct srp_t_logout {
52828 	u8 opcode;
52829 	u8 sol_not;
52830 	u8 reserved[2];
52831 	__be32 reason;
52832 	u64 tag;
52833 };
52834 
52835 struct srp_tsk_mgmt {
52836 	u8 opcode;
52837 	u8 sol_not;
52838 	u8 reserved1[6];
52839 	u64 tag;
52840 	u8 reserved2[4];
52841 	struct scsi_lun lun;
52842 	u8 reserved3[2];
52843 	u8 tsk_mgmt_func;
52844 	u8 reserved4;
52845 	u64 task_tag;
52846 	u8 reserved5[8];
52847 };
52848 
52849 struct srp_cmd {
52850 	u8 opcode;
52851 	u8 sol_not;
52852 	u8 reserved1[3];
52853 	u8 buf_fmt;
52854 	u8 data_out_desc_cnt;
52855 	u8 data_in_desc_cnt;
52856 	u64 tag;
52857 	u8 reserved2[4];
52858 	struct scsi_lun lun;
52859 	u8 reserved3;
52860 	u8 task_attr;
52861 	u8 reserved4;
52862 	u8 add_cdb_len;
52863 	u8 cdb[16];
52864 	u8 add_data[0];
52865 };
52866 
52867 enum {
52868 	SRP_RSP_FLAG_RSPVALID = 1,
52869 	SRP_RSP_FLAG_SNSVALID = 2,
52870 	SRP_RSP_FLAG_DOOVER = 4,
52871 	SRP_RSP_FLAG_DOUNDER = 8,
52872 	SRP_RSP_FLAG_DIOVER = 16,
52873 	SRP_RSP_FLAG_DIUNDER = 32,
52874 };
52875 
52876 struct srp_rsp {
52877 	u8 opcode;
52878 	u8 sol_not;
52879 	u8 reserved1[2];
52880 	__be32 req_lim_delta;
52881 	u64 tag;
52882 	u8 reserved2[2];
52883 	u8 flags;
52884 	u8 status;
52885 	__be32 data_out_res_cnt;
52886 	__be32 data_in_res_cnt;
52887 	__be32 sense_data_len;
52888 	__be32 resp_data_len;
52889 	u8 data[0];
52890 } __attribute__((packed));
52891 
52892 union srp_iu {
52893 	struct srp_login_req login_req;
52894 	struct srp_login_rsp login_rsp;
52895 	struct srp_login_rej login_rej;
52896 	struct srp_i_logout i_logout;
52897 	struct srp_t_logout t_logout;
52898 	struct srp_tsk_mgmt tsk_mgmt;
52899 	struct srp_cmd cmd;
52900 	struct srp_rsp rsp;
52901 	u8 reserved[256];
52902 };
52903 
52904 enum viosrp_crq_headers {
52905 	VIOSRP_CRQ_FREE = 0,
52906 	VIOSRP_CRQ_CMD_RSP = 128,
52907 	VIOSRP_CRQ_INIT_RSP = 192,
52908 	VIOSRP_CRQ_XPORT_EVENT = 255,
52909 };
52910 
52911 enum viosrp_crq_init_formats {
52912 	VIOSRP_CRQ_INIT = 1,
52913 	VIOSRP_CRQ_INIT_COMPLETE = 2,
52914 };
52915 
52916 enum viosrp_crq_formats {
52917 	VIOSRP_SRP_FORMAT = 1,
52918 	VIOSRP_MAD_FORMAT = 2,
52919 	VIOSRP_OS400_FORMAT = 3,
52920 	VIOSRP_AIX_FORMAT = 4,
52921 	VIOSRP_LINUX_FORMAT = 5,
52922 	VIOSRP_INLINE_FORMAT = 6,
52923 };
52924 
52925 enum viosrp_crq_status {
52926 	VIOSRP_OK = 0,
52927 	VIOSRP_NONRECOVERABLE_ERR = 1,
52928 	VIOSRP_VIOLATES_MAX_XFER = 2,
52929 	VIOSRP_PARTNER_PANIC = 3,
52930 	VIOSRP_DEVICE_BUSY = 8,
52931 	VIOSRP_ADAPTER_FAIL = 16,
52932 	VIOSRP_OK2 = 153,
52933 };
52934 
52935 struct viosrp_crq {
52936 	union {
52937 		__be64 high;
52938 		struct {
52939 			u8 valid;
52940 			u8 format;
52941 			u8 reserved;
52942 			u8 status;
52943 			__be16 timeout;
52944 			__be16 IU_length;
52945 		};
52946 	};
52947 	__be64 IU_data_ptr;
52948 };
52949 
52950 enum viosrp_mad_types {
52951 	VIOSRP_EMPTY_IU_TYPE = 1,
52952 	VIOSRP_ERROR_LOG_TYPE = 2,
52953 	VIOSRP_ADAPTER_INFO_TYPE = 3,
52954 	VIOSRP_CAPABILITIES_TYPE = 5,
52955 	VIOSRP_ENABLE_FAST_FAIL = 8,
52956 };
52957 
52958 enum viosrp_mad_status {
52959 	VIOSRP_MAD_SUCCESS = 0,
52960 	VIOSRP_MAD_NOT_SUPPORTED = 241,
52961 	VIOSRP_MAD_FAILED = 247,
52962 };
52963 
52964 enum viosrp_capability_type {
52965 	MIGRATION_CAPABILITIES = 1,
52966 	RESERVATION_CAPABILITIES = 2,
52967 };
52968 
52969 enum viosrp_capability_support {
52970 	SERVER_DOES_NOT_SUPPORTS_CAP = 0,
52971 	SERVER_SUPPORTS_CAP = 1,
52972 	SERVER_CAP_DATA = 2,
52973 };
52974 
52975 enum viosrp_reserve_type {
52976 	CLIENT_RESERVE_SCSI_2 = 1,
52977 };
52978 
52979 enum viosrp_capability_flag {
52980 	CLIENT_MIGRATED = 1,
52981 	CLIENT_RECONNECT = 2,
52982 	CAP_LIST_SUPPORTED = 4,
52983 	CAP_LIST_DATA = 8,
52984 };
52985 
52986 struct mad_common {
52987 	__be32 type;
52988 	__be16 status;
52989 	__be16 length;
52990 	__be64 tag;
52991 };
52992 
52993 struct viosrp_empty_iu {
52994 	struct mad_common common;
52995 	__be64 buffer;
52996 	__be32 port;
52997 };
52998 
52999 struct viosrp_error_log {
53000 	struct mad_common common;
53001 	__be64 buffer;
53002 };
53003 
53004 struct viosrp_adapter_info {
53005 	struct mad_common common;
53006 	__be64 buffer;
53007 };
53008 
53009 struct viosrp_fast_fail {
53010 	struct mad_common common;
53011 };
53012 
53013 struct viosrp_capabilities {
53014 	struct mad_common common;
53015 	__be64 buffer;
53016 };
53017 
53018 struct mad_capability_common {
53019 	__be32 cap_type;
53020 	__be16 length;
53021 	__be16 server_support;
53022 };
53023 
53024 struct mad_reserve_cap {
53025 	struct mad_capability_common common;
53026 	__be32 type;
53027 };
53028 
53029 struct mad_migration_cap {
53030 	struct mad_capability_common common;
53031 	__be32 ecl;
53032 };
53033 
53034 struct capabilities {
53035 	__be32 flags;
53036 	char name[32];
53037 	char loc[32];
53038 	struct mad_migration_cap migration;
53039 	struct mad_reserve_cap reserve;
53040 };
53041 
53042 union mad_iu {
53043 	struct viosrp_empty_iu empty_iu;
53044 	struct viosrp_error_log error_log;
53045 	struct viosrp_adapter_info adapter_info;
53046 	struct viosrp_fast_fail fast_fail;
53047 	struct viosrp_capabilities capabilities;
53048 };
53049 
53050 union viosrp_iu {
53051 	union srp_iu srp;
53052 	union mad_iu mad;
53053 };
53054 
53055 struct mad_adapter_info_data {
53056 	char srp_version[8];
53057 	char partition_name[96];
53058 	__be32 partition_number;
53059 	__be32 mad_version;
53060 	__be32 os_type;
53061 	__be32 port_max_txu[8];
53062 };
53063 
53064 struct crq_queue {
53065 	struct viosrp_crq *msgs;
53066 	int size;
53067 	int cur;
53068 	dma_addr_t msg_token;
53069 	spinlock_t lock;
53070 };
53071 
53072 struct ibmvscsi_host_data;
53073 
53074 struct srp_event_struct {
53075 	union viosrp_iu *xfer_iu;
53076 	struct scsi_cmnd *cmnd;
53077 	struct list_head list;
53078 	void (*done)(struct srp_event_struct *);
53079 	struct viosrp_crq crq;
53080 	struct ibmvscsi_host_data *hostdata;
53081 	atomic_t free;
53082 	union viosrp_iu iu;
53083 	void (*cmnd_done)(struct scsi_cmnd *);
53084 	struct completion comp;
53085 	struct timer_list timer;
53086 	union viosrp_iu *sync_srp;
53087 	struct srp_direct_buf *ext_list;
53088 	dma_addr_t ext_list_token;
53089 };
53090 
53091 enum ibmvscsi_host_action {
53092 	IBMVSCSI_HOST_ACTION_NONE = 0,
53093 	IBMVSCSI_HOST_ACTION_RESET = 1,
53094 	IBMVSCSI_HOST_ACTION_REENABLE = 2,
53095 	IBMVSCSI_HOST_ACTION_UNBLOCK = 3,
53096 };
53097 
53098 struct event_pool {
53099 	struct srp_event_struct *events;
53100 	u32 size;
53101 	int next;
53102 	union viosrp_iu *iu_storage;
53103 	dma_addr_t iu_token;
53104 };
53105 
53106 struct ibmvscsi_host_data {
53107 	struct list_head host_list;
53108 	atomic_t request_limit;
53109 	int client_migrated;
53110 	enum ibmvscsi_host_action action;
53111 	struct device *dev;
53112 	struct event_pool pool;
53113 	struct crq_queue queue;
53114 	struct tasklet_struct srp_task;
53115 	struct list_head sent;
53116 	struct Scsi_Host *host;
53117 	struct task_struct *work_thread;
53118 	wait_queue_head_t work_wait_q;
53119 	struct mad_adapter_info_data madapter_info;
53120 	struct capabilities caps;
53121 	dma_addr_t caps_addr;
53122 	dma_addr_t adapter_info_addr;
53123 };
53124 
53125 struct sil24_prb {
53126 	__le16 ctrl;
53127 	__le16 prot;
53128 	__le32 rx_cnt;
53129 	u8 fis[24];
53130 };
53131 
53132 struct sil24_sge {
53133 	__le64 addr;
53134 	__le32 cnt;
53135 	__le32 flags;
53136 };
53137 
53138 enum {
53139 	SIL24_HOST_BAR = 0,
53140 	SIL24_PORT_BAR = 2,
53141 	SIL24_PRB_SZ = 64,
53142 	SIL24_MAX_SGT = 1023,
53143 	SIL24_MAX_SGE = 4093,
53144 	HOST_SLOT_STAT = 0,
53145 	HOST_CTRL = 64,
53146 	HOST_IRQ_STAT = 68,
53147 	HOST_PHY_CFG = 72,
53148 	HOST_BIST_CTRL = 80,
53149 	HOST_BIST_PTRN = 84,
53150 	HOST_BIST_STAT = 88,
53151 	HOST_MEM_BIST_STAT = 92,
53152 	HOST_FLASH_CMD = 112,
53153 	HOST_FLASH_DATA = 116,
53154 	HOST_TRANSITION_DETECT = 117,
53155 	HOST_GPIO_CTRL = 118,
53156 	HOST_I2C_ADDR = 120,
53157 	HOST_I2C_DATA = 124,
53158 	HOST_I2C_XFER_CNT = 126,
53159 	HOST_I2C_CTRL = 127,
53160 	HOST_SSTAT_ATTN = -2147483648,
53161 	HOST_CTRL_M66EN = 65536,
53162 	HOST_CTRL_TRDY = 131072,
53163 	HOST_CTRL_STOP = 262144,
53164 	HOST_CTRL_DEVSEL = 524288,
53165 	HOST_CTRL_REQ64 = 1048576,
53166 	HOST_CTRL_GLOBAL_RST = -2147483648,
53167 	PORT_REGS_SIZE = 8192,
53168 	PORT_LRAM = 0,
53169 	PORT_LRAM_SLOT_SZ = 128,
53170 	PORT_PMP = 3968,
53171 	PORT_PMP_STATUS = 0,
53172 	PORT_PMP_QACTIVE = 4,
53173 	PORT_PMP_SIZE = 8,
53174 	PORT_CTRL_STAT = 4096,
53175 	PORT_CTRL_CLR = 4100,
53176 	PORT_IRQ_STAT = 4104,
53177 	PORT_IRQ_ENABLE_SET = 4112,
53178 	PORT_IRQ_ENABLE_CLR = 4116,
53179 	PORT_ACTIVATE_UPPER_ADDR = 4124,
53180 	PORT_EXEC_FIFO = 4128,
53181 	PORT_CMD_ERR = 4132,
53182 	PORT_FIS_CFG = 4136,
53183 	PORT_FIFO_THRES = 4140,
53184 	PORT_DECODE_ERR_CNT = 4160,
53185 	PORT_DECODE_ERR_THRESH = 4162,
53186 	PORT_CRC_ERR_CNT = 4164,
53187 	PORT_CRC_ERR_THRESH = 4166,
53188 	PORT_HSHK_ERR_CNT = 4168,
53189 	PORT_HSHK_ERR_THRESH = 4170,
53190 	PORT_PHY_CFG = 4176,
53191 	PORT_SLOT_STAT = 6144,
53192 	PORT_CMD_ACTIVATE = 7168,
53193 	PORT_CONTEXT = 7684,
53194 	PORT_EXEC_DIAG = 7680,
53195 	PORT_PSD_DIAG = 7744,
53196 	PORT_SCONTROL = 7936,
53197 	PORT_SSTATUS = 7940,
53198 	PORT_SERROR = 7944,
53199 	PORT_SACTIVE = 7948,
53200 	PORT_CS_PORT_RST = 1,
53201 	PORT_CS_DEV_RST = 2,
53202 	PORT_CS_INIT = 4,
53203 	PORT_CS_IRQ_WOC = 8,
53204 	PORT_CS_CDB16 = 32,
53205 	PORT_CS_PMP_RESUME = 64,
53206 	PORT_CS_32BIT_ACTV = 1024,
53207 	PORT_CS_PMP_EN = 8192,
53208 	PORT_CS_RDY = -2147483648,
53209 	PORT_IRQ_COMPLETE = 1,
53210 	PORT_IRQ_ERROR = 2,
53211 	PORT_IRQ_PORTRDY_CHG = 4,
53212 	PORT_IRQ_PWR_CHG = 8,
53213 	PORT_IRQ_PHYRDY_CHG = 16,
53214 	PORT_IRQ_COMWAKE = 32,
53215 	PORT_IRQ_UNK_FIS = 64,
53216 	PORT_IRQ_DEV_XCHG = 128,
53217 	PORT_IRQ_8B10B = 256,
53218 	PORT_IRQ_CRC = 512,
53219 	PORT_IRQ_HANDSHAKE = 1024,
53220 	PORT_IRQ_SDB_NOTIFY = 2048,
53221 	DEF_PORT_IRQ = 2259,
53222 	PORT_IRQ_RAW_SHIFT = 16,
53223 	PORT_IRQ_MASKED_MASK = 2047,
53224 	PORT_IRQ_RAW_MASK = 134152192,
53225 	PORT_IRQ_STEER_SHIFT = 30,
53226 	PORT_IRQ_STEER_MASK = -1073741824,
53227 	PORT_CERR_DEV = 1,
53228 	PORT_CERR_SDB = 2,
53229 	PORT_CERR_DATA = 3,
53230 	PORT_CERR_SEND = 4,
53231 	PORT_CERR_INCONSISTENT = 5,
53232 	PORT_CERR_DIRECTION = 6,
53233 	PORT_CERR_UNDERRUN = 7,
53234 	PORT_CERR_OVERRUN = 8,
53235 	PORT_CERR_PKT_PROT = 11,
53236 	PORT_CERR_SGT_BOUNDARY = 16,
53237 	PORT_CERR_SGT_TGTABRT = 17,
53238 	PORT_CERR_SGT_MSTABRT = 18,
53239 	PORT_CERR_SGT_PCIPERR = 19,
53240 	PORT_CERR_CMD_BOUNDARY = 24,
53241 	PORT_CERR_CMD_TGTABRT = 25,
53242 	PORT_CERR_CMD_MSTABRT = 26,
53243 	PORT_CERR_CMD_PCIPERR = 27,
53244 	PORT_CERR_XFR_UNDEF = 32,
53245 	PORT_CERR_XFR_TGTABRT = 33,
53246 	PORT_CERR_XFR_MSTABRT = 34,
53247 	PORT_CERR_XFR_PCIPERR = 35,
53248 	PORT_CERR_SENDSERVICE = 36,
53249 	PRB_CTRL_PROTOCOL = 1,
53250 	PRB_CTRL_PACKET_READ = 16,
53251 	PRB_CTRL_PACKET_WRITE = 32,
53252 	PRB_CTRL_NIEN = 64,
53253 	PRB_CTRL_SRST = 128,
53254 	PRB_PROT_PACKET = 1,
53255 	PRB_PROT_TCQ = 2,
53256 	PRB_PROT_NCQ = 4,
53257 	PRB_PROT_READ = 8,
53258 	PRB_PROT_WRITE = 16,
53259 	PRB_PROT_TRANSPARENT = 32,
53260 	SGE_TRM = -2147483648,
53261 	SGE_LNK = 1073741824,
53262 	SGE_DRD = 536870912,
53263 	SIL24_MAX_CMDS = 31,
53264 	BID_SIL3124 = 0,
53265 	BID_SIL3132 = 1,
53266 	BID_SIL3131 = 2,
53267 	SIL24_COMMON_FLAGS = 918658,
53268 	SIL24_FLAG_PCIX_IRQ_WOC = 16777216,
53269 	IRQ_STAT_4PORTS = 15,
53270 };
53271 
53272 struct sil24_ata_block {
53273 	struct sil24_prb prb;
53274 	struct sil24_sge sge[4093];
53275 };
53276 
53277 struct sil24_atapi_block {
53278 	struct sil24_prb prb;
53279 	u8 cdb[16];
53280 	struct sil24_sge sge[4093];
53281 };
53282 
53283 union sil24_cmd_block {
53284 	struct sil24_ata_block ata;
53285 	struct sil24_atapi_block atapi;
53286 };
53287 
53288 struct sil24_cerr_info {
53289 	unsigned int err_mask;
53290 	unsigned int action;
53291 	const char *desc;
53292 };
53293 
53294 struct sil24_port_priv {
53295 	union sil24_cmd_block *cmd_block;
53296 	dma_addr_t cmd_block_dma;
53297 	int do_port_rst;
53298 };
53299 
53300 typedef enum {
53301 	e1000_undefined = 0,
53302 	e1000_82542_rev2_0 = 1,
53303 	e1000_82542_rev2_1 = 2,
53304 	e1000_82543 = 3,
53305 	e1000_82544 = 4,
53306 	e1000_82540 = 5,
53307 	e1000_82545 = 6,
53308 	e1000_82545_rev_3 = 7,
53309 	e1000_82546 = 8,
53310 	e1000_ce4100 = 9,
53311 	e1000_82546_rev_3 = 10,
53312 	e1000_82541 = 11,
53313 	e1000_82541_rev_2 = 12,
53314 	e1000_82547 = 13,
53315 	e1000_82547_rev_2 = 14,
53316 	e1000_num_macs = 15,
53317 } e1000_mac_type;
53318 
53319 typedef enum {
53320 	e1000_eeprom_uninitialized = 0,
53321 	e1000_eeprom_spi = 1,
53322 	e1000_eeprom_microwire = 2,
53323 	e1000_eeprom_flash = 3,
53324 	e1000_eeprom_none = 4,
53325 	e1000_num_eeprom_types = 5,
53326 } e1000_eeprom_type;
53327 
53328 typedef enum {
53329 	e1000_media_type_copper___2 = 0,
53330 	e1000_media_type_fiber___2 = 1,
53331 	e1000_media_type_internal_serdes___2 = 2,
53332 	e1000_num_media_types___2 = 3,
53333 } e1000_media_type;
53334 
53335 typedef enum {
53336 	E1000_FC_NONE = 0,
53337 	E1000_FC_RX_PAUSE = 1,
53338 	E1000_FC_TX_PAUSE = 2,
53339 	E1000_FC_FULL = 3,
53340 	E1000_FC_DEFAULT = 255,
53341 } e1000_fc_type;
53342 
53343 struct e1000_shadow_ram___2 {
53344 	u16 eeprom_word;
53345 	bool modified;
53346 };
53347 
53348 typedef enum {
53349 	e1000_bus_type_unknown = 0,
53350 	e1000_bus_type_pci = 1,
53351 	e1000_bus_type_pcix = 2,
53352 	e1000_bus_type_reserved = 3,
53353 } e1000_bus_type;
53354 
53355 typedef enum {
53356 	e1000_bus_speed_unknown = 0,
53357 	e1000_bus_speed_33 = 1,
53358 	e1000_bus_speed_66 = 2,
53359 	e1000_bus_speed_100 = 3,
53360 	e1000_bus_speed_120 = 4,
53361 	e1000_bus_speed_133 = 5,
53362 	e1000_bus_speed_reserved = 6,
53363 } e1000_bus_speed;
53364 
53365 typedef enum {
53366 	e1000_bus_width_unknown___2 = 0,
53367 	e1000_bus_width_32___2 = 1,
53368 	e1000_bus_width_64___2 = 2,
53369 	e1000_bus_width_reserved___2 = 3,
53370 } e1000_bus_width;
53371 
53372 typedef enum {
53373 	e1000_cable_length_50 = 0,
53374 	e1000_cable_length_50_80 = 1,
53375 	e1000_cable_length_80_110 = 2,
53376 	e1000_cable_length_110_140 = 3,
53377 	e1000_cable_length_140 = 4,
53378 	e1000_cable_length_undefined = 255,
53379 } e1000_cable_length;
53380 
53381 typedef enum {
53382 	e1000_10bt_ext_dist_enable_normal = 0,
53383 	e1000_10bt_ext_dist_enable_lower = 1,
53384 	e1000_10bt_ext_dist_enable_undefined = 255,
53385 } e1000_10bt_ext_dist_enable;
53386 
53387 typedef enum {
53388 	e1000_rev_polarity_normal___2 = 0,
53389 	e1000_rev_polarity_reversed___2 = 1,
53390 	e1000_rev_polarity_undefined___2 = 255,
53391 } e1000_rev_polarity;
53392 
53393 typedef enum {
53394 	e1000_downshift_normal = 0,
53395 	e1000_downshift_activated = 1,
53396 	e1000_downshift_undefined = 255,
53397 } e1000_downshift;
53398 
53399 typedef enum {
53400 	e1000_smart_speed_default___2 = 0,
53401 	e1000_smart_speed_on___2 = 1,
53402 	e1000_smart_speed_off___2 = 2,
53403 } e1000_smart_speed;
53404 
53405 typedef enum {
53406 	e1000_polarity_reversal_enabled = 0,
53407 	e1000_polarity_reversal_disabled = 1,
53408 	e1000_polarity_reversal_undefined = 255,
53409 } e1000_polarity_reversal;
53410 
53411 typedef enum {
53412 	e1000_auto_x_mode_manual_mdi = 0,
53413 	e1000_auto_x_mode_manual_mdix = 1,
53414 	e1000_auto_x_mode_auto1 = 2,
53415 	e1000_auto_x_mode_auto2 = 3,
53416 	e1000_auto_x_mode_undefined = 255,
53417 } e1000_auto_x_mode;
53418 
53419 typedef enum {
53420 	e1000_1000t_rx_status_not_ok___2 = 0,
53421 	e1000_1000t_rx_status_ok___2 = 1,
53422 	e1000_1000t_rx_status_undefined___2 = 255,
53423 } e1000_1000t_rx_status;
53424 
53425 typedef enum {
53426 	e1000_phy_m88___2 = 0,
53427 	e1000_phy_igp___2 = 1,
53428 	e1000_phy_8211 = 2,
53429 	e1000_phy_8201 = 3,
53430 	e1000_phy_undefined = 255,
53431 } e1000_phy_type;
53432 
53433 typedef enum {
53434 	e1000_ms_hw_default___2 = 0,
53435 	e1000_ms_force_master___2 = 1,
53436 	e1000_ms_force_slave___2 = 2,
53437 	e1000_ms_auto___2 = 3,
53438 } e1000_ms_type;
53439 
53440 typedef enum {
53441 	e1000_ffe_config_enabled = 0,
53442 	e1000_ffe_config_active = 1,
53443 	e1000_ffe_config_blocked = 2,
53444 } e1000_ffe_config;
53445 
53446 typedef enum {
53447 	e1000_dsp_config_disabled = 0,
53448 	e1000_dsp_config_enabled = 1,
53449 	e1000_dsp_config_activated = 2,
53450 	e1000_dsp_config_undefined = 255,
53451 } e1000_dsp_config;
53452 
53453 struct e1000_phy_info___2 {
53454 	e1000_cable_length cable_length;
53455 	e1000_10bt_ext_dist_enable extended_10bt_distance;
53456 	e1000_rev_polarity cable_polarity;
53457 	e1000_downshift downshift;
53458 	e1000_polarity_reversal polarity_correction;
53459 	e1000_auto_x_mode mdix_mode;
53460 	e1000_1000t_rx_status local_rx;
53461 	e1000_1000t_rx_status remote_rx;
53462 };
53463 
53464 struct e1000_eeprom_info {
53465 	e1000_eeprom_type type;
53466 	u16 word_size;
53467 	u16 opcode_bits;
53468 	u16 address_bits;
53469 	u16 delay_usec;
53470 	u16 page_size;
53471 };
53472 
53473 struct e1000_rx_desc {
53474 	__le64 buffer_addr;
53475 	__le16 length;
53476 	__le16 csum;
53477 	u8 status;
53478 	u8 errors;
53479 	__le16 special;
53480 };
53481 
53482 struct e1000_tx_desc {
53483 	__le64 buffer_addr;
53484 	union {
53485 		__le32 data;
53486 		struct {
53487 			__le16 length;
53488 			u8 cso;
53489 			u8 cmd;
53490 		} flags;
53491 	} lower;
53492 	union {
53493 		__le32 data;
53494 		struct {
53495 			u8 status;
53496 			u8 css;
53497 			__le16 special;
53498 		} fields;
53499 	} upper;
53500 };
53501 
53502 struct e1000_hw_stats___2 {
53503 	u64 crcerrs;
53504 	u64 algnerrc;
53505 	u64 symerrs;
53506 	u64 rxerrc;
53507 	u64 txerrc;
53508 	u64 mpc;
53509 	u64 scc;
53510 	u64 ecol;
53511 	u64 mcc;
53512 	u64 latecol;
53513 	u64 colc;
53514 	u64 dc;
53515 	u64 tncrs;
53516 	u64 sec;
53517 	u64 cexterr;
53518 	u64 rlec;
53519 	u64 xonrxc;
53520 	u64 xontxc;
53521 	u64 xoffrxc;
53522 	u64 xofftxc;
53523 	u64 fcruc;
53524 	u64 prc64;
53525 	u64 prc127;
53526 	u64 prc255;
53527 	u64 prc511;
53528 	u64 prc1023;
53529 	u64 prc1522;
53530 	u64 gprc;
53531 	u64 bprc;
53532 	u64 mprc;
53533 	u64 gptc;
53534 	u64 gorcl;
53535 	u64 gorch;
53536 	u64 gotcl;
53537 	u64 gotch;
53538 	u64 rnbc;
53539 	u64 ruc;
53540 	u64 rfc;
53541 	u64 roc;
53542 	u64 rlerrc;
53543 	u64 rjc;
53544 	u64 mgprc;
53545 	u64 mgpdc;
53546 	u64 mgptc;
53547 	u64 torl;
53548 	u64 torh;
53549 	u64 totl;
53550 	u64 toth;
53551 	u64 tpr;
53552 	u64 tpt;
53553 	u64 ptc64;
53554 	u64 ptc127;
53555 	u64 ptc255;
53556 	u64 ptc511;
53557 	u64 ptc1023;
53558 	u64 ptc1522;
53559 	u64 mptc;
53560 	u64 bptc;
53561 	u64 tsctc;
53562 	u64 tsctfc;
53563 	u64 iac;
53564 	u64 icrxptc;
53565 	u64 icrxatc;
53566 	u64 ictxptc;
53567 	u64 ictxatc;
53568 	u64 ictxqec;
53569 	u64 ictxqmtc;
53570 	u64 icrxdmtc;
53571 	u64 icrxoc;
53572 };
53573 
53574 struct e1000_hw___2 {
53575 	u8 *hw_addr;
53576 	u8 *flash_address;
53577 	void *ce4100_gbe_mdio_base_virt;
53578 	e1000_mac_type mac_type;
53579 	e1000_phy_type phy_type;
53580 	u32 phy_init_script;
53581 	e1000_media_type media_type;
53582 	void *back;
53583 	struct e1000_shadow_ram___2 *eeprom_shadow_ram;
53584 	u32 flash_bank_size;
53585 	u32 flash_base_addr;
53586 	e1000_fc_type fc;
53587 	e1000_bus_speed bus_speed;
53588 	e1000_bus_width bus_width;
53589 	e1000_bus_type bus_type;
53590 	struct e1000_eeprom_info eeprom;
53591 	e1000_ms_type master_slave;
53592 	e1000_ms_type original_master_slave;
53593 	e1000_ffe_config ffe_config_state;
53594 	u32 asf_firmware_present;
53595 	u32 eeprom_semaphore_present;
53596 	long unsigned int io_base;
53597 	u32 phy_id;
53598 	u32 phy_revision;
53599 	u32 phy_addr;
53600 	u32 original_fc;
53601 	u32 txcw;
53602 	u32 autoneg_failed;
53603 	u32 max_frame_size;
53604 	u32 min_frame_size;
53605 	u32 mc_filter_type;
53606 	u32 num_mc_addrs;
53607 	u32 collision_delta;
53608 	u32 tx_packet_delta;
53609 	u32 ledctl_default;
53610 	u32 ledctl_mode1;
53611 	u32 ledctl_mode2;
53612 	bool tx_pkt_filtering;
53613 	struct e1000_host_mng_dhcp_cookie mng_cookie;
53614 	u16 phy_spd_default;
53615 	u16 autoneg_advertised;
53616 	u16 pci_cmd_word;
53617 	u16 fc_high_water;
53618 	u16 fc_low_water;
53619 	u16 fc_pause_time;
53620 	u16 current_ifs_val;
53621 	u16 ifs_min_val;
53622 	u16 ifs_max_val;
53623 	u16 ifs_step_size;
53624 	u16 ifs_ratio;
53625 	u16 device_id;
53626 	u16 vendor_id;
53627 	u16 subsystem_id;
53628 	u16 subsystem_vendor_id;
53629 	u8 revision_id;
53630 	u8 autoneg;
53631 	u8 mdix;
53632 	u8 forced_speed_duplex;
53633 	u8 wait_autoneg_complete;
53634 	u8 dma_fairness;
53635 	u8 mac_addr[6];
53636 	u8 perm_mac_addr[6];
53637 	bool disable_polarity_correction;
53638 	bool speed_downgraded;
53639 	e1000_smart_speed smart_speed;
53640 	e1000_dsp_config dsp_config_state;
53641 	bool get_link_status;
53642 	bool serdes_has_link;
53643 	bool tbi_compatibility_en;
53644 	bool tbi_compatibility_on;
53645 	bool laa_is_present;
53646 	bool phy_reset_disable;
53647 	bool initialize_hw_bits_disable;
53648 	bool fc_send_xon;
53649 	bool fc_strict_ieee;
53650 	bool report_tx_early;
53651 	bool adaptive_ifs;
53652 	bool ifs_params_forced;
53653 	bool in_ifs_mode;
53654 	bool mng_reg_access_disabled;
53655 	bool leave_av_bit_off;
53656 	bool bad_tx_carr_stats_fd;
53657 	bool has_smbus;
53658 };
53659 
53660 struct e1000_tx_buffer {
53661 	struct sk_buff *skb;
53662 	dma_addr_t dma;
53663 	long unsigned int time_stamp;
53664 	u16 length;
53665 	u16 next_to_watch;
53666 	bool mapped_as_page;
53667 	short unsigned int segs;
53668 	unsigned int bytecount;
53669 };
53670 
53671 struct e1000_rx_buffer {
53672 	union {
53673 		struct page *page;
53674 		u8 *data;
53675 	} rxbuf;
53676 	dma_addr_t dma;
53677 };
53678 
53679 struct e1000_tx_ring {
53680 	void *desc;
53681 	dma_addr_t dma;
53682 	unsigned int size;
53683 	unsigned int count;
53684 	unsigned int next_to_use;
53685 	unsigned int next_to_clean;
53686 	struct e1000_tx_buffer *buffer_info;
53687 	u16 tdh;
53688 	u16 tdt;
53689 	bool last_tx_tso;
53690 };
53691 
53692 struct e1000_rx_ring {
53693 	void *desc;
53694 	dma_addr_t dma;
53695 	unsigned int size;
53696 	unsigned int count;
53697 	unsigned int next_to_use;
53698 	unsigned int next_to_clean;
53699 	struct e1000_rx_buffer *buffer_info;
53700 	struct sk_buff *rx_skb_top;
53701 	int cpu;
53702 	u16 rdh;
53703 	u16 rdt;
53704 };
53705 
53706 struct e1000_adapter___2 {
53707 	long unsigned int active_vlans[64];
53708 	u16 mng_vlan_id;
53709 	u32 bd_number;
53710 	u32 rx_buffer_len;
53711 	u32 wol;
53712 	u32 smartspeed;
53713 	u32 en_mng_pt;
53714 	u16 link_speed;
53715 	u16 link_duplex;
53716 	spinlock_t stats_lock;
53717 	unsigned int total_tx_bytes;
53718 	unsigned int total_tx_packets;
53719 	unsigned int total_rx_bytes;
53720 	unsigned int total_rx_packets;
53721 	u32 itr;
53722 	u32 itr_setting;
53723 	u16 tx_itr;
53724 	u16 rx_itr;
53725 	u8 fc_autoneg;
53726 	struct e1000_tx_ring *tx_ring;
53727 	unsigned int restart_queue;
53728 	u32 txd_cmd;
53729 	u32 tx_int_delay;
53730 	u32 tx_abs_int_delay;
53731 	u32 gotcl;
53732 	u64 gotcl_old;
53733 	u64 tpt_old;
53734 	u64 colc_old;
53735 	u32 tx_timeout_count;
53736 	u32 tx_fifo_head;
53737 	u32 tx_head_addr;
53738 	u32 tx_fifo_size;
53739 	u8 tx_timeout_factor;
53740 	atomic_t tx_fifo_stall;
53741 	bool pcix_82544;
53742 	bool detect_tx_hung;
53743 	bool dump_buffers;
53744 	bool (*clean_rx)(struct e1000_adapter___2 *, struct e1000_rx_ring *, int *, int);
53745 	void (*alloc_rx_buf)(struct e1000_adapter___2 *, struct e1000_rx_ring *, int);
53746 	struct e1000_rx_ring *rx_ring;
53747 	struct napi_struct napi;
53748 	int num_tx_queues;
53749 	int num_rx_queues;
53750 	u64 hw_csum_err;
53751 	u64 hw_csum_good;
53752 	u32 alloc_rx_buff_failed;
53753 	u32 rx_int_delay;
53754 	u32 rx_abs_int_delay;
53755 	bool rx_csum;
53756 	u32 gorcl;
53757 	u64 gorcl_old;
53758 	struct net_device *netdev;
53759 	struct pci_dev *pdev;
53760 	struct e1000_hw___2 hw;
53761 	struct e1000_hw_stats___2 stats;
53762 	struct e1000_phy_info___2 phy_info;
53763 	struct e1000_phy_stats phy_stats;
53764 	u32 test_icr;
53765 	struct e1000_tx_ring test_tx_ring;
53766 	struct e1000_rx_ring test_rx_ring;
53767 	int msg_enable;
53768 	bool tso_force;
53769 	bool smart_power_down;
53770 	bool quad_port_a;
53771 	long unsigned int flags;
53772 	u32 eeprom_wol;
53773 	int bars;
53774 	int need_ioport;
53775 	bool discarding;
53776 	struct work_struct reset_task;
53777 	struct delayed_work watchdog_task;
53778 	struct delayed_work fifo_stall_task;
53779 	struct delayed_work phy_info_task;
53780 };
53781 
53782 enum e1000_state_t___2 {
53783 	__E1000_TESTING___2 = 0,
53784 	__E1000_RESETTING___2 = 1,
53785 	__E1000_DOWN___2 = 2,
53786 	__E1000_DISABLED = 3,
53787 };
53788 
53789 enum {
53790 	NETDEV_STATS = 0,
53791 	E1000_STATS = 1,
53792 };
53793 
53794 struct e1000_stats {
53795 	char stat_string[32];
53796 	int type;
53797 	int sizeof_stat;
53798 	int stat_offset;
53799 };
53800 
53801 enum usb_led_event {
53802 	USB_LED_EVENT_HOST = 0,
53803 	USB_LED_EVENT_GADGET = 1,
53804 };
53805 
53806 struct usb_hub_descriptor {
53807 	__u8 bDescLength;
53808 	__u8 bDescriptorType;
53809 	__u8 bNbrPorts;
53810 	__le16 wHubCharacteristics;
53811 	__u8 bPwrOn2PwrGood;
53812 	__u8 bHubContrCurrent;
53813 	union {
53814 		struct {
53815 			__u8 DeviceRemovable[4];
53816 			__u8 PortPwrCtrlMask[4];
53817 		} hs;
53818 		struct {
53819 			__u8 bHubHdrDecLat;
53820 			__le16 wHubDelay;
53821 			__le16 DeviceRemovable;
53822 		} __attribute__((packed)) ss;
53823 	} u;
53824 } __attribute__((packed));
53825 
53826 struct usb_mon_operations {
53827 	void (*urb_submit)(struct usb_bus *, struct urb *);
53828 	void (*urb_submit_error)(struct usb_bus *, struct urb *, int);
53829 	void (*urb_complete)(struct usb_bus *, struct urb *, int);
53830 };
53831 
53832 struct ehci_iso_packet {
53833 	u64 bufp;
53834 	__le32 transaction;
53835 	u8 cross;
53836 	u32 buf1;
53837 };
53838 
53839 struct ehci_iso_sched {
53840 	struct list_head td_list;
53841 	unsigned int span;
53842 	unsigned int first_packet;
53843 	struct ehci_iso_packet packet[0];
53844 };
53845 
53846 struct ehci_tt {
53847 	u16 bandwidth[8];
53848 	struct list_head tt_list;
53849 	struct list_head ps_list;
53850 	struct usb_tt *usb_tt;
53851 	int tt_port;
53852 };
53853 
53854 struct i2c_smbus_alert_setup {
53855 	int irq;
53856 };
53857 
53858 struct trace_event_raw_smbus_write {
53859 	struct trace_entry ent;
53860 	int adapter_nr;
53861 	__u16 addr;
53862 	__u16 flags;
53863 	__u8 command;
53864 	__u8 len;
53865 	__u32 protocol;
53866 	__u8 buf[34];
53867 	char __data[0];
53868 };
53869 
53870 struct trace_event_raw_smbus_read {
53871 	struct trace_entry ent;
53872 	int adapter_nr;
53873 	__u16 flags;
53874 	__u16 addr;
53875 	__u8 command;
53876 	__u32 protocol;
53877 	__u8 buf[34];
53878 	char __data[0];
53879 };
53880 
53881 struct trace_event_raw_smbus_reply {
53882 	struct trace_entry ent;
53883 	int adapter_nr;
53884 	__u16 addr;
53885 	__u16 flags;
53886 	__u8 command;
53887 	__u8 len;
53888 	__u32 protocol;
53889 	__u8 buf[34];
53890 	char __data[0];
53891 };
53892 
53893 struct trace_event_raw_smbus_result {
53894 	struct trace_entry ent;
53895 	int adapter_nr;
53896 	__u16 addr;
53897 	__u16 flags;
53898 	__u8 read_write;
53899 	__u8 command;
53900 	__s16 res;
53901 	__u32 protocol;
53902 	char __data[0];
53903 };
53904 
53905 struct trace_event_data_offsets_smbus_write {};
53906 
53907 struct trace_event_data_offsets_smbus_read {};
53908 
53909 struct trace_event_data_offsets_smbus_reply {};
53910 
53911 struct trace_event_data_offsets_smbus_result {};
53912 
53913 typedef void (*btf_trace_smbus_write)(void *, const struct i2c_adapter *, u16, short unsigned int, char, u8, int, const union i2c_smbus_data *);
53914 
53915 typedef void (*btf_trace_smbus_read)(void *, const struct i2c_adapter *, u16, short unsigned int, char, u8, int);
53916 
53917 typedef void (*btf_trace_smbus_reply)(void *, const struct i2c_adapter *, u16, short unsigned int, char, u8, int, const union i2c_smbus_data *, int);
53918 
53919 typedef void (*btf_trace_smbus_result)(void *, const struct i2c_adapter *, u16, short unsigned int, char, u8, int, int);
53920 
53921 enum {
53922 	GENHD_FL_REMOVABLE = 1,
53923 	GENHD_FL_HIDDEN = 2,
53924 	GENHD_FL_NO_PART = 4,
53925 };
53926 
53927 enum {
53928 	DM_TIO_INSIDE_DM_IO = 0,
53929 	DM_TIO_IS_DUPLICATE_BIO = 1,
53930 };
53931 
53932 enum {
53933 	DM_IO_ACCOUNTED = 0,
53934 	DM_IO_WAS_SPLIT = 1,
53935 };
53936 
53937 struct dax_holder_operations {
53938 	int (*notify_failure)(struct dax_device *, u64, u64, int);
53939 };
53940 
53941 struct clone_info {
53942 	struct dm_table *map;
53943 	struct bio *bio;
53944 	struct dm_io *io;
53945 	sector_t sector;
53946 	unsigned int sector_count;
53947 	bool is_abnormal_io: 1;
53948 	bool submit_as_polled: 1;
53949 };
53950 
53951 struct table_device {
53952 	struct list_head list;
53953 	refcount_t count;
53954 	struct dm_dev dm_dev;
53955 };
53956 
53957 struct dm_pr {
53958 	u64 old_key;
53959 	u64 new_key;
53960 	u32 flags;
53961 	bool abort;
53962 	bool fail_early;
53963 	int ret;
53964 	enum pr_type type;
53965 };
53966 
53967 struct srcu_notifier_head {
53968 	struct mutex mutex;
53969 	struct srcu_struct srcu;
53970 	struct notifier_block *head;
53971 };
53972 
53973 struct subsys_interface {
53974 	const char *name;
53975 	struct bus_type *subsys;
53976 	struct list_head node;
53977 	int (*add_dev)(struct device *, struct subsys_interface *);
53978 	void (*remove_dev)(struct device *, struct subsys_interface *);
53979 };
53980 
53981 struct thermal_cooling_device_ops;
53982 
53983 struct thermal_cooling_device {
53984 	int id;
53985 	char *type;
53986 	struct device device;
53987 	struct device_node *np;
53988 	void *devdata;
53989 	void *stats;
53990 	const struct thermal_cooling_device_ops *ops;
53991 	bool updated;
53992 	struct mutex lock;
53993 	struct list_head thermal_instances;
53994 	struct list_head node;
53995 };
53996 
53997 struct cpufreq_freqs {
53998 	struct cpufreq_policy *policy;
53999 	unsigned int old;
54000 	unsigned int new;
54001 	u8 flags;
54002 };
54003 
54004 struct cpufreq_driver {
54005 	char name[16];
54006 	u16 flags;
54007 	void *driver_data;
54008 	int (*init)(struct cpufreq_policy *);
54009 	int (*verify)(struct cpufreq_policy_data *);
54010 	int (*setpolicy)(struct cpufreq_policy *);
54011 	int (*target)(struct cpufreq_policy *, unsigned int, unsigned int);
54012 	int (*target_index)(struct cpufreq_policy *, unsigned int);
54013 	unsigned int (*fast_switch)(struct cpufreq_policy *, unsigned int);
54014 	void (*adjust_perf)(unsigned int, long unsigned int, long unsigned int, long unsigned int);
54015 	unsigned int (*get_intermediate)(struct cpufreq_policy *, unsigned int);
54016 	int (*target_intermediate)(struct cpufreq_policy *, unsigned int);
54017 	unsigned int (*get)(unsigned int);
54018 	void (*update_limits)(unsigned int);
54019 	int (*bios_limit)(int, unsigned int *);
54020 	int (*online)(struct cpufreq_policy *);
54021 	int (*offline)(struct cpufreq_policy *);
54022 	int (*exit)(struct cpufreq_policy *);
54023 	int (*suspend)(struct cpufreq_policy *);
54024 	int (*resume)(struct cpufreq_policy *);
54025 	void (*ready)(struct cpufreq_policy *);
54026 	struct freq_attr **attr;
54027 	bool boost_enabled;
54028 	int (*set_boost)(struct cpufreq_policy *, int);
54029 	void (*register_em)(struct cpufreq_policy *);
54030 };
54031 
54032 struct thermal_cooling_device_ops {
54033 	int (*get_max_state)(struct thermal_cooling_device *, long unsigned int *);
54034 	int (*get_cur_state)(struct thermal_cooling_device *, long unsigned int *);
54035 	int (*set_cur_state)(struct thermal_cooling_device *, long unsigned int);
54036 	int (*get_requested_power)(struct thermal_cooling_device *, u32 *);
54037 	int (*state2power)(struct thermal_cooling_device *, long unsigned int, u32 *);
54038 	int (*power2state)(struct thermal_cooling_device *, u32, long unsigned int *);
54039 };
54040 
54041 struct alias_prop {
54042 	struct list_head link;
54043 	const char *alias;
54044 	struct device_node *np;
54045 	int id;
54046 	char stem[0];
54047 };
54048 
54049 struct __kernel_old_timespec {
54050 	__kernel_old_time_t tv_sec;
54051 	long int tv_nsec;
54052 };
54053 
54054 struct __kernel_sock_timeval {
54055 	__s64 tv_sec;
54056 	__s64 tv_usec;
54057 };
54058 
54059 struct user_msghdr {
54060 	void *msg_name;
54061 	int msg_namelen;
54062 	struct iovec *msg_iov;
54063 	__kernel_size_t msg_iovlen;
54064 	void *msg_control;
54065 	__kernel_size_t msg_controllen;
54066 	unsigned int msg_flags;
54067 };
54068 
54069 struct mmsghdr {
54070 	struct user_msghdr msg_hdr;
54071 	unsigned int msg_len;
54072 };
54073 
54074 struct scm_timestamping_internal {
54075 	struct timespec64 ts[3];
54076 };
54077 
54078 enum sock_shutdown_cmd {
54079 	SHUT_RD = 0,
54080 	SHUT_WR = 1,
54081 	SHUT_RDWR = 2,
54082 };
54083 
54084 struct net_proto_family {
54085 	int family;
54086 	int (*create)(struct net *, struct socket *, int, int);
54087 	struct module *owner;
54088 };
54089 
54090 enum {
54091 	SOCK_WAKE_IO = 0,
54092 	SOCK_WAKE_WAITD = 1,
54093 	SOCK_WAKE_SPACE = 2,
54094 	SOCK_WAKE_URG = 3,
54095 };
54096 
54097 struct ifconf {
54098 	int ifc_len;
54099 	union {
54100 		char *ifcu_buf;
54101 		struct ifreq *ifcu_req;
54102 	} ifc_ifcu;
54103 };
54104 
54105 struct scm_ts_pktinfo {
54106 	__u32 if_index;
54107 	__u32 pkt_length;
54108 	__u32 reserved[2];
54109 };
54110 
54111 struct sock_skb_cb {
54112 	u32 dropcount;
54113 };
54114 
54115 typedef s32 compat_int_t;
54116 
54117 typedef u32 compat_uint_t;
54118 
54119 typedef u32 compat_ulong_t;
54120 
54121 typedef u32 compat_caddr_t;
54122 
54123 struct compat_ifmap {
54124 	compat_ulong_t mem_start;
54125 	compat_ulong_t mem_end;
54126 	short unsigned int base_addr;
54127 	unsigned char irq;
54128 	unsigned char dma;
54129 	unsigned char port;
54130 };
54131 
54132 struct compat_if_settings {
54133 	unsigned int type;
54134 	unsigned int size;
54135 	compat_uptr_t ifs_ifsu;
54136 };
54137 
54138 struct compat_ifreq {
54139 	union {
54140 		char ifrn_name[16];
54141 	} ifr_ifrn;
54142 	union {
54143 		struct sockaddr ifru_addr;
54144 		struct sockaddr ifru_dstaddr;
54145 		struct sockaddr ifru_broadaddr;
54146 		struct sockaddr ifru_netmask;
54147 		struct sockaddr ifru_hwaddr;
54148 		short int ifru_flags;
54149 		compat_int_t ifru_ivalue;
54150 		compat_int_t ifru_mtu;
54151 		struct compat_ifmap ifru_map;
54152 		char ifru_slave[16];
54153 		char ifru_newname[16];
54154 		compat_caddr_t ifru_data;
54155 		struct compat_if_settings ifru_settings;
54156 	} ifr_ifru;
54157 };
54158 
54159 struct compat_msghdr {
54160 	compat_uptr_t msg_name;
54161 	compat_int_t msg_namelen;
54162 	compat_uptr_t msg_iov;
54163 	compat_size_t msg_iovlen;
54164 	compat_uptr_t msg_control;
54165 	compat_size_t msg_controllen;
54166 	compat_uint_t msg_flags;
54167 };
54168 
54169 struct compat_mmsghdr {
54170 	struct compat_msghdr msg_hdr;
54171 	compat_uint_t msg_len;
54172 };
54173 
54174 struct sock_ee_data_rfc4884 {
54175 	__u16 len;
54176 	__u8 flags;
54177 	__u8 reserved;
54178 };
54179 
54180 struct sock_extended_err {
54181 	__u32 ee_errno;
54182 	__u8 ee_origin;
54183 	__u8 ee_type;
54184 	__u8 ee_code;
54185 	__u8 ee_pad;
54186 	__u32 ee_info;
54187 	union {
54188 		__u32 ee_data;
54189 		struct sock_ee_data_rfc4884 ee_rfc4884;
54190 	};
54191 };
54192 
54193 struct sock_exterr_skb {
54194 	union {
54195 		struct inet_skb_parm h4;
54196 		struct inet6_skb_parm h6;
54197 	} header;
54198 	struct sock_extended_err ee;
54199 	u16 addr_offset;
54200 	__be16 port;
54201 	u8 opt_stats: 1;
54202 	u8 unused: 7;
54203 };
54204 
54205 struct net_bridge;
54206 
54207 struct used_address {
54208 	struct __kernel_sockaddr_storage name;
54209 	unsigned int name_len;
54210 };
54211 
54212 struct xdp_frame_bulk {
54213 	int count;
54214 	void *xa;
54215 	void *q[16];
54216 };
54217 
54218 struct xdp_attachment_info {
54219 	struct bpf_prog *prog;
54220 	u32 flags;
54221 };
54222 
54223 struct xdp_buff_xsk;
54224 
54225 struct xdp_desc;
54226 
54227 struct xsk_buff_pool {
54228 	struct device *dev;
54229 	struct net_device *netdev;
54230 	struct list_head xsk_tx_list;
54231 	spinlock_t xsk_tx_list_lock;
54232 	refcount_t users;
54233 	struct xdp_umem *umem;
54234 	struct work_struct work;
54235 	struct list_head free_list;
54236 	u32 heads_cnt;
54237 	u16 queue_id;
54238 	long: 64;
54239 	long: 64;
54240 	long: 64;
54241 	struct xsk_queue *fq;
54242 	struct xsk_queue *cq;
54243 	dma_addr_t *dma_pages;
54244 	struct xdp_buff_xsk *heads;
54245 	struct xdp_desc *tx_descs;
54246 	u64 chunk_mask;
54247 	u64 addrs_cnt;
54248 	u32 free_list_cnt;
54249 	u32 dma_pages_cnt;
54250 	u32 free_heads_cnt;
54251 	u32 headroom;
54252 	u32 chunk_size;
54253 	u32 chunk_shift;
54254 	u32 frame_len;
54255 	u8 cached_need_wakeup;
54256 	bool uses_need_wakeup;
54257 	bool dma_need_sync;
54258 	bool unaligned;
54259 	void *addrs;
54260 	spinlock_t cq_lock;
54261 	struct xdp_buff_xsk *free_heads[0];
54262 	long: 64;
54263 	long: 64;
54264 	long: 64;
54265 };
54266 
54267 struct xdp_mem_allocator {
54268 	struct xdp_mem_info mem;
54269 	union {
54270 		void *allocator;
54271 		struct page_pool *page_pool;
54272 	};
54273 	struct rhash_head node;
54274 	struct callback_head rcu;
54275 };
54276 
54277 struct xdp_desc {
54278 	__u64 addr;
54279 	__u32 len;
54280 	__u32 options;
54281 };
54282 
54283 struct xdp_buff_xsk {
54284 	struct xdp_buff xdp;
54285 	dma_addr_t dma;
54286 	dma_addr_t frame_dma;
54287 	struct xsk_buff_pool *pool;
54288 	u64 orig_addr;
54289 	struct list_head free_list_node;
54290 };
54291 
54292 struct nvmem_cell;
54293 
54294 struct ucred {
54295 	__u32 pid;
54296 	__u32 uid;
54297 	__u32 gid;
54298 };
54299 
54300 struct sockaddr_nl {
54301 	__kernel_sa_family_t nl_family;
54302 	short unsigned int nl_pad;
54303 	__u32 nl_pid;
54304 	__u32 nl_groups;
54305 };
54306 
54307 struct nlmsgerr {
54308 	int error;
54309 	struct nlmsghdr msg;
54310 };
54311 
54312 enum nlmsgerr_attrs {
54313 	NLMSGERR_ATTR_UNUSED = 0,
54314 	NLMSGERR_ATTR_MSG = 1,
54315 	NLMSGERR_ATTR_OFFS = 2,
54316 	NLMSGERR_ATTR_COOKIE = 3,
54317 	NLMSGERR_ATTR_POLICY = 4,
54318 	__NLMSGERR_ATTR_MAX = 5,
54319 	NLMSGERR_ATTR_MAX = 4,
54320 };
54321 
54322 struct nl_pktinfo {
54323 	__u32 group;
54324 };
54325 
54326 enum {
54327 	NETLINK_UNCONNECTED = 0,
54328 	NETLINK_CONNECTED = 1,
54329 };
54330 
54331 enum netlink_skb_flags {
54332 	NETLINK_SKB_DST = 8,
54333 };
54334 
54335 struct netlink_kernel_cfg {
54336 	unsigned int groups;
54337 	unsigned int flags;
54338 	void (*input)(struct sk_buff *);
54339 	struct mutex *cb_mutex;
54340 	int (*bind)(struct net *, int);
54341 	void (*unbind)(struct net *, int);
54342 	bool (*compare)(struct net *, struct sock *);
54343 };
54344 
54345 struct netlink_notify {
54346 	struct net *net;
54347 	u32 portid;
54348 	int protocol;
54349 };
54350 
54351 struct netlink_dump_control {
54352 	int (*start)(struct netlink_callback *);
54353 	int (*dump)(struct sk_buff *, struct netlink_callback *);
54354 	int (*done)(struct netlink_callback *);
54355 	void *data;
54356 	struct module *module;
54357 	u32 min_dump_alloc;
54358 };
54359 
54360 struct netlink_tap {
54361 	struct net_device *dev;
54362 	struct module *module;
54363 	struct list_head list;
54364 };
54365 
54366 struct trace_event_raw_netlink_extack {
54367 	struct trace_entry ent;
54368 	u32 __data_loc_msg;
54369 	char __data[0];
54370 };
54371 
54372 struct trace_event_data_offsets_netlink_extack {
54373 	u32 msg;
54374 };
54375 
54376 typedef void (*btf_trace_netlink_extack)(void *, const char *);
54377 
54378 struct netlink_sock {
54379 	struct sock sk;
54380 	u32 portid;
54381 	u32 dst_portid;
54382 	u32 dst_group;
54383 	u32 flags;
54384 	u32 subscriptions;
54385 	u32 ngroups;
54386 	long unsigned int *groups;
54387 	long unsigned int state;
54388 	size_t max_recvmsg_len;
54389 	wait_queue_head_t wait;
54390 	bool bound;
54391 	bool cb_running;
54392 	int dump_done_errno;
54393 	struct netlink_callback cb;
54394 	struct mutex *cb_mutex;
54395 	struct mutex cb_def_mutex;
54396 	void (*netlink_rcv)(struct sk_buff *);
54397 	int (*netlink_bind)(struct net *, int);
54398 	void (*netlink_unbind)(struct net *, int);
54399 	struct module *module;
54400 	struct rhash_head node;
54401 	struct callback_head rcu;
54402 	struct work_struct work;
54403 };
54404 
54405 struct listeners;
54406 
54407 struct netlink_table {
54408 	struct rhashtable hash;
54409 	struct hlist_head mc_list;
54410 	struct listeners *listeners;
54411 	unsigned int flags;
54412 	unsigned int groups;
54413 	struct mutex *cb_mutex;
54414 	struct module *module;
54415 	int (*bind)(struct net *, int);
54416 	void (*unbind)(struct net *, int);
54417 	bool (*compare)(struct net *, struct sock *);
54418 	int registered;
54419 };
54420 
54421 struct listeners {
54422 	struct callback_head rcu;
54423 	long unsigned int masks[0];
54424 };
54425 
54426 struct netlink_tap_net {
54427 	struct list_head netlink_tap_all;
54428 	struct mutex netlink_tap_lock;
54429 };
54430 
54431 struct netlink_compare_arg {
54432 	possible_net_t pnet;
54433 	u32 portid;
54434 };
54435 
54436 struct netlink_broadcast_data {
54437 	struct sock *exclude_sk;
54438 	struct net *net;
54439 	u32 portid;
54440 	u32 group;
54441 	int failure;
54442 	int delivery_failure;
54443 	int congested;
54444 	int delivered;
54445 	gfp_t allocation;
54446 	struct sk_buff *skb;
54447 	struct sk_buff *skb2;
54448 };
54449 
54450 struct netlink_set_err_data {
54451 	struct sock *exclude_sk;
54452 	u32 portid;
54453 	u32 group;
54454 	int code;
54455 };
54456 
54457 struct nl_seq_iter {
54458 	struct seq_net_private p;
54459 	struct rhashtable_iter hti;
54460 	int link;
54461 };
54462 
54463 struct bpf_iter__netlink {
54464 	union {
54465 		struct bpf_iter_meta *meta;
54466 	};
54467 	union {
54468 		struct netlink_sock *sk;
54469 	};
54470 };
54471 
54472 struct eee_reply_data {
54473 	struct ethnl_reply_data base;
54474 	struct ethtool_eee eee;
54475 };
54476 
54477 struct net_protocol {
54478 	int (*handler)(struct sk_buff *);
54479 	int (*err_handler)(struct sk_buff *, u32);
54480 	unsigned int no_policy: 1;
54481 	unsigned int icmp_strict_tag_validation: 1;
54482 };
54483 
54484 struct inet_request_sock {
54485 	struct request_sock req;
54486 	u16 snd_wscale: 4;
54487 	u16 rcv_wscale: 4;
54488 	u16 tstamp_ok: 1;
54489 	u16 sack_ok: 1;
54490 	u16 wscale_ok: 1;
54491 	u16 ecn_ok: 1;
54492 	u16 acked: 1;
54493 	u16 no_srccheck: 1;
54494 	u16 smc_ok: 1;
54495 	u32 ir_mark;
54496 	union {
54497 		struct ip_options_rcu *ireq_opt;
54498 		struct {
54499 			struct ipv6_txoptions *ipv6_opt;
54500 			struct sk_buff *pktopts;
54501 		};
54502 	};
54503 };
54504 
54505 enum inet_csk_ack_state_t {
54506 	ICSK_ACK_SCHED = 1,
54507 	ICSK_ACK_TIMER = 2,
54508 	ICSK_ACK_PUSHED = 4,
54509 	ICSK_ACK_PUSHED2 = 8,
54510 	ICSK_ACK_NOW = 16,
54511 };
54512 
54513 enum tcp_ca_state {
54514 	TCP_CA_Open = 0,
54515 	TCP_CA_Disorder = 1,
54516 	TCP_CA_CWR = 2,
54517 	TCP_CA_Recovery = 3,
54518 	TCP_CA_Loss = 4,
54519 };
54520 
54521 struct inet_diag_sockid {
54522 	__be16 idiag_sport;
54523 	__be16 idiag_dport;
54524 	__be32 idiag_src[4];
54525 	__be32 idiag_dst[4];
54526 	__u32 idiag_if;
54527 	__u32 idiag_cookie[2];
54528 };
54529 
54530 struct inet_diag_req_v2 {
54531 	__u8 sdiag_family;
54532 	__u8 sdiag_protocol;
54533 	__u8 idiag_ext;
54534 	__u8 pad;
54535 	__u32 idiag_states;
54536 	struct inet_diag_sockid id;
54537 };
54538 
54539 struct inet_diag_msg {
54540 	__u8 idiag_family;
54541 	__u8 idiag_state;
54542 	__u8 idiag_timer;
54543 	__u8 idiag_retrans;
54544 	struct inet_diag_sockid id;
54545 	__u32 idiag_expires;
54546 	__u32 idiag_rqueue;
54547 	__u32 idiag_wqueue;
54548 	__u32 idiag_uid;
54549 	__u32 idiag_inode;
54550 };
54551 
54552 enum {
54553 	INET_DIAG_NONE = 0,
54554 	INET_DIAG_MEMINFO = 1,
54555 	INET_DIAG_INFO = 2,
54556 	INET_DIAG_VEGASINFO = 3,
54557 	INET_DIAG_CONG = 4,
54558 	INET_DIAG_TOS = 5,
54559 	INET_DIAG_TCLASS = 6,
54560 	INET_DIAG_SKMEMINFO = 7,
54561 	INET_DIAG_SHUTDOWN = 8,
54562 	INET_DIAG_DCTCPINFO = 9,
54563 	INET_DIAG_PROTOCOL = 10,
54564 	INET_DIAG_SKV6ONLY = 11,
54565 	INET_DIAG_LOCALS = 12,
54566 	INET_DIAG_PEERS = 13,
54567 	INET_DIAG_PAD = 14,
54568 	INET_DIAG_MARK = 15,
54569 	INET_DIAG_BBRINFO = 16,
54570 	INET_DIAG_CLASS_ID = 17,
54571 	INET_DIAG_MD5SIG = 18,
54572 	INET_DIAG_ULP_INFO = 19,
54573 	INET_DIAG_SK_BPF_STORAGES = 20,
54574 	INET_DIAG_CGROUP_ID = 21,
54575 	INET_DIAG_SOCKOPT = 22,
54576 	__INET_DIAG_MAX = 23,
54577 };
54578 
54579 enum {
54580 	INET_ULP_INFO_UNSPEC = 0,
54581 	INET_ULP_INFO_NAME = 1,
54582 	INET_ULP_INFO_TLS = 2,
54583 	INET_ULP_INFO_MPTCP = 3,
54584 	__INET_ULP_INFO_MAX = 4,
54585 };
54586 
54587 struct tcpvegas_info {
54588 	__u32 tcpv_enabled;
54589 	__u32 tcpv_rttcnt;
54590 	__u32 tcpv_rtt;
54591 	__u32 tcpv_minrtt;
54592 };
54593 
54594 struct tcp_dctcp_info {
54595 	__u16 dctcp_enabled;
54596 	__u16 dctcp_ce_state;
54597 	__u32 dctcp_alpha;
54598 	__u32 dctcp_ab_ecn;
54599 	__u32 dctcp_ab_tot;
54600 };
54601 
54602 struct tcp_bbr_info {
54603 	__u32 bbr_bw_lo;
54604 	__u32 bbr_bw_hi;
54605 	__u32 bbr_min_rtt;
54606 	__u32 bbr_pacing_gain;
54607 	__u32 bbr_cwnd_gain;
54608 };
54609 
54610 union tcp_cc_info {
54611 	struct tcpvegas_info vegas;
54612 	struct tcp_dctcp_info dctcp;
54613 	struct tcp_bbr_info bbr;
54614 };
54615 
54616 struct inet_diag_handler {
54617 	void (*dump)(struct sk_buff *, struct netlink_callback *, const struct inet_diag_req_v2 *);
54618 	int (*dump_one)(struct netlink_callback *, const struct inet_diag_req_v2 *);
54619 	void (*idiag_get_info)(struct sock *, struct inet_diag_msg *, void *);
54620 	int (*idiag_get_aux)(struct sock *, bool, struct sk_buff *);
54621 	size_t (*idiag_get_aux_size)(struct sock *, bool);
54622 	int (*destroy)(struct sk_buff *, const struct inet_diag_req_v2 *);
54623 	__u16 idiag_type;
54624 	__u16 idiag_info_size;
54625 };
54626 
54627 struct tcp_info {
54628 	__u8 tcpi_state;
54629 	__u8 tcpi_ca_state;
54630 	__u8 tcpi_retransmits;
54631 	__u8 tcpi_probes;
54632 	__u8 tcpi_backoff;
54633 	__u8 tcpi_options;
54634 	__u8 tcpi_snd_wscale: 4;
54635 	__u8 tcpi_rcv_wscale: 4;
54636 	__u8 tcpi_delivery_rate_app_limited: 1;
54637 	__u8 tcpi_fastopen_client_fail: 2;
54638 	__u32 tcpi_rto;
54639 	__u32 tcpi_ato;
54640 	__u32 tcpi_snd_mss;
54641 	__u32 tcpi_rcv_mss;
54642 	__u32 tcpi_unacked;
54643 	__u32 tcpi_sacked;
54644 	__u32 tcpi_lost;
54645 	__u32 tcpi_retrans;
54646 	__u32 tcpi_fackets;
54647 	__u32 tcpi_last_data_sent;
54648 	__u32 tcpi_last_ack_sent;
54649 	__u32 tcpi_last_data_recv;
54650 	__u32 tcpi_last_ack_recv;
54651 	__u32 tcpi_pmtu;
54652 	__u32 tcpi_rcv_ssthresh;
54653 	__u32 tcpi_rtt;
54654 	__u32 tcpi_rttvar;
54655 	__u32 tcpi_snd_ssthresh;
54656 	__u32 tcpi_snd_cwnd;
54657 	__u32 tcpi_advmss;
54658 	__u32 tcpi_reordering;
54659 	__u32 tcpi_rcv_rtt;
54660 	__u32 tcpi_rcv_space;
54661 	__u32 tcpi_total_retrans;
54662 	__u64 tcpi_pacing_rate;
54663 	__u64 tcpi_max_pacing_rate;
54664 	__u64 tcpi_bytes_acked;
54665 	__u64 tcpi_bytes_received;
54666 	__u32 tcpi_segs_out;
54667 	__u32 tcpi_segs_in;
54668 	__u32 tcpi_notsent_bytes;
54669 	__u32 tcpi_min_rtt;
54670 	__u32 tcpi_data_segs_in;
54671 	__u32 tcpi_data_segs_out;
54672 	__u64 tcpi_delivery_rate;
54673 	__u64 tcpi_busy_time;
54674 	__u64 tcpi_rwnd_limited;
54675 	__u64 tcpi_sndbuf_limited;
54676 	__u32 tcpi_delivered;
54677 	__u32 tcpi_delivered_ce;
54678 	__u64 tcpi_bytes_sent;
54679 	__u64 tcpi_bytes_retrans;
54680 	__u32 tcpi_dsack_dups;
54681 	__u32 tcpi_reord_seen;
54682 	__u32 tcpi_rcv_ooopack;
54683 	__u32 tcpi_snd_wnd;
54684 };
54685 
54686 struct ipv6_mreq {
54687 	struct in6_addr ipv6mr_multiaddr;
54688 	int ipv6mr_ifindex;
54689 };
54690 
54691 struct in6_flowlabel_req {
54692 	struct in6_addr flr_dst;
54693 	__be32 flr_label;
54694 	__u8 flr_action;
54695 	__u8 flr_share;
54696 	__u16 flr_flags;
54697 	__u16 flr_expires;
54698 	__u16 flr_linger;
54699 	__u32 __flr_pad;
54700 };
54701 
54702 struct group_req {
54703 	__u32 gr_interface;
54704 	struct __kernel_sockaddr_storage gr_group;
54705 };
54706 
54707 struct group_source_req {
54708 	__u32 gsr_interface;
54709 	struct __kernel_sockaddr_storage gsr_group;
54710 	struct __kernel_sockaddr_storage gsr_source;
54711 };
54712 
54713 struct group_filter {
54714 	union {
54715 		struct {
54716 			__u32 gf_interface_aux;
54717 			struct __kernel_sockaddr_storage gf_group_aux;
54718 			__u32 gf_fmode_aux;
54719 			__u32 gf_numsrc_aux;
54720 			struct __kernel_sockaddr_storage gf_slist[1];
54721 		};
54722 		struct {
54723 			__u32 gf_interface;
54724 			struct __kernel_sockaddr_storage gf_group;
54725 			__u32 gf_fmode;
54726 			__u32 gf_numsrc;
54727 			struct __kernel_sockaddr_storage gf_slist_flex[0];
54728 		};
54729 	};
54730 };
54731 
54732 struct ip6_mtuinfo {
54733 	struct sockaddr_in6 ip6m_addr;
54734 	__u32 ip6m_mtu;
54735 };
54736 
54737 struct ip6_ra_chain {
54738 	struct ip6_ra_chain *next;
54739 	struct sock *sk;
54740 	int sel;
54741 	void (*destructor)(struct sock *);
54742 };
54743 
54744 struct compat_group_req {
54745 	__u32 gr_interface;
54746 	struct __kernel_sockaddr_storage gr_group;
54747 } __attribute__((packed));
54748 
54749 struct compat_group_source_req {
54750 	__u32 gsr_interface;
54751 	struct __kernel_sockaddr_storage gsr_group;
54752 	struct __kernel_sockaddr_storage gsr_source;
54753 } __attribute__((packed));
54754 
54755 struct compat_group_filter {
54756 	union {
54757 		struct {
54758 			__u32 gf_interface_aux;
54759 			struct __kernel_sockaddr_storage gf_group_aux;
54760 			__u32 gf_fmode_aux;
54761 			__u32 gf_numsrc_aux;
54762 			struct __kernel_sockaddr_storage gf_slist[1];
54763 		} __attribute__((packed));
54764 		struct {
54765 			__u32 gf_interface;
54766 			struct __kernel_sockaddr_storage gf_group;
54767 			__u32 gf_fmode;
54768 			__u32 gf_numsrc;
54769 			struct __kernel_sockaddr_storage gf_slist_flex[0];
54770 		} __attribute__((packed));
54771 	};
54772 };
54773 
54774 struct tcp_request_sock_ops;
54775 
54776 struct tcp_request_sock {
54777 	struct inet_request_sock req;
54778 	const struct tcp_request_sock_ops *af_specific;
54779 	u64 snt_synack;
54780 	bool tfo_listener;
54781 	bool is_mptcp;
54782 	u32 txhash;
54783 	u32 rcv_isn;
54784 	u32 snt_isn;
54785 	u32 ts_off;
54786 	u32 last_oow_ack_time;
54787 	u32 rcv_nxt;
54788 	u8 syn_tos;
54789 };
54790 
54791 enum tcp_synack_type {
54792 	TCP_SYNACK_NORMAL = 0,
54793 	TCP_SYNACK_FASTOPEN = 1,
54794 	TCP_SYNACK_COOKIE = 2,
54795 };
54796 
54797 struct tcp_request_sock_ops {
54798 	u16 mss_clamp;
54799 	__u32 (*cookie_init_seq)(const struct sk_buff *, __u16 *);
54800 	struct dst_entry * (*route_req)(const struct sock *, struct sk_buff *, struct flowi *, struct request_sock *);
54801 	u32 (*init_seq)(const struct sk_buff *);
54802 	u32 (*init_ts_off)(const struct net *, const struct sk_buff *);
54803 	int (*send_synack)(const struct sock *, struct dst_entry *, struct flowi *, struct request_sock *, struct tcp_fastopen_cookie *, enum tcp_synack_type, struct sk_buff *);
54804 };
54805 
54806 enum {
54807 	SVC_POOL_AUTO = -1,
54808 	SVC_POOL_GLOBAL = 0,
54809 	SVC_POOL_PERCPU = 1,
54810 	SVC_POOL_PERNODE = 2,
54811 };
54812 
54813 struct svc_pool_map {
54814 	int count;
54815 	int mode;
54816 	unsigned int npools;
54817 	unsigned int *pool_to;
54818 	unsigned int *to_pool;
54819 };
54820 
54821 struct rpc_iostats {
54822 	spinlock_t om_lock;
54823 	long unsigned int om_ops;
54824 	long unsigned int om_ntrans;
54825 	long unsigned int om_timeouts;
54826 	long long unsigned int om_bytes_sent;
54827 	long long unsigned int om_bytes_recv;
54828 	ktime_t om_queue;
54829 	ktime_t om_rtt;
54830 	ktime_t om_execute;
54831 	long unsigned int om_error_status;
54832 	long: 64;
54833 	long: 64;
54834 	long: 64;
54835 	long: 64;
54836 	long: 64;
54837 	long: 64;
54838 };
54839 
54840 typedef __u32 Elf32_Word;
54841 
54842 struct elf32_note {
54843 	Elf32_Word n_namesz;
54844 	Elf32_Word n_descsz;
54845 	Elf32_Word n_type;
54846 };
54847 
54848 struct cache_index_dir;
54849 
54850 struct cache_dir {
54851 	struct kobject *kobj;
54852 	struct cache_index_dir *index;
54853 };
54854 
54855 struct cache;
54856 
54857 struct cache_index_dir {
54858 	struct kobject kobj;
54859 	struct cache_index_dir *next;
54860 	struct cache *cache;
54861 };
54862 
54863 struct cache {
54864 	struct device_node *ofnode;
54865 	struct cpumask shared_cpu_map;
54866 	int type;
54867 	int level;
54868 	int group_id;
54869 	struct list_head list;
54870 	struct cache *next_local;
54871 };
54872 
54873 struct cache_type_info___2 {
54874 	const char *name;
54875 	const char *size_prop;
54876 	const char *line_size_props[2];
54877 	const char *nr_sets_prop;
54878 };
54879 
54880 enum instruction_type {
54881 	COMPUTE = 0,
54882 	LOAD = 1,
54883 	LOAD_MULTI = 2,
54884 	LOAD_FP = 3,
54885 	LOAD_VMX = 4,
54886 	LOAD_VSX = 5,
54887 	STORE = 6,
54888 	STORE_MULTI = 7,
54889 	STORE_FP = 8,
54890 	STORE_VMX = 9,
54891 	STORE_VSX = 10,
54892 	LARX = 11,
54893 	STCX = 12,
54894 	BRANCH = 13,
54895 	MFSPR = 14,
54896 	MTSPR = 15,
54897 	CACHEOP = 16,
54898 	BARRIER = 17,
54899 	SYSCALL = 18,
54900 	SYSCALL_VECTORED_0 = 19,
54901 	MFMSR = 20,
54902 	MTMSR = 21,
54903 	RFI = 22,
54904 	INTERRUPT = 23,
54905 	UNKNOWN = 24,
54906 };
54907 
54908 enum powerpc_regset {
54909 	REGSET_GPR = 0,
54910 	REGSET_FPR = 1,
54911 	REGSET_VMX = 2,
54912 	REGSET_VSX = 3,
54913 	REGSET_TM_CGPR = 4,
54914 	REGSET_TM_CFPR = 5,
54915 	REGSET_TM_CVMX = 6,
54916 	REGSET_TM_CVSX = 7,
54917 	REGSET_TM_SPR = 8,
54918 	REGSET_TM_CTAR = 9,
54919 	REGSET_TM_CPPR = 10,
54920 	REGSET_TM_CDSCR = 11,
54921 	REGSET_PPR = 12,
54922 	REGSET_DSCR = 13,
54923 	REGSET_TAR = 14,
54924 	REGSET_EBB = 15,
54925 	REGSET_PMR = 16,
54926 	REGSET_PKEY = 17,
54927 };
54928 
54929 struct pt_regs_offset {
54930 	const char *name;
54931 	int offset;
54932 };
54933 
54934 struct mmu_hash_ops {
54935 	void (*hpte_invalidate)(long unsigned int, long unsigned int, int, int, int, int);
54936 	long int (*hpte_updatepp)(long unsigned int, long unsigned int, long unsigned int, int, int, int, long unsigned int);
54937 	void (*hpte_updateboltedpp)(long unsigned int, long unsigned int, int, int);
54938 	long int (*hpte_insert)(long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, int, int, int);
54939 	long int (*hpte_remove)(long unsigned int);
54940 	int (*hpte_removebolted)(long unsigned int, int, int);
54941 	void (*flush_hash_range)(long unsigned int, int);
54942 	void (*hugepage_invalidate)(long unsigned int, long unsigned int, unsigned char *, int, int, int);
54943 	int (*resize_hpt)(long unsigned int);
54944 	void (*hpte_clear_all)();
54945 };
54946 
54947 struct hash_pte {
54948 	__be64 v;
54949 	__be64 r;
54950 };
54951 
54952 struct patb_entry {
54953 	__be64 patb0;
54954 	__be64 patb1;
54955 };
54956 
54957 typedef signed char unative_t[16];
54958 
54959 struct powercap_attr {
54960 	u32 handle;
54961 	struct kobj_attribute attr;
54962 };
54963 
54964 struct pcap {
54965 	struct attribute_group pg;
54966 	struct powercap_attr *pattrs;
54967 };
54968 
54969 enum {
54970 	EEH_NEXT_ERR_NONE = 0,
54971 	EEH_NEXT_ERR_INF = 1,
54972 	EEH_NEXT_ERR_FROZEN_PE = 2,
54973 	EEH_NEXT_ERR_FENCED_PHB = 3,
54974 	EEH_NEXT_ERR_DEAD_PHB = 4,
54975 	EEH_NEXT_ERR_DEAD_IOC = 5,
54976 };
54977 
54978 struct eeh_ops {
54979 	char *name;
54980 	struct eeh_dev * (*probe)(struct pci_dev *);
54981 	int (*set_option)(struct eeh_pe *, int);
54982 	int (*get_state)(struct eeh_pe *, int *);
54983 	int (*reset)(struct eeh_pe *, int);
54984 	int (*get_log)(struct eeh_pe *, int, char *, long unsigned int);
54985 	int (*configure_bridge)(struct eeh_pe *);
54986 	int (*err_inject)(struct eeh_pe *, int, int, long unsigned int, long unsigned int);
54987 	int (*read_config)(struct eeh_dev *, int, int, u32 *);
54988 	int (*write_config)(struct eeh_dev *, int, int, u32);
54989 	int (*next_error)(struct eeh_pe **);
54990 	int (*restore_config)(struct eeh_dev *);
54991 	int (*notify_resume)(struct eeh_dev *);
54992 };
54993 
54994 enum OpalPciStatusToken {
54995 	OPAL_EEH_NO_ERROR = 0,
54996 	OPAL_EEH_IOC_ERROR = 1,
54997 	OPAL_EEH_PHB_ERROR = 2,
54998 	OPAL_EEH_PE_ERROR = 3,
54999 	OPAL_EEH_PE_MMIO_ERROR = 4,
55000 	OPAL_EEH_PE_DMA_ERROR = 5,
55001 };
55002 
55003 enum OpalPciErrorSeverity {
55004 	OPAL_EEH_SEV_NO_ERROR = 0,
55005 	OPAL_EEH_SEV_IOC_DEAD = 1,
55006 	OPAL_EEH_SEV_PHB_DEAD = 2,
55007 	OPAL_EEH_SEV_PHB_FENCED = 3,
55008 	OPAL_EEH_SEV_PE_ER = 4,
55009 	OPAL_EEH_SEV_INF = 5,
55010 };
55011 
55012 enum OpalErrinjectType {
55013 	OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR = 0,
55014 	OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR64 = 1,
55015 };
55016 
55017 enum OpalErrinjectFunc {
55018 	OPAL_ERR_INJECT_FUNC_IOA_LD_MEM_ADDR = 0,
55019 	OPAL_ERR_INJECT_FUNC_IOA_LD_MEM_DATA = 1,
55020 	OPAL_ERR_INJECT_FUNC_IOA_LD_IO_ADDR = 2,
55021 	OPAL_ERR_INJECT_FUNC_IOA_LD_IO_DATA = 3,
55022 	OPAL_ERR_INJECT_FUNC_IOA_LD_CFG_ADDR = 4,
55023 	OPAL_ERR_INJECT_FUNC_IOA_LD_CFG_DATA = 5,
55024 	OPAL_ERR_INJECT_FUNC_IOA_ST_MEM_ADDR = 6,
55025 	OPAL_ERR_INJECT_FUNC_IOA_ST_MEM_DATA = 7,
55026 	OPAL_ERR_INJECT_FUNC_IOA_ST_IO_ADDR = 8,
55027 	OPAL_ERR_INJECT_FUNC_IOA_ST_IO_DATA = 9,
55028 	OPAL_ERR_INJECT_FUNC_IOA_ST_CFG_ADDR = 10,
55029 	OPAL_ERR_INJECT_FUNC_IOA_ST_CFG_DATA = 11,
55030 	OPAL_ERR_INJECT_FUNC_IOA_DMA_RD_ADDR = 12,
55031 	OPAL_ERR_INJECT_FUNC_IOA_DMA_RD_DATA = 13,
55032 	OPAL_ERR_INJECT_FUNC_IOA_DMA_RD_MASTER = 14,
55033 	OPAL_ERR_INJECT_FUNC_IOA_DMA_RD_TARGET = 15,
55034 	OPAL_ERR_INJECT_FUNC_IOA_DMA_WR_ADDR = 16,
55035 	OPAL_ERR_INJECT_FUNC_IOA_DMA_WR_DATA = 17,
55036 	OPAL_ERR_INJECT_FUNC_IOA_DMA_WR_MASTER = 18,
55037 	OPAL_ERR_INJECT_FUNC_IOA_DMA_WR_TARGET = 19,
55038 };
55039 
55040 enum OpalPciResetScope {
55041 	OPAL_RESET_PHB_COMPLETE = 1,
55042 	OPAL_RESET_PCI_LINK = 2,
55043 	OPAL_RESET_PHB_ERROR = 3,
55044 	OPAL_RESET_PCI_HOT = 4,
55045 	OPAL_RESET_PCI_FUNDAMENTAL = 5,
55046 	OPAL_RESET_PCI_IODA_TABLE = 6,
55047 };
55048 
55049 enum OpalPciReinitScope {
55050 	OPAL_REINIT_PCI_DEV = 1000,
55051 };
55052 
55053 enum OpalPciResetState {
55054 	OPAL_DEASSERT_RESET = 0,
55055 	OPAL_ASSERT_RESET = 1,
55056 };
55057 
55058 enum {
55059 	OPAL_P7IOC_DIAG_TYPE_NONE = 0,
55060 	OPAL_P7IOC_DIAG_TYPE_RGC = 1,
55061 	OPAL_P7IOC_DIAG_TYPE_BI = 2,
55062 	OPAL_P7IOC_DIAG_TYPE_CI = 3,
55063 	OPAL_P7IOC_DIAG_TYPE_MISC = 4,
55064 	OPAL_P7IOC_DIAG_TYPE_I2C = 5,
55065 	OPAL_P7IOC_DIAG_TYPE_LAST = 6,
55066 };
55067 
55068 struct OpalIoP7IOCRgcErrorData {
55069 	__be64 rgcStatus;
55070 	__be64 rgcLdcp;
55071 };
55072 
55073 struct OpalIoP7IOCBiErrorData {
55074 	__be64 biLdcp0;
55075 	__be64 biLdcp1;
55076 	__be64 biLdcp2;
55077 	__be64 biFenceStatus;
55078 	uint8_t biDownbound;
55079 };
55080 
55081 struct OpalIoP7IOCCiErrorData {
55082 	__be64 ciPortStatus;
55083 	__be64 ciPortLdcp;
55084 	uint8_t ciPort;
55085 };
55086 
55087 struct OpalIoP7IOCErrorData {
55088 	__be16 type;
55089 	__be64 gemXfir;
55090 	__be64 gemRfir;
55091 	__be64 gemRirqfir;
55092 	__be64 gemMask;
55093 	__be64 gemRwof;
55094 	__be64 lemFir;
55095 	__be64 lemErrMask;
55096 	__be64 lemAction0;
55097 	__be64 lemAction1;
55098 	__be64 lemWof;
55099 	union {
55100 		struct OpalIoP7IOCRgcErrorData rgc;
55101 		struct OpalIoP7IOCBiErrorData bi;
55102 		struct OpalIoP7IOCCiErrorData ci;
55103 	};
55104 };
55105 
55106 struct dtl_entry {
55107 	u8 dispatch_reason;
55108 	u8 preempt_reason;
55109 	__be16 processor_id;
55110 	__be32 enqueue_to_dispatch_time;
55111 	__be32 ready_to_enqueue_time;
55112 	__be32 waiting_to_ready_time;
55113 	__be64 timebase;
55114 	__be64 fault_addr;
55115 	__be64 srr0;
55116 	__be64 srr1;
55117 };
55118 
55119 typedef void (*crash_shutdown_t)();
55120 
55121 struct __user_cap_header_struct {
55122 	__u32 version;
55123 	int pid;
55124 };
55125 
55126 typedef struct __user_cap_header_struct *cap_user_header_t;
55127 
55128 struct __user_cap_data_struct {
55129 	__u32 effective;
55130 	__u32 permitted;
55131 	__u32 inheritable;
55132 };
55133 
55134 typedef struct __user_cap_data_struct *cap_user_data_t;
55135 
55136 struct mcs_spinlock {
55137 	struct mcs_spinlock *next;
55138 	int locked;
55139 	int count;
55140 };
55141 
55142 struct qnode {
55143 	struct mcs_spinlock mcs;
55144 	long int reserved[2];
55145 };
55146 
55147 enum vcpu_state {
55148 	vcpu_running = 0,
55149 	vcpu_halted = 1,
55150 	vcpu_hashed = 2,
55151 };
55152 
55153 struct pv_node {
55154 	struct mcs_spinlock mcs;
55155 	int cpu;
55156 	u8 state;
55157 };
55158 
55159 struct pv_hash_entry {
55160 	struct qspinlock *lock;
55161 	struct pv_node *node;
55162 };
55163 
55164 typedef void (*call_rcu_func_t)(struct callback_head *, rcu_callback_t);
55165 
55166 typedef int (*task_call_f)(struct task_struct *, void *);
55167 
55168 struct rcu_cblist {
55169 	struct callback_head *head;
55170 	struct callback_head **tail;
55171 	long int len;
55172 };
55173 
55174 struct rcu_synchronize {
55175 	struct callback_head head;
55176 	struct completion completion;
55177 };
55178 
55179 struct trace_event_raw_rcu_utilization {
55180 	struct trace_entry ent;
55181 	const char *s;
55182 	char __data[0];
55183 };
55184 
55185 struct trace_event_raw_rcu_grace_period {
55186 	struct trace_entry ent;
55187 	const char *rcuname;
55188 	long int gp_seq;
55189 	const char *gpevent;
55190 	char __data[0];
55191 };
55192 
55193 struct trace_event_raw_rcu_future_grace_period {
55194 	struct trace_entry ent;
55195 	const char *rcuname;
55196 	long int gp_seq;
55197 	long int gp_seq_req;
55198 	u8 level;
55199 	int grplo;
55200 	int grphi;
55201 	const char *gpevent;
55202 	char __data[0];
55203 };
55204 
55205 struct trace_event_raw_rcu_grace_period_init {
55206 	struct trace_entry ent;
55207 	const char *rcuname;
55208 	long int gp_seq;
55209 	u8 level;
55210 	int grplo;
55211 	int grphi;
55212 	long unsigned int qsmask;
55213 	char __data[0];
55214 };
55215 
55216 struct trace_event_raw_rcu_exp_grace_period {
55217 	struct trace_entry ent;
55218 	const char *rcuname;
55219 	long int gpseq;
55220 	const char *gpevent;
55221 	char __data[0];
55222 };
55223 
55224 struct trace_event_raw_rcu_exp_funnel_lock {
55225 	struct trace_entry ent;
55226 	const char *rcuname;
55227 	u8 level;
55228 	int grplo;
55229 	int grphi;
55230 	const char *gpevent;
55231 	char __data[0];
55232 };
55233 
55234 struct trace_event_raw_rcu_preempt_task {
55235 	struct trace_entry ent;
55236 	const char *rcuname;
55237 	long int gp_seq;
55238 	int pid;
55239 	char __data[0];
55240 };
55241 
55242 struct trace_event_raw_rcu_unlock_preempted_task {
55243 	struct trace_entry ent;
55244 	const char *rcuname;
55245 	long int gp_seq;
55246 	int pid;
55247 	char __data[0];
55248 };
55249 
55250 struct trace_event_raw_rcu_quiescent_state_report {
55251 	struct trace_entry ent;
55252 	const char *rcuname;
55253 	long int gp_seq;
55254 	long unsigned int mask;
55255 	long unsigned int qsmask;
55256 	u8 level;
55257 	int grplo;
55258 	int grphi;
55259 	u8 gp_tasks;
55260 	char __data[0];
55261 };
55262 
55263 struct trace_event_raw_rcu_fqs {
55264 	struct trace_entry ent;
55265 	const char *rcuname;
55266 	long int gp_seq;
55267 	int cpu;
55268 	const char *qsevent;
55269 	char __data[0];
55270 };
55271 
55272 struct trace_event_raw_rcu_stall_warning {
55273 	struct trace_entry ent;
55274 	const char *rcuname;
55275 	const char *msg;
55276 	char __data[0];
55277 };
55278 
55279 struct trace_event_raw_rcu_dyntick {
55280 	struct trace_entry ent;
55281 	const char *polarity;
55282 	long int oldnesting;
55283 	long int newnesting;
55284 	int dynticks;
55285 	char __data[0];
55286 };
55287 
55288 struct trace_event_raw_rcu_callback {
55289 	struct trace_entry ent;
55290 	const char *rcuname;
55291 	void *rhp;
55292 	void *func;
55293 	long int qlen;
55294 	char __data[0];
55295 };
55296 
55297 struct trace_event_raw_rcu_segcb_stats {
55298 	struct trace_entry ent;
55299 	const char *ctx;
55300 	long unsigned int gp_seq[4];
55301 	long int seglen[4];
55302 	char __data[0];
55303 };
55304 
55305 struct trace_event_raw_rcu_kvfree_callback {
55306 	struct trace_entry ent;
55307 	const char *rcuname;
55308 	void *rhp;
55309 	long unsigned int offset;
55310 	long int qlen;
55311 	char __data[0];
55312 };
55313 
55314 struct trace_event_raw_rcu_batch_start {
55315 	struct trace_entry ent;
55316 	const char *rcuname;
55317 	long int qlen;
55318 	long int blimit;
55319 	char __data[0];
55320 };
55321 
55322 struct trace_event_raw_rcu_invoke_callback {
55323 	struct trace_entry ent;
55324 	const char *rcuname;
55325 	void *rhp;
55326 	void *func;
55327 	char __data[0];
55328 };
55329 
55330 struct trace_event_raw_rcu_invoke_kvfree_callback {
55331 	struct trace_entry ent;
55332 	const char *rcuname;
55333 	void *rhp;
55334 	long unsigned int offset;
55335 	char __data[0];
55336 };
55337 
55338 struct trace_event_raw_rcu_invoke_kfree_bulk_callback {
55339 	struct trace_entry ent;
55340 	const char *rcuname;
55341 	long unsigned int nr_records;
55342 	void **p;
55343 	char __data[0];
55344 };
55345 
55346 struct trace_event_raw_rcu_batch_end {
55347 	struct trace_entry ent;
55348 	const char *rcuname;
55349 	int callbacks_invoked;
55350 	char cb;
55351 	char nr;
55352 	char iit;
55353 	char risk;
55354 	char __data[0];
55355 };
55356 
55357 struct trace_event_raw_rcu_torture_read {
55358 	struct trace_entry ent;
55359 	char rcutorturename[8];
55360 	struct callback_head *rhp;
55361 	long unsigned int secs;
55362 	long unsigned int c_old;
55363 	long unsigned int c;
55364 	char __data[0];
55365 };
55366 
55367 struct trace_event_raw_rcu_barrier {
55368 	struct trace_entry ent;
55369 	const char *rcuname;
55370 	const char *s;
55371 	int cpu;
55372 	int cnt;
55373 	long unsigned int done;
55374 	char __data[0];
55375 };
55376 
55377 struct trace_event_data_offsets_rcu_utilization {};
55378 
55379 struct trace_event_data_offsets_rcu_grace_period {};
55380 
55381 struct trace_event_data_offsets_rcu_future_grace_period {};
55382 
55383 struct trace_event_data_offsets_rcu_grace_period_init {};
55384 
55385 struct trace_event_data_offsets_rcu_exp_grace_period {};
55386 
55387 struct trace_event_data_offsets_rcu_exp_funnel_lock {};
55388 
55389 struct trace_event_data_offsets_rcu_preempt_task {};
55390 
55391 struct trace_event_data_offsets_rcu_unlock_preempted_task {};
55392 
55393 struct trace_event_data_offsets_rcu_quiescent_state_report {};
55394 
55395 struct trace_event_data_offsets_rcu_fqs {};
55396 
55397 struct trace_event_data_offsets_rcu_stall_warning {};
55398 
55399 struct trace_event_data_offsets_rcu_dyntick {};
55400 
55401 struct trace_event_data_offsets_rcu_callback {};
55402 
55403 struct trace_event_data_offsets_rcu_segcb_stats {};
55404 
55405 struct trace_event_data_offsets_rcu_kvfree_callback {};
55406 
55407 struct trace_event_data_offsets_rcu_batch_start {};
55408 
55409 struct trace_event_data_offsets_rcu_invoke_callback {};
55410 
55411 struct trace_event_data_offsets_rcu_invoke_kvfree_callback {};
55412 
55413 struct trace_event_data_offsets_rcu_invoke_kfree_bulk_callback {};
55414 
55415 struct trace_event_data_offsets_rcu_batch_end {};
55416 
55417 struct trace_event_data_offsets_rcu_torture_read {};
55418 
55419 struct trace_event_data_offsets_rcu_barrier {};
55420 
55421 typedef void (*btf_trace_rcu_utilization)(void *, const char *);
55422 
55423 typedef void (*btf_trace_rcu_grace_period)(void *, const char *, long unsigned int, const char *);
55424 
55425 typedef void (*btf_trace_rcu_future_grace_period)(void *, const char *, long unsigned int, long unsigned int, u8, int, int, const char *);
55426 
55427 typedef void (*btf_trace_rcu_grace_period_init)(void *, const char *, long unsigned int, u8, int, int, long unsigned int);
55428 
55429 typedef void (*btf_trace_rcu_exp_grace_period)(void *, const char *, long unsigned int, const char *);
55430 
55431 typedef void (*btf_trace_rcu_exp_funnel_lock)(void *, const char *, u8, int, int, const char *);
55432 
55433 typedef void (*btf_trace_rcu_preempt_task)(void *, const char *, int, long unsigned int);
55434 
55435 typedef void (*btf_trace_rcu_unlock_preempted_task)(void *, const char *, long unsigned int, int);
55436 
55437 typedef void (*btf_trace_rcu_quiescent_state_report)(void *, const char *, long unsigned int, long unsigned int, long unsigned int, u8, int, int, int);
55438 
55439 typedef void (*btf_trace_rcu_fqs)(void *, const char *, long unsigned int, int, const char *);
55440 
55441 typedef void (*btf_trace_rcu_stall_warning)(void *, const char *, const char *);
55442 
55443 typedef void (*btf_trace_rcu_dyntick)(void *, const char *, long int, long int, int);
55444 
55445 typedef void (*btf_trace_rcu_callback)(void *, const char *, struct callback_head *, long int);
55446 
55447 typedef void (*btf_trace_rcu_segcb_stats)(void *, struct rcu_segcblist *, const char *);
55448 
55449 typedef void (*btf_trace_rcu_kvfree_callback)(void *, const char *, struct callback_head *, long unsigned int, long int);
55450 
55451 typedef void (*btf_trace_rcu_batch_start)(void *, const char *, long int, long int);
55452 
55453 typedef void (*btf_trace_rcu_invoke_callback)(void *, const char *, struct callback_head *);
55454 
55455 typedef void (*btf_trace_rcu_invoke_kvfree_callback)(void *, const char *, struct callback_head *, long unsigned int);
55456 
55457 typedef void (*btf_trace_rcu_invoke_kfree_bulk_callback)(void *, const char *, long unsigned int, void **);
55458 
55459 typedef void (*btf_trace_rcu_batch_end)(void *, const char *, int, char, char, char, char);
55460 
55461 typedef void (*btf_trace_rcu_torture_read)(void *, const char *, struct callback_head *, long unsigned int, long unsigned int, long unsigned int);
55462 
55463 typedef void (*btf_trace_rcu_barrier)(void *, const char *, const char *, int, int, long unsigned int);
55464 
55465 struct rcu_tasks;
55466 
55467 typedef void (*rcu_tasks_gp_func_t)(struct rcu_tasks *);
55468 
55469 typedef void (*pregp_func_t)(struct list_head *);
55470 
55471 typedef void (*pertask_func_t)(struct task_struct *, struct list_head *);
55472 
55473 typedef void (*postscan_func_t)(struct list_head *);
55474 
55475 typedef void (*holdouts_func_t)(struct list_head *, bool, bool *);
55476 
55477 typedef void (*postgp_func_t)(struct rcu_tasks *);
55478 
55479 struct rcu_tasks_percpu;
55480 
55481 struct rcu_tasks {
55482 	struct rcuwait cbs_wait;
55483 	raw_spinlock_t cbs_gbl_lock;
55484 	struct mutex tasks_gp_mutex;
55485 	int gp_state;
55486 	int gp_sleep;
55487 	int init_fract;
55488 	long unsigned int gp_jiffies;
55489 	long unsigned int gp_start;
55490 	long unsigned int tasks_gp_seq;
55491 	long unsigned int n_ipis;
55492 	long unsigned int n_ipis_fails;
55493 	struct task_struct *kthread_ptr;
55494 	rcu_tasks_gp_func_t gp_func;
55495 	pregp_func_t pregp_func;
55496 	pertask_func_t pertask_func;
55497 	postscan_func_t postscan_func;
55498 	holdouts_func_t holdouts_func;
55499 	postgp_func_t postgp_func;
55500 	call_rcu_func_t call_func;
55501 	struct rcu_tasks_percpu *rtpcpu;
55502 	int percpu_enqueue_shift;
55503 	int percpu_enqueue_lim;
55504 	int percpu_dequeue_lim;
55505 	long unsigned int percpu_dequeue_gpseq;
55506 	struct mutex barrier_q_mutex;
55507 	atomic_t barrier_q_count;
55508 	struct completion barrier_q_completion;
55509 	long unsigned int barrier_q_seq;
55510 	char *name;
55511 	char *kname;
55512 };
55513 
55514 struct rcu_tasks_percpu {
55515 	struct rcu_segcblist cblist;
55516 	raw_spinlock_t lock;
55517 	long unsigned int rtp_jiffies;
55518 	long unsigned int rtp_n_lock_retries;
55519 	struct work_struct rtp_work;
55520 	struct irq_work rtp_irq_work;
55521 	struct callback_head barrier_q_head;
55522 	struct list_head rtp_blkd_tasks;
55523 	int cpu;
55524 	struct rcu_tasks *rtpp;
55525 };
55526 
55527 struct trc_stall_chk_rdr {
55528 	int nesting;
55529 	int ipi_to_cpu;
55530 	u8 needqs;
55531 };
55532 
55533 struct timezone {
55534 	int tz_minuteswest;
55535 	int tz_dsttime;
55536 };
55537 
55538 struct sigevent {
55539 	sigval_t sigev_value;
55540 	int sigev_signo;
55541 	int sigev_notify;
55542 	union {
55543 		int _pad[12];
55544 		int _tid;
55545 		struct {
55546 			void (*_function)(sigval_t);
55547 			void *_attribute;
55548 		} _sigev_thread;
55549 	} _sigev_un;
55550 };
55551 
55552 typedef struct sigevent sigevent_t;
55553 
55554 struct kallsym_iter {
55555 	loff_t pos;
55556 	loff_t pos_arch_end;
55557 	loff_t pos_mod_end;
55558 	loff_t pos_ftrace_mod_end;
55559 	loff_t pos_bpf_end;
55560 	long unsigned int value;
55561 	unsigned int nameoff;
55562 	char type;
55563 	char name[128];
55564 	char module_name[56];
55565 	int exported;
55566 	int show_value;
55567 };
55568 
55569 struct bpf_iter__ksym {
55570 	union {
55571 		struct bpf_iter_meta *meta;
55572 	};
55573 	union {
55574 		struct kallsym_iter *ksym;
55575 	};
55576 };
55577 
55578 enum ring_buffer_type {
55579 	RINGBUF_TYPE_DATA_TYPE_LEN_MAX = 28,
55580 	RINGBUF_TYPE_PADDING = 29,
55581 	RINGBUF_TYPE_TIME_EXTEND = 30,
55582 	RINGBUF_TYPE_TIME_STAMP = 31,
55583 };
55584 
55585 enum ring_buffer_flags {
55586 	RB_FL_OVERWRITE = 1,
55587 };
55588 
55589 struct ring_buffer_per_cpu;
55590 
55591 struct buffer_page;
55592 
55593 struct ring_buffer_iter {
55594 	struct ring_buffer_per_cpu *cpu_buffer;
55595 	long unsigned int head;
55596 	long unsigned int next_event;
55597 	struct buffer_page *head_page;
55598 	struct buffer_page *cache_reader_page;
55599 	long unsigned int cache_read;
55600 	u64 read_stamp;
55601 	u64 page_stamp;
55602 	struct ring_buffer_event *event;
55603 	int missed_events;
55604 };
55605 
55606 struct rb_irq_work {
55607 	struct irq_work work;
55608 	wait_queue_head_t waiters;
55609 	wait_queue_head_t full_waiters;
55610 	bool waiters_pending;
55611 	bool full_waiters_pending;
55612 	bool wakeup_full;
55613 };
55614 
55615 struct trace_buffer {
55616 	unsigned int flags;
55617 	int cpus;
55618 	atomic_t record_disabled;
55619 	cpumask_var_t cpumask;
55620 	struct lock_class_key *reader_lock_key;
55621 	struct mutex mutex;
55622 	struct ring_buffer_per_cpu **buffers;
55623 	struct hlist_node node;
55624 	u64 (*clock)();
55625 	struct rb_irq_work irq_work;
55626 	bool time_stamp_abs;
55627 };
55628 
55629 enum {
55630 	RB_LEN_TIME_EXTEND = 8,
55631 	RB_LEN_TIME_STAMP = 8,
55632 };
55633 
55634 struct buffer_data_page {
55635 	u64 time_stamp;
55636 	local_t commit;
55637 	unsigned char data[0];
55638 };
55639 
55640 struct buffer_page {
55641 	struct list_head list;
55642 	local_t write;
55643 	unsigned int read;
55644 	local_t entries;
55645 	long unsigned int real_end;
55646 	struct buffer_data_page *page;
55647 };
55648 
55649 struct rb_event_info {
55650 	u64 ts;
55651 	u64 delta;
55652 	u64 before;
55653 	u64 after;
55654 	long unsigned int length;
55655 	struct buffer_page *tail_page;
55656 	int add_timestamp;
55657 };
55658 
55659 enum {
55660 	RB_ADD_STAMP_NONE = 0,
55661 	RB_ADD_STAMP_EXTEND = 2,
55662 	RB_ADD_STAMP_ABSOLUTE = 4,
55663 	RB_ADD_STAMP_FORCE = 8,
55664 };
55665 
55666 enum {
55667 	RB_CTX_TRANSITION = 0,
55668 	RB_CTX_NMI = 1,
55669 	RB_CTX_IRQ = 2,
55670 	RB_CTX_SOFTIRQ = 3,
55671 	RB_CTX_NORMAL = 4,
55672 	RB_CTX_MAX = 5,
55673 };
55674 
55675 struct rb_time_struct {
55676 	local64_t time;
55677 };
55678 
55679 typedef struct rb_time_struct rb_time_t;
55680 
55681 struct ring_buffer_per_cpu {
55682 	int cpu;
55683 	atomic_t record_disabled;
55684 	atomic_t resize_disabled;
55685 	struct trace_buffer *buffer;
55686 	raw_spinlock_t reader_lock;
55687 	arch_spinlock_t lock;
55688 	struct lock_class_key lock_key;
55689 	struct buffer_data_page *free_page;
55690 	long unsigned int nr_pages;
55691 	unsigned int current_context;
55692 	struct list_head *pages;
55693 	struct buffer_page *head_page;
55694 	struct buffer_page *tail_page;
55695 	struct buffer_page *commit_page;
55696 	struct buffer_page *reader_page;
55697 	long unsigned int lost_events;
55698 	long unsigned int last_overrun;
55699 	long unsigned int nest;
55700 	local_t entries_bytes;
55701 	local_t entries;
55702 	local_t overrun;
55703 	local_t commit_overrun;
55704 	local_t dropped_events;
55705 	local_t committing;
55706 	local_t commits;
55707 	local_t pages_touched;
55708 	local_t pages_read;
55709 	long int last_pages_touch;
55710 	size_t shortest_full;
55711 	long unsigned int read;
55712 	long unsigned int read_bytes;
55713 	rb_time_t write_stamp;
55714 	rb_time_t before_stamp;
55715 	u64 event_stamp[5];
55716 	u64 read_stamp;
55717 	long int nr_pages_to_update;
55718 	struct list_head new_pages;
55719 	struct work_struct update_pages_work;
55720 	struct completion update_done;
55721 	struct rb_irq_work irq_work;
55722 };
55723 
55724 enum dynevent_type {
55725 	DYNEVENT_TYPE_SYNTH = 1,
55726 	DYNEVENT_TYPE_KPROBE = 2,
55727 	DYNEVENT_TYPE_NONE = 3,
55728 };
55729 
55730 struct dynevent_cmd;
55731 
55732 typedef int (*dynevent_create_fn_t)(struct dynevent_cmd *);
55733 
55734 struct dynevent_cmd {
55735 	struct seq_buf seq;
55736 	const char *event_name;
55737 	unsigned int n_fields;
55738 	enum dynevent_type type;
55739 	dynevent_create_fn_t run_command;
55740 	void *private_data;
55741 };
55742 
55743 struct kprobe_trace_entry_head {
55744 	struct trace_entry ent;
55745 	long unsigned int ip;
55746 };
55747 
55748 struct kretprobe_trace_entry_head {
55749 	struct trace_entry ent;
55750 	long unsigned int func;
55751 	long unsigned int ret_ip;
55752 };
55753 
55754 enum {
55755 	TRACE_ARRAY_FL_GLOBAL = 1,
55756 };
55757 
55758 typedef int (*dynevent_check_arg_fn_t)(void *);
55759 
55760 struct dynevent_arg {
55761 	const char *str;
55762 	char separator;
55763 };
55764 
55765 struct freelist_node {
55766 	atomic_t refs;
55767 	struct freelist_node *next;
55768 };
55769 
55770 struct freelist_head {
55771 	struct freelist_node *head;
55772 };
55773 
55774 typedef u32 kprobe_opcode_t;
55775 
55776 struct arch_specific_insn {
55777 	kprobe_opcode_t *insn;
55778 	int boostable;
55779 };
55780 
55781 struct kprobe;
55782 
55783 typedef int (*kprobe_pre_handler_t)(struct kprobe *, struct pt_regs *);
55784 
55785 typedef void (*kprobe_post_handler_t)(struct kprobe *, struct pt_regs *, long unsigned int);
55786 
55787 struct kprobe {
55788 	struct hlist_node hlist;
55789 	struct list_head list;
55790 	long unsigned int nmissed;
55791 	kprobe_opcode_t *addr;
55792 	const char *symbol_name;
55793 	unsigned int offset;
55794 	kprobe_pre_handler_t pre_handler;
55795 	kprobe_post_handler_t post_handler;
55796 	kprobe_opcode_t opcode;
55797 	struct arch_specific_insn ainsn;
55798 	u32 flags;
55799 };
55800 
55801 struct kretprobe_instance;
55802 
55803 typedef int (*kretprobe_handler_t)(struct kretprobe_instance *, struct pt_regs *);
55804 
55805 struct kretprobe_holder;
55806 
55807 struct kretprobe_instance {
55808 	union {
55809 		struct freelist_node freelist;
55810 		struct callback_head rcu;
55811 	};
55812 	struct llist_node llist;
55813 	struct kretprobe_holder *rph;
55814 	kprobe_opcode_t *ret_addr;
55815 	void *fp;
55816 	char data[0];
55817 };
55818 
55819 struct kretprobe;
55820 
55821 struct kretprobe_holder {
55822 	struct kretprobe *rp;
55823 	refcount_t ref;
55824 };
55825 
55826 struct kretprobe {
55827 	struct kprobe kp;
55828 	kretprobe_handler_t handler;
55829 	kretprobe_handler_t entry_handler;
55830 	int maxactive;
55831 	int nmissed;
55832 	size_t data_size;
55833 	struct freelist_head freelist;
55834 	struct kretprobe_holder *rph;
55835 };
55836 
55837 struct trace_kprobe {
55838 	struct dyn_event devent;
55839 	struct kretprobe rp;
55840 	long unsigned int *nhit;
55841 	const char *symbol;
55842 	struct trace_probe tp;
55843 };
55844 
55845 struct bpf_lpm_trie_key {
55846 	__u32 prefixlen;
55847 	__u8 data[0];
55848 };
55849 
55850 struct lpm_trie_node {
55851 	struct callback_head rcu;
55852 	struct lpm_trie_node *child[2];
55853 	u32 prefixlen;
55854 	u32 flags;
55855 	u8 data[0];
55856 };
55857 
55858 struct lpm_trie {
55859 	struct bpf_map map;
55860 	struct lpm_trie_node *root;
55861 	size_t n_entries;
55862 	size_t max_prefixlen;
55863 	size_t data_size;
55864 	spinlock_t lock;
55865 	long: 64;
55866 	long: 64;
55867 	long: 64;
55868 	long: 64;
55869 	long: 64;
55870 	long: 64;
55871 	long: 64;
55872 	long: 64;
55873 	long: 64;
55874 	long: 64;
55875 	long: 64;
55876 };
55877 
55878 struct reuseport_array {
55879 	struct bpf_map map;
55880 	struct sock *ptrs[0];
55881 };
55882 
55883 enum {
55884 	XA_CHECK_SCHED = 4096,
55885 };
55886 
55887 struct wb_lock_cookie {
55888 	bool locked;
55889 	long unsigned int flags;
55890 };
55891 
55892 struct dirty_throttle_control {
55893 	struct bdi_writeback *wb;
55894 	struct fprop_local_percpu *wb_completions;
55895 	long unsigned int avail;
55896 	long unsigned int dirty;
55897 	long unsigned int thresh;
55898 	long unsigned int bg_thresh;
55899 	long unsigned int wb_dirty;
55900 	long unsigned int wb_thresh;
55901 	long unsigned int wb_bg_thresh;
55902 	long unsigned int pos_ratio;
55903 };
55904 
55905 enum lru_status {
55906 	LRU_REMOVED = 0,
55907 	LRU_REMOVED_RETRY = 1,
55908 	LRU_ROTATE = 2,
55909 	LRU_SKIP = 3,
55910 	LRU_RETRY = 4,
55911 };
55912 
55913 struct list_lru_memcg {
55914 	struct callback_head rcu;
55915 	struct list_lru_one node[0];
55916 };
55917 
55918 typedef enum lru_status (*list_lru_walk_cb)(struct list_head *, struct list_lru_one *, spinlock_t *, void *);
55919 
55920 struct list_lru_memcg_table {
55921 	struct list_lru_memcg *mlru;
55922 	struct mem_cgroup *memcg;
55923 };
55924 
55925 enum tlb_flush_reason {
55926 	TLB_FLUSH_ON_TASK_SWITCH = 0,
55927 	TLB_REMOTE_SHOOTDOWN = 1,
55928 	TLB_LOCAL_SHOOTDOWN = 2,
55929 	TLB_LOCAL_MM_SHOOTDOWN = 3,
55930 	TLB_REMOTE_SEND_IPI = 4,
55931 	NR_TLB_FLUSH_REASONS = 5,
55932 };
55933 
55934 enum ttu_flags {
55935 	TTU_SPLIT_HUGE_PMD = 4,
55936 	TTU_IGNORE_MLOCK = 8,
55937 	TTU_SYNC = 16,
55938 	TTU_IGNORE_HWPOISON = 32,
55939 	TTU_BATCH_FLUSH = 64,
55940 	TTU_RMAP_LOCKED = 128,
55941 };
55942 
55943 typedef int rmap_t;
55944 
55945 struct rmap_walk_control {
55946 	void *arg;
55947 	bool try_lock;
55948 	bool contended;
55949 	bool (*rmap_one)(struct folio *, struct vm_area_struct *, long unsigned int, void *);
55950 	int (*done)(struct folio *);
55951 	struct anon_vma * (*anon_lock)(struct folio *, struct rmap_walk_control *);
55952 	bool (*invalid_vma)(struct vm_area_struct *, void *);
55953 };
55954 
55955 struct trace_event_raw_tlb_flush {
55956 	struct trace_entry ent;
55957 	int reason;
55958 	long unsigned int pages;
55959 	char __data[0];
55960 };
55961 
55962 struct trace_event_data_offsets_tlb_flush {};
55963 
55964 typedef void (*btf_trace_tlb_flush)(void *, int, long unsigned int);
55965 
55966 struct trace_event_raw_mm_migrate_pages {
55967 	struct trace_entry ent;
55968 	long unsigned int succeeded;
55969 	long unsigned int failed;
55970 	long unsigned int thp_succeeded;
55971 	long unsigned int thp_failed;
55972 	long unsigned int thp_split;
55973 	enum migrate_mode mode;
55974 	int reason;
55975 	char __data[0];
55976 };
55977 
55978 struct trace_event_raw_mm_migrate_pages_start {
55979 	struct trace_entry ent;
55980 	enum migrate_mode mode;
55981 	int reason;
55982 	char __data[0];
55983 };
55984 
55985 struct trace_event_raw_migration_pte {
55986 	struct trace_entry ent;
55987 	long unsigned int addr;
55988 	long unsigned int pte;
55989 	int order;
55990 	char __data[0];
55991 };
55992 
55993 struct trace_event_data_offsets_mm_migrate_pages {};
55994 
55995 struct trace_event_data_offsets_mm_migrate_pages_start {};
55996 
55997 struct trace_event_data_offsets_migration_pte {};
55998 
55999 typedef void (*btf_trace_mm_migrate_pages)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, enum migrate_mode, int);
56000 
56001 typedef void (*btf_trace_mm_migrate_pages_start)(void *, enum migrate_mode, int);
56002 
56003 typedef void (*btf_trace_set_migration_pte)(void *, long unsigned int, long unsigned int, int);
56004 
56005 typedef void (*btf_trace_remove_migration_pte)(void *, long unsigned int, long unsigned int, int);
56006 
56007 struct folio_referenced_arg {
56008 	int mapcount;
56009 	int referenced;
56010 	long unsigned int vm_flags;
56011 	struct mem_cgroup *memcg;
56012 };
56013 
56014 struct rmap_item;
56015 
56016 struct mm_slot {
56017 	struct hlist_node link;
56018 	struct list_head mm_list;
56019 	struct rmap_item *rmap_list;
56020 	struct mm_struct *mm;
56021 };
56022 
56023 struct stable_node;
56024 
56025 struct rmap_item {
56026 	struct rmap_item *rmap_list;
56027 	union {
56028 		struct anon_vma *anon_vma;
56029 		int nid;
56030 	};
56031 	struct mm_struct *mm;
56032 	long unsigned int address;
56033 	unsigned int oldchecksum;
56034 	union {
56035 		struct rb_node node;
56036 		struct {
56037 			struct stable_node *head;
56038 			struct hlist_node hlist;
56039 		};
56040 	};
56041 };
56042 
56043 struct ksm_scan {
56044 	struct mm_slot *mm_slot;
56045 	long unsigned int address;
56046 	struct rmap_item **rmap_list;
56047 	long unsigned int seqnr;
56048 };
56049 
56050 struct stable_node {
56051 	union {
56052 		struct rb_node node;
56053 		struct {
56054 			struct list_head *head;
56055 			struct {
56056 				struct hlist_node hlist_dup;
56057 				struct list_head list;
56058 			};
56059 		};
56060 	};
56061 	struct hlist_head hlist;
56062 	union {
56063 		long unsigned int kpfn;
56064 		long unsigned int chain_prune_time;
56065 	};
56066 	int rmap_hlist_len;
56067 	int nid;
56068 };
56069 
56070 enum get_ksm_page_flags {
56071 	GET_KSM_PAGE_NOLOCK = 0,
56072 	GET_KSM_PAGE_LOCK = 1,
56073 	GET_KSM_PAGE_TRYLOCK = 2,
56074 };
56075 
56076 enum vfs_get_super_keying {
56077 	vfs_get_single_super = 0,
56078 	vfs_get_single_reconf_super = 1,
56079 	vfs_get_keyed_super = 2,
56080 	vfs_get_independent_super = 3,
56081 };
56082 
56083 struct eventfd_ctx {
56084 	struct kref kref;
56085 	wait_queue_head_t wqh;
56086 	__u64 count;
56087 	unsigned int flags;
56088 	int id;
56089 };
56090 
56091 struct proc_maps_private {
56092 	struct inode *inode;
56093 	struct task_struct *task;
56094 	struct mm_struct *mm;
56095 	struct vm_area_struct *tail_vma;
56096 	struct mempolicy *task_mempolicy;
56097 };
56098 
56099 struct mem_size_stats {
56100 	long unsigned int resident;
56101 	long unsigned int shared_clean;
56102 	long unsigned int shared_dirty;
56103 	long unsigned int private_clean;
56104 	long unsigned int private_dirty;
56105 	long unsigned int referenced;
56106 	long unsigned int anonymous;
56107 	long unsigned int lazyfree;
56108 	long unsigned int anonymous_thp;
56109 	long unsigned int shmem_thp;
56110 	long unsigned int file_thp;
56111 	long unsigned int swap;
56112 	long unsigned int shared_hugetlb;
56113 	long unsigned int private_hugetlb;
56114 	u64 pss;
56115 	u64 pss_anon;
56116 	u64 pss_file;
56117 	u64 pss_shmem;
56118 	u64 pss_dirty;
56119 	u64 pss_locked;
56120 	u64 swap_pss;
56121 };
56122 
56123 enum clear_refs_types {
56124 	CLEAR_REFS_ALL = 1,
56125 	CLEAR_REFS_ANON = 2,
56126 	CLEAR_REFS_MAPPED = 3,
56127 	CLEAR_REFS_SOFT_DIRTY = 4,
56128 	CLEAR_REFS_MM_HIWATER_RSS = 5,
56129 	CLEAR_REFS_LAST = 6,
56130 };
56131 
56132 struct clear_refs_private {
56133 	enum clear_refs_types type;
56134 };
56135 
56136 typedef struct {
56137 	u64 pme;
56138 } pagemap_entry_t;
56139 
56140 struct pagemapread {
56141 	int pos;
56142 	int len;
56143 	pagemap_entry_t *buffer;
56144 	bool show_pfn;
56145 };
56146 
56147 struct numa_maps {
56148 	long unsigned int pages;
56149 	long unsigned int anon;
56150 	long unsigned int active;
56151 	long unsigned int writeback;
56152 	long unsigned int mapcount_max;
56153 	long unsigned int dirty;
56154 	long unsigned int swapcache;
56155 	long unsigned int node[256];
56156 };
56157 
56158 struct numa_maps_private {
56159 	struct proc_maps_private proc_maps;
56160 	struct numa_maps md;
56161 };
56162 
56163 struct bpf_iter_aux_info;
56164 
56165 enum {
56166 	EXT4_MF_MNTDIR_SAMPLED = 0,
56167 	EXT4_MF_FS_ABORTED = 1,
56168 	EXT4_MF_FC_INELIGIBLE = 2,
56169 };
56170 
56171 enum {
56172 	EXT4_STATE_JDATA = 0,
56173 	EXT4_STATE_NEW = 1,
56174 	EXT4_STATE_XATTR = 2,
56175 	EXT4_STATE_NO_EXPAND = 3,
56176 	EXT4_STATE_DA_ALLOC_CLOSE = 4,
56177 	EXT4_STATE_EXT_MIGRATE = 5,
56178 	EXT4_STATE_NEWENTRY = 6,
56179 	EXT4_STATE_MAY_INLINE_DATA = 7,
56180 	EXT4_STATE_EXT_PRECACHED = 8,
56181 	EXT4_STATE_LUSTRE_EA_INODE = 9,
56182 	EXT4_STATE_VERITY_IN_PROGRESS = 10,
56183 	EXT4_STATE_FC_COMMITTING = 11,
56184 	EXT4_STATE_ORPHAN_FILE = 12,
56185 };
56186 
56187 struct fscrypt_str {
56188 	unsigned char *name;
56189 	u32 len;
56190 };
56191 
56192 struct fscrypt_name {
56193 	const struct qstr *usr_fname;
56194 	struct fscrypt_str disk_name;
56195 	u32 hash;
56196 	u32 minor_hash;
56197 	struct fscrypt_str crypto_buf;
56198 	bool is_nokey_name;
56199 };
56200 
56201 enum {
56202 	EXT4_FC_REASON_XATTR = 0,
56203 	EXT4_FC_REASON_CROSS_RENAME = 1,
56204 	EXT4_FC_REASON_JOURNAL_FLAG_CHANGE = 2,
56205 	EXT4_FC_REASON_NOMEM = 3,
56206 	EXT4_FC_REASON_SWAP_BOOT = 4,
56207 	EXT4_FC_REASON_RESIZE = 5,
56208 	EXT4_FC_REASON_RENAME_DIR = 6,
56209 	EXT4_FC_REASON_FALLOC_RANGE = 7,
56210 	EXT4_FC_REASON_INODE_JOURNAL_DATA = 8,
56211 	EXT4_FC_REASON_MAX = 9,
56212 };
56213 
56214 struct ext4_dir_entry {
56215 	__le32 inode;
56216 	__le16 rec_len;
56217 	__le16 name_len;
56218 	char name[255];
56219 };
56220 
56221 struct ext4_dir_entry_hash {
56222 	__le32 hash;
56223 	__le32 minor_hash;
56224 };
56225 
56226 struct ext4_dir_entry_2 {
56227 	__le32 inode;
56228 	__le16 rec_len;
56229 	__u8 name_len;
56230 	__u8 file_type;
56231 	char name[255];
56232 };
56233 
56234 struct ext4_dir_entry_tail {
56235 	__le32 det_reserved_zero1;
56236 	__le16 det_rec_len;
56237 	__u8 det_reserved_zero2;
56238 	__u8 det_reserved_ft;
56239 	__le32 det_checksum;
56240 };
56241 
56242 struct dx_hash_info {
56243 	u32 hash;
56244 	u32 minor_hash;
56245 	int hash_version;
56246 	u32 *seed;
56247 };
56248 
56249 struct ext4_filename {
56250 	const struct qstr *usr_fname;
56251 	struct fscrypt_str disk_name;
56252 	struct dx_hash_info hinfo;
56253 };
56254 
56255 typedef enum {
56256 	EXT4_IGET_NORMAL = 0,
56257 	EXT4_IGET_SPECIAL = 1,
56258 	EXT4_IGET_HANDLE = 2,
56259 } ext4_iget_flags;
56260 
56261 typedef enum {
56262 	EITHER = 0,
56263 	INDEX = 1,
56264 	DIRENT = 2,
56265 	DIRENT_HTREE = 3,
56266 } dirblock_type_t;
56267 
56268 struct fake_dirent {
56269 	__le32 inode;
56270 	__le16 rec_len;
56271 	u8 name_len;
56272 	u8 file_type;
56273 };
56274 
56275 struct dx_countlimit {
56276 	__le16 limit;
56277 	__le16 count;
56278 };
56279 
56280 struct dx_entry {
56281 	__le32 hash;
56282 	__le32 block;
56283 };
56284 
56285 struct dx_root_info {
56286 	__le32 reserved_zero;
56287 	u8 hash_version;
56288 	u8 info_length;
56289 	u8 indirect_levels;
56290 	u8 unused_flags;
56291 };
56292 
56293 struct dx_root {
56294 	struct fake_dirent dot;
56295 	char dot_name[4];
56296 	struct fake_dirent dotdot;
56297 	char dotdot_name[4];
56298 	struct dx_root_info info;
56299 	struct dx_entry entries[0];
56300 };
56301 
56302 struct dx_node {
56303 	struct fake_dirent fake;
56304 	struct dx_entry entries[0];
56305 };
56306 
56307 struct dx_frame {
56308 	struct buffer_head *bh;
56309 	struct dx_entry *entries;
56310 	struct dx_entry *at;
56311 };
56312 
56313 struct dx_map_entry {
56314 	u32 hash;
56315 	u16 offs;
56316 	u16 size;
56317 };
56318 
56319 struct dx_tail {
56320 	u32 dt_reserved;
56321 	__le32 dt_checksum;
56322 };
56323 
56324 struct ext4_renament {
56325 	struct inode *dir;
56326 	struct dentry *dentry;
56327 	struct inode *inode;
56328 	bool is_dir;
56329 	int dir_nlink_delta;
56330 	struct buffer_head *bh;
56331 	struct ext4_dir_entry_2 *de;
56332 	int inlined;
56333 	struct buffer_head *dir_bh;
56334 	struct ext4_dir_entry_2 *parent_de;
56335 	int dir_inlined;
56336 };
56337 
56338 struct jbd2_journal_block_tail {
56339 	__be32 t_checksum;
56340 };
56341 
56342 struct recovery_info {
56343 	tid_t start_transaction;
56344 	tid_t end_transaction;
56345 	int nr_replays;
56346 	int nr_revokes;
56347 	int nr_revoke_hits;
56348 };
56349 
56350 enum file_time_flags {
56351 	S_ATIME = 1,
56352 	S_MTIME = 2,
56353 	S_CTIME = 4,
56354 	S_VERSION = 8,
56355 };
56356 
56357 struct msdos_dir_entry {
56358 	__u8 name[11];
56359 	__u8 attr;
56360 	__u8 lcase;
56361 	__u8 ctime_cs;
56362 	__le16 ctime;
56363 	__le16 cdate;
56364 	__le16 adate;
56365 	__le16 starthi;
56366 	__le16 time;
56367 	__le16 date;
56368 	__le16 start;
56369 	__le32 size;
56370 };
56371 
56372 struct fat_slot_info {
56373 	loff_t i_pos;
56374 	loff_t slot_off;
56375 	int nr_slots;
56376 	struct msdos_dir_entry *de;
56377 	struct buffer_head *bh;
56378 };
56379 
56380 typedef void (*rpc_action)(struct rpc_task *);
56381 
56382 enum nfs_ftype {
56383 	NFNON = 0,
56384 	NFREG = 1,
56385 	NFDIR = 2,
56386 	NFBLK = 3,
56387 	NFCHR = 4,
56388 	NFLNK = 5,
56389 	NFSOCK = 6,
56390 	NFBAD = 7,
56391 	NFFIFO = 8,
56392 };
56393 
56394 enum nfs2_ftype {
56395 	NF2NON = 0,
56396 	NF2REG = 1,
56397 	NF2DIR = 2,
56398 	NF2BLK = 3,
56399 	NF2CHR = 4,
56400 	NF2LNK = 5,
56401 	NF2SOCK = 6,
56402 	NF2BAD = 7,
56403 	NF2FIFO = 8,
56404 };
56405 
56406 struct nfs2_fsstat {
56407 	__u32 tsize;
56408 	__u32 bsize;
56409 	__u32 blocks;
56410 	__u32 bfree;
56411 	__u32 bavail;
56412 };
56413 
56414 struct nfs_sattrargs {
56415 	struct nfs_fh *fh;
56416 	struct iattr *sattr;
56417 };
56418 
56419 struct nfs_diropargs {
56420 	struct nfs_fh *fh;
56421 	const char *name;
56422 	unsigned int len;
56423 };
56424 
56425 struct nfs_createargs {
56426 	struct nfs_fh *fh;
56427 	const char *name;
56428 	unsigned int len;
56429 	struct iattr *sattr;
56430 };
56431 
56432 struct nfs_linkargs {
56433 	struct nfs_fh *fromfh;
56434 	struct nfs_fh *tofh;
56435 	const char *toname;
56436 	unsigned int tolen;
56437 };
56438 
56439 struct nfs_symlinkargs {
56440 	struct nfs_fh *fromfh;
56441 	const char *fromname;
56442 	unsigned int fromlen;
56443 	struct page **pages;
56444 	unsigned int pathlen;
56445 	struct iattr *sattr;
56446 };
56447 
56448 struct nfs_readdirargs {
56449 	struct nfs_fh *fh;
56450 	__u32 cookie;
56451 	unsigned int count;
56452 	struct page **pages;
56453 };
56454 
56455 struct nfs_diropok {
56456 	struct nfs_fh *fh;
56457 	struct nfs_fattr *fattr;
56458 };
56459 
56460 struct nfs_readlinkargs {
56461 	struct nfs_fh *fh;
56462 	unsigned int pgbase;
56463 	unsigned int pglen;
56464 	struct page **pages;
56465 };
56466 
56467 struct lock_manager {
56468 	struct list_head list;
56469 	bool block_opens;
56470 };
56471 
56472 struct rpc_create_args {
56473 	struct net *net;
56474 	int protocol;
56475 	struct sockaddr *address;
56476 	size_t addrsize;
56477 	struct sockaddr *saddress;
56478 	const struct rpc_timeout *timeout;
56479 	const char *servername;
56480 	const char *nodename;
56481 	const struct rpc_program *program;
56482 	u32 prognumber;
56483 	u32 version;
56484 	rpc_authflavor_t authflavor;
56485 	u32 nconnect;
56486 	long unsigned int flags;
56487 	char *client_name;
56488 	struct svc_xprt *bc_xprt;
56489 	const struct cred *cred;
56490 	unsigned int max_connect;
56491 };
56492 
56493 struct lockd_net {
56494 	unsigned int nlmsvc_users;
56495 	long unsigned int next_gc;
56496 	long unsigned int nrhosts;
56497 	struct delayed_work grace_period_end;
56498 	struct lock_manager lockd_manager;
56499 	struct list_head nsm_handles;
56500 };
56501 
56502 struct nlm_lookup_host_info {
56503 	const int server;
56504 	const struct sockaddr *sap;
56505 	const size_t salen;
56506 	const short unsigned int protocol;
56507 	const u32 version;
56508 	const char *hostname;
56509 	const size_t hostname_len;
56510 	const int noresvport;
56511 	struct net *net;
56512 	const struct cred *cred;
56513 };
56514 
56515 typedef u32 unicode_t;
56516 
56517 enum xfs_defer_ops_type {
56518 	XFS_DEFER_OPS_TYPE_BMAP = 0,
56519 	XFS_DEFER_OPS_TYPE_REFCOUNT = 1,
56520 	XFS_DEFER_OPS_TYPE_RMAP = 2,
56521 	XFS_DEFER_OPS_TYPE_FREE = 3,
56522 	XFS_DEFER_OPS_TYPE_AGFL_FREE = 4,
56523 	XFS_DEFER_OPS_TYPE_ATTR = 5,
56524 	XFS_DEFER_OPS_TYPE_MAX = 6,
56525 };
56526 
56527 struct xfs_defer_pending {
56528 	struct list_head dfp_list;
56529 	struct list_head dfp_work;
56530 	struct xfs_log_item *dfp_intent;
56531 	struct xfs_log_item *dfp_done;
56532 	unsigned int dfp_count;
56533 	enum xfs_defer_ops_type dfp_type;
56534 };
56535 
56536 struct xfs_defer_op_type {
56537 	struct xfs_log_item * (*create_intent)(struct xfs_trans *, struct list_head *, unsigned int, bool);
56538 	void (*abort_intent)(struct xfs_log_item *);
56539 	struct xfs_log_item * (*create_done)(struct xfs_trans *, struct xfs_log_item *, unsigned int);
56540 	int (*finish_item)(struct xfs_trans *, struct xfs_log_item *, struct list_head *, struct xfs_btree_cur **);
56541 	void (*finish_cleanup)(struct xfs_trans *, struct xfs_btree_cur *, int);
56542 	void (*cancel_item)(struct list_head *);
56543 	unsigned int max_items;
56544 };
56545 
56546 struct xfs_defer_resources {
56547 	struct xfs_buf *dr_bp[2];
56548 	struct xfs_inode *dr_ip[2];
56549 	short unsigned int dr_bufs;
56550 	short unsigned int dr_ordered;
56551 	short unsigned int dr_inos;
56552 };
56553 
56554 struct xfs_defer_capture {
56555 	struct list_head dfc_list;
56556 	struct list_head dfc_dfops;
56557 	unsigned int dfc_tpflags;
56558 	unsigned int dfc_blkres;
56559 	unsigned int dfc_rtxres;
56560 	unsigned int dfc_logres;
56561 	struct xfs_defer_resources dfc_held;
56562 };
56563 
56564 struct xfs_iext_leaf;
56565 
56566 struct xfs_iext_cursor {
56567 	struct xfs_iext_leaf *leaf;
56568 	int pos;
56569 };
56570 
56571 struct iomap_ioend {
56572 	struct list_head io_list;
56573 	u16 io_type;
56574 	u16 io_flags;
56575 	u32 io_folios;
56576 	struct inode *io_inode;
56577 	size_t io_size;
56578 	loff_t io_offset;
56579 	sector_t io_sector;
56580 	struct bio *io_bio;
56581 	struct bio io_inline_bio;
56582 };
56583 
56584 struct iomap_writepage_ctx;
56585 
56586 struct iomap_writeback_ops {
56587 	int (*map_blocks)(struct iomap_writepage_ctx *, struct inode *, loff_t);
56588 	int (*prepare_ioend)(struct iomap_ioend *, int);
56589 	void (*discard_folio)(struct folio *, loff_t);
56590 };
56591 
56592 struct iomap_writepage_ctx {
56593 	struct iomap iomap;
56594 	struct iomap_ioend *ioend;
56595 	const struct iomap_writeback_ops *ops;
56596 };
56597 
56598 struct xfs_writepage_ctx {
56599 	struct iomap_writepage_ctx ctx;
56600 	unsigned int data_seq;
56601 	unsigned int cow_seq;
56602 };
56603 
56604 struct xfs_sysctl_val {
56605 	int min;
56606 	int val;
56607 	int max;
56608 };
56609 
56610 typedef struct xfs_sysctl_val xfs_sysctl_val_t;
56611 
56612 struct xfs_param {
56613 	xfs_sysctl_val_t sgid_inherit;
56614 	xfs_sysctl_val_t symlink_mode;
56615 	xfs_sysctl_val_t panic_mask;
56616 	xfs_sysctl_val_t error_level;
56617 	xfs_sysctl_val_t syncd_timer;
56618 	xfs_sysctl_val_t stats_clear;
56619 	xfs_sysctl_val_t inherit_sync;
56620 	xfs_sysctl_val_t inherit_nodump;
56621 	xfs_sysctl_val_t inherit_noatim;
56622 	xfs_sysctl_val_t xfs_buf_timer;
56623 	xfs_sysctl_val_t xfs_buf_age;
56624 	xfs_sysctl_val_t inherit_nosym;
56625 	xfs_sysctl_val_t rotorstep;
56626 	xfs_sysctl_val_t inherit_nodfrg;
56627 	xfs_sysctl_val_t fstrm_timer;
56628 	xfs_sysctl_val_t blockgc_timer;
56629 };
56630 
56631 typedef struct xfs_param xfs_param_t;
56632 
56633 struct xfs_inodegc {
56634 	struct llist_head list;
56635 	struct delayed_work work;
56636 	unsigned int items;
56637 	unsigned int shrinker_hits;
56638 };
56639 
56640 struct xfs_icwalk {
56641 	__u32 icw_flags;
56642 	kuid_t icw_uid;
56643 	kgid_t icw_gid;
56644 	prid_t icw_prid;
56645 	__u64 icw_min_file_size;
56646 	long int icw_scan_limit;
56647 };
56648 
56649 enum {
56650 	XFS_QLOWSP_1_PCNT = 0,
56651 	XFS_QLOWSP_3_PCNT = 1,
56652 	XFS_QLOWSP_5_PCNT = 2,
56653 	XFS_QLOWSP_MAX = 3,
56654 };
56655 
56656 enum xfs_icwalk_goal {
56657 	XFS_ICWALK_BLOCKGC = 1,
56658 	XFS_ICWALK_RECLAIM = 0,
56659 };
56660 
56661 struct xfs_unmount_log_format {
56662 	uint16_t magic;
56663 	uint16_t pad1;
56664 	uint32_t pad2;
56665 };
56666 
56667 typedef struct xlog_ticket xlog_ticket_t;
56668 
56669 struct msgbuf {
56670 	__kernel_long_t mtype;
56671 	char mtext[1];
56672 };
56673 
56674 struct msg;
56675 
56676 struct msqid_ds {
56677 	struct ipc_perm msg_perm;
56678 	struct msg *msg_first;
56679 	struct msg *msg_last;
56680 	__kernel_old_time_t msg_stime;
56681 	__kernel_old_time_t msg_rtime;
56682 	__kernel_old_time_t msg_ctime;
56683 	long unsigned int msg_lcbytes;
56684 	long unsigned int msg_lqbytes;
56685 	short unsigned int msg_cbytes;
56686 	short unsigned int msg_qnum;
56687 	short unsigned int msg_qbytes;
56688 	__kernel_ipc_pid_t msg_lspid;
56689 	__kernel_ipc_pid_t msg_lrpid;
56690 };
56691 
56692 struct msqid64_ds {
56693 	struct ipc64_perm msg_perm;
56694 	long int msg_stime;
56695 	long int msg_rtime;
56696 	long int msg_ctime;
56697 	long unsigned int msg_cbytes;
56698 	long unsigned int msg_qnum;
56699 	long unsigned int msg_qbytes;
56700 	__kernel_pid_t msg_lspid;
56701 	__kernel_pid_t msg_lrpid;
56702 	long unsigned int __unused4;
56703 	long unsigned int __unused5;
56704 };
56705 
56706 struct msginfo {
56707 	int msgpool;
56708 	int msgmap;
56709 	int msgmax;
56710 	int msgmnb;
56711 	int msgmni;
56712 	int msgssz;
56713 	int msgtql;
56714 	short unsigned int msgseg;
56715 };
56716 
56717 struct msg_msgseg;
56718 
56719 struct msg_msg {
56720 	struct list_head m_list;
56721 	long int m_type;
56722 	size_t m_ts;
56723 	struct msg_msgseg *next;
56724 	void *security;
56725 };
56726 
56727 struct msg_queue {
56728 	struct kern_ipc_perm q_perm;
56729 	time64_t q_stime;
56730 	time64_t q_rtime;
56731 	time64_t q_ctime;
56732 	long unsigned int q_cbytes;
56733 	long unsigned int q_qnum;
56734 	long unsigned int q_qbytes;
56735 	struct pid *q_lspid;
56736 	struct pid *q_lrpid;
56737 	struct list_head q_messages;
56738 	struct list_head q_receivers;
56739 	struct list_head q_senders;
56740 	long: 64;
56741 	long: 64;
56742 };
56743 
56744 struct msg_receiver {
56745 	struct list_head r_list;
56746 	struct task_struct *r_tsk;
56747 	int r_mode;
56748 	long int r_msgtype;
56749 	long int r_maxsize;
56750 	struct msg_msg *r_msg;
56751 };
56752 
56753 struct msg_sender {
56754 	struct list_head list;
56755 	struct task_struct *tsk;
56756 	size_t msgsz;
56757 };
56758 
56759 struct vfs_cap_data {
56760 	__le32 magic_etc;
56761 	struct {
56762 		__le32 permitted;
56763 		__le32 inheritable;
56764 	} data[2];
56765 };
56766 
56767 struct vfs_ns_cap_data {
56768 	__le32 magic_etc;
56769 	struct {
56770 		__le32 permitted;
56771 		__le32 inheritable;
56772 	} data[2];
56773 	__le32 rootid;
56774 };
56775 
56776 struct cpu_vfs_cap_data {
56777 	__u32 magic_etc;
56778 	kernel_cap_t permitted;
56779 	kernel_cap_t inheritable;
56780 	kuid_t rootid;
56781 };
56782 
56783 enum blk_default_limits {
56784 	BLK_MAX_SEGMENTS = 128,
56785 	BLK_SAFE_MAX_SECTORS = 255,
56786 	BLK_DEF_MAX_SECTORS = 2560,
56787 	BLK_MAX_SEGMENT_SIZE = 65536,
56788 	BLK_SEG_BOUNDARY_MASK = 4294967295,
56789 };
56790 
56791 enum {
56792 	WBT_RWQ_BG = 0,
56793 	WBT_RWQ_KSWAPD = 1,
56794 	WBT_RWQ_DISCARD = 2,
56795 	WBT_NUM_RWQ = 3,
56796 };
56797 
56798 typedef int (*list_cmp_func_t)(void *, const struct list_head *, const struct list_head *);
56799 
56800 struct virtqueue {
56801 	struct list_head list;
56802 	void (*callback)(struct virtqueue *);
56803 	const char *name;
56804 	struct virtio_device *vdev;
56805 	unsigned int index;
56806 	unsigned int num_free;
56807 	unsigned int num_max;
56808 	void *priv;
56809 	bool reset;
56810 };
56811 
56812 struct virtio_shm_region {
56813 	u64 addr;
56814 	u64 len;
56815 };
56816 
56817 struct epoll_event {
56818 	__poll_t events;
56819 	__u64 data;
56820 };
56821 
56822 struct io_epoll {
56823 	struct file *file;
56824 	int epfd;
56825 	int op;
56826 	int fd;
56827 	struct epoll_event event;
56828 };
56829 
56830 struct io_rsrc_node {
56831 	struct percpu_ref refs;
56832 	struct list_head node;
56833 	struct list_head rsrc_list;
56834 	struct io_rsrc_data *rsrc_data;
56835 	struct llist_node llist;
56836 	bool done;
56837 };
56838 
56839 struct io_mapped_ubuf {
56840 	u64 ubuf;
56841 	u64 ubuf_end;
56842 	unsigned int nr_bvecs;
56843 	long unsigned int acct_pages;
56844 	struct bio_vec bvec[0];
56845 };
56846 
56847 struct io_rsrc_put;
56848 
56849 typedef void rsrc_put_fn(struct io_ring_ctx *, struct io_rsrc_put *);
56850 
56851 struct io_rsrc_data {
56852 	struct io_ring_ctx *ctx;
56853 	u64 **tags;
56854 	unsigned int nr;
56855 	rsrc_put_fn *do_put;
56856 	atomic_t refs;
56857 	struct completion done;
56858 	bool quiesce;
56859 };
56860 
56861 enum {
56862 	REQ_F_FIXED_FILE_BIT = 0,
56863 	REQ_F_IO_DRAIN_BIT = 1,
56864 	REQ_F_LINK_BIT = 2,
56865 	REQ_F_HARDLINK_BIT = 3,
56866 	REQ_F_FORCE_ASYNC_BIT = 4,
56867 	REQ_F_BUFFER_SELECT_BIT = 5,
56868 	REQ_F_CQE_SKIP_BIT = 6,
56869 	REQ_F_FAIL_BIT = 8,
56870 	REQ_F_INFLIGHT_BIT = 9,
56871 	REQ_F_CUR_POS_BIT = 10,
56872 	REQ_F_NOWAIT_BIT = 11,
56873 	REQ_F_LINK_TIMEOUT_BIT = 12,
56874 	REQ_F_NEED_CLEANUP_BIT = 13,
56875 	REQ_F_POLLED_BIT = 14,
56876 	REQ_F_BUFFER_SELECTED_BIT = 15,
56877 	REQ_F_BUFFER_RING_BIT = 16,
56878 	REQ_F_REISSUE_BIT = 17,
56879 	REQ_F_CREDS_BIT = 18,
56880 	REQ_F_REFCOUNT_BIT = 19,
56881 	REQ_F_ARM_LTIMEOUT_BIT = 20,
56882 	REQ_F_ASYNC_DATA_BIT = 21,
56883 	REQ_F_SKIP_LINK_CQES_BIT = 22,
56884 	REQ_F_SINGLE_POLL_BIT = 23,
56885 	REQ_F_DOUBLE_POLL_BIT = 24,
56886 	REQ_F_PARTIAL_IO_BIT = 25,
56887 	REQ_F_CQE32_INIT_BIT = 26,
56888 	REQ_F_APOLL_MULTISHOT_BIT = 27,
56889 	REQ_F_CLEAR_POLLIN_BIT = 28,
56890 	REQ_F_HASH_LOCKED_BIT = 29,
56891 	REQ_F_SUPPORT_NOWAIT_BIT = 30,
56892 	REQ_F_ISREG_BIT = 31,
56893 	__REQ_F_LAST_BIT = 32,
56894 };
56895 
56896 struct io_rsrc_put {
56897 	struct list_head list;
56898 	u64 tag;
56899 	union {
56900 		void *rsrc;
56901 		struct file *file;
56902 		struct io_mapped_ubuf *buf;
56903 	};
56904 };
56905 
56906 struct wait_page_key {
56907 	struct folio *folio;
56908 	int bit_nr;
56909 	int page_match;
56910 };
56911 
56912 struct io_rw_state {
56913 	struct iov_iter iter;
56914 	struct iov_iter_state iter_state;
56915 	struct iovec fast_iov[8];
56916 };
56917 
56918 struct io_async_rw {
56919 	struct io_rw_state s;
56920 	const struct iovec *free_iovec;
56921 	size_t bytes_done;
56922 	struct wait_page_queue wpq;
56923 };
56924 
56925 struct io_rw {
56926 	struct kiocb kiocb;
56927 	u64 addr;
56928 	u32 len;
56929 	rwf_t flags;
56930 };
56931 
56932 struct assoc_array_ops {
56933 	long unsigned int (*get_key_chunk)(const void *, int);
56934 	long unsigned int (*get_object_key_chunk)(const void *, int);
56935 	bool (*compare_object)(const void *, const void *);
56936 	int (*diff_objects)(const void *, const void *);
56937 	void (*free_object)(void *);
56938 };
56939 
56940 struct assoc_array_node {
56941 	struct assoc_array_ptr *back_pointer;
56942 	u8 parent_slot;
56943 	struct assoc_array_ptr *slots[16];
56944 	long unsigned int nr_leaves_on_branch;
56945 };
56946 
56947 struct assoc_array_shortcut {
56948 	struct assoc_array_ptr *back_pointer;
56949 	int parent_slot;
56950 	int skip_to_level;
56951 	struct assoc_array_ptr *next_node;
56952 	long unsigned int index_key[0];
56953 };
56954 
56955 struct assoc_array_edit {
56956 	struct callback_head rcu;
56957 	struct assoc_array *array;
56958 	const struct assoc_array_ops *ops;
56959 	const struct assoc_array_ops *ops_for_excised_subtree;
56960 	struct assoc_array_ptr *leaf;
56961 	struct assoc_array_ptr **leaf_p;
56962 	struct assoc_array_ptr *dead_leaf;
56963 	struct assoc_array_ptr *new_meta[3];
56964 	struct assoc_array_ptr *excised_meta[1];
56965 	struct assoc_array_ptr *excised_subtree;
56966 	struct assoc_array_ptr **set_backpointers[16];
56967 	struct assoc_array_ptr *set_backpointers_to;
56968 	struct assoc_array_node *adjust_count_on;
56969 	long int adjust_count_by;
56970 	struct {
56971 		struct assoc_array_ptr **ptr;
56972 		struct assoc_array_ptr *to;
56973 	} set[2];
56974 	struct {
56975 		u8 *p;
56976 		u8 to;
56977 	} set_parent_slot[1];
56978 	u8 segment_cache[17];
56979 };
56980 
56981 enum assoc_array_walk_status {
56982 	assoc_array_walk_tree_empty = 0,
56983 	assoc_array_walk_found_terminal_node = 1,
56984 	assoc_array_walk_found_wrong_shortcut = 2,
56985 };
56986 
56987 struct assoc_array_walk_result {
56988 	struct {
56989 		struct assoc_array_node *node;
56990 		int level;
56991 		int slot;
56992 	} terminal_node;
56993 	struct {
56994 		struct assoc_array_shortcut *shortcut;
56995 		int level;
56996 		int sc_level;
56997 		long unsigned int sc_segments;
56998 		long unsigned int dissimilarity;
56999 	} wrong_shortcut;
57000 };
57001 
57002 struct assoc_array_delete_collapse_context {
57003 	struct assoc_array_node *node;
57004 	const void *skip_leaf;
57005 	int slot;
57006 };
57007 
57008 typedef unsigned char uch;
57009 
57010 typedef short unsigned int ush;
57011 
57012 typedef long unsigned int ulg;
57013 
57014 struct ct_data_s {
57015 	union {
57016 		ush freq;
57017 		ush code;
57018 	} fc;
57019 	union {
57020 		ush dad;
57021 		ush len;
57022 	} dl;
57023 };
57024 
57025 typedef struct ct_data_s ct_data;
57026 
57027 struct static_tree_desc_s {
57028 	const ct_data *static_tree;
57029 	const int *extra_bits;
57030 	int extra_base;
57031 	int elems;
57032 	int max_length;
57033 };
57034 
57035 typedef struct static_tree_desc_s static_tree_desc;
57036 
57037 struct tree_desc_s {
57038 	ct_data *dyn_tree;
57039 	int max_code;
57040 	static_tree_desc *stat_desc;
57041 };
57042 
57043 typedef ush Pos;
57044 
57045 typedef unsigned int IPos;
57046 
57047 struct deflate_state {
57048 	z_streamp strm;
57049 	int status;
57050 	Byte *pending_buf;
57051 	ulg pending_buf_size;
57052 	Byte *pending_out;
57053 	int pending;
57054 	int noheader;
57055 	Byte data_type;
57056 	Byte method;
57057 	int last_flush;
57058 	uInt w_size;
57059 	uInt w_bits;
57060 	uInt w_mask;
57061 	Byte *window;
57062 	ulg window_size;
57063 	Pos *prev;
57064 	Pos *head;
57065 	uInt ins_h;
57066 	uInt hash_size;
57067 	uInt hash_bits;
57068 	uInt hash_mask;
57069 	uInt hash_shift;
57070 	long int block_start;
57071 	uInt match_length;
57072 	IPos prev_match;
57073 	int match_available;
57074 	uInt strstart;
57075 	uInt match_start;
57076 	uInt lookahead;
57077 	uInt prev_length;
57078 	uInt max_chain_length;
57079 	uInt max_lazy_match;
57080 	int level;
57081 	int strategy;
57082 	uInt good_match;
57083 	int nice_match;
57084 	struct ct_data_s dyn_ltree[573];
57085 	struct ct_data_s dyn_dtree[61];
57086 	struct ct_data_s bl_tree[39];
57087 	struct tree_desc_s l_desc;
57088 	struct tree_desc_s d_desc;
57089 	struct tree_desc_s bl_desc;
57090 	ush bl_count[16];
57091 	int heap[573];
57092 	int heap_len;
57093 	int heap_max;
57094 	uch depth[573];
57095 	uch *l_buf;
57096 	uInt lit_bufsize;
57097 	uInt last_lit;
57098 	ush *d_buf;
57099 	ulg opt_len;
57100 	ulg static_len;
57101 	ulg compressed_len;
57102 	uInt matches;
57103 	int last_eob_len;
57104 	ush bi_buf;
57105 	int bi_valid;
57106 };
57107 
57108 typedef struct deflate_state deflate_state;
57109 
57110 typedef enum {
57111 	need_more = 0,
57112 	block_done = 1,
57113 	finish_started = 2,
57114 	finish_done = 3,
57115 } block_state;
57116 
57117 typedef block_state (*compress_func)(deflate_state *, int);
57118 
57119 struct deflate_workspace {
57120 	deflate_state deflate_memory;
57121 	Byte *window_memory;
57122 	Pos *prev_memory;
57123 	Pos *head_memory;
57124 	char *overlay_memory;
57125 };
57126 
57127 typedef struct deflate_workspace deflate_workspace;
57128 
57129 struct config_s {
57130 	ush good_length;
57131 	ush max_lazy;
57132 	ush nice_length;
57133 	ush max_chain;
57134 	compress_func func;
57135 };
57136 
57137 typedef struct config_s config;
57138 
57139 enum xz_mode {
57140 	XZ_SINGLE = 0,
57141 	XZ_PREALLOC = 1,
57142 	XZ_DYNALLOC = 2,
57143 };
57144 
57145 enum xz_ret {
57146 	XZ_OK = 0,
57147 	XZ_STREAM_END = 1,
57148 	XZ_UNSUPPORTED_CHECK = 2,
57149 	XZ_MEM_ERROR = 3,
57150 	XZ_MEMLIMIT_ERROR = 4,
57151 	XZ_FORMAT_ERROR = 5,
57152 	XZ_OPTIONS_ERROR = 6,
57153 	XZ_DATA_ERROR = 7,
57154 	XZ_BUF_ERROR = 8,
57155 };
57156 
57157 struct xz_buf {
57158 	const uint8_t *in;
57159 	size_t in_pos;
57160 	size_t in_size;
57161 	uint8_t *out;
57162 	size_t out_pos;
57163 	size_t out_size;
57164 };
57165 
57166 enum lzma_state {
57167 	STATE_LIT_LIT = 0,
57168 	STATE_MATCH_LIT_LIT = 1,
57169 	STATE_REP_LIT_LIT = 2,
57170 	STATE_SHORTREP_LIT_LIT = 3,
57171 	STATE_MATCH_LIT = 4,
57172 	STATE_REP_LIT = 5,
57173 	STATE_SHORTREP_LIT = 6,
57174 	STATE_LIT_MATCH = 7,
57175 	STATE_LIT_LONGREP = 8,
57176 	STATE_LIT_SHORTREP = 9,
57177 	STATE_NONLIT_MATCH = 10,
57178 	STATE_NONLIT_REP = 11,
57179 };
57180 
57181 struct dictionary {
57182 	uint8_t *buf;
57183 	size_t start;
57184 	size_t pos;
57185 	size_t full;
57186 	size_t limit;
57187 	size_t end;
57188 	uint32_t size;
57189 	uint32_t size_max;
57190 	uint32_t allocated;
57191 	enum xz_mode mode;
57192 };
57193 
57194 struct rc_dec {
57195 	uint32_t range;
57196 	uint32_t code;
57197 	uint32_t init_bytes_left;
57198 	const uint8_t *in;
57199 	size_t in_pos;
57200 	size_t in_limit;
57201 };
57202 
57203 struct lzma_len_dec {
57204 	uint16_t choice;
57205 	uint16_t choice2;
57206 	uint16_t low[128];
57207 	uint16_t mid[128];
57208 	uint16_t high[256];
57209 };
57210 
57211 struct lzma_dec {
57212 	uint32_t rep0;
57213 	uint32_t rep1;
57214 	uint32_t rep2;
57215 	uint32_t rep3;
57216 	enum lzma_state state;
57217 	uint32_t len;
57218 	uint32_t lc;
57219 	uint32_t literal_pos_mask;
57220 	uint32_t pos_mask;
57221 	uint16_t is_match[192];
57222 	uint16_t is_rep[12];
57223 	uint16_t is_rep0[12];
57224 	uint16_t is_rep1[12];
57225 	uint16_t is_rep2[12];
57226 	uint16_t is_rep0_long[192];
57227 	uint16_t dist_slot[256];
57228 	uint16_t dist_special[114];
57229 	uint16_t dist_align[16];
57230 	struct lzma_len_dec match_len_dec;
57231 	struct lzma_len_dec rep_len_dec;
57232 	uint16_t literal[12288];
57233 };
57234 
57235 enum lzma2_seq {
57236 	SEQ_CONTROL = 0,
57237 	SEQ_UNCOMPRESSED_1 = 1,
57238 	SEQ_UNCOMPRESSED_2 = 2,
57239 	SEQ_COMPRESSED_0 = 3,
57240 	SEQ_COMPRESSED_1 = 4,
57241 	SEQ_PROPERTIES = 5,
57242 	SEQ_LZMA_PREPARE = 6,
57243 	SEQ_LZMA_RUN = 7,
57244 	SEQ_COPY = 8,
57245 };
57246 
57247 struct lzma2_dec {
57248 	enum lzma2_seq sequence;
57249 	enum lzma2_seq next_sequence;
57250 	uint32_t uncompressed;
57251 	uint32_t compressed;
57252 	bool need_dict_reset;
57253 	bool need_props;
57254 };
57255 
57256 struct xz_dec_lzma2 {
57257 	struct rc_dec rc;
57258 	struct dictionary dict;
57259 	struct lzma2_dec lzma2;
57260 	struct lzma_dec lzma;
57261 	struct {
57262 		uint32_t size;
57263 		uint8_t buf[63];
57264 	} temp;
57265 };
57266 
57267 enum OID {
57268 	OID_id_dsa_with_sha1 = 0,
57269 	OID_id_dsa = 1,
57270 	OID_id_ecPublicKey = 2,
57271 	OID_id_prime192v1 = 3,
57272 	OID_id_prime256v1 = 4,
57273 	OID_id_ecdsa_with_sha1 = 5,
57274 	OID_id_ecdsa_with_sha224 = 6,
57275 	OID_id_ecdsa_with_sha256 = 7,
57276 	OID_id_ecdsa_with_sha384 = 8,
57277 	OID_id_ecdsa_with_sha512 = 9,
57278 	OID_rsaEncryption = 10,
57279 	OID_md2WithRSAEncryption = 11,
57280 	OID_md3WithRSAEncryption = 12,
57281 	OID_md4WithRSAEncryption = 13,
57282 	OID_sha1WithRSAEncryption = 14,
57283 	OID_sha256WithRSAEncryption = 15,
57284 	OID_sha384WithRSAEncryption = 16,
57285 	OID_sha512WithRSAEncryption = 17,
57286 	OID_sha224WithRSAEncryption = 18,
57287 	OID_data = 19,
57288 	OID_signed_data = 20,
57289 	OID_email_address = 21,
57290 	OID_contentType = 22,
57291 	OID_messageDigest = 23,
57292 	OID_signingTime = 24,
57293 	OID_smimeCapabilites = 25,
57294 	OID_smimeAuthenticatedAttrs = 26,
57295 	OID_md2 = 27,
57296 	OID_md4 = 28,
57297 	OID_md5 = 29,
57298 	OID_mskrb5 = 30,
57299 	OID_krb5 = 31,
57300 	OID_krb5u2u = 32,
57301 	OID_msIndirectData = 33,
57302 	OID_msStatementType = 34,
57303 	OID_msSpOpusInfo = 35,
57304 	OID_msPeImageDataObjId = 36,
57305 	OID_msIndividualSPKeyPurpose = 37,
57306 	OID_msOutlookExpress = 38,
57307 	OID_ntlmssp = 39,
57308 	OID_spnego = 40,
57309 	OID_IAKerb = 41,
57310 	OID_PKU2U = 42,
57311 	OID_Scram = 43,
57312 	OID_certAuthInfoAccess = 44,
57313 	OID_sha1 = 45,
57314 	OID_id_ansip384r1 = 46,
57315 	OID_sha256 = 47,
57316 	OID_sha384 = 48,
57317 	OID_sha512 = 49,
57318 	OID_sha224 = 50,
57319 	OID_commonName = 51,
57320 	OID_surname = 52,
57321 	OID_countryName = 53,
57322 	OID_locality = 54,
57323 	OID_stateOrProvinceName = 55,
57324 	OID_organizationName = 56,
57325 	OID_organizationUnitName = 57,
57326 	OID_title = 58,
57327 	OID_description = 59,
57328 	OID_name = 60,
57329 	OID_givenName = 61,
57330 	OID_initials = 62,
57331 	OID_generationalQualifier = 63,
57332 	OID_subjectKeyIdentifier = 64,
57333 	OID_keyUsage = 65,
57334 	OID_subjectAltName = 66,
57335 	OID_issuerAltName = 67,
57336 	OID_basicConstraints = 68,
57337 	OID_crlDistributionPoints = 69,
57338 	OID_certPolicies = 70,
57339 	OID_authorityKeyIdentifier = 71,
57340 	OID_extKeyUsage = 72,
57341 	OID_NetlogonMechanism = 73,
57342 	OID_appleLocalKdcSupported = 74,
57343 	OID_gostCPSignA = 75,
57344 	OID_gostCPSignB = 76,
57345 	OID_gostCPSignC = 77,
57346 	OID_gost2012PKey256 = 78,
57347 	OID_gost2012PKey512 = 79,
57348 	OID_gost2012Digest256 = 80,
57349 	OID_gost2012Digest512 = 81,
57350 	OID_gost2012Signature256 = 82,
57351 	OID_gost2012Signature512 = 83,
57352 	OID_gostTC26Sign256A = 84,
57353 	OID_gostTC26Sign256B = 85,
57354 	OID_gostTC26Sign256C = 86,
57355 	OID_gostTC26Sign256D = 87,
57356 	OID_gostTC26Sign512A = 88,
57357 	OID_gostTC26Sign512B = 89,
57358 	OID_gostTC26Sign512C = 90,
57359 	OID_sm2 = 91,
57360 	OID_sm3 = 92,
57361 	OID_SM2_with_SM3 = 93,
57362 	OID_sm3WithRSAEncryption = 94,
57363 	OID_TPMLoadableKey = 95,
57364 	OID_TPMImportableKey = 96,
57365 	OID_TPMSealedData = 97,
57366 	OID__NR = 98,
57367 };
57368 
57369 enum asn1_tag {
57370 	ASN1_EOC = 0,
57371 	ASN1_BOOL = 1,
57372 	ASN1_INT = 2,
57373 	ASN1_BTS = 3,
57374 	ASN1_OTS = 4,
57375 	ASN1_NULL = 5,
57376 	ASN1_OID = 6,
57377 	ASN1_ODE = 7,
57378 	ASN1_EXT = 8,
57379 	ASN1_REAL = 9,
57380 	ASN1_ENUM = 10,
57381 	ASN1_EPDV = 11,
57382 	ASN1_UTF8STR = 12,
57383 	ASN1_RELOID = 13,
57384 	ASN1_SEQ = 16,
57385 	ASN1_SET = 17,
57386 	ASN1_NUMSTR = 18,
57387 	ASN1_PRNSTR = 19,
57388 	ASN1_TEXSTR = 20,
57389 	ASN1_VIDSTR = 21,
57390 	ASN1_IA5STR = 22,
57391 	ASN1_UNITIM = 23,
57392 	ASN1_GENTIM = 24,
57393 	ASN1_GRASTR = 25,
57394 	ASN1_VISSTR = 26,
57395 	ASN1_GENSTR = 27,
57396 	ASN1_UNISTR = 28,
57397 	ASN1_CHRSTR = 29,
57398 	ASN1_BMPSTR = 30,
57399 	ASN1_LONG_TAG = 31,
57400 };
57401 
57402 struct xa_limit {
57403 	u32 max;
57404 	u32 min;
57405 };
57406 
57407 struct resource_entry {
57408 	struct list_head node;
57409 	struct resource *res;
57410 	resource_size_t offset;
57411 	struct resource __res;
57412 };
57413 
57414 struct of_bus;
57415 
57416 struct of_pci_range_parser {
57417 	struct device_node *node;
57418 	struct of_bus *bus;
57419 	const __be32 *range;
57420 	const __be32 *end;
57421 	int na;
57422 	int ns;
57423 	int pna;
57424 	bool dma;
57425 };
57426 
57427 struct of_pci_range {
57428 	union {
57429 		u64 pci_addr;
57430 		u64 bus_addr;
57431 	};
57432 	u64 cpu_addr;
57433 	u64 size;
57434 	u32 flags;
57435 };
57436 
57437 struct fb_cvt_data {
57438 	u32 xres;
57439 	u32 yres;
57440 	u32 refresh;
57441 	u32 f_refresh;
57442 	u32 pixclock;
57443 	u32 hperiod;
57444 	u32 hblank;
57445 	u32 hfreq;
57446 	u32 htotal;
57447 	u32 vtotal;
57448 	u32 vsync;
57449 	u32 hsync;
57450 	u32 h_front_porch;
57451 	u32 h_back_porch;
57452 	u32 v_front_porch;
57453 	u32 v_back_porch;
57454 	u32 h_margin;
57455 	u32 v_margin;
57456 	u32 interlace;
57457 	u32 aspect_ratio;
57458 	u32 active_pixels;
57459 	u32 flags;
57460 	u32 status;
57461 };
57462 
57463 struct termios {
57464 	tcflag_t c_iflag;
57465 	tcflag_t c_oflag;
57466 	tcflag_t c_cflag;
57467 	tcflag_t c_lflag;
57468 	cc_t c_cc[19];
57469 	cc_t c_line;
57470 	speed_t c_ispeed;
57471 	speed_t c_ospeed;
57472 };
57473 
57474 struct sgttyb {
57475 	char sg_ispeed;
57476 	char sg_ospeed;
57477 	char sg_erase;
57478 	char sg_kill;
57479 	short int sg_flags;
57480 };
57481 
57482 struct tchars {
57483 	char t_intrc;
57484 	char t_quitc;
57485 	char t_startc;
57486 	char t_stopc;
57487 	char t_eofc;
57488 	char t_brkc;
57489 };
57490 
57491 struct ltchars {
57492 	char t_suspc;
57493 	char t_dsuspc;
57494 	char t_rprntc;
57495 	char t_flushc;
57496 	char t_werasc;
57497 	char t_lnextc;
57498 };
57499 
57500 struct termio {
57501 	short unsigned int c_iflag;
57502 	short unsigned int c_oflag;
57503 	short unsigned int c_cflag;
57504 	short unsigned int c_lflag;
57505 	unsigned char c_line;
57506 	unsigned char c_cc[10];
57507 };
57508 
57509 struct kbdiacruc {
57510 	unsigned int diacr;
57511 	unsigned int base;
57512 	unsigned int result;
57513 };
57514 
57515 struct hvsi_header {
57516 	uint8_t type;
57517 	uint8_t len;
57518 	__be16 seqno;
57519 };
57520 
57521 struct hvsi_data {
57522 	struct hvsi_header hdr;
57523 	uint8_t data[12];
57524 };
57525 
57526 struct hvsi_control {
57527 	struct hvsi_header hdr;
57528 	__be16 verb;
57529 	__be32 word;
57530 	__be32 mask;
57531 } __attribute__((packed));
57532 
57533 struct hvsi_query {
57534 	struct hvsi_header hdr;
57535 	__be16 verb;
57536 };
57537 
57538 struct hvsi_query_response {
57539 	struct hvsi_header hdr;
57540 	__be16 verb;
57541 	__be16 query_seqno;
57542 	union {
57543 		uint8_t version;
57544 		__be32 mctrl_word;
57545 	} u;
57546 };
57547 
57548 struct hvsi_priv {
57549 	unsigned int inbuf_len;
57550 	unsigned char inbuf[255];
57551 	unsigned int inbuf_cur;
57552 	unsigned int inbuf_pktlen;
57553 	atomic_t seqno;
57554 	unsigned int opened: 1;
57555 	unsigned int established: 1;
57556 	unsigned int is_console: 1;
57557 	unsigned int mctrl_update: 1;
57558 	short unsigned int mctrl;
57559 	struct tty_struct *tty;
57560 	int (*get_chars)(uint32_t, char *, int);
57561 	int (*put_chars)(uint32_t, const char *, int);
57562 	uint32_t termno;
57563 };
57564 
57565 struct pericom8250 {
57566 	void *virt;
57567 	unsigned int nr;
57568 	int line[0];
57569 };
57570 
57571 struct klist_iter {
57572 	struct klist *i_klist;
57573 	struct klist_node *i_cur;
57574 };
57575 
57576 enum {
57577 	MMOP_OFFLINE = 0,
57578 	MMOP_ONLINE = 1,
57579 	MMOP_ONLINE_KERNEL = 2,
57580 	MMOP_ONLINE_MOVABLE = 3,
57581 };
57582 
57583 typedef int mhp_t;
57584 
57585 typedef int (*walk_memory_groups_func_t)(struct memory_group *, void *);
57586 
57587 struct for_each_memory_block_cb_data {
57588 	walk_memory_blocks_func_t func;
57589 	void *arg;
57590 };
57591 
57592 struct nvdimm_map {
57593 	struct nvdimm_bus *nvdimm_bus;
57594 	struct list_head list;
57595 	resource_size_t offset;
57596 	long unsigned int flags;
57597 	size_t size;
57598 	union {
57599 		void *mem;
57600 		void *iomem;
57601 	};
57602 	struct kref kref;
57603 };
57604 
57605 struct trace_event_raw_dma_fence {
57606 	struct trace_entry ent;
57607 	u32 __data_loc_driver;
57608 	u32 __data_loc_timeline;
57609 	unsigned int context;
57610 	unsigned int seqno;
57611 	char __data[0];
57612 };
57613 
57614 struct trace_event_data_offsets_dma_fence {
57615 	u32 driver;
57616 	u32 timeline;
57617 };
57618 
57619 typedef void (*btf_trace_dma_fence_emit)(void *, struct dma_fence *);
57620 
57621 typedef void (*btf_trace_dma_fence_init)(void *, struct dma_fence *);
57622 
57623 typedef void (*btf_trace_dma_fence_destroy)(void *, struct dma_fence *);
57624 
57625 typedef void (*btf_trace_dma_fence_enable_signal)(void *, struct dma_fence *);
57626 
57627 typedef void (*btf_trace_dma_fence_signaled)(void *, struct dma_fence *);
57628 
57629 typedef void (*btf_trace_dma_fence_wait_start)(void *, struct dma_fence *);
57630 
57631 typedef void (*btf_trace_dma_fence_wait_end)(void *, struct dma_fence *);
57632 
57633 struct default_wait_cb {
57634 	struct dma_fence_cb base;
57635 	struct task_struct *task;
57636 };
57637 
57638 enum ata_xfer_mask {
57639 	ATA_MASK_PIO = 127,
57640 	ATA_MASK_MWDMA = 3968,
57641 	ATA_MASK_UDMA = 1044480,
57642 };
57643 
57644 enum hsm_task_states {
57645 	HSM_ST_IDLE = 0,
57646 	HSM_ST_FIRST = 1,
57647 	HSM_ST = 2,
57648 	HSM_ST_LAST = 3,
57649 	HSM_ST_ERR = 4,
57650 };
57651 
57652 struct pci_bits {
57653 	unsigned int reg;
57654 	unsigned int width;
57655 	long unsigned int mask;
57656 	long unsigned int val;
57657 };
57658 
57659 struct trace_event_raw_ata_qc_issue_template {
57660 	struct trace_entry ent;
57661 	unsigned int ata_port;
57662 	unsigned int ata_dev;
57663 	unsigned int tag;
57664 	unsigned char cmd;
57665 	unsigned char dev;
57666 	unsigned char lbal;
57667 	unsigned char lbam;
57668 	unsigned char lbah;
57669 	unsigned char nsect;
57670 	unsigned char feature;
57671 	unsigned char hob_lbal;
57672 	unsigned char hob_lbam;
57673 	unsigned char hob_lbah;
57674 	unsigned char hob_nsect;
57675 	unsigned char hob_feature;
57676 	unsigned char ctl;
57677 	unsigned char proto;
57678 	long unsigned int flags;
57679 	char __data[0];
57680 };
57681 
57682 struct trace_event_raw_ata_qc_complete_template {
57683 	struct trace_entry ent;
57684 	unsigned int ata_port;
57685 	unsigned int ata_dev;
57686 	unsigned int tag;
57687 	unsigned char status;
57688 	unsigned char dev;
57689 	unsigned char lbal;
57690 	unsigned char lbam;
57691 	unsigned char lbah;
57692 	unsigned char nsect;
57693 	unsigned char error;
57694 	unsigned char hob_lbal;
57695 	unsigned char hob_lbam;
57696 	unsigned char hob_lbah;
57697 	unsigned char hob_nsect;
57698 	unsigned char hob_feature;
57699 	unsigned char ctl;
57700 	long unsigned int flags;
57701 	char __data[0];
57702 };
57703 
57704 struct trace_event_raw_ata_tf_load {
57705 	struct trace_entry ent;
57706 	unsigned int ata_port;
57707 	unsigned char cmd;
57708 	unsigned char dev;
57709 	unsigned char lbal;
57710 	unsigned char lbam;
57711 	unsigned char lbah;
57712 	unsigned char nsect;
57713 	unsigned char feature;
57714 	unsigned char hob_lbal;
57715 	unsigned char hob_lbam;
57716 	unsigned char hob_lbah;
57717 	unsigned char hob_nsect;
57718 	unsigned char hob_feature;
57719 	unsigned char proto;
57720 	char __data[0];
57721 };
57722 
57723 struct trace_event_raw_ata_exec_command_template {
57724 	struct trace_entry ent;
57725 	unsigned int ata_port;
57726 	unsigned int tag;
57727 	unsigned char cmd;
57728 	unsigned char feature;
57729 	unsigned char hob_nsect;
57730 	unsigned char proto;
57731 	char __data[0];
57732 };
57733 
57734 struct trace_event_raw_ata_bmdma_status {
57735 	struct trace_entry ent;
57736 	unsigned int ata_port;
57737 	unsigned int tag;
57738 	unsigned char host_stat;
57739 	char __data[0];
57740 };
57741 
57742 struct trace_event_raw_ata_eh_link_autopsy {
57743 	struct trace_entry ent;
57744 	unsigned int ata_port;
57745 	unsigned int ata_dev;
57746 	unsigned int eh_action;
57747 	unsigned int eh_err_mask;
57748 	char __data[0];
57749 };
57750 
57751 struct trace_event_raw_ata_eh_link_autopsy_qc {
57752 	struct trace_entry ent;
57753 	unsigned int ata_port;
57754 	unsigned int ata_dev;
57755 	unsigned int tag;
57756 	unsigned int qc_flags;
57757 	unsigned int eh_err_mask;
57758 	char __data[0];
57759 };
57760 
57761 struct trace_event_raw_ata_eh_action_template {
57762 	struct trace_entry ent;
57763 	unsigned int ata_port;
57764 	unsigned int ata_dev;
57765 	unsigned int eh_action;
57766 	char __data[0];
57767 };
57768 
57769 struct trace_event_raw_ata_link_reset_begin_template {
57770 	struct trace_entry ent;
57771 	unsigned int ata_port;
57772 	unsigned int class[2];
57773 	long unsigned int deadline;
57774 	char __data[0];
57775 };
57776 
57777 struct trace_event_raw_ata_link_reset_end_template {
57778 	struct trace_entry ent;
57779 	unsigned int ata_port;
57780 	unsigned int class[2];
57781 	int rc;
57782 	char __data[0];
57783 };
57784 
57785 struct trace_event_raw_ata_port_eh_begin_template {
57786 	struct trace_entry ent;
57787 	unsigned int ata_port;
57788 	char __data[0];
57789 };
57790 
57791 struct trace_event_raw_ata_sff_hsm_template {
57792 	struct trace_entry ent;
57793 	unsigned int ata_port;
57794 	unsigned int ata_dev;
57795 	unsigned int tag;
57796 	unsigned int qc_flags;
57797 	unsigned int protocol;
57798 	unsigned int hsm_state;
57799 	unsigned char dev_state;
57800 	char __data[0];
57801 };
57802 
57803 struct trace_event_raw_ata_transfer_data_template {
57804 	struct trace_entry ent;
57805 	unsigned int ata_port;
57806 	unsigned int ata_dev;
57807 	unsigned int tag;
57808 	unsigned int flags;
57809 	unsigned int offset;
57810 	unsigned int bytes;
57811 	char __data[0];
57812 };
57813 
57814 struct trace_event_raw_ata_sff_template {
57815 	struct trace_entry ent;
57816 	unsigned int ata_port;
57817 	unsigned char hsm_state;
57818 	char __data[0];
57819 };
57820 
57821 struct trace_event_data_offsets_ata_qc_issue_template {};
57822 
57823 struct trace_event_data_offsets_ata_qc_complete_template {};
57824 
57825 struct trace_event_data_offsets_ata_tf_load {};
57826 
57827 struct trace_event_data_offsets_ata_exec_command_template {};
57828 
57829 struct trace_event_data_offsets_ata_bmdma_status {};
57830 
57831 struct trace_event_data_offsets_ata_eh_link_autopsy {};
57832 
57833 struct trace_event_data_offsets_ata_eh_link_autopsy_qc {};
57834 
57835 struct trace_event_data_offsets_ata_eh_action_template {};
57836 
57837 struct trace_event_data_offsets_ata_link_reset_begin_template {};
57838 
57839 struct trace_event_data_offsets_ata_link_reset_end_template {};
57840 
57841 struct trace_event_data_offsets_ata_port_eh_begin_template {};
57842 
57843 struct trace_event_data_offsets_ata_sff_hsm_template {};
57844 
57845 struct trace_event_data_offsets_ata_transfer_data_template {};
57846 
57847 struct trace_event_data_offsets_ata_sff_template {};
57848 
57849 typedef void (*btf_trace_ata_qc_prep)(void *, struct ata_queued_cmd *);
57850 
57851 typedef void (*btf_trace_ata_qc_issue)(void *, struct ata_queued_cmd *);
57852 
57853 typedef void (*btf_trace_ata_qc_complete_internal)(void *, struct ata_queued_cmd *);
57854 
57855 typedef void (*btf_trace_ata_qc_complete_failed)(void *, struct ata_queued_cmd *);
57856 
57857 typedef void (*btf_trace_ata_qc_complete_done)(void *, struct ata_queued_cmd *);
57858 
57859 typedef void (*btf_trace_ata_tf_load)(void *, struct ata_port *, const struct ata_taskfile *);
57860 
57861 typedef void (*btf_trace_ata_exec_command)(void *, struct ata_port *, const struct ata_taskfile *, unsigned int);
57862 
57863 typedef void (*btf_trace_ata_bmdma_setup)(void *, struct ata_port *, const struct ata_taskfile *, unsigned int);
57864 
57865 typedef void (*btf_trace_ata_bmdma_start)(void *, struct ata_port *, const struct ata_taskfile *, unsigned int);
57866 
57867 typedef void (*btf_trace_ata_bmdma_stop)(void *, struct ata_port *, const struct ata_taskfile *, unsigned int);
57868 
57869 typedef void (*btf_trace_ata_bmdma_status)(void *, struct ata_port *, unsigned int);
57870 
57871 typedef void (*btf_trace_ata_eh_link_autopsy)(void *, struct ata_device *, unsigned int, unsigned int);
57872 
57873 typedef void (*btf_trace_ata_eh_link_autopsy_qc)(void *, struct ata_queued_cmd *);
57874 
57875 typedef void (*btf_trace_ata_eh_about_to_do)(void *, struct ata_link *, unsigned int, unsigned int);
57876 
57877 typedef void (*btf_trace_ata_eh_done)(void *, struct ata_link *, unsigned int, unsigned int);
57878 
57879 typedef void (*btf_trace_ata_link_hardreset_begin)(void *, struct ata_link *, unsigned int *, long unsigned int);
57880 
57881 typedef void (*btf_trace_ata_slave_hardreset_begin)(void *, struct ata_link *, unsigned int *, long unsigned int);
57882 
57883 typedef void (*btf_trace_ata_link_softreset_begin)(void *, struct ata_link *, unsigned int *, long unsigned int);
57884 
57885 typedef void (*btf_trace_ata_link_hardreset_end)(void *, struct ata_link *, unsigned int *, int);
57886 
57887 typedef void (*btf_trace_ata_slave_hardreset_end)(void *, struct ata_link *, unsigned int *, int);
57888 
57889 typedef void (*btf_trace_ata_link_softreset_end)(void *, struct ata_link *, unsigned int *, int);
57890 
57891 typedef void (*btf_trace_ata_link_postreset)(void *, struct ata_link *, unsigned int *, int);
57892 
57893 typedef void (*btf_trace_ata_slave_postreset)(void *, struct ata_link *, unsigned int *, int);
57894 
57895 typedef void (*btf_trace_ata_std_sched_eh)(void *, struct ata_port *);
57896 
57897 typedef void (*btf_trace_ata_port_freeze)(void *, struct ata_port *);
57898 
57899 typedef void (*btf_trace_ata_port_thaw)(void *, struct ata_port *);
57900 
57901 typedef void (*btf_trace_ata_sff_hsm_state)(void *, struct ata_queued_cmd *, unsigned char);
57902 
57903 typedef void (*btf_trace_ata_sff_hsm_command_complete)(void *, struct ata_queued_cmd *, unsigned char);
57904 
57905 typedef void (*btf_trace_ata_sff_port_intr)(void *, struct ata_queued_cmd *, unsigned char);
57906 
57907 typedef void (*btf_trace_ata_sff_pio_transfer_data)(void *, struct ata_queued_cmd *, unsigned int, unsigned int);
57908 
57909 typedef void (*btf_trace_atapi_pio_transfer_data)(void *, struct ata_queued_cmd *, unsigned int, unsigned int);
57910 
57911 typedef void (*btf_trace_atapi_send_cdb)(void *, struct ata_queued_cmd *, unsigned int, unsigned int);
57912 
57913 typedef void (*btf_trace_ata_sff_flush_pio_task)(void *, struct ata_port *);
57914 
57915 struct ata_force_param {
57916 	const char *name;
57917 	u8 cbl;
57918 	u8 spd_limit;
57919 	unsigned int xfer_mask;
57920 	unsigned int horkage_on;
57921 	unsigned int horkage_off;
57922 	u16 lflags_on;
57923 	u16 lflags_off;
57924 };
57925 
57926 struct ata_force_ent {
57927 	int port;
57928 	int device;
57929 	struct ata_force_param param;
57930 };
57931 
57932 struct ata_xfer_ent {
57933 	int shift;
57934 	int bits;
57935 	u8 base;
57936 };
57937 
57938 struct ata_blacklist_entry {
57939 	const char *model_num;
57940 	const char *model_rev;
57941 	long unsigned int horkage;
57942 };
57943 
57944 struct ethtool_phy_ops {
57945 	int (*get_sset_count)(struct phy_device *);
57946 	int (*get_strings)(struct phy_device *, u8 *);
57947 	int (*get_stats)(struct phy_device *, struct ethtool_stats *, u64 *);
57948 	int (*start_cable_test)(struct phy_device *, struct netlink_ext_ack *);
57949 	int (*start_cable_test_tdr)(struct phy_device *, struct netlink_ext_ack *, const struct phy_tdr_config *);
57950 };
57951 
57952 struct phy_fixup {
57953 	struct list_head list;
57954 	char bus_id[64];
57955 	u32 phy_uid;
57956 	u32 phy_uid_mask;
57957 	int (*run)(struct phy_device *);
57958 };
57959 
57960 struct sfp_eeprom_base {
57961 	u8 phys_id;
57962 	u8 phys_ext_id;
57963 	u8 connector;
57964 	u8 if_1x_copper_passive: 1;
57965 	u8 if_1x_copper_active: 1;
57966 	u8 if_1x_lx: 1;
57967 	u8 if_1x_sx: 1;
57968 	u8 e10g_base_sr: 1;
57969 	u8 e10g_base_lr: 1;
57970 	u8 e10g_base_lrm: 1;
57971 	u8 e10g_base_er: 1;
57972 	u8 sonet_oc3_short_reach: 1;
57973 	u8 sonet_oc3_smf_intermediate_reach: 1;
57974 	u8 sonet_oc3_smf_long_reach: 1;
57975 	u8 unallocated_5_3: 1;
57976 	u8 sonet_oc12_short_reach: 1;
57977 	u8 sonet_oc12_smf_intermediate_reach: 1;
57978 	u8 sonet_oc12_smf_long_reach: 1;
57979 	u8 unallocated_5_7: 1;
57980 	u8 sonet_oc48_short_reach: 1;
57981 	u8 sonet_oc48_intermediate_reach: 1;
57982 	u8 sonet_oc48_long_reach: 1;
57983 	u8 sonet_reach_bit2: 1;
57984 	u8 sonet_reach_bit1: 1;
57985 	u8 sonet_oc192_short_reach: 1;
57986 	u8 escon_smf_1310_laser: 1;
57987 	u8 escon_mmf_1310_led: 1;
57988 	u8 e1000_base_sx: 1;
57989 	u8 e1000_base_lx: 1;
57990 	u8 e1000_base_cx: 1;
57991 	u8 e1000_base_t: 1;
57992 	u8 e100_base_lx: 1;
57993 	u8 e100_base_fx: 1;
57994 	u8 e_base_bx10: 1;
57995 	u8 e_base_px: 1;
57996 	u8 fc_tech_electrical_inter_enclosure: 1;
57997 	u8 fc_tech_lc: 1;
57998 	u8 fc_tech_sa: 1;
57999 	u8 fc_ll_m: 1;
58000 	u8 fc_ll_l: 1;
58001 	u8 fc_ll_i: 1;
58002 	u8 fc_ll_s: 1;
58003 	u8 fc_ll_v: 1;
58004 	u8 unallocated_8_0: 1;
58005 	u8 unallocated_8_1: 1;
58006 	u8 sfp_ct_passive: 1;
58007 	u8 sfp_ct_active: 1;
58008 	u8 fc_tech_ll: 1;
58009 	u8 fc_tech_sl: 1;
58010 	u8 fc_tech_sn: 1;
58011 	u8 fc_tech_electrical_intra_enclosure: 1;
58012 	u8 fc_media_sm: 1;
58013 	u8 unallocated_9_1: 1;
58014 	u8 fc_media_m5: 1;
58015 	u8 fc_media_m6: 1;
58016 	u8 fc_media_tv: 1;
58017 	u8 fc_media_mi: 1;
58018 	u8 fc_media_tp: 1;
58019 	u8 fc_media_tw: 1;
58020 	u8 fc_speed_100: 1;
58021 	u8 unallocated_10_1: 1;
58022 	u8 fc_speed_200: 1;
58023 	u8 fc_speed_3200: 1;
58024 	u8 fc_speed_400: 1;
58025 	u8 fc_speed_1600: 1;
58026 	u8 fc_speed_800: 1;
58027 	u8 fc_speed_1200: 1;
58028 	u8 encoding;
58029 	u8 br_nominal;
58030 	u8 rate_id;
58031 	u8 link_len[6];
58032 	char vendor_name[16];
58033 	u8 extended_cc;
58034 	char vendor_oui[3];
58035 	char vendor_pn[16];
58036 	char vendor_rev[4];
58037 	union {
58038 		__be16 optical_wavelength;
58039 		__be16 cable_compliance;
58040 		struct {
58041 			u8 sff8431_app_e: 1;
58042 			u8 fc_pi_4_app_h: 1;
58043 			u8 reserved60_2: 6;
58044 			u8 reserved61: 8;
58045 		} passive;
58046 		struct {
58047 			u8 sff8431_app_e: 1;
58048 			u8 fc_pi_4_app_h: 1;
58049 			u8 sff8431_lim: 1;
58050 			u8 fc_pi_4_lim: 1;
58051 			u8 reserved60_4: 4;
58052 			u8 reserved61: 8;
58053 		} active;
58054 	};
58055 	u8 reserved62;
58056 	u8 cc_base;
58057 };
58058 
58059 struct sfp_eeprom_ext {
58060 	__be16 options;
58061 	u8 br_max;
58062 	u8 br_min;
58063 	char vendor_sn[16];
58064 	char datecode[8];
58065 	u8 diagmon;
58066 	u8 enhopts;
58067 	u8 sff8472_compliance;
58068 	u8 cc_ext;
58069 };
58070 
58071 struct sfp_eeprom_id {
58072 	struct sfp_eeprom_base base;
58073 	struct sfp_eeprom_ext ext;
58074 };
58075 
58076 struct sfp_upstream_ops {
58077 	void (*attach)(void *, struct sfp_bus *);
58078 	void (*detach)(void *, struct sfp_bus *);
58079 	int (*module_insert)(void *, const struct sfp_eeprom_id *);
58080 	void (*module_remove)(void *);
58081 	int (*module_start)(void *);
58082 	void (*module_stop)(void *);
58083 	void (*link_down)(void *);
58084 	void (*link_up)(void *);
58085 	int (*connect_phy)(void *, struct phy_device *);
58086 	void (*disconnect_phy)(void *);
58087 };
58088 
58089 struct usb_otg_caps {
58090 	u16 otg_rev;
58091 	bool hnp_support;
58092 	bool srp_support;
58093 	bool adp_support;
58094 };
58095 
58096 enum usb_dr_mode {
58097 	USB_DR_MODE_UNKNOWN = 0,
58098 	USB_DR_MODE_HOST = 1,
58099 	USB_DR_MODE_PERIPHERAL = 2,
58100 	USB_DR_MODE_OTG = 3,
58101 };
58102 
58103 struct usb_device_id {
58104 	__u16 match_flags;
58105 	__u16 idVendor;
58106 	__u16 idProduct;
58107 	__u16 bcdDevice_lo;
58108 	__u16 bcdDevice_hi;
58109 	__u8 bDeviceClass;
58110 	__u8 bDeviceSubClass;
58111 	__u8 bDeviceProtocol;
58112 	__u8 bInterfaceClass;
58113 	__u8 bInterfaceSubClass;
58114 	__u8 bInterfaceProtocol;
58115 	__u8 bInterfaceNumber;
58116 	kernel_ulong_t driver_info;
58117 };
58118 
58119 struct usb_dynids {
58120 	spinlock_t lock;
58121 	struct list_head list;
58122 };
58123 
58124 struct usbdrv_wrap {
58125 	struct device_driver driver;
58126 	int for_devices;
58127 };
58128 
58129 struct usb_driver {
58130 	const char *name;
58131 	int (*probe)(struct usb_interface *, const struct usb_device_id *);
58132 	void (*disconnect)(struct usb_interface *);
58133 	int (*unlocked_ioctl)(struct usb_interface *, unsigned int, void *);
58134 	int (*suspend)(struct usb_interface *, pm_message_t);
58135 	int (*resume)(struct usb_interface *);
58136 	int (*reset_resume)(struct usb_interface *);
58137 	int (*pre_reset)(struct usb_interface *);
58138 	int (*post_reset)(struct usb_interface *);
58139 	const struct usb_device_id *id_table;
58140 	const struct attribute_group **dev_groups;
58141 	struct usb_dynids dynids;
58142 	struct usbdrv_wrap drvwrap;
58143 	unsigned int no_dynamic_id: 1;
58144 	unsigned int supports_autosuspend: 1;
58145 	unsigned int disable_hub_initiated_lpm: 1;
58146 	unsigned int soft_unbind: 1;
58147 };
58148 
58149 struct usbdevfs_ctrltransfer {
58150 	__u8 bRequestType;
58151 	__u8 bRequest;
58152 	__u16 wValue;
58153 	__u16 wIndex;
58154 	__u16 wLength;
58155 	__u32 timeout;
58156 	void *data;
58157 };
58158 
58159 struct usbdevfs_bulktransfer {
58160 	unsigned int ep;
58161 	unsigned int len;
58162 	unsigned int timeout;
58163 	void *data;
58164 };
58165 
58166 struct usbdevfs_setinterface {
58167 	unsigned int interface;
58168 	unsigned int altsetting;
58169 };
58170 
58171 struct usbdevfs_disconnectsignal {
58172 	unsigned int signr;
58173 	void *context;
58174 };
58175 
58176 struct usbdevfs_getdriver {
58177 	unsigned int interface;
58178 	char driver[256];
58179 };
58180 
58181 struct usbdevfs_connectinfo {
58182 	unsigned int devnum;
58183 	unsigned char slow;
58184 };
58185 
58186 struct usbdevfs_conninfo_ex {
58187 	__u32 size;
58188 	__u32 busnum;
58189 	__u32 devnum;
58190 	__u32 speed;
58191 	__u8 num_ports;
58192 	__u8 ports[7];
58193 };
58194 
58195 struct usbdevfs_iso_packet_desc {
58196 	unsigned int length;
58197 	unsigned int actual_length;
58198 	unsigned int status;
58199 };
58200 
58201 struct usbdevfs_urb {
58202 	unsigned char type;
58203 	unsigned char endpoint;
58204 	int status;
58205 	unsigned int flags;
58206 	void *buffer;
58207 	int buffer_length;
58208 	int actual_length;
58209 	int start_frame;
58210 	union {
58211 		int number_of_packets;
58212 		unsigned int stream_id;
58213 	};
58214 	int error_count;
58215 	unsigned int signr;
58216 	void *usercontext;
58217 	struct usbdevfs_iso_packet_desc iso_frame_desc[0];
58218 };
58219 
58220 struct usbdevfs_ioctl {
58221 	int ifno;
58222 	int ioctl_code;
58223 	void *data;
58224 };
58225 
58226 struct usbdevfs_disconnect_claim {
58227 	unsigned int interface;
58228 	unsigned int flags;
58229 	char driver[256];
58230 };
58231 
58232 struct usbdevfs_streams {
58233 	unsigned int num_streams;
58234 	unsigned int num_eps;
58235 	unsigned char eps[0];
58236 };
58237 
58238 struct usb_dev_state {
58239 	struct list_head list;
58240 	struct usb_device *dev;
58241 	struct file *file;
58242 	spinlock_t lock;
58243 	struct list_head async_pending;
58244 	struct list_head async_completed;
58245 	struct list_head memory_list;
58246 	wait_queue_head_t wait;
58247 	wait_queue_head_t wait_for_resume;
58248 	unsigned int discsignr;
58249 	struct pid *disc_pid;
58250 	const struct cred *cred;
58251 	sigval_t disccontext;
58252 	long unsigned int ifclaimed;
58253 	u32 disabled_bulk_eps;
58254 	long unsigned int interface_allowed_mask;
58255 	int not_yet_resumed;
58256 	bool suspend_allowed;
58257 	bool privileges_dropped;
58258 };
58259 
58260 struct usb_memory {
58261 	struct list_head memlist;
58262 	int vma_use_count;
58263 	int urb_use_count;
58264 	u32 size;
58265 	void *mem;
58266 	dma_addr_t dma_handle;
58267 	long unsigned int vm_start;
58268 	struct usb_dev_state *ps;
58269 };
58270 
58271 struct async {
58272 	struct list_head asynclist;
58273 	struct usb_dev_state *ps;
58274 	struct pid *pid;
58275 	const struct cred *cred;
58276 	unsigned int signr;
58277 	unsigned int ifnum;
58278 	void *userbuffer;
58279 	void *userurb;
58280 	sigval_t userurb_sigval;
58281 	struct urb *urb;
58282 	struct usb_memory *usbm;
58283 	unsigned int mem_usage;
58284 	int status;
58285 	u8 bulk_addr;
58286 	u8 bulk_status;
58287 };
58288 
58289 enum snoop_when {
58290 	SUBMIT = 0,
58291 	COMPLETE = 1,
58292 };
58293 
58294 struct vivaldi_data {
58295 	u32 function_row_physmap[24];
58296 	unsigned int num_function_row_keys;
58297 };
58298 
58299 struct byd_data {
58300 	struct timer_list timer;
58301 	struct psmouse *psmouse;
58302 	s32 abs_x;
58303 	s32 abs_y;
58304 	volatile long unsigned int last_touch_time;
58305 	bool btn_left;
58306 	bool btn_right;
58307 	bool touch;
58308 };
58309 
58310 struct kthread_work;
58311 
58312 typedef void (*kthread_work_func_t)(struct kthread_work *);
58313 
58314 struct kthread_worker;
58315 
58316 struct kthread_work {
58317 	struct list_head node;
58318 	kthread_work_func_t func;
58319 	struct kthread_worker *worker;
58320 	int canceling;
58321 };
58322 
58323 struct kthread_worker {
58324 	unsigned int flags;
58325 	raw_spinlock_t lock;
58326 	struct list_head work_list;
58327 	struct list_head delayed_work_list;
58328 	struct task_struct *task;
58329 	struct kthread_work *current_work;
58330 };
58331 
58332 struct kthread_delayed_work {
58333 	struct kthread_work work;
58334 	struct timer_list timer;
58335 };
58336 
58337 struct posix_clock;
58338 
58339 struct posix_clock_operations {
58340 	struct module *owner;
58341 	int (*clock_adjtime)(struct posix_clock *, struct __kernel_timex *);
58342 	int (*clock_gettime)(struct posix_clock *, struct timespec64 *);
58343 	int (*clock_getres)(struct posix_clock *, struct timespec64 *);
58344 	int (*clock_settime)(struct posix_clock *, const struct timespec64 *);
58345 	long int (*ioctl)(struct posix_clock *, unsigned int, long unsigned int);
58346 	int (*open)(struct posix_clock *, fmode_t);
58347 	__poll_t (*poll)(struct posix_clock *, struct file *, poll_table *);
58348 	int (*release)(struct posix_clock *);
58349 	ssize_t (*read)(struct posix_clock *, uint, char *, size_t);
58350 };
58351 
58352 struct posix_clock {
58353 	struct posix_clock_operations ops;
58354 	struct cdev cdev;
58355 	struct device *dev;
58356 	struct rw_semaphore rwsem;
58357 	bool zombie;
58358 };
58359 
58360 struct ptp_extts_event {
58361 	struct ptp_clock_time t;
58362 	unsigned int index;
58363 	unsigned int flags;
58364 	unsigned int rsv[2];
58365 };
58366 
58367 struct timestamp_event_queue {
58368 	struct ptp_extts_event buf[128];
58369 	int head;
58370 	int tail;
58371 	spinlock_t lock;
58372 };
58373 
58374 struct ptp_clock {
58375 	struct posix_clock clock;
58376 	struct device dev;
58377 	struct ptp_clock_info *info;
58378 	dev_t devid;
58379 	int index;
58380 	struct pps_device *pps_source;
58381 	long int dialed_frequency;
58382 	struct timestamp_event_queue tsevq;
58383 	struct mutex tsevq_mux;
58384 	struct mutex pincfg_mux;
58385 	wait_queue_head_t tsev_wq;
58386 	int defunct;
58387 	struct device_attribute *pin_dev_attr;
58388 	struct attribute **pin_attr;
58389 	struct attribute_group pin_attr_group;
58390 	const struct attribute_group *pin_attr_groups[2];
58391 	struct kthread_worker *kworker;
58392 	struct kthread_delayed_work aux_work;
58393 	unsigned int max_vclocks;
58394 	unsigned int n_vclocks;
58395 	int *vclock_index;
58396 	struct mutex n_vclocks_mux;
58397 	bool is_virtual_clock;
58398 	bool has_cycles;
58399 };
58400 
58401 struct ptp_vclock {
58402 	struct ptp_clock *pclock;
58403 	struct ptp_clock_info info;
58404 	struct ptp_clock *clock;
58405 	struct hlist_node vclock_hash_node;
58406 	struct cyclecounter cc;
58407 	struct timecounter tc;
58408 	spinlock_t lock;
58409 };
58410 
58411 struct edac_device_counter {
58412 	u32 ue_count;
58413 	u32 ce_count;
58414 };
58415 
58416 struct edac_device_ctl_info;
58417 
58418 struct edac_dev_sysfs_attribute {
58419 	struct attribute attr;
58420 	ssize_t (*show)(struct edac_device_ctl_info *, char *);
58421 	ssize_t (*store)(struct edac_device_ctl_info *, const char *, size_t);
58422 };
58423 
58424 struct edac_device_instance;
58425 
58426 struct edac_device_block;
58427 
58428 struct edac_dev_sysfs_block_attribute;
58429 
58430 struct edac_device_ctl_info {
58431 	struct list_head link;
58432 	struct module *owner;
58433 	int dev_idx;
58434 	int log_ue;
58435 	int log_ce;
58436 	int panic_on_ue;
58437 	unsigned int poll_msec;
58438 	long unsigned int delay;
58439 	struct edac_dev_sysfs_attribute *sysfs_attributes;
58440 	struct bus_type *edac_subsys;
58441 	int op_state;
58442 	struct delayed_work work;
58443 	void (*edac_check)(struct edac_device_ctl_info *);
58444 	struct device *dev;
58445 	const char *mod_name;
58446 	const char *ctl_name;
58447 	const char *dev_name;
58448 	void *pvt_info;
58449 	long unsigned int start_time;
58450 	struct completion removal_complete;
58451 	char name[32];
58452 	u32 nr_instances;
58453 	struct edac_device_instance *instances;
58454 	struct edac_device_block *blocks;
58455 	struct edac_dev_sysfs_block_attribute *attribs;
58456 	struct edac_device_counter counters;
58457 	struct kobject kobj;
58458 };
58459 
58460 struct edac_dev_sysfs_block_attribute {
58461 	struct attribute attr;
58462 	ssize_t (*show)(struct kobject *, struct attribute *, char *);
58463 	ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t);
58464 	struct edac_device_block *block;
58465 	unsigned int value;
58466 };
58467 
58468 struct edac_device_block {
58469 	struct edac_device_instance *instance;
58470 	char name[32];
58471 	struct edac_device_counter counters;
58472 	int nr_attribs;
58473 	struct edac_dev_sysfs_block_attribute *block_attributes;
58474 	struct kobject kobj;
58475 };
58476 
58477 struct edac_device_instance {
58478 	struct edac_device_ctl_info *ctl;
58479 	char name[35];
58480 	struct edac_device_counter counters;
58481 	u32 nr_blocks;
58482 	struct edac_device_block *blocks;
58483 	struct kobject kobj;
58484 };
58485 
58486 struct update_util_data {
58487 	void (*func)(struct update_util_data *, u64, unsigned int);
58488 };
58489 
58490 struct cpu_dbs_info {
58491 	u64 prev_cpu_idle;
58492 	u64 prev_update_time;
58493 	u64 prev_cpu_nice;
58494 	unsigned int prev_load;
58495 	struct update_util_data update_util;
58496 	struct policy_dbs_info *policy_dbs;
58497 };
58498 
58499 struct hid_debug_list {
58500 	struct {
58501 		union {
58502 			struct __kfifo kfifo;
58503 			char *type;
58504 			const char *const_type;
58505 			char (*rectype)[0];
58506 			char *ptr;
58507 			const char *ptr_const;
58508 		};
58509 		char buf[0];
58510 	} hid_debug_fifo;
58511 	struct fasync_struct *fasync;
58512 	struct hid_device *hdev;
58513 	struct list_head node;
58514 	struct mutex read_mutex;
58515 };
58516 
58517 struct hid_usage_entry {
58518 	unsigned int page;
58519 	unsigned int usage;
58520 	const char *description;
58521 };
58522 
58523 struct usb_class_driver {
58524 	char *name;
58525 	char * (*devnode)(struct device *, umode_t *);
58526 	const struct file_operations *fops;
58527 	int minor_base;
58528 };
58529 
58530 struct hid_control_fifo {
58531 	unsigned char dir;
58532 	struct hid_report *report;
58533 	char *raw_report;
58534 };
58535 
58536 struct hid_output_fifo {
58537 	struct hid_report *report;
58538 	char *raw_report;
58539 };
58540 
58541 struct hiddev_event {
58542 	unsigned int hid;
58543 	int value;
58544 };
58545 
58546 struct hiddev_devinfo {
58547 	__u32 bustype;
58548 	__u32 busnum;
58549 	__u32 devnum;
58550 	__u32 ifnum;
58551 	__s16 vendor;
58552 	__s16 product;
58553 	__s16 version;
58554 	__u32 num_applications;
58555 };
58556 
58557 struct hiddev_collection_info {
58558 	__u32 index;
58559 	__u32 type;
58560 	__u32 usage;
58561 	__u32 level;
58562 };
58563 
58564 struct hiddev_report_info {
58565 	__u32 report_type;
58566 	__u32 report_id;
58567 	__u32 num_fields;
58568 };
58569 
58570 struct hiddev_field_info {
58571 	__u32 report_type;
58572 	__u32 report_id;
58573 	__u32 field_index;
58574 	__u32 maxusage;
58575 	__u32 flags;
58576 	__u32 physical;
58577 	__u32 logical;
58578 	__u32 application;
58579 	__s32 logical_minimum;
58580 	__s32 logical_maximum;
58581 	__s32 physical_minimum;
58582 	__s32 physical_maximum;
58583 	__u32 unit_exponent;
58584 	__u32 unit;
58585 };
58586 
58587 struct hiddev_usage_ref {
58588 	__u32 report_type;
58589 	__u32 report_id;
58590 	__u32 field_index;
58591 	__u32 usage_index;
58592 	__u32 usage_code;
58593 	__s32 value;
58594 };
58595 
58596 struct hiddev_usage_ref_multi {
58597 	struct hiddev_usage_ref uref;
58598 	__u32 num_values;
58599 	__s32 values[1024];
58600 };
58601 
58602 struct hiddev {
58603 	int minor;
58604 	int exist;
58605 	int open;
58606 	struct mutex existancelock;
58607 	wait_queue_head_t wait;
58608 	struct hid_device *hid;
58609 	struct list_head list;
58610 	spinlock_t list_lock;
58611 	bool initialized;
58612 };
58613 
58614 struct usbhid_device {
58615 	struct hid_device *hid;
58616 	struct usb_interface *intf;
58617 	int ifnum;
58618 	unsigned int bufsize;
58619 	struct urb *urbin;
58620 	char *inbuf;
58621 	dma_addr_t inbuf_dma;
58622 	struct urb *urbctrl;
58623 	struct usb_ctrlrequest *cr;
58624 	struct hid_control_fifo ctrl[256];
58625 	unsigned char ctrlhead;
58626 	unsigned char ctrltail;
58627 	char *ctrlbuf;
58628 	dma_addr_t ctrlbuf_dma;
58629 	long unsigned int last_ctrl;
58630 	struct urb *urbout;
58631 	struct hid_output_fifo out[256];
58632 	unsigned char outhead;
58633 	unsigned char outtail;
58634 	char *outbuf;
58635 	dma_addr_t outbuf_dma;
58636 	long unsigned int last_out;
58637 	struct mutex mutex;
58638 	spinlock_t lock;
58639 	long unsigned int iofl;
58640 	struct timer_list io_retry;
58641 	long unsigned int stop_retry;
58642 	unsigned int retry_delay;
58643 	struct work_struct reset_work;
58644 	wait_queue_head_t wait;
58645 };
58646 
58647 struct hiddev_list {
58648 	struct hiddev_usage_ref buffer[2048];
58649 	int head;
58650 	int tail;
58651 	unsigned int flags;
58652 	struct fasync_struct *fasync;
58653 	struct hiddev *hiddev;
58654 	struct list_head node;
58655 	struct mutex thread_lock;
58656 };
58657 
58658 struct page_frag_cache {
58659 	void *va;
58660 	__u32 offset;
58661 	unsigned int pagecnt_bias;
58662 	bool pfmemalloc;
58663 };
58664 
58665 struct ts_state {
58666 	unsigned int offset;
58667 	char cb[48];
58668 };
58669 
58670 struct ts_config;
58671 
58672 struct ts_ops {
58673 	const char *name;
58674 	struct ts_config * (*init)(const void *, unsigned int, gfp_t, int);
58675 	unsigned int (*find)(struct ts_config *, struct ts_state *);
58676 	void (*destroy)(struct ts_config *);
58677 	void * (*get_pattern)(struct ts_config *);
58678 	unsigned int (*get_pattern_len)(struct ts_config *);
58679 	struct module *owner;
58680 	struct list_head list;
58681 };
58682 
58683 struct ts_config {
58684 	struct ts_ops *ops;
58685 	int flags;
58686 	unsigned int (*get_next_block)(unsigned int, const u8 **, struct ts_config *, struct ts_state *);
58687 	void (*finish)(struct ts_config *, struct ts_state *);
58688 };
58689 
58690 struct sk_buff_fclones {
58691 	struct sk_buff skb1;
58692 	struct sk_buff skb2;
58693 	refcount_t fclone_ref;
58694 };
58695 
58696 struct skb_seq_state {
58697 	__u32 lower_offset;
58698 	__u32 upper_offset;
58699 	__u32 frag_idx;
58700 	__u32 stepped_offset;
58701 	struct sk_buff *root_skb;
58702 	struct sk_buff *cur_skb;
58703 	__u8 *frag_data;
58704 	__u32 frag_off;
58705 };
58706 
58707 struct skb_checksum_ops {
58708 	__wsum (*update)(const void *, int, __wsum);
58709 	__wsum (*combine)(__wsum, __wsum, int, int);
58710 };
58711 
58712 struct netdev_name_node {
58713 	struct hlist_node hlist;
58714 	struct list_head list;
58715 	struct net_device *dev;
58716 	const char *name;
58717 };
58718 
58719 struct sd_flow_limit {
58720 	u64 count;
58721 	unsigned int num_buckets;
58722 	unsigned int history_head;
58723 	u16 history[128];
58724 	u8 buckets[0];
58725 };
58726 
58727 struct vlan_ethhdr {
58728 	union {
58729 		struct {
58730 			unsigned char h_dest[6];
58731 			unsigned char h_source[6];
58732 		};
58733 		struct {
58734 			unsigned char h_dest[6];
58735 			unsigned char h_source[6];
58736 		} addrs;
58737 	};
58738 	__be16 h_vlan_proto;
58739 	__be16 h_vlan_TCI;
58740 	__be16 h_vlan_encapsulated_proto;
58741 };
58742 
58743 struct ip_auth_hdr {
58744 	__u8 nexthdr;
58745 	__u8 hdrlen;
58746 	__be16 reserved;
58747 	__be32 spi;
58748 	__be32 seq_no;
58749 	__u8 auth_data[0];
58750 };
58751 
58752 enum {
58753 	SCM_TSTAMP_SND = 0,
58754 	SCM_TSTAMP_SCHED = 1,
58755 	SCM_TSTAMP_ACK = 2,
58756 };
58757 
58758 struct mpls_shim_hdr {
58759 	__be32 label_stack_entry;
58760 };
58761 
58762 struct napi_alloc_cache {
58763 	struct page_frag_cache page;
58764 	unsigned int skb_count;
58765 	void *skb_cache[64];
58766 };
58767 
58768 typedef int (*sendmsg_func)(struct sock *, struct msghdr *, struct kvec *, size_t, size_t);
58769 
58770 typedef int (*sendpage_func)(struct sock *, struct page *, int, size_t, int);
58771 
58772 struct packet_type {
58773 	__be16 type;
58774 	bool ignore_outgoing;
58775 	struct net_device *dev;
58776 	netdevice_tracker dev_tracker;
58777 	int (*func)(struct sk_buff *, struct net_device *, struct packet_type *, struct net_device *);
58778 	void (*list_func)(struct list_head *, struct packet_type *, struct net_device *);
58779 	bool (*id_match)(struct packet_type *, struct sock *);
58780 	struct net *af_packet_net;
58781 	void *af_packet_priv;
58782 	struct list_head list;
58783 };
58784 
58785 enum bpf_link_type {
58786 	BPF_LINK_TYPE_UNSPEC = 0,
58787 	BPF_LINK_TYPE_RAW_TRACEPOINT = 1,
58788 	BPF_LINK_TYPE_TRACING = 2,
58789 	BPF_LINK_TYPE_CGROUP = 3,
58790 	BPF_LINK_TYPE_ITER = 4,
58791 	BPF_LINK_TYPE_NETNS = 5,
58792 	BPF_LINK_TYPE_XDP = 6,
58793 	BPF_LINK_TYPE_PERF_EVENT = 7,
58794 	BPF_LINK_TYPE_KPROBE_MULTI = 8,
58795 	BPF_LINK_TYPE_STRUCT_OPS = 9,
58796 	MAX_BPF_LINK_TYPE = 10,
58797 };
58798 
58799 struct bpf_tramp_link;
58800 
58801 struct bpf_tramp_links {
58802 	struct bpf_tramp_link *links[38];
58803 	int nr_links;
58804 };
58805 
58806 struct bpf_link_ops;
58807 
58808 struct bpf_link {
58809 	atomic64_t refcnt;
58810 	u32 id;
58811 	enum bpf_link_type type;
58812 	const struct bpf_link_ops *ops;
58813 	struct bpf_prog *prog;
58814 	struct work_struct work;
58815 };
58816 
58817 struct bpf_tramp_link {
58818 	struct bpf_link link;
58819 	struct hlist_node tramp_hlist;
58820 	u64 cookie;
58821 };
58822 
58823 struct bpf_link_ops {
58824 	void (*release)(struct bpf_link *);
58825 	void (*dealloc)(struct bpf_link *);
58826 	int (*detach)(struct bpf_link *);
58827 	int (*update_prog)(struct bpf_link *, struct bpf_prog *, struct bpf_prog *);
58828 	void (*show_fdinfo)(const struct bpf_link *, struct seq_file *);
58829 	int (*fill_link_info)(const struct bpf_link *, struct bpf_link_info *);
58830 };
58831 
58832 struct bpf_struct_ops {
58833 	const struct bpf_verifier_ops *verifier_ops;
58834 	int (*init)(struct btf *);
58835 	int (*check_member)(const struct btf_type *, const struct btf_member *);
58836 	int (*init_member)(const struct btf_type *, const struct btf_member *, void *, const void *);
58837 	int (*reg)(void *);
58838 	void (*unreg)(void *);
58839 	const struct btf_type *type;
58840 	const struct btf_type *value_type;
58841 	const char *name;
58842 	struct btf_func_model func_models[64];
58843 	u32 type_id;
58844 	u32 value_id;
58845 };
58846 
58847 struct bpf_dummy_ops_state {
58848 	int val;
58849 };
58850 
58851 typedef int (*dummy_ops_test_ret_fn)(struct bpf_dummy_ops_state *, ...);
58852 
58853 struct bpf_dummy_ops_test_args {
58854 	u64 args[12];
58855 	struct bpf_dummy_ops_state state;
58856 };
58857 
58858 enum ethtool_supported_ring_param {
58859 	ETHTOOL_RING_USE_RX_BUF_LEN = 1,
58860 	ETHTOOL_RING_USE_CQE_SIZE = 2,
58861 	ETHTOOL_RING_USE_TX_PUSH = 4,
58862 };
58863 
58864 enum {
58865 	ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0,
58866 	ETHTOOL_TCP_DATA_SPLIT_DISABLED = 1,
58867 	ETHTOOL_TCP_DATA_SPLIT_ENABLED = 2,
58868 };
58869 
58870 struct rings_reply_data {
58871 	struct ethnl_reply_data base;
58872 	struct ethtool_ringparam ringparam;
58873 	struct kernel_ethtool_ringparam kernel_ringparam;
58874 };
58875 
58876 struct ip_rt_info {
58877 	__be32 daddr;
58878 	__be32 saddr;
58879 	u_int8_t tos;
58880 	u_int32_t mark;
58881 };
58882 
58883 struct nf_queue_entry;
58884 
58885 struct nf_ipv6_ops {
58886 	void (*route_input)(struct sk_buff *);
58887 	int (*fragment)(struct net *, struct sock *, struct sk_buff *, int (*)(struct net *, struct sock *, struct sk_buff *));
58888 	int (*reroute)(struct sk_buff *, const struct nf_queue_entry *);
58889 };
58890 
58891 struct nf_queue_entry {
58892 	struct list_head list;
58893 	struct sk_buff *skb;
58894 	unsigned int id;
58895 	unsigned int hook_index;
58896 	struct nf_hook_state state;
58897 	u16 size;
58898 };
58899 
58900 enum pkt_hash_types {
58901 	PKT_HASH_TYPE_NONE = 0,
58902 	PKT_HASH_TYPE_L2 = 1,
58903 	PKT_HASH_TYPE_L3 = 2,
58904 	PKT_HASH_TYPE_L4 = 3,
58905 };
58906 
58907 enum {
58908 	TCP_NO_QUEUE = 0,
58909 	TCP_RECV_QUEUE = 1,
58910 	TCP_SEND_QUEUE = 2,
58911 	TCP_QUEUES_NR = 3,
58912 };
58913 
58914 enum tsq_flags {
58915 	TSQF_THROTTLED = 1,
58916 	TSQF_QUEUED = 2,
58917 	TCPF_TSQ_DEFERRED = 4,
58918 	TCPF_WRITE_TIMER_DEFERRED = 8,
58919 	TCPF_DELACK_TIMER_DEFERRED = 16,
58920 	TCPF_MTU_REDUCED_DEFERRED = 32,
58921 };
58922 
58923 enum {
58924 	BPF_WRITE_HDR_TCP_CURRENT_MSS = 1,
58925 	BPF_WRITE_HDR_TCP_SYNACK_COOKIE = 2,
58926 };
58927 
58928 struct mptcp_out_options {};
58929 
58930 enum tcp_queue {
58931 	TCP_FRAG_IN_WRITE_QUEUE = 0,
58932 	TCP_FRAG_IN_RTX_QUEUE = 1,
58933 };
58934 
58935 union tcp_md5_addr {
58936 	struct in_addr a4;
58937 	struct in6_addr a6;
58938 };
58939 
58940 struct tcp_md5sig_key {
58941 	struct hlist_node node;
58942 	u8 keylen;
58943 	u8 family;
58944 	u8 prefixlen;
58945 	u8 flags;
58946 	union tcp_md5_addr addr;
58947 	int l3index;
58948 	u8 key[80];
58949 	struct callback_head rcu;
58950 };
58951 
58952 enum tcp_chrono {
58953 	TCP_CHRONO_UNSPEC = 0,
58954 	TCP_CHRONO_BUSY = 1,
58955 	TCP_CHRONO_RWND_LIMITED = 2,
58956 	TCP_CHRONO_SNDBUF_LIMITED = 3,
58957 	__TCP_CHRONO_MAX = 4,
58958 };
58959 
58960 struct tcp_out_options {
58961 	u16 options;
58962 	u16 mss;
58963 	u8 ws;
58964 	u8 num_sack_blocks;
58965 	u8 hash_size;
58966 	u8 bpf_opt_len;
58967 	__u8 *hash_location;
58968 	__u32 tsval;
58969 	__u32 tsecr;
58970 	struct tcp_fastopen_cookie *fastopen_cookie;
58971 	struct mptcp_out_options mptcp;
58972 };
58973 
58974 struct tsq_tasklet {
58975 	struct tasklet_struct tasklet;
58976 	struct list_head head;
58977 };
58978 
58979 struct rtnexthop {
58980 	short unsigned int rtnh_len;
58981 	unsigned char rtnh_flags;
58982 	unsigned char rtnh_hops;
58983 	int rtnh_ifindex;
58984 };
58985 
58986 enum rtnetlink_groups {
58987 	RTNLGRP_NONE = 0,
58988 	RTNLGRP_LINK = 1,
58989 	RTNLGRP_NOTIFY = 2,
58990 	RTNLGRP_NEIGH = 3,
58991 	RTNLGRP_TC = 4,
58992 	RTNLGRP_IPV4_IFADDR = 5,
58993 	RTNLGRP_IPV4_MROUTE = 6,
58994 	RTNLGRP_IPV4_ROUTE = 7,
58995 	RTNLGRP_IPV4_RULE = 8,
58996 	RTNLGRP_IPV6_IFADDR = 9,
58997 	RTNLGRP_IPV6_MROUTE = 10,
58998 	RTNLGRP_IPV6_ROUTE = 11,
58999 	RTNLGRP_IPV6_IFINFO = 12,
59000 	RTNLGRP_DECnet_IFADDR = 13,
59001 	RTNLGRP_NOP2 = 14,
59002 	RTNLGRP_DECnet_ROUTE = 15,
59003 	RTNLGRP_DECnet_RULE = 16,
59004 	RTNLGRP_NOP4 = 17,
59005 	RTNLGRP_IPV6_PREFIX = 18,
59006 	RTNLGRP_IPV6_RULE = 19,
59007 	RTNLGRP_ND_USEROPT = 20,
59008 	RTNLGRP_PHONET_IFADDR = 21,
59009 	RTNLGRP_PHONET_ROUTE = 22,
59010 	RTNLGRP_DCB = 23,
59011 	RTNLGRP_IPV4_NETCONF = 24,
59012 	RTNLGRP_IPV6_NETCONF = 25,
59013 	RTNLGRP_MDB = 26,
59014 	RTNLGRP_MPLS_ROUTE = 27,
59015 	RTNLGRP_NSID = 28,
59016 	RTNLGRP_MPLS_NETCONF = 29,
59017 	RTNLGRP_IPV4_MROUTE_R = 30,
59018 	RTNLGRP_IPV6_MROUTE_R = 31,
59019 	RTNLGRP_NEXTHOP = 32,
59020 	RTNLGRP_BRVLAN = 33,
59021 	RTNLGRP_MCTP_IFADDR = 34,
59022 	RTNLGRP_TUNNEL = 35,
59023 	RTNLGRP_STATS = 36,
59024 	__RTNLGRP_MAX = 37,
59025 };
59026 
59027 struct fib_notifier_info {
59028 	int family;
59029 	struct netlink_ext_ack *extack;
59030 };
59031 
59032 enum fib_event_type {
59033 	FIB_EVENT_ENTRY_REPLACE = 0,
59034 	FIB_EVENT_ENTRY_APPEND = 1,
59035 	FIB_EVENT_ENTRY_ADD = 2,
59036 	FIB_EVENT_ENTRY_DEL = 3,
59037 	FIB_EVENT_RULE_ADD = 4,
59038 	FIB_EVENT_RULE_DEL = 5,
59039 	FIB_EVENT_NH_ADD = 6,
59040 	FIB_EVENT_NH_DEL = 7,
59041 	FIB_EVENT_VIF_ADD = 8,
59042 	FIB_EVENT_VIF_DEL = 9,
59043 };
59044 
59045 struct fib_config {
59046 	u8 fc_dst_len;
59047 	dscp_t fc_dscp;
59048 	u8 fc_protocol;
59049 	u8 fc_scope;
59050 	u8 fc_type;
59051 	u8 fc_gw_family;
59052 	u32 fc_table;
59053 	__be32 fc_dst;
59054 	union {
59055 		__be32 fc_gw4;
59056 		struct in6_addr fc_gw6;
59057 	};
59058 	int fc_oif;
59059 	u32 fc_flags;
59060 	u32 fc_priority;
59061 	__be32 fc_prefsrc;
59062 	u32 fc_nh_id;
59063 	struct nlattr *fc_mx;
59064 	struct rtnexthop *fc_mp;
59065 	int fc_mx_len;
59066 	int fc_mp_len;
59067 	u32 fc_flow;
59068 	u32 fc_nlflags;
59069 	struct nl_info fc_nlinfo;
59070 	struct nlattr *fc_encap;
59071 	u16 fc_encap_type;
59072 };
59073 
59074 struct fib_entry_notifier_info {
59075 	struct fib_notifier_info info;
59076 	u32 dst;
59077 	int dst_len;
59078 	struct fib_info *fi;
59079 	dscp_t dscp;
59080 	u8 type;
59081 	u32 tb_id;
59082 };
59083 
59084 struct fib_dump_filter {
59085 	u32 table_id;
59086 	bool filter_set;
59087 	bool dump_routes;
59088 	bool dump_exceptions;
59089 	unsigned char protocol;
59090 	unsigned char rt_type;
59091 	unsigned int flags;
59092 	struct net_device *dev;
59093 };
59094 
59095 typedef unsigned int t_key;
59096 
59097 struct key_vector {
59098 	t_key key;
59099 	unsigned char pos;
59100 	unsigned char bits;
59101 	unsigned char slen;
59102 	union {
59103 		struct hlist_head leaf;
59104 		struct key_vector *tnode[0];
59105 	};
59106 };
59107 
59108 struct tnode {
59109 	struct callback_head rcu;
59110 	t_key empty_children;
59111 	t_key full_children;
59112 	struct key_vector *parent;
59113 	struct key_vector kv[1];
59114 };
59115 
59116 struct trie_stat {
59117 	unsigned int totdepth;
59118 	unsigned int maxdepth;
59119 	unsigned int tnodes;
59120 	unsigned int leaves;
59121 	unsigned int nullpointers;
59122 	unsigned int prefixes;
59123 	unsigned int nodesizes[32];
59124 };
59125 
59126 struct trie {
59127 	struct key_vector kv[1];
59128 };
59129 
59130 struct fib_trie_iter {
59131 	struct seq_net_private p;
59132 	struct fib_table *tb;
59133 	struct key_vector *tnode;
59134 	unsigned int index;
59135 	unsigned int depth;
59136 };
59137 
59138 struct fib_route_iter {
59139 	struct seq_net_private p;
59140 	struct fib_table *main_tb;
59141 	struct key_vector *tnode;
59142 	loff_t pos;
59143 	t_key key;
59144 };
59145 
59146 enum {
59147 	SK_MEMINFO_RMEM_ALLOC = 0,
59148 	SK_MEMINFO_RCVBUF = 1,
59149 	SK_MEMINFO_WMEM_ALLOC = 2,
59150 	SK_MEMINFO_SNDBUF = 3,
59151 	SK_MEMINFO_FWD_ALLOC = 4,
59152 	SK_MEMINFO_WMEM_QUEUED = 5,
59153 	SK_MEMINFO_OPTMEM = 6,
59154 	SK_MEMINFO_BACKLOG = 7,
59155 	SK_MEMINFO_DROPS = 8,
59156 	SK_MEMINFO_VARS = 9,
59157 };
59158 
59159 struct inet_diag_req {
59160 	__u8 idiag_family;
59161 	__u8 idiag_src_len;
59162 	__u8 idiag_dst_len;
59163 	__u8 idiag_ext;
59164 	struct inet_diag_sockid id;
59165 	__u32 idiag_states;
59166 	__u32 idiag_dbs;
59167 };
59168 
59169 enum {
59170 	INET_DIAG_REQ_NONE = 0,
59171 	INET_DIAG_REQ_BYTECODE = 1,
59172 	INET_DIAG_REQ_SK_BPF_STORAGES = 2,
59173 	INET_DIAG_REQ_PROTOCOL = 3,
59174 	__INET_DIAG_REQ_MAX = 4,
59175 };
59176 
59177 struct inet_diag_bc_op {
59178 	unsigned char code;
59179 	unsigned char yes;
59180 	short unsigned int no;
59181 };
59182 
59183 enum {
59184 	INET_DIAG_BC_NOP = 0,
59185 	INET_DIAG_BC_JMP = 1,
59186 	INET_DIAG_BC_S_GE = 2,
59187 	INET_DIAG_BC_S_LE = 3,
59188 	INET_DIAG_BC_D_GE = 4,
59189 	INET_DIAG_BC_D_LE = 5,
59190 	INET_DIAG_BC_AUTO = 6,
59191 	INET_DIAG_BC_S_COND = 7,
59192 	INET_DIAG_BC_D_COND = 8,
59193 	INET_DIAG_BC_DEV_COND = 9,
59194 	INET_DIAG_BC_MARK_COND = 10,
59195 	INET_DIAG_BC_S_EQ = 11,
59196 	INET_DIAG_BC_D_EQ = 12,
59197 	INET_DIAG_BC_CGROUP_COND = 13,
59198 };
59199 
59200 struct inet_diag_hostcond {
59201 	__u8 family;
59202 	__u8 prefix_len;
59203 	int port;
59204 	__be32 addr[0];
59205 };
59206 
59207 struct inet_diag_markcond {
59208 	__u32 mark;
59209 	__u32 mask;
59210 };
59211 
59212 struct inet_diag_meminfo {
59213 	__u32 idiag_rmem;
59214 	__u32 idiag_wmem;
59215 	__u32 idiag_fmem;
59216 	__u32 idiag_tmem;
59217 };
59218 
59219 struct inet_diag_sockopt {
59220 	__u8 recverr: 1;
59221 	__u8 is_icsk: 1;
59222 	__u8 freebind: 1;
59223 	__u8 hdrincl: 1;
59224 	__u8 mc_loop: 1;
59225 	__u8 transparent: 1;
59226 	__u8 mc_all: 1;
59227 	__u8 nodefrag: 1;
59228 	__u8 bind_address_no_port: 1;
59229 	__u8 recverr_rfc4884: 1;
59230 	__u8 defer_connect: 1;
59231 	__u8 unused: 5;
59232 };
59233 
59234 struct bpf_sk_storage_diag;
59235 
59236 struct inet_diag_dump_data {
59237 	struct nlattr *req_nlas[4];
59238 	struct bpf_sk_storage_diag *bpf_stg_diag;
59239 };
59240 
59241 struct sock_diag_handler {
59242 	__u8 family;
59243 	int (*dump)(struct sk_buff *, struct nlmsghdr *);
59244 	int (*get_info)(struct sk_buff *, struct sock *);
59245 	int (*destroy)(struct sk_buff *, struct nlmsghdr *);
59246 };
59247 
59248 struct inet_diag_entry {
59249 	const __be32 *saddr;
59250 	const __be32 *daddr;
59251 	u16 sport;
59252 	u16 dport;
59253 	u16 family;
59254 	u16 userlocks;
59255 	u32 ifindex;
59256 	u32 mark;
59257 	u64 cgroup_id;
59258 };
59259 
59260 struct ifaddrlblmsg {
59261 	__u8 ifal_family;
59262 	__u8 __ifal_reserved;
59263 	__u8 ifal_prefixlen;
59264 	__u8 ifal_flags;
59265 	__u32 ifal_index;
59266 	__u32 ifal_seq;
59267 };
59268 
59269 enum {
59270 	IFAL_ADDRESS = 1,
59271 	IFAL_LABEL = 2,
59272 	__IFAL_MAX = 3,
59273 };
59274 
59275 struct ip6addrlbl_entry {
59276 	struct in6_addr prefix;
59277 	int prefixlen;
59278 	int ifindex;
59279 	int addrtype;
59280 	u32 label;
59281 	struct hlist_node list;
59282 	struct callback_head rcu;
59283 };
59284 
59285 struct ip6addrlbl_init_table {
59286 	const struct in6_addr *prefix;
59287 	int prefixlen;
59288 	u32 label;
59289 };
59290 
59291 struct rt0_hdr {
59292 	struct ipv6_rt_hdr rt_hdr;
59293 	__u32 reserved;
59294 	struct in6_addr addr[0];
59295 };
59296 
59297 struct ipv6_rpl_sr_hdr {
59298 	__u8 nexthdr;
59299 	__u8 hdrlen;
59300 	__u8 type;
59301 	__u8 segments_left;
59302 	__u32 cmpre: 4;
59303 	__u32 cmpri: 4;
59304 	__u32 reserved: 4;
59305 	__u32 pad: 4;
59306 	__u32 reserved1: 16;
59307 	union {
59308 		struct in6_addr addr[0];
59309 		__u8 data[0];
59310 	} segments;
59311 };
59312 
59313 struct ioam6_hdr {
59314 	__u8 opt_type;
59315 	__u8 opt_len;
59316 	char: 8;
59317 	__u8 type;
59318 };
59319 
59320 enum rpc_msg_type {
59321 	RPC_CALL = 0,
59322 	RPC_REPLY = 1,
59323 };
59324 
59325 enum rpc_reply_stat {
59326 	RPC_MSG_ACCEPTED = 0,
59327 	RPC_MSG_DENIED = 1,
59328 };
59329 
59330 enum rpc_reject_stat {
59331 	RPC_MISMATCH = 0,
59332 	RPC_AUTH_ERROR = 1,
59333 };
59334 
59335 enum {
59336 	SUNRPC_PIPEFS_NFS_PRIO = 0,
59337 	SUNRPC_PIPEFS_RPC_PRIO = 1,
59338 };
59339 
59340 enum {
59341 	RPC_PIPEFS_MOUNT = 0,
59342 	RPC_PIPEFS_UMOUNT = 1,
59343 };
59344 
59345 struct rpc_add_xprt_test {
59346 	void (*add_xprt_test)(struct rpc_clnt *, struct rpc_xprt *, void *);
59347 	void *data;
59348 };
59349 
59350 struct rpc_cb_add_xprt_calldata {
59351 	struct rpc_xprt_switch *xps;
59352 	struct rpc_xprt *xprt;
59353 };
59354 
59355 struct connect_timeout_data {
59356 	long unsigned int connect_timeout;
59357 	long unsigned int reconnect_timeout;
59358 };
59359 
59360 struct rpc_pipe_dir_object_ops;
59361 
59362 struct rpc_pipe_dir_object {
59363 	struct list_head pdo_head;
59364 	const struct rpc_pipe_dir_object_ops *pdo_ops;
59365 	void *pdo_data;
59366 };
59367 
59368 struct rpc_pipe_dir_object_ops {
59369 	int (*create)(struct dentry *, struct rpc_pipe_dir_object *);
59370 	void (*destroy)(struct dentry *, struct rpc_pipe_dir_object *);
59371 };
59372 
59373 struct rpc_inode {
59374 	struct inode vfs_inode;
59375 	void *private;
59376 	struct rpc_pipe *pipe;
59377 	wait_queue_head_t waitq;
59378 };
59379 
59380 struct rpc_filelist {
59381 	const char *name;
59382 	const struct file_operations *i_fop;
59383 	umode_t mode;
59384 };
59385 
59386 enum {
59387 	RPCAUTH_info = 0,
59388 	RPCAUTH_EOF = 1,
59389 };
59390 
59391 enum {
59392 	RPCAUTH_lockd = 0,
59393 	RPCAUTH_mount = 1,
59394 	RPCAUTH_nfs = 2,
59395 	RPCAUTH_portmap = 3,
59396 	RPCAUTH_statd = 4,
59397 	RPCAUTH_nfsd4_cb = 5,
59398 	RPCAUTH_cache = 6,
59399 	RPCAUTH_nfsd = 7,
59400 	RPCAUTH_gssd = 8,
59401 	RPCAUTH_RootEOF = 9,
59402 };
59403 
59404 typedef u32 ihandle;
59405 
59406 struct boot_param_header {
59407 	__be32 magic;
59408 	__be32 totalsize;
59409 	__be32 off_dt_struct;
59410 	__be32 off_dt_strings;
59411 	__be32 off_mem_rsvmap;
59412 	__be32 version;
59413 	__be32 last_comp_version;
59414 	__be32 boot_cpuid_phys;
59415 	__be32 dt_strings_size;
59416 	__be32 dt_struct_size;
59417 };
59418 
59419 typedef u32 prom_arg_t;
59420 
59421 struct prom_args {
59422 	__be32 service;
59423 	__be32 nargs;
59424 	__be32 nret;
59425 	__be32 args[10];
59426 };
59427 
59428 struct prom_t {
59429 	ihandle root;
59430 	phandle chosen;
59431 	int cpu;
59432 	ihandle stdout;
59433 	ihandle mmumap;
59434 	ihandle memory;
59435 };
59436 
59437 struct mem_map_entry {
59438 	__be64 base;
59439 	__be64 size;
59440 };
59441 
59442 typedef __be32 cell_t;
59443 
59444 struct platform_support {
59445 	bool hash_mmu;
59446 	bool radix_mmu;
59447 	bool radix_gtse;
59448 	bool xive;
59449 };
59450 
59451 struct option_vector1 {
59452 	u8 byte1;
59453 	u8 arch_versions;
59454 	u8 arch_versions3;
59455 };
59456 
59457 struct option_vector2 {
59458 	u8 byte1;
59459 	__be16 reserved;
59460 	__be32 real_base;
59461 	__be32 real_size;
59462 	__be32 virt_base;
59463 	__be32 virt_size;
59464 	__be32 load_base;
59465 	__be32 min_rma;
59466 	__be32 min_load;
59467 	u8 min_rma_percent;
59468 	u8 max_pft_size;
59469 } __attribute__((packed));
59470 
59471 struct option_vector3 {
59472 	u8 byte1;
59473 	u8 byte2;
59474 };
59475 
59476 struct option_vector4 {
59477 	u8 byte1;
59478 	u8 min_vp_cap;
59479 };
59480 
59481 struct option_vector5 {
59482 	u8 byte1;
59483 	u8 byte2;
59484 	u8 byte3;
59485 	u8 cmo;
59486 	u8 associativity;
59487 	u8 bin_opts;
59488 	u8 micro_checkpoint;
59489 	u8 reserved0;
59490 	__be32 max_cpus;
59491 	__be16 papr_level;
59492 	__be16 reserved1;
59493 	u8 platform_facilities;
59494 	u8 reserved2;
59495 	__be16 reserved3;
59496 	u8 subprocessors;
59497 	u8 byte22;
59498 	u8 intarch;
59499 	u8 mmu;
59500 	u8 hash_ext;
59501 	u8 radix_ext;
59502 } __attribute__((packed));
59503 
59504 struct option_vector6 {
59505 	u8 reserved;
59506 	u8 secondary_pteg;
59507 	u8 os_name;
59508 };
59509 
59510 struct option_vector7 {
59511 	u8 os_id[256];
59512 };
59513 
59514 struct ibm_arch_vec {
59515 	struct {
59516 		u32 mask;
59517 		u32 val;
59518 	} pvrs[14];
59519 	u8 num_vectors;
59520 	u8 vec1_len;
59521 	struct option_vector1 vec1;
59522 	u8 vec2_len;
59523 	struct option_vector2 vec2;
59524 	u8 vec3_len;
59525 	struct option_vector3 vec3;
59526 	u8 vec4_len;
59527 	struct option_vector4 vec4;
59528 	u8 vec5_len;
59529 	struct option_vector5 vec5;
59530 	u8 vec6_len;
59531 	struct option_vector6 vec6;
59532 	u8 vec7_len;
59533 	struct option_vector7 vec7;
59534 } __attribute__((packed));
59535 
59536 struct prev_kprobe {
59537 	struct kprobe *kp;
59538 	long unsigned int status;
59539 	long unsigned int saved_msr;
59540 };
59541 
59542 struct kprobe_ctlblk {
59543 	long unsigned int kprobe_status;
59544 	long unsigned int kprobe_saved_msr;
59545 	struct prev_kprobe prev_kprobe;
59546 };
59547 
59548 struct arch_optimized_insn {
59549 	kprobe_opcode_t copied_insn[1];
59550 	kprobe_opcode_t *insn;
59551 };
59552 
59553 struct kprobe_insn_cache {
59554 	struct mutex mutex;
59555 	void * (*alloc)();
59556 	void (*free)(void *);
59557 	const char *sym;
59558 	struct list_head pages;
59559 	size_t insn_size;
59560 	int nr_garbage;
59561 };
59562 
59563 struct optimized_kprobe {
59564 	struct kprobe kp;
59565 	struct list_head list;
59566 	struct arch_optimized_insn optinsn;
59567 };
59568 
59569 union vsx_reg {
59570 	u8 b[16];
59571 	u16 h[8];
59572 	u32 w[4];
59573 	long unsigned int d[2];
59574 	float fp[4];
59575 	double dp[2];
59576 	__vector128 v;
59577 };
59578 
59579 enum opal_async_token_state {
59580 	ASYNC_TOKEN_UNALLOCATED = 0,
59581 	ASYNC_TOKEN_ALLOCATED = 1,
59582 	ASYNC_TOKEN_DISPATCHED = 2,
59583 	ASYNC_TOKEN_ABANDONED = 3,
59584 	ASYNC_TOKEN_COMPLETED = 4,
59585 };
59586 
59587 struct opal_async_token {
59588 	enum opal_async_token_state state;
59589 	struct opal_msg response;
59590 };
59591 
59592 struct opal_event_irqchip {
59593 	struct irq_chip irqchip;
59594 	struct irq_domain *domain;
59595 	long unsigned int mask;
59596 };
59597 
59598 struct msi_alloc_info {
59599 	struct msi_desc *desc;
59600 	irq_hw_number_t hwirq;
59601 	long unsigned int flags;
59602 	union {
59603 		long unsigned int ul;
59604 		void *ptr;
59605 	} scratchpad[2];
59606 };
59607 
59608 typedef struct msi_alloc_info msi_alloc_info_t;
59609 
59610 struct msi_domain_info;
59611 
59612 struct msi_domain_ops {
59613 	irq_hw_number_t (*get_hwirq)(struct msi_domain_info *, msi_alloc_info_t *);
59614 	int (*msi_init)(struct irq_domain *, struct msi_domain_info *, unsigned int, irq_hw_number_t, msi_alloc_info_t *);
59615 	void (*msi_free)(struct irq_domain *, struct msi_domain_info *, unsigned int);
59616 	int (*msi_check)(struct irq_domain *, struct msi_domain_info *, struct device *);
59617 	int (*msi_prepare)(struct irq_domain *, struct device *, int, msi_alloc_info_t *);
59618 	void (*set_desc)(msi_alloc_info_t *, struct msi_desc *);
59619 	int (*domain_alloc_irqs)(struct irq_domain *, struct device *, int);
59620 	void (*domain_free_irqs)(struct irq_domain *, struct device *);
59621 };
59622 
59623 struct msi_domain_info {
59624 	u32 flags;
59625 	struct msi_domain_ops *ops;
59626 	struct irq_chip *chip;
59627 	void *chip_data;
59628 	irq_flow_handler_t handler;
59629 	void *handler_data;
59630 	const char *handler_name;
59631 	void *data;
59632 };
59633 
59634 enum {
59635 	MSI_FLAG_USE_DEF_DOM_OPS = 1,
59636 	MSI_FLAG_USE_DEF_CHIP_OPS = 2,
59637 	MSI_FLAG_MULTI_PCI_MSI = 4,
59638 	MSI_FLAG_PCI_MSIX = 8,
59639 	MSI_FLAG_ACTIVATE_EARLY = 16,
59640 	MSI_FLAG_MUST_REACTIVATE = 32,
59641 	MSI_FLAG_LEVEL_CAPABLE = 64,
59642 	MSI_FLAG_DEV_SYSFS = 128,
59643 	MSI_FLAG_MSIX_CONTIGUOUS = 256,
59644 	MSI_FLAG_ALLOC_SIMPLE_MSI_DESCS = 512,
59645 	MSI_FLAG_FREE_MSI_DESCS = 1024,
59646 };
59647 
59648 struct msi_counts {
59649 	struct device_node *requestor;
59650 	int num_devices;
59651 	int request;
59652 	int quota;
59653 	int spare;
59654 	int over_quota;
59655 };
59656 
59657 struct vas_tx_win_open_attr {
59658 	__u32 version;
59659 	__s16 vas_id;
59660 	__u16 reserved1;
59661 	__u64 flags;
59662 	__u64 reserved2[6];
59663 };
59664 
59665 struct coproc_dev {
59666 	struct cdev cdev;
59667 	struct device *device;
59668 	char *name;
59669 	dev_t devt;
59670 	struct class *class;
59671 	enum vas_cop_type cop_type;
59672 	const struct vas_user_win_ops *vops;
59673 };
59674 
59675 struct coproc_instance {
59676 	struct coproc_dev *coproc;
59677 	struct vas_window *txwin;
59678 };
59679 
59680 struct perf_event_header {
59681 	__u32 type;
59682 	__u16 misc;
59683 	__u16 size;
59684 };
59685 
59686 enum perf_event_type {
59687 	PERF_RECORD_MMAP = 1,
59688 	PERF_RECORD_LOST = 2,
59689 	PERF_RECORD_COMM = 3,
59690 	PERF_RECORD_EXIT = 4,
59691 	PERF_RECORD_THROTTLE = 5,
59692 	PERF_RECORD_UNTHROTTLE = 6,
59693 	PERF_RECORD_FORK = 7,
59694 	PERF_RECORD_READ = 8,
59695 	PERF_RECORD_SAMPLE = 9,
59696 	PERF_RECORD_MMAP2 = 10,
59697 	PERF_RECORD_AUX = 11,
59698 	PERF_RECORD_ITRACE_START = 12,
59699 	PERF_RECORD_LOST_SAMPLES = 13,
59700 	PERF_RECORD_SWITCH = 14,
59701 	PERF_RECORD_SWITCH_CPU_WIDE = 15,
59702 	PERF_RECORD_NAMESPACES = 16,
59703 	PERF_RECORD_KSYMBOL = 17,
59704 	PERF_RECORD_BPF_EVENT = 18,
59705 	PERF_RECORD_CGROUP = 19,
59706 	PERF_RECORD_TEXT_POKE = 20,
59707 	PERF_RECORD_AUX_OUTPUT_HW_ID = 21,
59708 	PERF_RECORD_MAX = 22,
59709 };
59710 
59711 enum {
59712 	OPAL_IMC_COUNTERS_NEST = 1,
59713 	OPAL_IMC_COUNTERS_CORE = 2,
59714 	OPAL_IMC_COUNTERS_TRACE = 3,
59715 };
59716 
59717 struct imc_mem_info {
59718 	u64 *vbase;
59719 	u32 id;
59720 };
59721 
59722 struct imc_events {
59723 	u32 value;
59724 	char *name;
59725 	char *unit;
59726 	char *scale;
59727 };
59728 
59729 struct trace_imc_data {
59730 	u64 tb1;
59731 	u64 ip;
59732 	u64 val;
59733 	u64 cpmc1;
59734 	u64 cpmc2;
59735 	u64 cpmc3;
59736 	u64 cpmc4;
59737 	u64 tb2;
59738 };
59739 
59740 struct imc_pmu {
59741 	struct pmu pmu;
59742 	struct imc_mem_info *mem_info;
59743 	struct imc_events *events;
59744 	const struct attribute_group *attr_groups[4];
59745 	u32 counter_mem_size;
59746 	int domain;
59747 	bool imc_counter_mmaped;
59748 };
59749 
59750 struct imc_pmu_ref {
59751 	struct mutex lock;
59752 	unsigned int id;
59753 	int refc;
59754 };
59755 
59756 union thread_union {
59757 	struct task_struct task;
59758 	long unsigned int stack[2048];
59759 };
59760 
59761 typedef long unsigned int old_sigset_t;
59762 
59763 struct ksignal {
59764 	struct k_sigaction ka;
59765 	kernel_siginfo_t info;
59766 	int sig;
59767 };
59768 
59769 enum siginfo_layout {
59770 	SIL_KILL = 0,
59771 	SIL_TIMER = 1,
59772 	SIL_POLL = 2,
59773 	SIL_FAULT = 3,
59774 	SIL_FAULT_TRAPNO = 4,
59775 	SIL_FAULT_MCEERR = 5,
59776 	SIL_FAULT_BNDERR = 6,
59777 	SIL_FAULT_PKUERR = 7,
59778 	SIL_FAULT_PERF_EVENT = 8,
59779 	SIL_CHLD = 9,
59780 	SIL_RT = 10,
59781 	SIL_SYS = 11,
59782 };
59783 
59784 struct multiprocess_signals {
59785 	sigset_t signal;
59786 	struct hlist_node node;
59787 };
59788 
59789 enum {
59790 	TRACE_SIGNAL_DELIVERED = 0,
59791 	TRACE_SIGNAL_IGNORED = 1,
59792 	TRACE_SIGNAL_ALREADY_PENDING = 2,
59793 	TRACE_SIGNAL_OVERFLOW_FAIL = 3,
59794 	TRACE_SIGNAL_LOSE_INFO = 4,
59795 };
59796 
59797 struct trace_event_raw_signal_generate {
59798 	struct trace_entry ent;
59799 	int sig;
59800 	int errno;
59801 	int code;
59802 	char comm[16];
59803 	pid_t pid;
59804 	int group;
59805 	int result;
59806 	char __data[0];
59807 };
59808 
59809 struct trace_event_raw_signal_deliver {
59810 	struct trace_entry ent;
59811 	int sig;
59812 	int errno;
59813 	int code;
59814 	long unsigned int sa_handler;
59815 	long unsigned int sa_flags;
59816 	char __data[0];
59817 };
59818 
59819 struct trace_event_data_offsets_signal_generate {};
59820 
59821 struct trace_event_data_offsets_signal_deliver {};
59822 
59823 typedef void (*btf_trace_signal_generate)(void *, int, struct kernel_siginfo *, struct task_struct *, int, int);
59824 
59825 typedef void (*btf_trace_signal_deliver)(void *, int, struct kernel_siginfo *, struct k_sigaction *);
59826 
59827 enum sig_handler {
59828 	HANDLER_CURRENT = 0,
59829 	HANDLER_SIG_DFL = 1,
59830 	HANDLER_EXIT = 2,
59831 };
59832 
59833 struct dev_printk_info {
59834 	char subsystem[16];
59835 	char device[48];
59836 };
59837 
59838 struct printk_info {
59839 	u64 seq;
59840 	u64 ts_nsec;
59841 	u16 text_len;
59842 	u8 facility;
59843 	u8 flags: 5;
59844 	u8 level: 3;
59845 	u32 caller_id;
59846 	struct dev_printk_info dev_info;
59847 };
59848 
59849 struct printk_record {
59850 	struct printk_info *info;
59851 	char *text_buf;
59852 	unsigned int text_buf_size;
59853 };
59854 
59855 struct prb_data_blk_lpos {
59856 	long unsigned int begin;
59857 	long unsigned int next;
59858 };
59859 
59860 struct prb_desc {
59861 	atomic_long_t state_var;
59862 	struct prb_data_blk_lpos text_blk_lpos;
59863 };
59864 
59865 struct prb_data_ring {
59866 	unsigned int size_bits;
59867 	char *data;
59868 	atomic_long_t head_lpos;
59869 	atomic_long_t tail_lpos;
59870 };
59871 
59872 struct prb_desc_ring {
59873 	unsigned int count_bits;
59874 	struct prb_desc *descs;
59875 	struct printk_info *infos;
59876 	atomic_long_t head_id;
59877 	atomic_long_t tail_id;
59878 	atomic_long_t last_finalized_id;
59879 };
59880 
59881 struct printk_ringbuffer {
59882 	struct prb_desc_ring desc_ring;
59883 	struct prb_data_ring text_data_ring;
59884 	atomic_long_t fail;
59885 };
59886 
59887 struct prb_reserved_entry {
59888 	struct printk_ringbuffer *rb;
59889 	long unsigned int irqflags;
59890 	long unsigned int id;
59891 	unsigned int text_space;
59892 };
59893 
59894 enum desc_state {
59895 	desc_miss = -1,
59896 	desc_reserved = 0,
59897 	desc_committed = 1,
59898 	desc_finalized = 2,
59899 	desc_reusable = 3,
59900 };
59901 
59902 struct prb_data_block {
59903 	long unsigned int id;
59904 	char data[0];
59905 };
59906 
59907 struct node_vectors {
59908 	unsigned int id;
59909 	union {
59910 		unsigned int nvectors;
59911 		unsigned int ncpus;
59912 	};
59913 };
59914 
59915 typedef struct {
59916 	seqcount_t seqcount;
59917 } seqcount_latch_t;
59918 
59919 struct latch_tree_root {
59920 	seqcount_latch_t seq;
59921 	struct rb_root tree[2];
59922 };
59923 
59924 struct latch_tree_ops {
59925 	bool (*less)(struct latch_tree_node *, struct latch_tree_node *);
59926 	int (*comp)(void *, struct latch_tree_node *);
59927 };
59928 
59929 struct mod_tree_root {
59930 	struct latch_tree_root root;
59931 	long unsigned int addr_min;
59932 	long unsigned int addr_max;
59933 };
59934 
59935 enum audit_ntp_type {
59936 	AUDIT_NTP_OFFSET = 0,
59937 	AUDIT_NTP_FREQ = 1,
59938 	AUDIT_NTP_STATUS = 2,
59939 	AUDIT_NTP_TAI = 3,
59940 	AUDIT_NTP_TICK = 4,
59941 	AUDIT_NTP_ADJUST = 5,
59942 	AUDIT_NTP_NVALS = 6,
59943 };
59944 
59945 struct audit_ntp_data {};
59946 
59947 struct futex_waitv {
59948 	__u64 val;
59949 	__u64 uaddr;
59950 	__u32 flags;
59951 	__u32 __reserved;
59952 };
59953 
59954 struct futex_vector {
59955 	struct futex_waitv w;
59956 	struct futex_q q;
59957 };
59958 
59959 struct cgroup_taskset {
59960 	struct list_head src_csets;
59961 	struct list_head dst_csets;
59962 	int nr_tasks;
59963 	int ssid;
59964 	struct list_head *csets;
59965 	struct css_set *cur_cset;
59966 	struct task_struct *cur_task;
59967 };
59968 
59969 enum lockdep_ok {
59970 	LOCKDEP_STILL_OK = 0,
59971 	LOCKDEP_NOW_UNRELIABLE = 1,
59972 };
59973 
59974 struct cpu_stop_done;
59975 
59976 struct cpu_stop_work {
59977 	struct list_head list;
59978 	cpu_stop_fn_t fn;
59979 	long unsigned int caller;
59980 	void *arg;
59981 	struct cpu_stop_done *done;
59982 };
59983 
59984 struct tracer_stat {
59985 	const char *name;
59986 	void * (*stat_start)(struct tracer_stat *);
59987 	void * (*stat_next)(void *, int);
59988 	cmp_func_t stat_cmp;
59989 	int (*stat_show)(struct seq_file *, void *);
59990 	void (*stat_release)(void *);
59991 	int (*stat_headers)(struct seq_file *);
59992 };
59993 
59994 struct stat_node {
59995 	struct rb_node node;
59996 	void *stat;
59997 };
59998 
59999 struct stat_session {
60000 	struct list_head session_list;
60001 	struct tracer_stat *ts;
60002 	struct rb_root stat_root;
60003 	struct mutex stat_mutex;
60004 	struct dentry *file;
60005 };
60006 
60007 enum {
60008 	TRACE_PIDS = 1,
60009 	TRACE_NO_PIDS = 2,
60010 };
60011 
60012 struct ftrace_func_command {
60013 	struct list_head list;
60014 	char *name;
60015 	int (*func)(struct trace_array *, struct ftrace_hash *, char *, char *, char *, int);
60016 };
60017 
60018 struct ftrace_probe_ops {
60019 	void (*func)(long unsigned int, long unsigned int, struct trace_array *, struct ftrace_probe_ops *, void *);
60020 	int (*init)(struct ftrace_probe_ops *, struct trace_array *, long unsigned int, void *, void **);
60021 	void (*free)(struct ftrace_probe_ops *, struct trace_array *, long unsigned int, void *);
60022 	int (*print)(struct seq_file *, long unsigned int, struct ftrace_probe_ops *, void *);
60023 };
60024 
60025 typedef int (*ftrace_mapper_func)(void *);
60026 
60027 struct trace_parser {
60028 	bool cont;
60029 	char *buffer;
60030 	unsigned int idx;
60031 	unsigned int size;
60032 };
60033 
60034 struct ftrace_event_field {
60035 	struct list_head link;
60036 	const char *name;
60037 	const char *type;
60038 	int filter_type;
60039 	int offset;
60040 	int size;
60041 	int is_signed;
60042 };
60043 
60044 struct module_string {
60045 	struct list_head next;
60046 	struct module *module;
60047 	char *str;
60048 };
60049 
60050 enum {
60051 	FORMAT_HEADER = 1,
60052 	FORMAT_FIELD_SEPERATOR = 2,
60053 	FORMAT_PRINTFMT = 3,
60054 };
60055 
60056 struct event_probe_data {
60057 	struct trace_event_file *file;
60058 	long unsigned int count;
60059 	int ref;
60060 	bool enable;
60061 };
60062 
60063 struct ftrace_func_mapper;
60064 
60065 struct bpf_iter_seq_prog_info {
60066 	u32 prog_id;
60067 };
60068 
60069 struct bpf_iter__bpf_prog {
60070 	union {
60071 		struct bpf_iter_meta *meta;
60072 	};
60073 	union {
60074 		struct bpf_prog *prog;
60075 	};
60076 };
60077 
60078 enum {
60079 	BPF_RB_NO_WAKEUP = 1,
60080 	BPF_RB_FORCE_WAKEUP = 2,
60081 };
60082 
60083 enum {
60084 	BPF_RB_AVAIL_DATA = 0,
60085 	BPF_RB_RING_SIZE = 1,
60086 	BPF_RB_CONS_POS = 2,
60087 	BPF_RB_PROD_POS = 3,
60088 };
60089 
60090 enum {
60091 	BPF_RINGBUF_BUSY_BIT = 2147483648,
60092 	BPF_RINGBUF_DISCARD_BIT = 1073741824,
60093 	BPF_RINGBUF_HDR_SZ = 8,
60094 };
60095 
60096 struct bpf_dynptr_kern {
60097 	void *data;
60098 	u32 size;
60099 	u32 offset;
60100 };
60101 
60102 struct bpf_ringbuf {
60103 	wait_queue_head_t waitq;
60104 	struct irq_work work;
60105 	u64 mask;
60106 	struct page **pages;
60107 	int nr_pages;
60108 	long: 64;
60109 	long: 64;
60110 	long: 64;
60111 	long: 64;
60112 	long: 64;
60113 	long: 64;
60114 	spinlock_t spinlock;
60115 	long: 64;
60116 	long: 64;
60117 	long: 64;
60118 	long: 64;
60119 	long: 64;
60120 	long: 64;
60121 	long: 64;
60122 	long: 64;
60123 	long: 64;
60124 	long: 64;
60125 	long: 64;
60126 	long: 64;
60127 	long: 64;
60128 	long: 64;
60129 	long: 64;
60130 	long: 64;
60131 	long: 64;
60132 	long: 64;
60133 	long: 64;
60134 	long: 64;
60135 	long: 64;
60136 	long: 64;
60137 	long: 64;
60138 	long: 64;
60139 	long: 64;
60140 	long: 64;
60141 	long: 64;
60142 	long: 64;
60143 	long: 64;
60144 	long: 64;
60145 	long: 64;
60146 	long: 64;
60147 	long: 64;
60148 	long: 64;
60149 	long: 64;
60150 	long: 64;
60151 	long: 64;
60152 	long: 64;
60153 	long: 64;
60154 	long: 64;
60155 	long: 64;
60156 	long: 64;
60157 	long: 64;
60158 	long: 64;
60159 	long: 64;
60160 	long: 64;
60161 	long: 64;
60162 	long: 64;
60163 	long: 64;
60164 	long: 64;
60165 	long: 64;
60166 	long: 64;
60167 	long: 64;
60168 	long: 64;
60169 	long: 64;
60170 	long: 64;
60171 	long: 64;
60172 	long: 64;
60173 	long: 64;
60174 	long: 64;
60175 	long: 64;
60176 	long: 64;
60177 	long: 64;
60178 	long: 64;
60179 	long: 64;
60180 	long: 64;
60181 	long: 64;
60182 	long: 64;
60183 	long: 64;
60184 	long: 64;
60185 	long: 64;
60186 	long: 64;
60187 	long: 64;
60188 	long: 64;
60189 	long: 64;
60190 	long: 64;
60191 	long: 64;
60192 	long: 64;
60193 	long: 64;
60194 	long: 64;
60195 	long: 64;
60196 	long: 64;
60197 	long: 64;
60198 	long: 64;
60199 	long: 64;
60200 	long: 64;
60201 	long: 64;
60202 	long: 64;
60203 	long: 64;
60204 	long: 64;
60205 	long: 64;
60206 	long: 64;
60207 	long: 64;
60208 	long: 64;
60209 	long: 64;
60210 	long: 64;
60211 	long: 64;
60212 	long: 64;
60213 	long: 64;
60214 	long: 64;
60215 	long: 64;
60216 	long: 64;
60217 	long: 64;
60218 	long: 64;
60219 	long: 64;
60220 	long: 64;
60221 	long: 64;
60222 	long: 64;
60223 	long: 64;
60224 	long: 64;
60225 	long: 64;
60226 	long: 64;
60227 	long: 64;
60228 	long: 64;
60229 	long: 64;
60230 	long: 64;
60231 	long: 64;
60232 	long: 64;
60233 	long: 64;
60234 	long: 64;
60235 	long: 64;
60236 	long: 64;
60237 	long: 64;
60238 	long: 64;
60239 	long: 64;
60240 	long: 64;
60241 	long: 64;
60242 	long: 64;
60243 	long: 64;
60244 	long: 64;
60245 	long: 64;
60246 	long: 64;
60247 	long: 64;
60248 	long: 64;
60249 	long: 64;
60250 	long: 64;
60251 	long: 64;
60252 	long: 64;
60253 	long: 64;
60254 	long: 64;
60255 	long: 64;
60256 	long: 64;
60257 	long: 64;
60258 	long: 64;
60259 	long: 64;
60260 	long: 64;
60261 	long: 64;
60262 	long: 64;
60263 	long: 64;
60264 	long: 64;
60265 	long: 64;
60266 	long: 64;
60267 	long: 64;
60268 	long: 64;
60269 	long: 64;
60270 	long: 64;
60271 	long: 64;
60272 	long: 64;
60273 	long: 64;
60274 	long: 64;
60275 	long: 64;
60276 	long: 64;
60277 	long: 64;
60278 	long: 64;
60279 	long: 64;
60280 	long: 64;
60281 	long: 64;
60282 	long: 64;
60283 	long: 64;
60284 	long: 64;
60285 	long: 64;
60286 	long: 64;
60287 	long: 64;
60288 	long: 64;
60289 	long: 64;
60290 	long: 64;
60291 	long: 64;
60292 	long: 64;
60293 	long: 64;
60294 	long: 64;
60295 	long: 64;
60296 	long: 64;
60297 	long: 64;
60298 	long: 64;
60299 	long: 64;
60300 	long: 64;
60301 	long: 64;
60302 	long: 64;
60303 	long: 64;
60304 	long: 64;
60305 	long: 64;
60306 	long: 64;
60307 	long: 64;
60308 	long: 64;
60309 	long: 64;
60310 	long: 64;
60311 	long: 64;
60312 	long: 64;
60313 	long: 64;
60314 	long: 64;
60315 	long: 64;
60316 	long: 64;
60317 	long: 64;
60318 	long: 64;
60319 	long: 64;
60320 	long: 64;
60321 	long: 64;
60322 	long: 64;
60323 	long: 64;
60324 	long: 64;
60325 	long: 64;
60326 	long: 64;
60327 	long: 64;
60328 	long: 64;
60329 	long: 64;
60330 	long: 64;
60331 	long: 64;
60332 	long: 64;
60333 	long: 64;
60334 	long: 64;
60335 	long: 64;
60336 	long: 64;
60337 	long: 64;
60338 	long: 64;
60339 	long: 64;
60340 	long: 64;
60341 	long: 64;
60342 	long: 64;
60343 	long: 64;
60344 	long: 64;
60345 	long: 64;
60346 	long: 64;
60347 	long: 64;
60348 	long: 64;
60349 	long: 64;
60350 	long: 64;
60351 	long: 64;
60352 	long: 64;
60353 	long: 64;
60354 	long: 64;
60355 	long: 64;
60356 	long: 64;
60357 	long: 64;
60358 	long: 64;
60359 	long: 64;
60360 	long: 64;
60361 	long: 64;
60362 	long: 64;
60363 	long: 64;
60364 	long: 64;
60365 	long: 64;
60366 	long: 64;
60367 	long: 64;
60368 	long: 64;
60369 	long: 64;
60370 	long: 64;
60371 	long: 64;
60372 	long: 64;
60373 	long: 64;
60374 	long: 64;
60375 	long: 64;
60376 	long: 64;
60377 	long: 64;
60378 	long: 64;
60379 	long: 64;
60380 	long: 64;
60381 	long: 64;
60382 	long: 64;
60383 	long: 64;
60384 	long: 64;
60385 	long: 64;
60386 	long: 64;
60387 	long: 64;
60388 	long: 64;
60389 	long: 64;
60390 	long: 64;
60391 	long: 64;
60392 	long: 64;
60393 	long: 64;
60394 	long: 64;
60395 	long: 64;
60396 	long: 64;
60397 	long: 64;
60398 	long: 64;
60399 	long: 64;
60400 	long: 64;
60401 	long: 64;
60402 	long: 64;
60403 	long: 64;
60404 	long: 64;
60405 	long: 64;
60406 	long: 64;
60407 	long: 64;
60408 	long: 64;
60409 	long: 64;
60410 	long: 64;
60411 	long: 64;
60412 	long: 64;
60413 	long: 64;
60414 	long: 64;
60415 	long: 64;
60416 	long: 64;
60417 	long: 64;
60418 	long: 64;
60419 	long: 64;
60420 	long: 64;
60421 	long: 64;
60422 	long: 64;
60423 	long: 64;
60424 	long: 64;
60425 	long: 64;
60426 	long: 64;
60427 	long: 64;
60428 	long: 64;
60429 	long: 64;
60430 	long: 64;
60431 	long: 64;
60432 	long: 64;
60433 	long: 64;
60434 	long: 64;
60435 	long: 64;
60436 	long: 64;
60437 	long: 64;
60438 	long: 64;
60439 	long: 64;
60440 	long: 64;
60441 	long: 64;
60442 	long: 64;
60443 	long: 64;
60444 	long: 64;
60445 	long: 64;
60446 	long: 64;
60447 	long: 64;
60448 	long: 64;
60449 	long: 64;
60450 	long: 64;
60451 	long: 64;
60452 	long: 64;
60453 	long: 64;
60454 	long: 64;
60455 	long: 64;
60456 	long: 64;
60457 	long: 64;
60458 	long: 64;
60459 	long: 64;
60460 	long: 64;
60461 	long: 64;
60462 	long: 64;
60463 	long: 64;
60464 	long: 64;
60465 	long: 64;
60466 	long: 64;
60467 	long: 64;
60468 	long: 64;
60469 	long: 64;
60470 	long: 64;
60471 	long: 64;
60472 	long: 64;
60473 	long: 64;
60474 	long: 64;
60475 	long: 64;
60476 	long: 64;
60477 	long: 64;
60478 	long: 64;
60479 	long: 64;
60480 	long: 64;
60481 	long: 64;
60482 	long: 64;
60483 	long: 64;
60484 	long: 64;
60485 	long: 64;
60486 	long: 64;
60487 	long: 64;
60488 	long: 64;
60489 	long: 64;
60490 	long: 64;
60491 	long: 64;
60492 	long: 64;
60493 	long: 64;
60494 	long: 64;
60495 	long: 64;
60496 	long: 64;
60497 	long: 64;
60498 	long: 64;
60499 	long: 64;
60500 	long: 64;
60501 	long: 64;
60502 	long: 64;
60503 	long: 64;
60504 	long: 64;
60505 	long: 64;
60506 	long: 64;
60507 	long: 64;
60508 	long: 64;
60509 	long: 64;
60510 	long: 64;
60511 	long: 64;
60512 	long: 64;
60513 	long: 64;
60514 	long: 64;
60515 	long: 64;
60516 	long: 64;
60517 	long: 64;
60518 	long: 64;
60519 	long: 64;
60520 	long: 64;
60521 	long: 64;
60522 	long: 64;
60523 	long: 64;
60524 	long: 64;
60525 	long: 64;
60526 	long: 64;
60527 	long: 64;
60528 	long: 64;
60529 	long: 64;
60530 	long: 64;
60531 	long: 64;
60532 	long: 64;
60533 	long: 64;
60534 	long: 64;
60535 	long: 64;
60536 	long: 64;
60537 	long: 64;
60538 	long: 64;
60539 	long: 64;
60540 	long: 64;
60541 	long: 64;
60542 	long: 64;
60543 	long: 64;
60544 	long: 64;
60545 	long: 64;
60546 	long: 64;
60547 	long: 64;
60548 	long: 64;
60549 	long: 64;
60550 	long: 64;
60551 	long: 64;
60552 	long: 64;
60553 	long: 64;
60554 	long: 64;
60555 	long: 64;
60556 	long: 64;
60557 	long: 64;
60558 	long: 64;
60559 	long: 64;
60560 	long: 64;
60561 	long: 64;
60562 	long: 64;
60563 	long: 64;
60564 	long: 64;
60565 	long: 64;
60566 	long: 64;
60567 	long: 64;
60568 	long: 64;
60569 	long: 64;
60570 	long: 64;
60571 	long: 64;
60572 	long: 64;
60573 	long: 64;
60574 	long: 64;
60575 	long: 64;
60576 	long: 64;
60577 	long: 64;
60578 	long: 64;
60579 	long: 64;
60580 	long: 64;
60581 	long: 64;
60582 	long: 64;
60583 	long: 64;
60584 	long: 64;
60585 	long: 64;
60586 	long: 64;
60587 	long: 64;
60588 	long: 64;
60589 	long: 64;
60590 	long: 64;
60591 	long: 64;
60592 	long: 64;
60593 	long: 64;
60594 	long: 64;
60595 	long: 64;
60596 	long: 64;
60597 	long: 64;
60598 	long: 64;
60599 	long: 64;
60600 	long: 64;
60601 	long: 64;
60602 	long: 64;
60603 	long: 64;
60604 	long: 64;
60605 	long: 64;
60606 	long: 64;
60607 	long: 64;
60608 	long: 64;
60609 	long: 64;
60610 	long: 64;
60611 	long: 64;
60612 	long: 64;
60613 	long: 64;
60614 	long: 64;
60615 	long: 64;
60616 	long: 64;
60617 	long: 64;
60618 	long: 64;
60619 	long: 64;
60620 	long: 64;
60621 	long: 64;
60622 	long: 64;
60623 	long: 64;
60624 	long: 64;
60625 	long: 64;
60626 	long: 64;
60627 	long: 64;
60628 	long: 64;
60629 	long: 64;
60630 	long: 64;
60631 	long: 64;
60632 	long: 64;
60633 	long: 64;
60634 	long: 64;
60635 	long: 64;
60636 	long: 64;
60637 	long: 64;
60638 	long: 64;
60639 	long: 64;
60640 	long: 64;
60641 	long: 64;
60642 	long: 64;
60643 	long: 64;
60644 	long: 64;
60645 	long: 64;
60646 	long: 64;
60647 	long: 64;
60648 	long: 64;
60649 	long: 64;
60650 	long: 64;
60651 	long: 64;
60652 	long: 64;
60653 	long: 64;
60654 	long: 64;
60655 	long: 64;
60656 	long: 64;
60657 	long: 64;
60658 	long: 64;
60659 	long: 64;
60660 	long: 64;
60661 	long: 64;
60662 	long: 64;
60663 	long: 64;
60664 	long: 64;
60665 	long: 64;
60666 	long: 64;
60667 	long: 64;
60668 	long: 64;
60669 	long: 64;
60670 	long: 64;
60671 	long: 64;
60672 	long: 64;
60673 	long: 64;
60674 	long: 64;
60675 	long: 64;
60676 	long: 64;
60677 	long: 64;
60678 	long: 64;
60679 	long: 64;
60680 	long: 64;
60681 	long: 64;
60682 	long: 64;
60683 	long: 64;
60684 	long: 64;
60685 	long: 64;
60686 	long: 64;
60687 	long: 64;
60688 	long: 64;
60689 	long: 64;
60690 	long: 64;
60691 	long: 64;
60692 	long: 64;
60693 	long: 64;
60694 	long: 64;
60695 	long: 64;
60696 	long: 64;
60697 	long: 64;
60698 	long: 64;
60699 	long: 64;
60700 	long: 64;
60701 	long: 64;
60702 	long: 64;
60703 	long: 64;
60704 	long: 64;
60705 	long: 64;
60706 	long: 64;
60707 	long: 64;
60708 	long: 64;
60709 	long: 64;
60710 	long: 64;
60711 	long: 64;
60712 	long: 64;
60713 	long: 64;
60714 	long: 64;
60715 	long: 64;
60716 	long: 64;
60717 	long: 64;
60718 	long: 64;
60719 	long: 64;
60720 	long: 64;
60721 	long: 64;
60722 	long: 64;
60723 	long: 64;
60724 	long: 64;
60725 	long: 64;
60726 	long: 64;
60727 	long: 64;
60728 	long: 64;
60729 	long: 64;
60730 	long: 64;
60731 	long: 64;
60732 	long: 64;
60733 	long: 64;
60734 	long: 64;
60735 	long: 64;
60736 	long: 64;
60737 	long: 64;
60738 	long: 64;
60739 	long: 64;
60740 	long: 64;
60741 	long: 64;
60742 	long: 64;
60743 	long: 64;
60744 	long: 64;
60745 	long: 64;
60746 	long: 64;
60747 	long: 64;
60748 	long: 64;
60749 	long: 64;
60750 	long: 64;
60751 	long: 64;
60752 	long: 64;
60753 	long: 64;
60754 	long: 64;
60755 	long: 64;
60756 	long: 64;
60757 	long: 64;
60758 	long: 64;
60759 	long: 64;
60760 	long: 64;
60761 	long: 64;
60762 	long: 64;
60763 	long: 64;
60764 	long: 64;
60765 	long: 64;
60766 	long: 64;
60767 	long: 64;
60768 	long: 64;
60769 	long: 64;
60770 	long: 64;
60771 	long: 64;
60772 	long: 64;
60773 	long: 64;
60774 	long: 64;
60775 	long: 64;
60776 	long: 64;
60777 	long: 64;
60778 	long: 64;
60779 	long: 64;
60780 	long: 64;
60781 	long: 64;
60782 	long: 64;
60783 	long: 64;
60784 	long: 64;
60785 	long: 64;
60786 	long: 64;
60787 	long: 64;
60788 	long: 64;
60789 	long: 64;
60790 	long: 64;
60791 	long: 64;
60792 	long: 64;
60793 	long: 64;
60794 	long: 64;
60795 	long: 64;
60796 	long: 64;
60797 	long: 64;
60798 	long: 64;
60799 	long: 64;
60800 	long: 64;
60801 	long: 64;
60802 	long: 64;
60803 	long: 64;
60804 	long: 64;
60805 	long: 64;
60806 	long: 64;
60807 	long: 64;
60808 	long: 64;
60809 	long: 64;
60810 	long: 64;
60811 	long: 64;
60812 	long: 64;
60813 	long: 64;
60814 	long: 64;
60815 	long: 64;
60816 	long: 64;
60817 	long: 64;
60818 	long: 64;
60819 	long: 64;
60820 	long: 64;
60821 	long: 64;
60822 	long: 64;
60823 	long: 64;
60824 	long: 64;
60825 	long: 64;
60826 	long: 64;
60827 	long: 64;
60828 	long: 64;
60829 	long: 64;
60830 	long: 64;
60831 	long: 64;
60832 	long: 64;
60833 	long: 64;
60834 	long: 64;
60835 	long: 64;
60836 	long: 64;
60837 	long: 64;
60838 	long: 64;
60839 	long: 64;
60840 	long: 64;
60841 	long: 64;
60842 	long: 64;
60843 	long: 64;
60844 	long: 64;
60845 	long: 64;
60846 	long: 64;
60847 	long: 64;
60848 	long: 64;
60849 	long: 64;
60850 	long: 64;
60851 	long: 64;
60852 	long: 64;
60853 	long: 64;
60854 	long: 64;
60855 	long: 64;
60856 	long: 64;
60857 	long: 64;
60858 	long: 64;
60859 	long: 64;
60860 	long: 64;
60861 	long: 64;
60862 	long: 64;
60863 	long: 64;
60864 	long: 64;
60865 	long: 64;
60866 	long: 64;
60867 	long: 64;
60868 	long: 64;
60869 	long: 64;
60870 	long: 64;
60871 	long: 64;
60872 	long: 64;
60873 	long: 64;
60874 	long: 64;
60875 	long: 64;
60876 	long: 64;
60877 	long: 64;
60878 	long: 64;
60879 	long: 64;
60880 	long: 64;
60881 	long: 64;
60882 	long: 64;
60883 	long: 64;
60884 	long: 64;
60885 	long: 64;
60886 	long: 64;
60887 	long: 64;
60888 	long: 64;
60889 	long: 64;
60890 	long: 64;
60891 	long: 64;
60892 	long: 64;
60893 	long: 64;
60894 	long: 64;
60895 	long: 64;
60896 	long: 64;
60897 	long: 64;
60898 	long: 64;
60899 	long: 64;
60900 	long: 64;
60901 	long: 64;
60902 	long: 64;
60903 	long: 64;
60904 	long: 64;
60905 	long: 64;
60906 	long: 64;
60907 	long: 64;
60908 	long: 64;
60909 	long: 64;
60910 	long: 64;
60911 	long: 64;
60912 	long: 64;
60913 	long: 64;
60914 	long: 64;
60915 	long: 64;
60916 	long: 64;
60917 	long: 64;
60918 	long: 64;
60919 	long: 64;
60920 	long: 64;
60921 	long: 64;
60922 	long: 64;
60923 	long: 64;
60924 	long: 64;
60925 	long: 64;
60926 	long: 64;
60927 	long: 64;
60928 	long: 64;
60929 	long: 64;
60930 	long: 64;
60931 	long: 64;
60932 	long: 64;
60933 	long: 64;
60934 	long: 64;
60935 	long: 64;
60936 	long: 64;
60937 	long: 64;
60938 	long: 64;
60939 	long: 64;
60940 	long: 64;
60941 	long: 64;
60942 	long: 64;
60943 	long: 64;
60944 	long: 64;
60945 	long: 64;
60946 	long: 64;
60947 	long: 64;
60948 	long: 64;
60949 	long: 64;
60950 	long: 64;
60951 	long: 64;
60952 	long: 64;
60953 	long: 64;
60954 	long: 64;
60955 	long: 64;
60956 	long: 64;
60957 	long: 64;
60958 	long: 64;
60959 	long: 64;
60960 	long: 64;
60961 	long: 64;
60962 	long: 64;
60963 	long: 64;
60964 	long: 64;
60965 	long: 64;
60966 	long: 64;
60967 	long: 64;
60968 	long: 64;
60969 	long: 64;
60970 	long: 64;
60971 	long: 64;
60972 	long: 64;
60973 	long: 64;
60974 	long: 64;
60975 	long: 64;
60976 	long: 64;
60977 	long: 64;
60978 	long: 64;
60979 	long: 64;
60980 	long: 64;
60981 	long: 64;
60982 	long: 64;
60983 	long: 64;
60984 	long: 64;
60985 	long: 64;
60986 	long: 64;
60987 	long: 64;
60988 	long: 64;
60989 	long: 64;
60990 	long: 64;
60991 	long: 64;
60992 	long: 64;
60993 	long: 64;
60994 	long: 64;
60995 	long: 64;
60996 	long: 64;
60997 	long: 64;
60998 	long: 64;
60999 	long: 64;
61000 	long: 64;
61001 	long: 64;
61002 	long: 64;
61003 	long: 64;
61004 	long: 64;
61005 	long: 64;
61006 	long: 64;
61007 	long: 64;
61008 	long: 64;
61009 	long: 64;
61010 	long: 64;
61011 	long: 64;
61012 	long: 64;
61013 	long: 64;
61014 	long: 64;
61015 	long: 64;
61016 	long: 64;
61017 	long: 64;
61018 	long: 64;
61019 	long: 64;
61020 	long: 64;
61021 	long: 64;
61022 	long: 64;
61023 	long: 64;
61024 	long: 64;
61025 	long: 64;
61026 	long: 64;
61027 	long: 64;
61028 	long: 64;
61029 	long: 64;
61030 	long: 64;
61031 	long: 64;
61032 	long: 64;
61033 	long: 64;
61034 	long: 64;
61035 	long: 64;
61036 	long: 64;
61037 	long: 64;
61038 	long: 64;
61039 	long: 64;
61040 	long: 64;
61041 	long: 64;
61042 	long: 64;
61043 	long: 64;
61044 	long: 64;
61045 	long: 64;
61046 	long: 64;
61047 	long: 64;
61048 	long: 64;
61049 	long: 64;
61050 	long: 64;
61051 	long: 64;
61052 	long: 64;
61053 	long: 64;
61054 	long: 64;
61055 	long: 64;
61056 	long: 64;
61057 	long: 64;
61058 	long: 64;
61059 	long: 64;
61060 	long: 64;
61061 	long: 64;
61062 	long: 64;
61063 	long: 64;
61064 	long: 64;
61065 	long: 64;
61066 	long: 64;
61067 	long: 64;
61068 	long: 64;
61069 	long: 64;
61070 	long: 64;
61071 	long: 64;
61072 	long: 64;
61073 	long: 64;
61074 	long: 64;
61075 	long: 64;
61076 	long: 64;
61077 	long: 64;
61078 	long: 64;
61079 	long: 64;
61080 	long: 64;
61081 	long: 64;
61082 	long: 64;
61083 	long: 64;
61084 	long: 64;
61085 	long: 64;
61086 	long: 64;
61087 	long: 64;
61088 	long: 64;
61089 	long: 64;
61090 	long: 64;
61091 	long: 64;
61092 	long: 64;
61093 	long: 64;
61094 	long: 64;
61095 	long: 64;
61096 	long: 64;
61097 	long: 64;
61098 	long: 64;
61099 	long: 64;
61100 	long: 64;
61101 	long: 64;
61102 	long: 64;
61103 	long: 64;
61104 	long: 64;
61105 	long: 64;
61106 	long: 64;
61107 	long: 64;
61108 	long: 64;
61109 	long: 64;
61110 	long: 64;
61111 	long: 64;
61112 	long: 64;
61113 	long: 64;
61114 	long: 64;
61115 	long: 64;
61116 	long: 64;
61117 	long: 64;
61118 	long: 64;
61119 	long: 64;
61120 	long: 64;
61121 	long: 64;
61122 	long: 64;
61123 	long: 64;
61124 	long: 64;
61125 	long: 64;
61126 	long: 64;
61127 	long: 64;
61128 	long: 64;
61129 	long: 64;
61130 	long: 64;
61131 	long: 64;
61132 	long: 64;
61133 	long: 64;
61134 	long: 64;
61135 	long: 64;
61136 	long: 64;
61137 	long: 64;
61138 	long: 64;
61139 	long: 64;
61140 	long: 64;
61141 	long: 64;
61142 	long: 64;
61143 	long: 64;
61144 	long: 64;
61145 	long: 64;
61146 	long: 64;
61147 	long: 64;
61148 	long: 64;
61149 	long: 64;
61150 	long: 64;
61151 	long: 64;
61152 	long: 64;
61153 	long: 64;
61154 	long: 64;
61155 	long: 64;
61156 	long: 64;
61157 	long: 64;
61158 	long: 64;
61159 	long: 64;
61160 	long: 64;
61161 	long: 64;
61162 	long: 64;
61163 	long: 64;
61164 	long: 64;
61165 	long: 64;
61166 	long: 64;
61167 	long: 64;
61168 	long: 64;
61169 	long: 64;
61170 	long: 64;
61171 	long: 64;
61172 	long: 64;
61173 	long: 64;
61174 	long: 64;
61175 	long: 64;
61176 	long: 64;
61177 	long: 64;
61178 	long: 64;
61179 	long: 64;
61180 	long: 64;
61181 	long: 64;
61182 	long: 64;
61183 	long: 64;
61184 	long: 64;
61185 	long: 64;
61186 	long: 64;
61187 	long: 64;
61188 	long: 64;
61189 	long: 64;
61190 	long: 64;
61191 	long: 64;
61192 	long: 64;
61193 	long: 64;
61194 	long: 64;
61195 	long: 64;
61196 	long: 64;
61197 	long: 64;
61198 	long: 64;
61199 	long: 64;
61200 	long: 64;
61201 	long: 64;
61202 	long: 64;
61203 	long: 64;
61204 	long: 64;
61205 	long: 64;
61206 	long: 64;
61207 	long: 64;
61208 	long: 64;
61209 	long: 64;
61210 	long: 64;
61211 	long: 64;
61212 	long: 64;
61213 	long: 64;
61214 	long: 64;
61215 	long: 64;
61216 	long: 64;
61217 	long: 64;
61218 	long: 64;
61219 	long: 64;
61220 	long: 64;
61221 	long: 64;
61222 	long: 64;
61223 	long: 64;
61224 	long: 64;
61225 	long: 64;
61226 	long: 64;
61227 	long: 64;
61228 	long: 64;
61229 	long: 64;
61230 	long: 64;
61231 	long: 64;
61232 	long: 64;
61233 	long: 64;
61234 	long: 64;
61235 	long: 64;
61236 	long: 64;
61237 	long: 64;
61238 	long: 64;
61239 	long: 64;
61240 	long: 64;
61241 	long: 64;
61242 	long: 64;
61243 	long: 64;
61244 	long: 64;
61245 	long: 64;
61246 	long: 64;
61247 	long: 64;
61248 	long: 64;
61249 	long: 64;
61250 	long: 64;
61251 	long: 64;
61252 	long: 64;
61253 	long: 64;
61254 	long: 64;
61255 	long: 64;
61256 	long: 64;
61257 	long: 64;
61258 	long: 64;
61259 	long: 64;
61260 	long: 64;
61261 	long: 64;
61262 	long: 64;
61263 	long: 64;
61264 	long: 64;
61265 	long: 64;
61266 	long: 64;
61267 	long: 64;
61268 	long: 64;
61269 	long: 64;
61270 	long: 64;
61271 	long: 64;
61272 	long: 64;
61273 	long: 64;
61274 	long: 64;
61275 	long: 64;
61276 	long: 64;
61277 	long: 64;
61278 	long: 64;
61279 	long: 64;
61280 	long: 64;
61281 	long: 64;
61282 	long: 64;
61283 	long: 64;
61284 	long: 64;
61285 	long: 64;
61286 	long: 64;
61287 	long: 64;
61288 	long: 64;
61289 	long: 64;
61290 	long: 64;
61291 	long: 64;
61292 	long: 64;
61293 	long: 64;
61294 	long: 64;
61295 	long: 64;
61296 	long: 64;
61297 	long: 64;
61298 	long: 64;
61299 	long: 64;
61300 	long: 64;
61301 	long: 64;
61302 	long: 64;
61303 	long: 64;
61304 	long: 64;
61305 	long: 64;
61306 	long: 64;
61307 	long: 64;
61308 	long: 64;
61309 	long: 64;
61310 	long: 64;
61311 	long: 64;
61312 	long: 64;
61313 	long: 64;
61314 	long: 64;
61315 	long: 64;
61316 	long: 64;
61317 	long: 64;
61318 	long: 64;
61319 	long: 64;
61320 	long: 64;
61321 	long: 64;
61322 	long: 64;
61323 	long: 64;
61324 	long: 64;
61325 	long: 64;
61326 	long: 64;
61327 	long: 64;
61328 	long: 64;
61329 	long: 64;
61330 	long: 64;
61331 	long: 64;
61332 	long: 64;
61333 	long: 64;
61334 	long: 64;
61335 	long: 64;
61336 	long: 64;
61337 	long: 64;
61338 	long: 64;
61339 	long: 64;
61340 	long: 64;
61341 	long: 64;
61342 	long: 64;
61343 	long: 64;
61344 	long: 64;
61345 	long: 64;
61346 	long: 64;
61347 	long: 64;
61348 	long: 64;
61349 	long: 64;
61350 	long: 64;
61351 	long: 64;
61352 	long: 64;
61353 	long: 64;
61354 	long: 64;
61355 	long: 64;
61356 	long: 64;
61357 	long: 64;
61358 	long: 64;
61359 	long: 64;
61360 	long: 64;
61361 	long: 64;
61362 	long: 64;
61363 	long: 64;
61364 	long: 64;
61365 	long: 64;
61366 	long: 64;
61367 	long: 64;
61368 	long: 64;
61369 	long: 64;
61370 	long: 64;
61371 	long: 64;
61372 	long: 64;
61373 	long: 64;
61374 	long: 64;
61375 	long: 64;
61376 	long: 64;
61377 	long: 64;
61378 	long: 64;
61379 	long: 64;
61380 	long: 64;
61381 	long: 64;
61382 	long: 64;
61383 	long: 64;
61384 	long: 64;
61385 	long: 64;
61386 	long: 64;
61387 	long: 64;
61388 	long: 64;
61389 	long: 64;
61390 	long: 64;
61391 	long: 64;
61392 	long: 64;
61393 	long: 64;
61394 	long: 64;
61395 	long: 64;
61396 	long: 64;
61397 	long: 64;
61398 	long: 64;
61399 	long: 64;
61400 	long: 64;
61401 	long: 64;
61402 	long: 64;
61403 	long: 64;
61404 	long: 64;
61405 	long: 64;
61406 	long: 64;
61407 	long: 64;
61408 	long: 64;
61409 	long: 64;
61410 	long: 64;
61411 	long: 64;
61412 	long: 64;
61413 	long: 64;
61414 	long: 64;
61415 	long: 64;
61416 	long: 64;
61417 	long: 64;
61418 	long: 64;
61419 	long: 64;
61420 	long: 64;
61421 	long: 64;
61422 	long: 64;
61423 	long: 64;
61424 	long: 64;
61425 	long: 64;
61426 	long: 64;
61427 	long: 64;
61428 	long: 64;
61429 	long: 64;
61430 	long: 64;
61431 	long: 64;
61432 	long: 64;
61433 	long: 64;
61434 	long: 64;
61435 	long: 64;
61436 	long: 64;
61437 	long: 64;
61438 	long: 64;
61439 	long: 64;
61440 	long: 64;
61441 	long: 64;
61442 	long: 64;
61443 	long: 64;
61444 	long: 64;
61445 	long: 64;
61446 	long: 64;
61447 	long: 64;
61448 	long: 64;
61449 	long: 64;
61450 	long: 64;
61451 	long: 64;
61452 	long: 64;
61453 	long: 64;
61454 	long: 64;
61455 	long: 64;
61456 	long: 64;
61457 	long: 64;
61458 	long: 64;
61459 	long: 64;
61460 	long: 64;
61461 	long: 64;
61462 	long: 64;
61463 	long: 64;
61464 	long: 64;
61465 	long: 64;
61466 	long: 64;
61467 	long: 64;
61468 	long: 64;
61469 	long: 64;
61470 	long: 64;
61471 	long: 64;
61472 	long: 64;
61473 	long: 64;
61474 	long: 64;
61475 	long: 64;
61476 	long: 64;
61477 	long: 64;
61478 	long: 64;
61479 	long: 64;
61480 	long: 64;
61481 	long: 64;
61482 	long: 64;
61483 	long: 64;
61484 	long: 64;
61485 	long: 64;
61486 	long: 64;
61487 	long: 64;
61488 	long: 64;
61489 	long: 64;
61490 	long: 64;
61491 	long: 64;
61492 	long: 64;
61493 	long: 64;
61494 	long: 64;
61495 	long: 64;
61496 	long: 64;
61497 	long: 64;
61498 	long: 64;
61499 	long: 64;
61500 	long: 64;
61501 	long: 64;
61502 	long: 64;
61503 	long: 64;
61504 	long: 64;
61505 	long: 64;
61506 	long: 64;
61507 	long: 64;
61508 	long: 64;
61509 	long: 64;
61510 	long: 64;
61511 	long: 64;
61512 	long: 64;
61513 	long: 64;
61514 	long: 64;
61515 	long: 64;
61516 	long: 64;
61517 	long: 64;
61518 	long: 64;
61519 	long: 64;
61520 	long: 64;
61521 	long: 64;
61522 	long: 64;
61523 	long: 64;
61524 	long: 64;
61525 	long: 64;
61526 	long: 64;
61527 	long: 64;
61528 	long: 64;
61529 	long: 64;
61530 	long: 64;
61531 	long: 64;
61532 	long: 64;
61533 	long: 64;
61534 	long: 64;
61535 	long: 64;
61536 	long: 64;
61537 	long: 64;
61538 	long: 64;
61539 	long: 64;
61540 	long: 64;
61541 	long: 64;
61542 	long: 64;
61543 	long: 64;
61544 	long: 64;
61545 	long: 64;
61546 	long: 64;
61547 	long: 64;
61548 	long: 64;
61549 	long: 64;
61550 	long: 64;
61551 	long: 64;
61552 	long: 64;
61553 	long: 64;
61554 	long: 64;
61555 	long: 64;
61556 	long: 64;
61557 	long: 64;
61558 	long: 64;
61559 	long: 64;
61560 	long: 64;
61561 	long: 64;
61562 	long: 64;
61563 	long: 64;
61564 	long: 64;
61565 	long: 64;
61566 	long: 64;
61567 	long: 64;
61568 	long: 64;
61569 	long: 64;
61570 	long: 64;
61571 	long: 64;
61572 	long: 64;
61573 	long: 64;
61574 	long: 64;
61575 	long: 64;
61576 	long: 64;
61577 	long: 64;
61578 	long: 64;
61579 	long: 64;
61580 	long: 64;
61581 	long: 64;
61582 	long: 64;
61583 	long: 64;
61584 	long: 64;
61585 	long: 64;
61586 	long: 64;
61587 	long: 64;
61588 	long: 64;
61589 	long: 64;
61590 	long: 64;
61591 	long: 64;
61592 	long: 64;
61593 	long: 64;
61594 	long: 64;
61595 	long: 64;
61596 	long: 64;
61597 	long: 64;
61598 	long: 64;
61599 	long: 64;
61600 	long: 64;
61601 	long: 64;
61602 	long: 64;
61603 	long: 64;
61604 	long: 64;
61605 	long: 64;
61606 	long: 64;
61607 	long: 64;
61608 	long: 64;
61609 	long: 64;
61610 	long: 64;
61611 	long: 64;
61612 	long: 64;
61613 	long: 64;
61614 	long: 64;
61615 	long: 64;
61616 	long: 64;
61617 	long: 64;
61618 	long: 64;
61619 	long: 64;
61620 	long: 64;
61621 	long: 64;
61622 	long: 64;
61623 	long: 64;
61624 	long: 64;
61625 	long: 64;
61626 	long: 64;
61627 	long: 64;
61628 	long: 64;
61629 	long: 64;
61630 	long: 64;
61631 	long: 64;
61632 	long: 64;
61633 	long: 64;
61634 	long: 64;
61635 	long: 64;
61636 	long: 64;
61637 	long: 64;
61638 	long: 64;
61639 	long: 64;
61640 	long: 64;
61641 	long: 64;
61642 	long: 64;
61643 	long: 64;
61644 	long: 64;
61645 	long: 64;
61646 	long: 64;
61647 	long: 64;
61648 	long: 64;
61649 	long: 64;
61650 	long: 64;
61651 	long: 64;
61652 	long: 64;
61653 	long: 64;
61654 	long: 64;
61655 	long: 64;
61656 	long: 64;
61657 	long: 64;
61658 	long: 64;
61659 	long: 64;
61660 	long: 64;
61661 	long: 64;
61662 	long: 64;
61663 	long: 64;
61664 	long: 64;
61665 	long: 64;
61666 	long: 64;
61667 	long: 64;
61668 	long: 64;
61669 	long: 64;
61670 	long: 64;
61671 	long: 64;
61672 	long: 64;
61673 	long: 64;
61674 	long: 64;
61675 	long: 64;
61676 	long: 64;
61677 	long: 64;
61678 	long: 64;
61679 	long: 64;
61680 	long: 64;
61681 	long: 64;
61682 	long: 64;
61683 	long: 64;
61684 	long: 64;
61685 	long: 64;
61686 	long: 64;
61687 	long: 64;
61688 	long: 64;
61689 	long: 64;
61690 	long: 64;
61691 	long: 64;
61692 	long: 64;
61693 	long: 64;
61694 	long: 64;
61695 	long: 64;
61696 	long: 64;
61697 	long: 64;
61698 	long: 64;
61699 	long: 64;
61700 	long: 64;
61701 	long: 64;
61702 	long: 64;
61703 	long: 64;
61704 	long: 64;
61705 	long: 64;
61706 	long: 64;
61707 	long: 64;
61708 	long: 64;
61709 	long: 64;
61710 	long: 64;
61711 	long: 64;
61712 	long: 64;
61713 	long: 64;
61714 	long: 64;
61715 	long: 64;
61716 	long: 64;
61717 	long: 64;
61718 	long: 64;
61719 	long: 64;
61720 	long: 64;
61721 	long: 64;
61722 	long: 64;
61723 	long: 64;
61724 	long: 64;
61725 	long: 64;
61726 	long: 64;
61727 	long: 64;
61728 	long: 64;
61729 	long: 64;
61730 	long: 64;
61731 	long: 64;
61732 	long: 64;
61733 	long: 64;
61734 	long: 64;
61735 	long: 64;
61736 	long: 64;
61737 	long: 64;
61738 	long: 64;
61739 	long: 64;
61740 	long: 64;
61741 	long: 64;
61742 	long: 64;
61743 	long: 64;
61744 	long: 64;
61745 	long: 64;
61746 	long: 64;
61747 	long: 64;
61748 	long: 64;
61749 	long: 64;
61750 	long: 64;
61751 	long: 64;
61752 	long: 64;
61753 	long: 64;
61754 	long: 64;
61755 	long: 64;
61756 	long: 64;
61757 	long: 64;
61758 	long: 64;
61759 	long: 64;
61760 	long: 64;
61761 	long: 64;
61762 	long: 64;
61763 	long: 64;
61764 	long: 64;
61765 	long: 64;
61766 	long: 64;
61767 	long: 64;
61768 	long: 64;
61769 	long: 64;
61770 	long: 64;
61771 	long: 64;
61772 	long: 64;
61773 	long: 64;
61774 	long: 64;
61775 	long: 64;
61776 	long: 64;
61777 	long: 64;
61778 	long: 64;
61779 	long: 64;
61780 	long: 64;
61781 	long: 64;
61782 	long: 64;
61783 	long: 64;
61784 	long: 64;
61785 	long: 64;
61786 	long: 64;
61787 	long: 64;
61788 	long: 64;
61789 	long: 64;
61790 	long: 64;
61791 	long: 64;
61792 	long: 64;
61793 	long: 64;
61794 	long: 64;
61795 	long: 64;
61796 	long: 64;
61797 	long: 64;
61798 	long: 64;
61799 	long: 64;
61800 	long: 64;
61801 	long: 64;
61802 	long: 64;
61803 	long: 64;
61804 	long: 64;
61805 	long: 64;
61806 	long: 64;
61807 	long: 64;
61808 	long: 64;
61809 	long: 64;
61810 	long: 64;
61811 	long: 64;
61812 	long: 64;
61813 	long: 64;
61814 	long: 64;
61815 	long: 64;
61816 	long: 64;
61817 	long: 64;
61818 	long: 64;
61819 	long: 64;
61820 	long: 64;
61821 	long: 64;
61822 	long: 64;
61823 	long: 64;
61824 	long: 64;
61825 	long: 64;
61826 	long: 64;
61827 	long: 64;
61828 	long: 64;
61829 	long: 64;
61830 	long: 64;
61831 	long: 64;
61832 	long: 64;
61833 	long: 64;
61834 	long: 64;
61835 	long: 64;
61836 	long: 64;
61837 	long: 64;
61838 	long: 64;
61839 	long: 64;
61840 	long: 64;
61841 	long: 64;
61842 	long: 64;
61843 	long: 64;
61844 	long: 64;
61845 	long: 64;
61846 	long: 64;
61847 	long: 64;
61848 	long: 64;
61849 	long: 64;
61850 	long: 64;
61851 	long: 64;
61852 	long: 64;
61853 	long: 64;
61854 	long: 64;
61855 	long: 64;
61856 	long: 64;
61857 	long: 64;
61858 	long: 64;
61859 	long: 64;
61860 	long: 64;
61861 	long: 64;
61862 	long: 64;
61863 	long: 64;
61864 	long: 64;
61865 	long: 64;
61866 	long: 64;
61867 	long: 64;
61868 	long: 64;
61869 	long: 64;
61870 	long: 64;
61871 	long: 64;
61872 	long: 64;
61873 	long: 64;
61874 	long: 64;
61875 	long: 64;
61876 	long: 64;
61877 	long: 64;
61878 	long: 64;
61879 	long: 64;
61880 	long: 64;
61881 	long: 64;
61882 	long: 64;
61883 	long: 64;
61884 	long: 64;
61885 	long: 64;
61886 	long: 64;
61887 	long: 64;
61888 	long: 64;
61889 	long: 64;
61890 	long: 64;
61891 	long: 64;
61892 	long: 64;
61893 	long: 64;
61894 	long: 64;
61895 	long: 64;
61896 	long: 64;
61897 	long: 64;
61898 	long: 64;
61899 	long: 64;
61900 	long: 64;
61901 	long: 64;
61902 	long: 64;
61903 	long: 64;
61904 	long: 64;
61905 	long: 64;
61906 	long: 64;
61907 	long: 64;
61908 	long: 64;
61909 	long: 64;
61910 	long: 64;
61911 	long: 64;
61912 	long: 64;
61913 	long: 64;
61914 	long: 64;
61915 	long: 64;
61916 	long: 64;
61917 	long: 64;
61918 	long: 64;
61919 	long: 64;
61920 	long: 64;
61921 	long: 64;
61922 	long: 64;
61923 	long: 64;
61924 	long: 64;
61925 	long: 64;
61926 	long: 64;
61927 	long: 64;
61928 	long: 64;
61929 	long: 64;
61930 	long: 64;
61931 	long: 64;
61932 	long: 64;
61933 	long: 64;
61934 	long: 64;
61935 	long: 64;
61936 	long: 64;
61937 	long: 64;
61938 	long: 64;
61939 	long: 64;
61940 	long: 64;
61941 	long: 64;
61942 	long: 64;
61943 	long: 64;
61944 	long: 64;
61945 	long: 64;
61946 	long: 64;
61947 	long: 64;
61948 	long: 64;
61949 	long: 64;
61950 	long: 64;
61951 	long: 64;
61952 	long: 64;
61953 	long: 64;
61954 	long: 64;
61955 	long: 64;
61956 	long: 64;
61957 	long: 64;
61958 	long: 64;
61959 	long: 64;
61960 	long: 64;
61961 	long: 64;
61962 	long: 64;
61963 	long: 64;
61964 	long: 64;
61965 	long: 64;
61966 	long: 64;
61967 	long: 64;
61968 	long: 64;
61969 	long: 64;
61970 	long: 64;
61971 	long: 64;
61972 	long: 64;
61973 	long: 64;
61974 	long: 64;
61975 	long: 64;
61976 	long: 64;
61977 	long: 64;
61978 	long: 64;
61979 	long: 64;
61980 	long: 64;
61981 	long: 64;
61982 	long: 64;
61983 	long: 64;
61984 	long: 64;
61985 	long: 64;
61986 	long: 64;
61987 	long: 64;
61988 	long: 64;
61989 	long: 64;
61990 	long: 64;
61991 	long: 64;
61992 	long: 64;
61993 	long: 64;
61994 	long: 64;
61995 	long: 64;
61996 	long: 64;
61997 	long: 64;
61998 	long: 64;
61999 	long: 64;
62000 	long: 64;
62001 	long: 64;
62002 	long: 64;
62003 	long: 64;
62004 	long: 64;
62005 	long: 64;
62006 	long: 64;
62007 	long: 64;
62008 	long: 64;
62009 	long: 64;
62010 	long: 64;
62011 	long: 64;
62012 	long: 64;
62013 	long: 64;
62014 	long: 64;
62015 	long: 64;
62016 	long: 64;
62017 	long: 64;
62018 	long: 64;
62019 	long: 64;
62020 	long: 64;
62021 	long: 64;
62022 	long: 64;
62023 	long: 64;
62024 	long: 64;
62025 	long: 64;
62026 	long: 64;
62027 	long: 64;
62028 	long: 64;
62029 	long: 64;
62030 	long: 64;
62031 	long: 64;
62032 	long: 64;
62033 	long: 64;
62034 	long: 64;
62035 	long: 64;
62036 	long: 64;
62037 	long: 64;
62038 	long: 64;
62039 	long: 64;
62040 	long: 64;
62041 	long: 64;
62042 	long: 64;
62043 	long: 64;
62044 	long: 64;
62045 	long: 64;
62046 	long: 64;
62047 	long: 64;
62048 	long: 64;
62049 	long: 64;
62050 	long: 64;
62051 	long: 64;
62052 	long: 64;
62053 	long: 64;
62054 	long: 64;
62055 	long: 64;
62056 	long: 64;
62057 	long: 64;
62058 	long: 64;
62059 	long: 64;
62060 	long: 64;
62061 	long: 64;
62062 	long: 64;
62063 	long: 64;
62064 	long: 64;
62065 	long: 64;
62066 	long: 64;
62067 	long: 64;
62068 	long: 64;
62069 	long: 64;
62070 	long: 64;
62071 	long: 64;
62072 	long: 64;
62073 	long: 64;
62074 	long: 64;
62075 	long: 64;
62076 	long: 64;
62077 	long: 64;
62078 	long: 64;
62079 	long: 64;
62080 	long: 64;
62081 	long: 64;
62082 	long: 64;
62083 	long: 64;
62084 	long: 64;
62085 	long: 64;
62086 	long: 64;
62087 	long: 64;
62088 	long: 64;
62089 	long: 64;
62090 	long: 64;
62091 	long: 64;
62092 	long: 64;
62093 	long: 64;
62094 	long: 64;
62095 	long: 64;
62096 	long: 64;
62097 	long: 64;
62098 	long: 64;
62099 	long: 64;
62100 	long: 64;
62101 	long: 64;
62102 	long: 64;
62103 	long: 64;
62104 	long: 64;
62105 	long: 64;
62106 	long: 64;
62107 	long: 64;
62108 	long: 64;
62109 	long: 64;
62110 	long: 64;
62111 	long: 64;
62112 	long: 64;
62113 	long: 64;
62114 	long: 64;
62115 	long: 64;
62116 	long: 64;
62117 	long: 64;
62118 	long: 64;
62119 	long: 64;
62120 	long: 64;
62121 	long: 64;
62122 	long: 64;
62123 	long: 64;
62124 	long: 64;
62125 	long: 64;
62126 	long: 64;
62127 	long: 64;
62128 	long: 64;
62129 	long: 64;
62130 	long: 64;
62131 	long: 64;
62132 	long: 64;
62133 	long: 64;
62134 	long: 64;
62135 	long: 64;
62136 	long: 64;
62137 	long: 64;
62138 	long: 64;
62139 	long: 64;
62140 	long: 64;
62141 	long: 64;
62142 	long: 64;
62143 	long: 64;
62144 	long: 64;
62145 	long: 64;
62146 	long: 64;
62147 	long: 64;
62148 	long: 64;
62149 	long: 64;
62150 	long: 64;
62151 	long: 64;
62152 	long: 64;
62153 	long: 64;
62154 	long: 64;
62155 	long: 64;
62156 	long: 64;
62157 	long: 64;
62158 	long: 64;
62159 	long: 64;
62160 	long: 64;
62161 	long: 64;
62162 	long: 64;
62163 	long: 64;
62164 	long: 64;
62165 	long: 64;
62166 	long: 64;
62167 	long: 64;
62168 	long: 64;
62169 	long: 64;
62170 	long: 64;
62171 	long: 64;
62172 	long: 64;
62173 	long: 64;
62174 	long: 64;
62175 	long: 64;
62176 	long: 64;
62177 	long: 64;
62178 	long: 64;
62179 	long: 64;
62180 	long: 64;
62181 	long: 64;
62182 	long: 64;
62183 	long: 64;
62184 	long: 64;
62185 	long: 64;
62186 	long: 64;
62187 	long: 64;
62188 	long: 64;
62189 	long: 64;
62190 	long: 64;
62191 	long: 64;
62192 	long: 64;
62193 	long: 64;
62194 	long: 64;
62195 	long: 64;
62196 	long: 64;
62197 	long: 64;
62198 	long: 64;
62199 	long: 64;
62200 	long: 64;
62201 	long: 64;
62202 	long: 64;
62203 	long: 64;
62204 	long: 64;
62205 	long: 64;
62206 	long: 64;
62207 	long: 64;
62208 	long: 64;
62209 	long: 64;
62210 	long: 64;
62211 	long: 64;
62212 	long: 64;
62213 	long: 64;
62214 	long: 64;
62215 	long: 64;
62216 	long: 64;
62217 	long: 64;
62218 	long: 64;
62219 	long: 64;
62220 	long: 64;
62221 	long: 64;
62222 	long: 64;
62223 	long: 64;
62224 	long: 64;
62225 	long: 64;
62226 	long: 64;
62227 	long: 64;
62228 	long: 64;
62229 	long: 64;
62230 	long: 64;
62231 	long: 64;
62232 	long: 64;
62233 	long: 64;
62234 	long: 64;
62235 	long: 64;
62236 	long: 64;
62237 	long: 64;
62238 	long: 64;
62239 	long: 64;
62240 	long: 64;
62241 	long: 64;
62242 	long: 64;
62243 	long: 64;
62244 	long: 64;
62245 	long: 64;
62246 	long: 64;
62247 	long: 64;
62248 	long: 64;
62249 	long: 64;
62250 	long: 64;
62251 	long: 64;
62252 	long: 64;
62253 	long: 64;
62254 	long: 64;
62255 	long: 64;
62256 	long: 64;
62257 	long: 64;
62258 	long: 64;
62259 	long: 64;
62260 	long: 64;
62261 	long: 64;
62262 	long: 64;
62263 	long: 64;
62264 	long: 64;
62265 	long: 64;
62266 	long: 64;
62267 	long: 64;
62268 	long: 64;
62269 	long: 64;
62270 	long: 64;
62271 	long: 64;
62272 	long: 64;
62273 	long: 64;
62274 	long: 64;
62275 	long: 64;
62276 	long: 64;
62277 	long: 64;
62278 	long: 64;
62279 	long: 64;
62280 	long: 64;
62281 	long: 64;
62282 	long: 64;
62283 	long: 64;
62284 	long: 64;
62285 	long: 64;
62286 	long: 64;
62287 	long: 64;
62288 	long: 64;
62289 	long: 64;
62290 	long: 64;
62291 	long: 64;
62292 	long: 64;
62293 	long: 64;
62294 	long: 64;
62295 	long: 64;
62296 	long: 64;
62297 	long: 64;
62298 	long: 64;
62299 	long: 64;
62300 	long: 64;
62301 	long: 64;
62302 	long: 64;
62303 	long: 64;
62304 	long: 64;
62305 	long: 64;
62306 	long: 64;
62307 	long: 64;
62308 	long: 64;
62309 	long: 64;
62310 	long: 64;
62311 	long: 64;
62312 	long: 64;
62313 	long: 64;
62314 	long: 64;
62315 	long: 64;
62316 	long: 64;
62317 	long: 64;
62318 	long: 64;
62319 	long: 64;
62320 	long: 64;
62321 	long: 64;
62322 	long: 64;
62323 	long: 64;
62324 	long: 64;
62325 	long: 64;
62326 	long: 64;
62327 	long: 64;
62328 	long: 64;
62329 	long: 64;
62330 	long: 64;
62331 	long: 64;
62332 	long: 64;
62333 	long: 64;
62334 	long: 64;
62335 	long: 64;
62336 	long: 64;
62337 	long: 64;
62338 	long: 64;
62339 	long: 64;
62340 	long: 64;
62341 	long: 64;
62342 	long: 64;
62343 	long: 64;
62344 	long: 64;
62345 	long: 64;
62346 	long: 64;
62347 	long: 64;
62348 	long: 64;
62349 	long: 64;
62350 	long: 64;
62351 	long: 64;
62352 	long: 64;
62353 	long: 64;
62354 	long: 64;
62355 	long: 64;
62356 	long: 64;
62357 	long: 64;
62358 	long: 64;
62359 	long: 64;
62360 	long: 64;
62361 	long: 64;
62362 	long: 64;
62363 	long: 64;
62364 	long: 64;
62365 	long: 64;
62366 	long: 64;
62367 	long: 64;
62368 	long: 64;
62369 	long: 64;
62370 	long: 64;
62371 	long: 64;
62372 	long: 64;
62373 	long: 64;
62374 	long: 64;
62375 	long: 64;
62376 	long: 64;
62377 	long: 64;
62378 	long: 64;
62379 	long: 64;
62380 	long: 64;
62381 	long: 64;
62382 	long: 64;
62383 	long: 64;
62384 	long: 64;
62385 	long: 64;
62386 	long: 64;
62387 	long: 64;
62388 	long: 64;
62389 	long: 64;
62390 	long: 64;
62391 	long: 64;
62392 	long: 64;
62393 	long: 64;
62394 	long: 64;
62395 	long: 64;
62396 	long: 64;
62397 	long: 64;
62398 	long: 64;
62399 	long: 64;
62400 	long: 64;
62401 	long: 64;
62402 	long: 64;
62403 	long: 64;
62404 	long: 64;
62405 	long: 64;
62406 	long: 64;
62407 	long: 64;
62408 	long: 64;
62409 	long: 64;
62410 	long: 64;
62411 	long: 64;
62412 	long: 64;
62413 	long: 64;
62414 	long: 64;
62415 	long: 64;
62416 	long: 64;
62417 	long: 64;
62418 	long: 64;
62419 	long: 64;
62420 	long: 64;
62421 	long: 64;
62422 	long: 64;
62423 	long: 64;
62424 	long: 64;
62425 	long: 64;
62426 	long: 64;
62427 	long: 64;
62428 	long: 64;
62429 	long: 64;
62430 	long: 64;
62431 	long: 64;
62432 	long: 64;
62433 	long: 64;
62434 	long: 64;
62435 	long: 64;
62436 	long: 64;
62437 	long: 64;
62438 	long: 64;
62439 	long: 64;
62440 	long: 64;
62441 	long: 64;
62442 	long: 64;
62443 	long: 64;
62444 	long: 64;
62445 	long: 64;
62446 	long: 64;
62447 	long: 64;
62448 	long: 64;
62449 	long: 64;
62450 	long: 64;
62451 	long: 64;
62452 	long: 64;
62453 	long: 64;
62454 	long: 64;
62455 	long: 64;
62456 	long: 64;
62457 	long: 64;
62458 	long: 64;
62459 	long: 64;
62460 	long: 64;
62461 	long: 64;
62462 	long: 64;
62463 	long: 64;
62464 	long: 64;
62465 	long: 64;
62466 	long: 64;
62467 	long: 64;
62468 	long: 64;
62469 	long: 64;
62470 	long: 64;
62471 	long: 64;
62472 	long: 64;
62473 	long: 64;
62474 	long: 64;
62475 	long: 64;
62476 	long: 64;
62477 	long: 64;
62478 	long: 64;
62479 	long: 64;
62480 	long: 64;
62481 	long: 64;
62482 	long: 64;
62483 	long: 64;
62484 	long: 64;
62485 	long: 64;
62486 	long: 64;
62487 	long: 64;
62488 	long: 64;
62489 	long: 64;
62490 	long: 64;
62491 	long: 64;
62492 	long: 64;
62493 	long: 64;
62494 	long: 64;
62495 	long: 64;
62496 	long: 64;
62497 	long: 64;
62498 	long: 64;
62499 	long: 64;
62500 	long: 64;
62501 	long: 64;
62502 	long: 64;
62503 	long: 64;
62504 	long: 64;
62505 	long: 64;
62506 	long: 64;
62507 	long: 64;
62508 	long: 64;
62509 	long: 64;
62510 	long: 64;
62511 	long: 64;
62512 	long: 64;
62513 	long: 64;
62514 	long: 64;
62515 	long: 64;
62516 	long: 64;
62517 	long: 64;
62518 	long: 64;
62519 	long: 64;
62520 	long: 64;
62521 	long: 64;
62522 	long: 64;
62523 	long: 64;
62524 	long: 64;
62525 	long: 64;
62526 	long: 64;
62527 	long: 64;
62528 	long: 64;
62529 	long: 64;
62530 	long: 64;
62531 	long: 64;
62532 	long: 64;
62533 	long: 64;
62534 	long: 64;
62535 	long: 64;
62536 	long: 64;
62537 	long: 64;
62538 	long: 64;
62539 	long: 64;
62540 	long: 64;
62541 	long: 64;
62542 	long: 64;
62543 	long: 64;
62544 	long: 64;
62545 	long: 64;
62546 	long: 64;
62547 	long: 64;
62548 	long: 64;
62549 	long: 64;
62550 	long: 64;
62551 	long: 64;
62552 	long: 64;
62553 	long: 64;
62554 	long: 64;
62555 	long: 64;
62556 	long: 64;
62557 	long: 64;
62558 	long: 64;
62559 	long: 64;
62560 	long: 64;
62561 	long: 64;
62562 	long: 64;
62563 	long: 64;
62564 	long: 64;
62565 	long: 64;
62566 	long: 64;
62567 	long: 64;
62568 	long: 64;
62569 	long: 64;
62570 	long: 64;
62571 	long: 64;
62572 	long: 64;
62573 	long: 64;
62574 	long: 64;
62575 	long: 64;
62576 	long: 64;
62577 	long: 64;
62578 	long: 64;
62579 	long: 64;
62580 	long: 64;
62581 	long: 64;
62582 	long: 64;
62583 	long: 64;
62584 	long: 64;
62585 	long: 64;
62586 	long: 64;
62587 	long: 64;
62588 	long: 64;
62589 	long: 64;
62590 	long: 64;
62591 	long: 64;
62592 	long: 64;
62593 	long: 64;
62594 	long: 64;
62595 	long: 64;
62596 	long: 64;
62597 	long: 64;
62598 	long: 64;
62599 	long: 64;
62600 	long: 64;
62601 	long: 64;
62602 	long: 64;
62603 	long: 64;
62604 	long: 64;
62605 	long: 64;
62606 	long: 64;
62607 	long: 64;
62608 	long: 64;
62609 	long: 64;
62610 	long: 64;
62611 	long: 64;
62612 	long: 64;
62613 	long: 64;
62614 	long: 64;
62615 	long: 64;
62616 	long: 64;
62617 	long: 64;
62618 	long: 64;
62619 	long: 64;
62620 	long: 64;
62621 	long: 64;
62622 	long: 64;
62623 	long: 64;
62624 	long: 64;
62625 	long: 64;
62626 	long: 64;
62627 	long: 64;
62628 	long: 64;
62629 	long: 64;
62630 	long: 64;
62631 	long: 64;
62632 	long: 64;
62633 	long: 64;
62634 	long: 64;
62635 	long: 64;
62636 	long: 64;
62637 	long: 64;
62638 	long: 64;
62639 	long: 64;
62640 	long: 64;
62641 	long: 64;
62642 	long: 64;
62643 	long: 64;
62644 	long: 64;
62645 	long: 64;
62646 	long: 64;
62647 	long: 64;
62648 	long: 64;
62649 	long: 64;
62650 	long: 64;
62651 	long: 64;
62652 	long: 64;
62653 	long: 64;
62654 	long: 64;
62655 	long: 64;
62656 	long: 64;
62657 	long: 64;
62658 	long: 64;
62659 	long: 64;
62660 	long: 64;
62661 	long: 64;
62662 	long: 64;
62663 	long: 64;
62664 	long: 64;
62665 	long: 64;
62666 	long: 64;
62667 	long: 64;
62668 	long: 64;
62669 	long: 64;
62670 	long: 64;
62671 	long: 64;
62672 	long: 64;
62673 	long: 64;
62674 	long: 64;
62675 	long: 64;
62676 	long: 64;
62677 	long: 64;
62678 	long: 64;
62679 	long: 64;
62680 	long: 64;
62681 	long: 64;
62682 	long: 64;
62683 	long: 64;
62684 	long: 64;
62685 	long: 64;
62686 	long: 64;
62687 	long: 64;
62688 	long: 64;
62689 	long: 64;
62690 	long: 64;
62691 	long: 64;
62692 	long: 64;
62693 	long: 64;
62694 	long: 64;
62695 	long: 64;
62696 	long: 64;
62697 	long: 64;
62698 	long: 64;
62699 	long: 64;
62700 	long: 64;
62701 	long: 64;
62702 	long: 64;
62703 	long: 64;
62704 	long: 64;
62705 	long: 64;
62706 	long: 64;
62707 	long: 64;
62708 	long: 64;
62709 	long: 64;
62710 	long: 64;
62711 	long: 64;
62712 	long: 64;
62713 	long: 64;
62714 	long: 64;
62715 	long: 64;
62716 	long: 64;
62717 	long: 64;
62718 	long: 64;
62719 	long: 64;
62720 	long: 64;
62721 	long: 64;
62722 	long: 64;
62723 	long: 64;
62724 	long: 64;
62725 	long: 64;
62726 	long: 64;
62727 	long: 64;
62728 	long: 64;
62729 	long: 64;
62730 	long: 64;
62731 	long: 64;
62732 	long: 64;
62733 	long: 64;
62734 	long: 64;
62735 	long: 64;
62736 	long: 64;
62737 	long: 64;
62738 	long: 64;
62739 	long: 64;
62740 	long: 64;
62741 	long: 64;
62742 	long: 64;
62743 	long: 64;
62744 	long: 64;
62745 	long: 64;
62746 	long: 64;
62747 	long: 64;
62748 	long: 64;
62749 	long: 64;
62750 	long: 64;
62751 	long: 64;
62752 	long: 64;
62753 	long: 64;
62754 	long: 64;
62755 	long: 64;
62756 	long: 64;
62757 	long: 64;
62758 	long: 64;
62759 	long: 64;
62760 	long: 64;
62761 	long: 64;
62762 	long: 64;
62763 	long: 64;
62764 	long: 64;
62765 	long: 64;
62766 	long: 64;
62767 	long: 64;
62768 	long: 64;
62769 	long: 64;
62770 	long: 64;
62771 	long: 64;
62772 	long: 64;
62773 	long: 64;
62774 	long: 64;
62775 	long: 64;
62776 	long: 64;
62777 	long: 64;
62778 	long: 64;
62779 	long: 64;
62780 	long: 64;
62781 	long: 64;
62782 	long: 64;
62783 	long: 64;
62784 	long: 64;
62785 	long: 64;
62786 	long: 64;
62787 	long: 64;
62788 	long: 64;
62789 	long: 64;
62790 	long: 64;
62791 	long: 64;
62792 	long: 64;
62793 	long: 64;
62794 	long: 64;
62795 	long: 64;
62796 	long: 64;
62797 	long: 64;
62798 	long: 64;
62799 	long: 64;
62800 	long: 64;
62801 	long: 64;
62802 	long: 64;
62803 	long: 64;
62804 	long: 64;
62805 	long: 64;
62806 	long: 64;
62807 	long: 64;
62808 	long: 64;
62809 	long: 64;
62810 	long: 64;
62811 	long: 64;
62812 	long: 64;
62813 	long: 64;
62814 	long: 64;
62815 	long: 64;
62816 	long: 64;
62817 	long: 64;
62818 	long: 64;
62819 	long: 64;
62820 	long: 64;
62821 	long: 64;
62822 	long: 64;
62823 	long: 64;
62824 	long: 64;
62825 	long: 64;
62826 	long: 64;
62827 	long: 64;
62828 	long: 64;
62829 	long: 64;
62830 	long: 64;
62831 	long: 64;
62832 	long: 64;
62833 	long: 64;
62834 	long: 64;
62835 	long: 64;
62836 	long: 64;
62837 	long: 64;
62838 	long: 64;
62839 	long: 64;
62840 	long: 64;
62841 	long: 64;
62842 	long: 64;
62843 	long: 64;
62844 	long: 64;
62845 	long: 64;
62846 	long: 64;
62847 	long: 64;
62848 	long: 64;
62849 	long: 64;
62850 	long: 64;
62851 	long: 64;
62852 	long: 64;
62853 	long: 64;
62854 	long: 64;
62855 	long: 64;
62856 	long: 64;
62857 	long: 64;
62858 	long: 64;
62859 	long: 64;
62860 	long: 64;
62861 	long: 64;
62862 	long: 64;
62863 	long: 64;
62864 	long: 64;
62865 	long: 64;
62866 	long: 64;
62867 	long: 64;
62868 	long: 64;
62869 	long: 64;
62870 	long: 64;
62871 	long: 64;
62872 	long: 64;
62873 	long: 64;
62874 	long: 64;
62875 	long: 64;
62876 	long: 64;
62877 	long: 64;
62878 	long: 64;
62879 	long: 64;
62880 	long: 64;
62881 	long: 64;
62882 	long: 64;
62883 	long: 64;
62884 	long: 64;
62885 	long: 64;
62886 	long: 64;
62887 	long: 64;
62888 	long: 64;
62889 	long: 64;
62890 	long: 64;
62891 	long: 64;
62892 	long: 64;
62893 	long: 64;
62894 	long: 64;
62895 	long: 64;
62896 	long: 64;
62897 	long: 64;
62898 	long: 64;
62899 	long: 64;
62900 	long: 64;
62901 	long: 64;
62902 	long: 64;
62903 	long: 64;
62904 	long: 64;
62905 	long: 64;
62906 	long: 64;
62907 	long: 64;
62908 	long: 64;
62909 	long: 64;
62910 	long: 64;
62911 	long: 64;
62912 	long: 64;
62913 	long: 64;
62914 	long: 64;
62915 	long: 64;
62916 	long: 64;
62917 	long: 64;
62918 	long: 64;
62919 	long: 64;
62920 	long: 64;
62921 	long: 64;
62922 	long: 64;
62923 	long: 64;
62924 	long: 64;
62925 	long: 64;
62926 	long: 64;
62927 	long: 64;
62928 	long: 64;
62929 	long: 64;
62930 	long: 64;
62931 	long: 64;
62932 	long: 64;
62933 	long: 64;
62934 	long: 64;
62935 	long: 64;
62936 	long: 64;
62937 	long: 64;
62938 	long: 64;
62939 	long: 64;
62940 	long: 64;
62941 	long: 64;
62942 	long: 64;
62943 	long: 64;
62944 	long: 64;
62945 	long: 64;
62946 	long: 64;
62947 	long: 64;
62948 	long: 64;
62949 	long: 64;
62950 	long: 64;
62951 	long: 64;
62952 	long: 64;
62953 	long: 64;
62954 	long: 64;
62955 	long: 64;
62956 	long: 64;
62957 	long: 64;
62958 	long: 64;
62959 	long: 64;
62960 	long: 64;
62961 	long: 64;
62962 	long: 64;
62963 	long: 64;
62964 	long: 64;
62965 	long: 64;
62966 	long: 64;
62967 	long: 64;
62968 	long: 64;
62969 	long: 64;
62970 	long: 64;
62971 	long: 64;
62972 	long: 64;
62973 	long: 64;
62974 	long: 64;
62975 	long: 64;
62976 	long: 64;
62977 	long: 64;
62978 	long: 64;
62979 	long: 64;
62980 	long: 64;
62981 	long: 64;
62982 	long: 64;
62983 	long: 64;
62984 	long: 64;
62985 	long: 64;
62986 	long: 64;
62987 	long: 64;
62988 	long: 64;
62989 	long: 64;
62990 	long: 64;
62991 	long: 64;
62992 	long: 64;
62993 	long: 64;
62994 	long: 64;
62995 	long: 64;
62996 	long: 64;
62997 	long: 64;
62998 	long: 64;
62999 	long: 64;
63000 	long: 64;
63001 	long: 64;
63002 	long: 64;
63003 	long: 64;
63004 	long: 64;
63005 	long: 64;
63006 	long: 64;
63007 	long: 64;
63008 	long: 64;
63009 	long: 64;
63010 	long: 64;
63011 	long: 64;
63012 	long: 64;
63013 	long: 64;
63014 	long: 64;
63015 	long: 64;
63016 	long: 64;
63017 	long: 64;
63018 	long: 64;
63019 	long: 64;
63020 	long: 64;
63021 	long: 64;
63022 	long: 64;
63023 	long: 64;
63024 	long: 64;
63025 	long: 64;
63026 	long: 64;
63027 	long: 64;
63028 	long: 64;
63029 	long: 64;
63030 	long: 64;
63031 	long: 64;
63032 	long: 64;
63033 	long: 64;
63034 	long: 64;
63035 	long: 64;
63036 	long: 64;
63037 	long: 64;
63038 	long: 64;
63039 	long: 64;
63040 	long: 64;
63041 	long: 64;
63042 	long: 64;
63043 	long: 64;
63044 	long: 64;
63045 	long: 64;
63046 	long: 64;
63047 	long: 64;
63048 	long: 64;
63049 	long: 64;
63050 	long: 64;
63051 	long: 64;
63052 	long: 64;
63053 	long: 64;
63054 	long: 64;
63055 	long: 64;
63056 	long: 64;
63057 	long: 64;
63058 	long: 64;
63059 	long: 64;
63060 	long: 64;
63061 	long: 64;
63062 	long: 64;
63063 	long: 64;
63064 	long: 64;
63065 	long: 64;
63066 	long: 64;
63067 	long: 64;
63068 	long: 64;
63069 	long: 64;
63070 	long: 64;
63071 	long: 64;
63072 	long: 64;
63073 	long: 64;
63074 	long: 64;
63075 	long: 64;
63076 	long: 64;
63077 	long: 64;
63078 	long: 64;
63079 	long: 64;
63080 	long: 64;
63081 	long: 64;
63082 	long: 64;
63083 	long: 64;
63084 	long: 64;
63085 	long: 64;
63086 	long: 64;
63087 	long: 64;
63088 	long: 64;
63089 	long: 64;
63090 	long: 64;
63091 	long: 64;
63092 	long: 64;
63093 	long: 64;
63094 	long: 64;
63095 	long: 64;
63096 	long: 64;
63097 	long: 64;
63098 	long: 64;
63099 	long: 64;
63100 	long: 64;
63101 	long: 64;
63102 	long: 64;
63103 	long: 64;
63104 	long: 64;
63105 	long: 64;
63106 	long: 64;
63107 	long: 64;
63108 	long: 64;
63109 	long: 64;
63110 	long: 64;
63111 	long: 64;
63112 	long: 64;
63113 	long: 64;
63114 	long: 64;
63115 	long: 64;
63116 	long: 64;
63117 	long: 64;
63118 	long: 64;
63119 	long: 64;
63120 	long: 64;
63121 	long: 64;
63122 	long: 64;
63123 	long: 64;
63124 	long: 64;
63125 	long: 64;
63126 	long: 64;
63127 	long: 64;
63128 	long: 64;
63129 	long: 64;
63130 	long: 64;
63131 	long: 64;
63132 	long: 64;
63133 	long: 64;
63134 	long: 64;
63135 	long: 64;
63136 	long: 64;
63137 	long: 64;
63138 	long: 64;
63139 	long: 64;
63140 	long: 64;
63141 	long: 64;
63142 	long: 64;
63143 	long: 64;
63144 	long: 64;
63145 	long: 64;
63146 	long: 64;
63147 	long: 64;
63148 	long: 64;
63149 	long: 64;
63150 	long: 64;
63151 	long: 64;
63152 	long: 64;
63153 	long: 64;
63154 	long: 64;
63155 	long: 64;
63156 	long: 64;
63157 	long: 64;
63158 	long: 64;
63159 	long: 64;
63160 	long: 64;
63161 	long: 64;
63162 	long: 64;
63163 	long: 64;
63164 	long: 64;
63165 	long: 64;
63166 	long: 64;
63167 	long: 64;
63168 	long: 64;
63169 	long: 64;
63170 	long: 64;
63171 	long: 64;
63172 	long: 64;
63173 	long: 64;
63174 	long: 64;
63175 	long: 64;
63176 	long: 64;
63177 	long: 64;
63178 	long: 64;
63179 	long: 64;
63180 	long: 64;
63181 	long: 64;
63182 	long: 64;
63183 	long: 64;
63184 	long: 64;
63185 	long: 64;
63186 	long: 64;
63187 	long: 64;
63188 	long: 64;
63189 	long: 64;
63190 	long: 64;
63191 	long: 64;
63192 	long: 64;
63193 	long: 64;
63194 	long: 64;
63195 	long: 64;
63196 	long: 64;
63197 	long: 64;
63198 	long: 64;
63199 	long: 64;
63200 	long: 64;
63201 	long: 64;
63202 	long: 64;
63203 	long: 64;
63204 	long: 64;
63205 	long: 64;
63206 	long: 64;
63207 	long: 64;
63208 	long: 64;
63209 	long: 64;
63210 	long: 64;
63211 	long: 64;
63212 	long: 64;
63213 	long: 64;
63214 	long: 64;
63215 	long: 64;
63216 	long: 64;
63217 	long: 64;
63218 	long: 64;
63219 	long: 64;
63220 	long: 64;
63221 	long: 64;
63222 	long: 64;
63223 	long: 64;
63224 	long: 64;
63225 	long: 64;
63226 	long: 64;
63227 	long: 64;
63228 	long: 64;
63229 	long: 64;
63230 	long: 64;
63231 	long: 64;
63232 	long: 64;
63233 	long: 64;
63234 	long: 64;
63235 	long: 64;
63236 	long: 64;
63237 	long: 64;
63238 	long: 64;
63239 	long: 64;
63240 	long: 64;
63241 	long: 64;
63242 	long: 64;
63243 	long: 64;
63244 	long: 64;
63245 	long: 64;
63246 	long: 64;
63247 	long: 64;
63248 	long: 64;
63249 	long: 64;
63250 	long: 64;
63251 	long: 64;
63252 	long: 64;
63253 	long: 64;
63254 	long: 64;
63255 	long: 64;
63256 	long: 64;
63257 	long: 64;
63258 	long: 64;
63259 	long: 64;
63260 	long: 64;
63261 	long: 64;
63262 	long: 64;
63263 	long: 64;
63264 	long: 64;
63265 	long: 64;
63266 	long: 64;
63267 	long: 64;
63268 	long: 64;
63269 	long: 64;
63270 	long: 64;
63271 	long: 64;
63272 	long: 64;
63273 	long: 64;
63274 	long: 64;
63275 	long: 64;
63276 	long: 64;
63277 	long: 64;
63278 	long: 64;
63279 	long: 64;
63280 	long: 64;
63281 	long: 64;
63282 	long: 64;
63283 	long: 64;
63284 	long: 64;
63285 	long: 64;
63286 	long: 64;
63287 	long: 64;
63288 	long: 64;
63289 	long: 64;
63290 	long: 64;
63291 	long: 64;
63292 	long: 64;
63293 	long: 64;
63294 	long: 64;
63295 	long: 64;
63296 	long: 64;
63297 	long: 64;
63298 	long: 64;
63299 	long: 64;
63300 	long: 64;
63301 	long: 64;
63302 	long: 64;
63303 	long: 64;
63304 	long: 64;
63305 	long: 64;
63306 	long: 64;
63307 	long: 64;
63308 	long: 64;
63309 	long: 64;
63310 	long: 64;
63311 	long: 64;
63312 	long: 64;
63313 	long: 64;
63314 	long: 64;
63315 	long: 64;
63316 	long: 64;
63317 	long: 64;
63318 	long: 64;
63319 	long: 64;
63320 	long: 64;
63321 	long: 64;
63322 	long: 64;
63323 	long: 64;
63324 	long: 64;
63325 	long: 64;
63326 	long: 64;
63327 	long: 64;
63328 	long: 64;
63329 	long: 64;
63330 	long: 64;
63331 	long: 64;
63332 	long: 64;
63333 	long: 64;
63334 	long: 64;
63335 	long: 64;
63336 	long: 64;
63337 	long: 64;
63338 	long: 64;
63339 	long: 64;
63340 	long: 64;
63341 	long: 64;
63342 	long: 64;
63343 	long: 64;
63344 	long: 64;
63345 	long: 64;
63346 	long: 64;
63347 	long: 64;
63348 	long: 64;
63349 	long: 64;
63350 	long: 64;
63351 	long: 64;
63352 	long: 64;
63353 	long: 64;
63354 	long: 64;
63355 	long: 64;
63356 	long: 64;
63357 	long: 64;
63358 	long: 64;
63359 	long: 64;
63360 	long: 64;
63361 	long: 64;
63362 	long: 64;
63363 	long: 64;
63364 	long: 64;
63365 	long: 64;
63366 	long: 64;
63367 	long: 64;
63368 	long: 64;
63369 	long: 64;
63370 	long: 64;
63371 	long: 64;
63372 	long: 64;
63373 	long: 64;
63374 	long: 64;
63375 	long: 64;
63376 	long: 64;
63377 	long: 64;
63378 	long: 64;
63379 	long: 64;
63380 	long: 64;
63381 	long: 64;
63382 	long: 64;
63383 	long: 64;
63384 	long: 64;
63385 	long: 64;
63386 	long: 64;
63387 	long: 64;
63388 	long: 64;
63389 	long: 64;
63390 	long: 64;
63391 	long: 64;
63392 	long: 64;
63393 	long: 64;
63394 	long: 64;
63395 	long: 64;
63396 	long: 64;
63397 	long: 64;
63398 	long: 64;
63399 	long: 64;
63400 	long: 64;
63401 	long: 64;
63402 	long: 64;
63403 	long: 64;
63404 	long: 64;
63405 	long: 64;
63406 	long: 64;
63407 	long: 64;
63408 	long: 64;
63409 	long: 64;
63410 	long: 64;
63411 	long: 64;
63412 	long: 64;
63413 	long: 64;
63414 	long: 64;
63415 	long: 64;
63416 	long: 64;
63417 	long: 64;
63418 	long: 64;
63419 	long: 64;
63420 	long: 64;
63421 	long: 64;
63422 	long: 64;
63423 	long: 64;
63424 	long: 64;
63425 	long: 64;
63426 	long: 64;
63427 	long: 64;
63428 	long: 64;
63429 	long: 64;
63430 	long: 64;
63431 	long: 64;
63432 	long: 64;
63433 	long: 64;
63434 	long: 64;
63435 	long: 64;
63436 	long: 64;
63437 	long: 64;
63438 	long: 64;
63439 	long: 64;
63440 	long: 64;
63441 	long: 64;
63442 	long: 64;
63443 	long: 64;
63444 	long: 64;
63445 	long: 64;
63446 	long: 64;
63447 	long: 64;
63448 	long: 64;
63449 	long: 64;
63450 	long: 64;
63451 	long: 64;
63452 	long: 64;
63453 	long: 64;
63454 	long: 64;
63455 	long: 64;
63456 	long: 64;
63457 	long: 64;
63458 	long: 64;
63459 	long: 64;
63460 	long: 64;
63461 	long: 64;
63462 	long: 64;
63463 	long: 64;
63464 	long: 64;
63465 	long: 64;
63466 	long: 64;
63467 	long: 64;
63468 	long: 64;
63469 	long: 64;
63470 	long: 64;
63471 	long: 64;
63472 	long: 64;
63473 	long: 64;
63474 	long: 64;
63475 	long: 64;
63476 	long: 64;
63477 	long: 64;
63478 	long: 64;
63479 	long: 64;
63480 	long: 64;
63481 	long: 64;
63482 	long: 64;
63483 	long: 64;
63484 	long: 64;
63485 	long: 64;
63486 	long: 64;
63487 	long: 64;
63488 	long: 64;
63489 	long: 64;
63490 	long: 64;
63491 	long: 64;
63492 	long: 64;
63493 	long: 64;
63494 	long: 64;
63495 	long: 64;
63496 	long: 64;
63497 	long: 64;
63498 	long: 64;
63499 	long: 64;
63500 	long: 64;
63501 	long: 64;
63502 	long: 64;
63503 	long: 64;
63504 	long: 64;
63505 	long: 64;
63506 	long: 64;
63507 	long: 64;
63508 	long: 64;
63509 	long: 64;
63510 	long: 64;
63511 	long: 64;
63512 	long: 64;
63513 	long: 64;
63514 	long: 64;
63515 	long: 64;
63516 	long: 64;
63517 	long: 64;
63518 	long: 64;
63519 	long: 64;
63520 	long: 64;
63521 	long: 64;
63522 	long: 64;
63523 	long: 64;
63524 	long: 64;
63525 	long: 64;
63526 	long: 64;
63527 	long: 64;
63528 	long: 64;
63529 	long: 64;
63530 	long: 64;
63531 	long: 64;
63532 	long: 64;
63533 	long: 64;
63534 	long: 64;
63535 	long: 64;
63536 	long: 64;
63537 	long: 64;
63538 	long: 64;
63539 	long: 64;
63540 	long: 64;
63541 	long: 64;
63542 	long: 64;
63543 	long: 64;
63544 	long: 64;
63545 	long: 64;
63546 	long: 64;
63547 	long: 64;
63548 	long: 64;
63549 	long: 64;
63550 	long: 64;
63551 	long: 64;
63552 	long: 64;
63553 	long: 64;
63554 	long: 64;
63555 	long: 64;
63556 	long: 64;
63557 	long: 64;
63558 	long: 64;
63559 	long: 64;
63560 	long: 64;
63561 	long: 64;
63562 	long: 64;
63563 	long: 64;
63564 	long: 64;
63565 	long: 64;
63566 	long: 64;
63567 	long: 64;
63568 	long: 64;
63569 	long: 64;
63570 	long: 64;
63571 	long: 64;
63572 	long: 64;
63573 	long: 64;
63574 	long: 64;
63575 	long: 64;
63576 	long: 64;
63577 	long: 64;
63578 	long: 64;
63579 	long: 64;
63580 	long: 64;
63581 	long: 64;
63582 	long: 64;
63583 	long: 64;
63584 	long: 64;
63585 	long: 64;
63586 	long: 64;
63587 	long: 64;
63588 	long: 64;
63589 	long: 64;
63590 	long: 64;
63591 	long: 64;
63592 	long: 64;
63593 	long: 64;
63594 	long: 64;
63595 	long: 64;
63596 	long: 64;
63597 	long: 64;
63598 	long: 64;
63599 	long: 64;
63600 	long: 64;
63601 	long: 64;
63602 	long: 64;
63603 	long: 64;
63604 	long: 64;
63605 	long: 64;
63606 	long: 64;
63607 	long: 64;
63608 	long: 64;
63609 	long: 64;
63610 	long: 64;
63611 	long: 64;
63612 	long: 64;
63613 	long: 64;
63614 	long: 64;
63615 	long: 64;
63616 	long: 64;
63617 	long: 64;
63618 	long: 64;
63619 	long: 64;
63620 	long: 64;
63621 	long: 64;
63622 	long: 64;
63623 	long: 64;
63624 	long: 64;
63625 	long: 64;
63626 	long: 64;
63627 	long: 64;
63628 	long: 64;
63629 	long: 64;
63630 	long: 64;
63631 	long: 64;
63632 	long: 64;
63633 	long: 64;
63634 	long: 64;
63635 	long: 64;
63636 	long: 64;
63637 	long: 64;
63638 	long: 64;
63639 	long: 64;
63640 	long: 64;
63641 	long: 64;
63642 	long: 64;
63643 	long: 64;
63644 	long: 64;
63645 	long: 64;
63646 	long: 64;
63647 	long: 64;
63648 	long: 64;
63649 	long: 64;
63650 	long: 64;
63651 	long: 64;
63652 	long: 64;
63653 	long: 64;
63654 	long: 64;
63655 	long: 64;
63656 	long: 64;
63657 	long: 64;
63658 	long: 64;
63659 	long: 64;
63660 	long: 64;
63661 	long: 64;
63662 	long: 64;
63663 	long: 64;
63664 	long: 64;
63665 	long: 64;
63666 	long: 64;
63667 	long: 64;
63668 	long: 64;
63669 	long: 64;
63670 	long: 64;
63671 	long: 64;
63672 	long: 64;
63673 	long: 64;
63674 	long: 64;
63675 	long: 64;
63676 	long: 64;
63677 	long: 64;
63678 	long: 64;
63679 	long: 64;
63680 	long: 64;
63681 	long: 64;
63682 	long: 64;
63683 	long: 64;
63684 	long: 64;
63685 	long: 64;
63686 	long: 64;
63687 	long: 64;
63688 	long: 64;
63689 	long: 64;
63690 	long: 64;
63691 	long: 64;
63692 	long: 64;
63693 	long: 64;
63694 	long: 64;
63695 	long: 64;
63696 	long: 64;
63697 	long: 64;
63698 	long: 64;
63699 	long: 64;
63700 	long: 64;
63701 	long: 64;
63702 	long: 64;
63703 	long: 64;
63704 	long: 64;
63705 	long: 64;
63706 	long: 64;
63707 	long: 64;
63708 	long: 64;
63709 	long: 64;
63710 	long: 64;
63711 	long: 64;
63712 	long: 64;
63713 	long: 64;
63714 	long: 64;
63715 	long: 64;
63716 	long: 64;
63717 	long: 64;
63718 	long: 64;
63719 	long: 64;
63720 	long: 64;
63721 	long: 64;
63722 	long: 64;
63723 	long: 64;
63724 	long: 64;
63725 	long: 64;
63726 	long: 64;
63727 	long: 64;
63728 	long: 64;
63729 	long: 64;
63730 	long: 64;
63731 	long: 64;
63732 	long: 64;
63733 	long: 64;
63734 	long: 64;
63735 	long: 64;
63736 	long: 64;
63737 	long: 64;
63738 	long: 64;
63739 	long: 64;
63740 	long: 64;
63741 	long: 64;
63742 	long: 64;
63743 	long: 64;
63744 	long: 64;
63745 	long: 64;
63746 	long: 64;
63747 	long: 64;
63748 	long: 64;
63749 	long: 64;
63750 	long: 64;
63751 	long: 64;
63752 	long: 64;
63753 	long: 64;
63754 	long: 64;
63755 	long: 64;
63756 	long: 64;
63757 	long: 64;
63758 	long: 64;
63759 	long: 64;
63760 	long: 64;
63761 	long: 64;
63762 	long: 64;
63763 	long: 64;
63764 	long: 64;
63765 	long: 64;
63766 	long: 64;
63767 	long: 64;
63768 	long: 64;
63769 	long: 64;
63770 	long: 64;
63771 	long: 64;
63772 	long: 64;
63773 	long: 64;
63774 	long: 64;
63775 	long: 64;
63776 	long: 64;
63777 	long: 64;
63778 	long: 64;
63779 	long: 64;
63780 	long: 64;
63781 	long: 64;
63782 	long: 64;
63783 	long: 64;
63784 	long: 64;
63785 	long: 64;
63786 	long: 64;
63787 	long: 64;
63788 	long: 64;
63789 	long: 64;
63790 	long: 64;
63791 	long: 64;
63792 	long: 64;
63793 	long: 64;
63794 	long: 64;
63795 	long: 64;
63796 	long: 64;
63797 	long: 64;
63798 	long: 64;
63799 	long: 64;
63800 	long: 64;
63801 	long: 64;
63802 	long: 64;
63803 	long: 64;
63804 	long: 64;
63805 	long: 64;
63806 	long: 64;
63807 	long: 64;
63808 	long: 64;
63809 	long: 64;
63810 	long: 64;
63811 	long: 64;
63812 	long: 64;
63813 	long: 64;
63814 	long: 64;
63815 	long: 64;
63816 	long: 64;
63817 	long: 64;
63818 	long: 64;
63819 	long: 64;
63820 	long: 64;
63821 	long: 64;
63822 	long: 64;
63823 	long: 64;
63824 	long: 64;
63825 	long: 64;
63826 	long: 64;
63827 	long: 64;
63828 	long: 64;
63829 	long: 64;
63830 	long: 64;
63831 	long: 64;
63832 	long: 64;
63833 	long: 64;
63834 	long: 64;
63835 	long: 64;
63836 	long: 64;
63837 	long: 64;
63838 	long: 64;
63839 	long: 64;
63840 	long: 64;
63841 	long: 64;
63842 	long: 64;
63843 	long: 64;
63844 	long: 64;
63845 	long: 64;
63846 	long: 64;
63847 	long: 64;
63848 	long: 64;
63849 	long: 64;
63850 	long: 64;
63851 	long: 64;
63852 	long: 64;
63853 	long: 64;
63854 	long: 64;
63855 	long: 64;
63856 	long: 64;
63857 	long: 64;
63858 	long: 64;
63859 	long: 64;
63860 	long: 64;
63861 	long: 64;
63862 	long: 64;
63863 	long: 64;
63864 	long: 64;
63865 	long: 64;
63866 	long: 64;
63867 	long: 64;
63868 	long: 64;
63869 	long: 64;
63870 	long: 64;
63871 	long: 64;
63872 	long: 64;
63873 	long: 64;
63874 	long: 64;
63875 	long: 64;
63876 	long: 64;
63877 	long: 64;
63878 	long: 64;
63879 	long: 64;
63880 	long: 64;
63881 	long: 64;
63882 	long: 64;
63883 	long: 64;
63884 	long: 64;
63885 	long: 64;
63886 	long: 64;
63887 	long: 64;
63888 	long: 64;
63889 	long: 64;
63890 	long: 64;
63891 	long: 64;
63892 	long: 64;
63893 	long: 64;
63894 	long: 64;
63895 	long: 64;
63896 	long: 64;
63897 	long: 64;
63898 	long: 64;
63899 	long: 64;
63900 	long: 64;
63901 	long: 64;
63902 	long: 64;
63903 	long: 64;
63904 	long: 64;
63905 	long: 64;
63906 	long: 64;
63907 	long: 64;
63908 	long: 64;
63909 	long: 64;
63910 	long: 64;
63911 	long: 64;
63912 	long: 64;
63913 	long: 64;
63914 	long: 64;
63915 	long: 64;
63916 	long: 64;
63917 	long: 64;
63918 	long: 64;
63919 	long: 64;
63920 	long: 64;
63921 	long: 64;
63922 	long: 64;
63923 	long: 64;
63924 	long: 64;
63925 	long: 64;
63926 	long: 64;
63927 	long: 64;
63928 	long: 64;
63929 	long: 64;
63930 	long: 64;
63931 	long: 64;
63932 	long: 64;
63933 	long: 64;
63934 	long: 64;
63935 	long: 64;
63936 	long: 64;
63937 	long: 64;
63938 	long: 64;
63939 	long: 64;
63940 	long: 64;
63941 	long: 64;
63942 	long: 64;
63943 	long: 64;
63944 	long: 64;
63945 	long: 64;
63946 	long: 64;
63947 	long: 64;
63948 	long: 64;
63949 	long: 64;
63950 	long: 64;
63951 	long: 64;
63952 	long: 64;
63953 	long: 64;
63954 	long: 64;
63955 	long: 64;
63956 	long: 64;
63957 	long: 64;
63958 	long: 64;
63959 	long: 64;
63960 	long: 64;
63961 	long: 64;
63962 	long: 64;
63963 	long: 64;
63964 	long: 64;
63965 	long: 64;
63966 	long: 64;
63967 	long: 64;
63968 	long: 64;
63969 	long: 64;
63970 	long: 64;
63971 	long: 64;
63972 	long: 64;
63973 	long: 64;
63974 	long: 64;
63975 	long: 64;
63976 	long: 64;
63977 	long: 64;
63978 	long: 64;
63979 	long: 64;
63980 	long: 64;
63981 	long: 64;
63982 	long: 64;
63983 	long: 64;
63984 	long: 64;
63985 	long: 64;
63986 	long: 64;
63987 	long: 64;
63988 	long: 64;
63989 	long: 64;
63990 	long: 64;
63991 	long: 64;
63992 	long: 64;
63993 	long: 64;
63994 	long: 64;
63995 	long: 64;
63996 	long: 64;
63997 	long: 64;
63998 	long: 64;
63999 	long: 64;
64000 	long: 64;
64001 	long: 64;
64002 	long: 64;
64003 	long: 64;
64004 	long: 64;
64005 	long: 64;
64006 	long: 64;
64007 	long: 64;
64008 	long: 64;
64009 	long: 64;
64010 	long: 64;
64011 	long: 64;
64012 	long: 64;
64013 	long: 64;
64014 	long: 64;
64015 	long: 64;
64016 	long: 64;
64017 	long: 64;
64018 	long: 64;
64019 	long: 64;
64020 	long: 64;
64021 	long: 64;
64022 	long: 64;
64023 	long: 64;
64024 	long: 64;
64025 	long: 64;
64026 	long: 64;
64027 	long: 64;
64028 	long: 64;
64029 	long: 64;
64030 	long: 64;
64031 	long: 64;
64032 	long: 64;
64033 	long: 64;
64034 	long: 64;
64035 	long: 64;
64036 	long: 64;
64037 	long: 64;
64038 	long: 64;
64039 	long: 64;
64040 	long: 64;
64041 	long: 64;
64042 	long: 64;
64043 	long: 64;
64044 	long: 64;
64045 	long: 64;
64046 	long: 64;
64047 	long: 64;
64048 	long: 64;
64049 	long: 64;
64050 	long: 64;
64051 	long: 64;
64052 	long: 64;
64053 	long: 64;
64054 	long: 64;
64055 	long: 64;
64056 	long: 64;
64057 	long: 64;
64058 	long: 64;
64059 	long: 64;
64060 	long: 64;
64061 	long: 64;
64062 	long: 64;
64063 	long: 64;
64064 	long: 64;
64065 	long: 64;
64066 	long: 64;
64067 	long: 64;
64068 	long: 64;
64069 	long: 64;
64070 	long: 64;
64071 	long: 64;
64072 	long: 64;
64073 	long: 64;
64074 	long: 64;
64075 	long: 64;
64076 	long: 64;
64077 	long: 64;
64078 	long: 64;
64079 	long: 64;
64080 	long: 64;
64081 	long: 64;
64082 	long: 64;
64083 	long: 64;
64084 	long: 64;
64085 	long: 64;
64086 	long: 64;
64087 	long: 64;
64088 	long: 64;
64089 	long: 64;
64090 	long: 64;
64091 	long: 64;
64092 	long: 64;
64093 	long: 64;
64094 	long: 64;
64095 	long: 64;
64096 	long: 64;
64097 	long: 64;
64098 	long: 64;
64099 	long: 64;
64100 	long: 64;
64101 	long: 64;
64102 	long: 64;
64103 	long: 64;
64104 	long: 64;
64105 	long: 64;
64106 	long: 64;
64107 	long: 64;
64108 	long: 64;
64109 	long: 64;
64110 	long: 64;
64111 	long: 64;
64112 	long: 64;
64113 	long: 64;
64114 	long: 64;
64115 	long: 64;
64116 	long: 64;
64117 	long: 64;
64118 	long: 64;
64119 	long: 64;
64120 	long: 64;
64121 	long: 64;
64122 	long: 64;
64123 	long: 64;
64124 	long: 64;
64125 	long: 64;
64126 	long: 64;
64127 	long: 64;
64128 	long: 64;
64129 	long: 64;
64130 	long: 64;
64131 	long: 64;
64132 	long: 64;
64133 	long: 64;
64134 	long: 64;
64135 	long: 64;
64136 	long: 64;
64137 	long: 64;
64138 	long: 64;
64139 	long: 64;
64140 	long: 64;
64141 	long: 64;
64142 	long: 64;
64143 	long: 64;
64144 	long: 64;
64145 	long: 64;
64146 	long: 64;
64147 	long: 64;
64148 	long: 64;
64149 	long: 64;
64150 	long: 64;
64151 	long: 64;
64152 	long: 64;
64153 	long: 64;
64154 	long: 64;
64155 	long: 64;
64156 	long: 64;
64157 	long: 64;
64158 	long: 64;
64159 	long: 64;
64160 	long: 64;
64161 	long: 64;
64162 	long: 64;
64163 	long: 64;
64164 	long: 64;
64165 	long: 64;
64166 	long: 64;
64167 	long: 64;
64168 	long: 64;
64169 	long: 64;
64170 	long: 64;
64171 	long: 64;
64172 	long: 64;
64173 	long: 64;
64174 	long: 64;
64175 	long: 64;
64176 	long: 64;
64177 	long: 64;
64178 	long: 64;
64179 	long: 64;
64180 	long: 64;
64181 	long: 64;
64182 	long: 64;
64183 	long: 64;
64184 	long: 64;
64185 	long: 64;
64186 	long: 64;
64187 	long: 64;
64188 	long: 64;
64189 	long: 64;
64190 	long: 64;
64191 	long: 64;
64192 	long: 64;
64193 	long: 64;
64194 	long: 64;
64195 	long: 64;
64196 	long: 64;
64197 	long: 64;
64198 	long: 64;
64199 	long: 64;
64200 	long: 64;
64201 	long: 64;
64202 	long: 64;
64203 	long: 64;
64204 	long: 64;
64205 	long: 64;
64206 	long: 64;
64207 	long: 64;
64208 	long: 64;
64209 	long: 64;
64210 	long: 64;
64211 	long: 64;
64212 	long: 64;
64213 	long: 64;
64214 	long: 64;
64215 	long: 64;
64216 	long: 64;
64217 	long: 64;
64218 	long: 64;
64219 	long: 64;
64220 	long: 64;
64221 	long: 64;
64222 	long: 64;
64223 	long: 64;
64224 	long: 64;
64225 	long: 64;
64226 	long: 64;
64227 	long: 64;
64228 	long: 64;
64229 	long: 64;
64230 	long: 64;
64231 	long: 64;
64232 	long: 64;
64233 	long: 64;
64234 	long: 64;
64235 	long: 64;
64236 	long: 64;
64237 	long: 64;
64238 	long: 64;
64239 	long: 64;
64240 	long: 64;
64241 	long: 64;
64242 	long: 64;
64243 	long: 64;
64244 	long: 64;
64245 	long: 64;
64246 	long: 64;
64247 	long: 64;
64248 	long: 64;
64249 	long: 64;
64250 	long: 64;
64251 	long: 64;
64252 	long: 64;
64253 	long: 64;
64254 	long: 64;
64255 	long: 64;
64256 	long: 64;
64257 	long: 64;
64258 	long: 64;
64259 	long: 64;
64260 	long: 64;
64261 	long: 64;
64262 	long: 64;
64263 	long: 64;
64264 	long: 64;
64265 	long: 64;
64266 	long: 64;
64267 	long: 64;
64268 	long: 64;
64269 	long: 64;
64270 	long: 64;
64271 	long: 64;
64272 	long: 64;
64273 	long: 64;
64274 	long: 64;
64275 	long: 64;
64276 	long: 64;
64277 	long: 64;
64278 	long: 64;
64279 	long: 64;
64280 	long: 64;
64281 	long: 64;
64282 	long: 64;
64283 	long: 64;
64284 	long: 64;
64285 	long: 64;
64286 	long: 64;
64287 	long: 64;
64288 	long: 64;
64289 	long: 64;
64290 	long: 64;
64291 	long: 64;
64292 	long: 64;
64293 	long: 64;
64294 	long: 64;
64295 	long: 64;
64296 	long: 64;
64297 	long: 64;
64298 	long: 64;
64299 	long: 64;
64300 	long: 64;
64301 	long: 64;
64302 	long: 64;
64303 	long: 64;
64304 	long: 64;
64305 	long: 64;
64306 	long: 64;
64307 	long: 64;
64308 	long: 64;
64309 	long: 64;
64310 	long: 64;
64311 	long: 64;
64312 	long: 64;
64313 	long: 64;
64314 	long: 64;
64315 	long: 64;
64316 	long: 64;
64317 	long: 64;
64318 	long: 64;
64319 	long: 64;
64320 	long: 64;
64321 	long: 64;
64322 	long: 64;
64323 	long: 64;
64324 	long: 64;
64325 	long: 64;
64326 	long: 64;
64327 	long: 64;
64328 	long: 64;
64329 	long: 64;
64330 	long: 64;
64331 	long: 64;
64332 	long: 64;
64333 	long: 64;
64334 	long: 64;
64335 	long: 64;
64336 	long: 64;
64337 	long: 64;
64338 	long: 64;
64339 	long: 64;
64340 	long: 64;
64341 	long: 64;
64342 	long: 64;
64343 	long: 64;
64344 	long: 64;
64345 	long: 64;
64346 	long: 64;
64347 	long: 64;
64348 	long: 64;
64349 	long: 64;
64350 	long: 64;
64351 	long: 64;
64352 	long: 64;
64353 	long: 64;
64354 	long: 64;
64355 	long: 64;
64356 	long: 64;
64357 	long: 64;
64358 	long: 64;
64359 	long: 64;
64360 	long: 64;
64361 	long: 64;
64362 	long: 64;
64363 	long: 64;
64364 	long: 64;
64365 	long: 64;
64366 	long: 64;
64367 	long: 64;
64368 	long: 64;
64369 	long: 64;
64370 	long: 64;
64371 	long: 64;
64372 	long: 64;
64373 	long: 64;
64374 	long: 64;
64375 	long: 64;
64376 	long: 64;
64377 	long: 64;
64378 	long: 64;
64379 	long: 64;
64380 	long: 64;
64381 	long: 64;
64382 	long: 64;
64383 	long: 64;
64384 	long: 64;
64385 	long: 64;
64386 	long: 64;
64387 	long: 64;
64388 	long: 64;
64389 	long: 64;
64390 	long: 64;
64391 	long: 64;
64392 	long: 64;
64393 	long: 64;
64394 	long: 64;
64395 	long: 64;
64396 	long: 64;
64397 	long: 64;
64398 	long: 64;
64399 	long: 64;
64400 	long: 64;
64401 	long: 64;
64402 	long: 64;
64403 	long: 64;
64404 	long: 64;
64405 	long: 64;
64406 	long: 64;
64407 	long: 64;
64408 	long: 64;
64409 	long: 64;
64410 	long: 64;
64411 	long: 64;
64412 	long: 64;
64413 	long: 64;
64414 	long: 64;
64415 	long: 64;
64416 	long: 64;
64417 	long: 64;
64418 	long: 64;
64419 	long: 64;
64420 	long: 64;
64421 	long: 64;
64422 	long: 64;
64423 	long: 64;
64424 	long: 64;
64425 	long: 64;
64426 	long: 64;
64427 	long: 64;
64428 	long: 64;
64429 	long: 64;
64430 	long: 64;
64431 	long: 64;
64432 	long: 64;
64433 	long: 64;
64434 	long: 64;
64435 	long: 64;
64436 	long: 64;
64437 	long: 64;
64438 	long: 64;
64439 	long: 64;
64440 	long: 64;
64441 	long: 64;
64442 	long: 64;
64443 	long: 64;
64444 	long: 64;
64445 	long: 64;
64446 	long: 64;
64447 	long: 64;
64448 	long: 64;
64449 	long: 64;
64450 	long: 64;
64451 	long: 64;
64452 	long: 64;
64453 	long: 64;
64454 	long: 64;
64455 	long: 64;
64456 	long: 64;
64457 	long: 64;
64458 	long: 64;
64459 	long: 64;
64460 	long: 64;
64461 	long: 64;
64462 	long: 64;
64463 	long: 64;
64464 	long: 64;
64465 	long: 64;
64466 	long: 64;
64467 	long: 64;
64468 	long: 64;
64469 	long: 64;
64470 	long: 64;
64471 	long: 64;
64472 	long: 64;
64473 	long: 64;
64474 	long: 64;
64475 	long: 64;
64476 	long: 64;
64477 	long: 64;
64478 	long: 64;
64479 	long: 64;
64480 	long: 64;
64481 	long: 64;
64482 	long: 64;
64483 	long: 64;
64484 	long: 64;
64485 	long: 64;
64486 	long: 64;
64487 	long: 64;
64488 	long: 64;
64489 	long: 64;
64490 	long: 64;
64491 	long: 64;
64492 	long: 64;
64493 	long: 64;
64494 	long: 64;
64495 	long: 64;
64496 	long: 64;
64497 	long: 64;
64498 	long: 64;
64499 	long: 64;
64500 	long: 64;
64501 	long: 64;
64502 	long: 64;
64503 	long: 64;
64504 	long: 64;
64505 	long: 64;
64506 	long: 64;
64507 	long: 64;
64508 	long: 64;
64509 	long: 64;
64510 	long: 64;
64511 	long: 64;
64512 	long: 64;
64513 	long: 64;
64514 	long: 64;
64515 	long: 64;
64516 	long: 64;
64517 	long: 64;
64518 	long: 64;
64519 	long: 64;
64520 	long: 64;
64521 	long: 64;
64522 	long: 64;
64523 	long: 64;
64524 	long: 64;
64525 	long: 64;
64526 	long: 64;
64527 	long: 64;
64528 	long: 64;
64529 	long: 64;
64530 	long: 64;
64531 	long: 64;
64532 	long: 64;
64533 	long: 64;
64534 	long: 64;
64535 	long: 64;
64536 	long: 64;
64537 	long: 64;
64538 	long: 64;
64539 	long: 64;
64540 	long: 64;
64541 	long: 64;
64542 	long: 64;
64543 	long: 64;
64544 	long: 64;
64545 	long: 64;
64546 	long: 64;
64547 	long: 64;
64548 	long: 64;
64549 	long: 64;
64550 	long: 64;
64551 	long: 64;
64552 	long: 64;
64553 	long: 64;
64554 	long: 64;
64555 	long: 64;
64556 	long: 64;
64557 	long: 64;
64558 	long: 64;
64559 	long: 64;
64560 	long: 64;
64561 	long: 64;
64562 	long: 64;
64563 	long: 64;
64564 	long: 64;
64565 	long: 64;
64566 	long: 64;
64567 	long: 64;
64568 	long: 64;
64569 	long: 64;
64570 	long: 64;
64571 	long: 64;
64572 	long: 64;
64573 	long: 64;
64574 	long: 64;
64575 	long: 64;
64576 	long: 64;
64577 	long: 64;
64578 	long: 64;
64579 	long: 64;
64580 	long: 64;
64581 	long: 64;
64582 	long: 64;
64583 	long: 64;
64584 	long: 64;
64585 	long: 64;
64586 	long: 64;
64587 	long: 64;
64588 	long: 64;
64589 	long: 64;
64590 	long: 64;
64591 	long: 64;
64592 	long: 64;
64593 	long: 64;
64594 	long: 64;
64595 	long: 64;
64596 	long: 64;
64597 	long: 64;
64598 	long: 64;
64599 	long: 64;
64600 	long: 64;
64601 	long: 64;
64602 	long: 64;
64603 	long: 64;
64604 	long: 64;
64605 	long: 64;
64606 	long: 64;
64607 	long: 64;
64608 	long: 64;
64609 	long: 64;
64610 	long: 64;
64611 	long: 64;
64612 	long: 64;
64613 	long: 64;
64614 	long: 64;
64615 	long: 64;
64616 	long: 64;
64617 	long: 64;
64618 	long: 64;
64619 	long: 64;
64620 	long: 64;
64621 	long: 64;
64622 	long: 64;
64623 	long: 64;
64624 	long: 64;
64625 	long: 64;
64626 	long: 64;
64627 	long: 64;
64628 	long: 64;
64629 	long: 64;
64630 	long: 64;
64631 	long: 64;
64632 	long: 64;
64633 	long: 64;
64634 	long: 64;
64635 	long: 64;
64636 	long: 64;
64637 	long: 64;
64638 	long: 64;
64639 	long: 64;
64640 	long: 64;
64641 	long: 64;
64642 	long: 64;
64643 	long: 64;
64644 	long: 64;
64645 	long: 64;
64646 	long: 64;
64647 	long: 64;
64648 	long: 64;
64649 	long: 64;
64650 	long: 64;
64651 	long: 64;
64652 	long: 64;
64653 	long: 64;
64654 	long: 64;
64655 	long: 64;
64656 	long: 64;
64657 	long: 64;
64658 	long: 64;
64659 	long: 64;
64660 	long: 64;
64661 	long: 64;
64662 	long: 64;
64663 	long: 64;
64664 	long: 64;
64665 	long: 64;
64666 	long: 64;
64667 	long: 64;
64668 	long: 64;
64669 	long: 64;
64670 	long: 64;
64671 	long: 64;
64672 	long: 64;
64673 	long: 64;
64674 	long: 64;
64675 	long: 64;
64676 	long: 64;
64677 	long: 64;
64678 	long: 64;
64679 	long: 64;
64680 	long: 64;
64681 	long: 64;
64682 	long: 64;
64683 	long: 64;
64684 	long: 64;
64685 	long: 64;
64686 	long: 64;
64687 	long: 64;
64688 	long: 64;
64689 	long: 64;
64690 	long: 64;
64691 	long: 64;
64692 	long: 64;
64693 	long: 64;
64694 	long: 64;
64695 	long: 64;
64696 	long: 64;
64697 	long: 64;
64698 	long: 64;
64699 	long: 64;
64700 	long: 64;
64701 	long: 64;
64702 	long: 64;
64703 	long: 64;
64704 	long: 64;
64705 	long: 64;
64706 	long: 64;
64707 	long: 64;
64708 	long: 64;
64709 	long: 64;
64710 	long: 64;
64711 	long: 64;
64712 	long: 64;
64713 	long: 64;
64714 	long: 64;
64715 	long: 64;
64716 	long: 64;
64717 	long: 64;
64718 	long: 64;
64719 	long: 64;
64720 	long: 64;
64721 	long: 64;
64722 	long: 64;
64723 	long: 64;
64724 	long: 64;
64725 	long: 64;
64726 	long: 64;
64727 	long: 64;
64728 	long: 64;
64729 	long: 64;
64730 	long: 64;
64731 	long: 64;
64732 	long: 64;
64733 	long: 64;
64734 	long: 64;
64735 	long: 64;
64736 	long: 64;
64737 	long: 64;
64738 	long: 64;
64739 	long: 64;
64740 	long: 64;
64741 	long: 64;
64742 	long: 64;
64743 	long: 64;
64744 	long: 64;
64745 	long: 64;
64746 	long: 64;
64747 	long: 64;
64748 	long: 64;
64749 	long: 64;
64750 	long: 64;
64751 	long: 64;
64752 	long: 64;
64753 	long: 64;
64754 	long: 64;
64755 	long: 64;
64756 	long: 64;
64757 	long: 64;
64758 	long: 64;
64759 	long: 64;
64760 	long: 64;
64761 	long: 64;
64762 	long: 64;
64763 	long: 64;
64764 	long: 64;
64765 	long: 64;
64766 	long: 64;
64767 	long: 64;
64768 	long: 64;
64769 	long: 64;
64770 	long: 64;
64771 	long: 64;
64772 	long: 64;
64773 	long: 64;
64774 	long: 64;
64775 	long: 64;
64776 	long: 64;
64777 	long: 64;
64778 	long: 64;
64779 	long: 64;
64780 	long: 64;
64781 	long: 64;
64782 	long: 64;
64783 	long: 64;
64784 	long: 64;
64785 	long: 64;
64786 	long: 64;
64787 	long: 64;
64788 	long: 64;
64789 	long: 64;
64790 	long: 64;
64791 	long: 64;
64792 	long: 64;
64793 	long: 64;
64794 	long: 64;
64795 	long: 64;
64796 	long: 64;
64797 	long: 64;
64798 	long: 64;
64799 	long: 64;
64800 	long: 64;
64801 	long: 64;
64802 	long: 64;
64803 	long: 64;
64804 	long: 64;
64805 	long: 64;
64806 	long: 64;
64807 	long: 64;
64808 	long: 64;
64809 	long: 64;
64810 	long: 64;
64811 	long: 64;
64812 	long: 64;
64813 	long: 64;
64814 	long: 64;
64815 	long: 64;
64816 	long: 64;
64817 	long: 64;
64818 	long: 64;
64819 	long: 64;
64820 	long: 64;
64821 	long: 64;
64822 	long: 64;
64823 	long: 64;
64824 	long: 64;
64825 	long: 64;
64826 	long: 64;
64827 	long: 64;
64828 	long: 64;
64829 	long: 64;
64830 	long: 64;
64831 	long: 64;
64832 	long: 64;
64833 	long: 64;
64834 	long: 64;
64835 	long: 64;
64836 	long: 64;
64837 	long: 64;
64838 	long: 64;
64839 	long: 64;
64840 	long: 64;
64841 	long: 64;
64842 	long: 64;
64843 	long: 64;
64844 	long: 64;
64845 	long: 64;
64846 	long: 64;
64847 	long: 64;
64848 	long: 64;
64849 	long: 64;
64850 	long: 64;
64851 	long: 64;
64852 	long: 64;
64853 	long: 64;
64854 	long: 64;
64855 	long: 64;
64856 	long: 64;
64857 	long: 64;
64858 	long: 64;
64859 	long: 64;
64860 	long: 64;
64861 	long: 64;
64862 	long: 64;
64863 	long: 64;
64864 	long: 64;
64865 	long: 64;
64866 	long: 64;
64867 	long: 64;
64868 	long: 64;
64869 	long: 64;
64870 	long: 64;
64871 	long: 64;
64872 	long: 64;
64873 	long: 64;
64874 	long: 64;
64875 	long: 64;
64876 	long: 64;
64877 	long: 64;
64878 	long: 64;
64879 	long: 64;
64880 	long: 64;
64881 	long: 64;
64882 	long: 64;
64883 	long: 64;
64884 	long: 64;
64885 	long: 64;
64886 	long: 64;
64887 	long: 64;
64888 	long: 64;
64889 	long: 64;
64890 	long: 64;
64891 	long: 64;
64892 	long: 64;
64893 	long: 64;
64894 	long: 64;
64895 	long: 64;
64896 	long: 64;
64897 	long: 64;
64898 	long: 64;
64899 	long: 64;
64900 	long: 64;
64901 	long: 64;
64902 	long: 64;
64903 	long: 64;
64904 	long: 64;
64905 	long: 64;
64906 	long: 64;
64907 	long: 64;
64908 	long: 64;
64909 	long: 64;
64910 	long: 64;
64911 	long: 64;
64912 	long: 64;
64913 	long: 64;
64914 	long: 64;
64915 	long: 64;
64916 	long: 64;
64917 	long: 64;
64918 	long: 64;
64919 	long: 64;
64920 	long: 64;
64921 	long: 64;
64922 	long: 64;
64923 	long: 64;
64924 	long: 64;
64925 	long: 64;
64926 	long: 64;
64927 	long: 64;
64928 	long: 64;
64929 	long: 64;
64930 	long: 64;
64931 	long: 64;
64932 	long: 64;
64933 	long: 64;
64934 	long: 64;
64935 	long: 64;
64936 	long: 64;
64937 	long: 64;
64938 	long: 64;
64939 	long: 64;
64940 	long: 64;
64941 	long: 64;
64942 	long: 64;
64943 	long: 64;
64944 	long: 64;
64945 	long: 64;
64946 	long: 64;
64947 	long: 64;
64948 	long: 64;
64949 	long: 64;
64950 	long: 64;
64951 	long: 64;
64952 	long: 64;
64953 	long: 64;
64954 	long: 64;
64955 	long: 64;
64956 	long: 64;
64957 	long: 64;
64958 	long: 64;
64959 	long: 64;
64960 	long: 64;
64961 	long: 64;
64962 	long: 64;
64963 	long: 64;
64964 	long: 64;
64965 	long: 64;
64966 	long: 64;
64967 	long: 64;
64968 	long: 64;
64969 	long: 64;
64970 	long: 64;
64971 	long: 64;
64972 	long: 64;
64973 	long: 64;
64974 	long: 64;
64975 	long: 64;
64976 	long: 64;
64977 	long: 64;
64978 	long: 64;
64979 	long: 64;
64980 	long: 64;
64981 	long: 64;
64982 	long: 64;
64983 	long: 64;
64984 	long: 64;
64985 	long: 64;
64986 	long: 64;
64987 	long: 64;
64988 	long: 64;
64989 	long: 64;
64990 	long: 64;
64991 	long: 64;
64992 	long: 64;
64993 	long: 64;
64994 	long: 64;
64995 	long: 64;
64996 	long: 64;
64997 	long: 64;
64998 	long: 64;
64999 	long: 64;
65000 	long: 64;
65001 	long: 64;
65002 	long: 64;
65003 	long: 64;
65004 	long: 64;
65005 	long: 64;
65006 	long: 64;
65007 	long: 64;
65008 	long: 64;
65009 	long: 64;
65010 	long: 64;
65011 	long: 64;
65012 	long: 64;
65013 	long: 64;
65014 	long: 64;
65015 	long: 64;
65016 	long: 64;
65017 	long: 64;
65018 	long: 64;
65019 	long: 64;
65020 	long: 64;
65021 	long: 64;
65022 	long: 64;
65023 	long: 64;
65024 	long: 64;
65025 	long: 64;
65026 	long: 64;
65027 	long: 64;
65028 	long: 64;
65029 	long: 64;
65030 	long: 64;
65031 	long: 64;
65032 	long: 64;
65033 	long: 64;
65034 	long: 64;
65035 	long: 64;
65036 	long: 64;
65037 	long: 64;
65038 	long: 64;
65039 	long: 64;
65040 	long: 64;
65041 	long: 64;
65042 	long: 64;
65043 	long: 64;
65044 	long: 64;
65045 	long: 64;
65046 	long: 64;
65047 	long: 64;
65048 	long: 64;
65049 	long: 64;
65050 	long: 64;
65051 	long: 64;
65052 	long: 64;
65053 	long: 64;
65054 	long: 64;
65055 	long: 64;
65056 	long: 64;
65057 	long: 64;
65058 	long: 64;
65059 	long: 64;
65060 	long: 64;
65061 	long: 64;
65062 	long: 64;
65063 	long: 64;
65064 	long: 64;
65065 	long: 64;
65066 	long: 64;
65067 	long: 64;
65068 	long: 64;
65069 	long: 64;
65070 	long: 64;
65071 	long: 64;
65072 	long: 64;
65073 	long: 64;
65074 	long: 64;
65075 	long: 64;
65076 	long: 64;
65077 	long: 64;
65078 	long: 64;
65079 	long: 64;
65080 	long: 64;
65081 	long: 64;
65082 	long: 64;
65083 	long: 64;
65084 	long: 64;
65085 	long: 64;
65086 	long: 64;
65087 	long: 64;
65088 	long: 64;
65089 	long: 64;
65090 	long: 64;
65091 	long: 64;
65092 	long: 64;
65093 	long: 64;
65094 	long: 64;
65095 	long: 64;
65096 	long: 64;
65097 	long: 64;
65098 	long: 64;
65099 	long: 64;
65100 	long: 64;
65101 	long: 64;
65102 	long: 64;
65103 	long: 64;
65104 	long: 64;
65105 	long: 64;
65106 	long: 64;
65107 	long: 64;
65108 	long: 64;
65109 	long: 64;
65110 	long: 64;
65111 	long: 64;
65112 	long: 64;
65113 	long: 64;
65114 	long: 64;
65115 	long: 64;
65116 	long: 64;
65117 	long: 64;
65118 	long: 64;
65119 	long: 64;
65120 	long: 64;
65121 	long: 64;
65122 	long: 64;
65123 	long: 64;
65124 	long: 64;
65125 	long: 64;
65126 	long: 64;
65127 	long: 64;
65128 	long: 64;
65129 	long: 64;
65130 	long: 64;
65131 	long: 64;
65132 	long: 64;
65133 	long: 64;
65134 	long: 64;
65135 	long: 64;
65136 	long: 64;
65137 	long: 64;
65138 	long: 64;
65139 	long: 64;
65140 	long: 64;
65141 	long: 64;
65142 	long: 64;
65143 	long: 64;
65144 	long: 64;
65145 	long: 64;
65146 	long: 64;
65147 	long: 64;
65148 	long: 64;
65149 	long: 64;
65150 	long: 64;
65151 	long: 64;
65152 	long: 64;
65153 	long: 64;
65154 	long: 64;
65155 	long: 64;
65156 	long: 64;
65157 	long: 64;
65158 	long: 64;
65159 	long: 64;
65160 	long: 64;
65161 	long: 64;
65162 	long: 64;
65163 	long: 64;
65164 	long: 64;
65165 	long: 64;
65166 	long: 64;
65167 	long: 64;
65168 	long: 64;
65169 	long: 64;
65170 	long: 64;
65171 	long: 64;
65172 	long: 64;
65173 	long: 64;
65174 	long: 64;
65175 	long: 64;
65176 	long: 64;
65177 	long: 64;
65178 	long: 64;
65179 	long: 64;
65180 	long: 64;
65181 	long: 64;
65182 	long: 64;
65183 	long: 64;
65184 	long: 64;
65185 	long: 64;
65186 	long: 64;
65187 	long: 64;
65188 	long: 64;
65189 	long: 64;
65190 	long: 64;
65191 	long: 64;
65192 	long: 64;
65193 	long: 64;
65194 	long: 64;
65195 	long: 64;
65196 	long: 64;
65197 	long: 64;
65198 	long: 64;
65199 	long: 64;
65200 	long: 64;
65201 	long: 64;
65202 	long: 64;
65203 	long: 64;
65204 	long: 64;
65205 	long: 64;
65206 	long: 64;
65207 	long: 64;
65208 	long: 64;
65209 	long: 64;
65210 	long: 64;
65211 	long: 64;
65212 	long: 64;
65213 	long: 64;
65214 	long: 64;
65215 	long: 64;
65216 	long: 64;
65217 	long: 64;
65218 	long: 64;
65219 	long: 64;
65220 	long: 64;
65221 	long: 64;
65222 	long: 64;
65223 	long: 64;
65224 	long: 64;
65225 	long: 64;
65226 	long: 64;
65227 	long: 64;
65228 	long: 64;
65229 	long: 64;
65230 	long: 64;
65231 	long: 64;
65232 	long: 64;
65233 	long: 64;
65234 	long: 64;
65235 	long: 64;
65236 	long: 64;
65237 	long: 64;
65238 	long: 64;
65239 	long: 64;
65240 	long: 64;
65241 	long: 64;
65242 	long: 64;
65243 	long: 64;
65244 	long: 64;
65245 	long: 64;
65246 	long: 64;
65247 	long: 64;
65248 	long: 64;
65249 	long: 64;
65250 	long: 64;
65251 	long: 64;
65252 	long: 64;
65253 	long: 64;
65254 	long: 64;
65255 	long: 64;
65256 	long: 64;
65257 	long: 64;
65258 	long: 64;
65259 	long: 64;
65260 	long: 64;
65261 	long: 64;
65262 	long: 64;
65263 	long: 64;
65264 	long: 64;
65265 	long: 64;
65266 	long: 64;
65267 	long: 64;
65268 	long: 64;
65269 	long: 64;
65270 	long: 64;
65271 	long: 64;
65272 	long: 64;
65273 	long: 64;
65274 	long: 64;
65275 	long: 64;
65276 	long: 64;
65277 	long: 64;
65278 	long: 64;
65279 	long: 64;
65280 	long: 64;
65281 	long: 64;
65282 	long: 64;
65283 	long: 64;
65284 	long: 64;
65285 	long: 64;
65286 	long: 64;
65287 	long: 64;
65288 	long: 64;
65289 	long: 64;
65290 	long: 64;
65291 	long: 64;
65292 	long: 64;
65293 	long: 64;
65294 	long: 64;
65295 	long: 64;
65296 	long: 64;
65297 	long: 64;
65298 	long: 64;
65299 	long: 64;
65300 	long: 64;
65301 	long: 64;
65302 	long: 64;
65303 	long: 64;
65304 	long: 64;
65305 	long: 64;
65306 	long: 64;
65307 	long: 64;
65308 	long: 64;
65309 	long: 64;
65310 	long: 64;
65311 	long: 64;
65312 	long: 64;
65313 	long: 64;
65314 	long: 64;
65315 	long: 64;
65316 	long: 64;
65317 	long: 64;
65318 	long: 64;
65319 	long: 64;
65320 	long: 64;
65321 	long: 64;
65322 	long: 64;
65323 	long: 64;
65324 	long: 64;
65325 	long: 64;
65326 	long: 64;
65327 	long: 64;
65328 	long: 64;
65329 	long: 64;
65330 	long: 64;
65331 	long: 64;
65332 	long: 64;
65333 	long: 64;
65334 	long: 64;
65335 	long: 64;
65336 	long: 64;
65337 	long: 64;
65338 	long: 64;
65339 	long: 64;
65340 	long: 64;
65341 	long: 64;
65342 	long: 64;
65343 	long: 64;
65344 	long: 64;
65345 	long: 64;
65346 	long: 64;
65347 	long: 64;
65348 	long: 64;
65349 	long: 64;
65350 	long: 64;
65351 	long: 64;
65352 	long: 64;
65353 	long: 64;
65354 	long: 64;
65355 	long: 64;
65356 	long: 64;
65357 	long: 64;
65358 	long: 64;
65359 	long: 64;
65360 	long: 64;
65361 	long: 64;
65362 	long: 64;
65363 	long: 64;
65364 	long: 64;
65365 	long: 64;
65366 	long: 64;
65367 	long: 64;
65368 	long: 64;
65369 	long: 64;
65370 	long: 64;
65371 	long: 64;
65372 	long: 64;
65373 	long: 64;
65374 	long: 64;
65375 	long: 64;
65376 	long: 64;
65377 	long: 64;
65378 	long: 64;
65379 	long: 64;
65380 	long: 64;
65381 	long: 64;
65382 	long: 64;
65383 	long: 64;
65384 	long: 64;
65385 	long: 64;
65386 	long: 64;
65387 	long: 64;
65388 	long: 64;
65389 	long: 64;
65390 	long: 64;
65391 	long: 64;
65392 	long: 64;
65393 	long: 64;
65394 	long: 64;
65395 	long: 64;
65396 	long: 64;
65397 	long: 64;
65398 	long: 64;
65399 	long: 64;
65400 	long: 64;
65401 	long: 64;
65402 	long: 64;
65403 	long: 64;
65404 	long: 64;
65405 	long: 64;
65406 	long: 64;
65407 	long: 64;
65408 	long: 64;
65409 	long: 64;
65410 	long: 64;
65411 	long: 64;
65412 	long: 64;
65413 	long: 64;
65414 	long: 64;
65415 	long: 64;
65416 	long: 64;
65417 	long: 64;
65418 	long: 64;
65419 	long: 64;
65420 	long: 64;
65421 	long: 64;
65422 	long: 64;
65423 	long: 64;
65424 	long: 64;
65425 	long: 64;
65426 	long: 64;
65427 	long: 64;
65428 	long: 64;
65429 	long: 64;
65430 	long: 64;
65431 	long: 64;
65432 	long: 64;
65433 	long: 64;
65434 	long: 64;
65435 	long: 64;
65436 	long: 64;
65437 	long: 64;
65438 	long: 64;
65439 	long: 64;
65440 	long: 64;
65441 	long: 64;
65442 	long: 64;
65443 	long: 64;
65444 	long: 64;
65445 	long: 64;
65446 	long: 64;
65447 	long: 64;
65448 	long: 64;
65449 	long: 64;
65450 	long: 64;
65451 	long: 64;
65452 	long: 64;
65453 	long: 64;
65454 	long: 64;
65455 	long: 64;
65456 	long: 64;
65457 	long: 64;
65458 	long: 64;
65459 	long: 64;
65460 	long: 64;
65461 	long: 64;
65462 	long: 64;
65463 	long: 64;
65464 	long: 64;
65465 	long: 64;
65466 	long: 64;
65467 	long: 64;
65468 	long: 64;
65469 	long: 64;
65470 	long: 64;
65471 	long: 64;
65472 	long: 64;
65473 	long: 64;
65474 	long: 64;
65475 	long: 64;
65476 	long: 64;
65477 	long: 64;
65478 	long: 64;
65479 	long: 64;
65480 	long: 64;
65481 	long: 64;
65482 	long: 64;
65483 	long: 64;
65484 	long: 64;
65485 	long: 64;
65486 	long: 64;
65487 	long: 64;
65488 	long: 64;
65489 	long: 64;
65490 	long: 64;
65491 	long: 64;
65492 	long: 64;
65493 	long: 64;
65494 	long: 64;
65495 	long: 64;
65496 	long: 64;
65497 	long: 64;
65498 	long: 64;
65499 	long: 64;
65500 	long: 64;
65501 	long: 64;
65502 	long: 64;
65503 	long: 64;
65504 	long: 64;
65505 	long: 64;
65506 	long: 64;
65507 	long: 64;
65508 	long: 64;
65509 	long: 64;
65510 	long: 64;
65511 	long: 64;
65512 	long: 64;
65513 	long: 64;
65514 	long: 64;
65515 	long: 64;
65516 	long: 64;
65517 	long: 64;
65518 	long: 64;
65519 	long: 64;
65520 	long: 64;
65521 	long: 64;
65522 	long: 64;
65523 	long: 64;
65524 	long: 64;
65525 	long: 64;
65526 	long: 64;
65527 	long: 64;
65528 	long: 64;
65529 	long: 64;
65530 	long: 64;
65531 	long: 64;
65532 	long: 64;
65533 	long: 64;
65534 	long: 64;
65535 	long: 64;
65536 	long: 64;
65537 	long: 64;
65538 	long: 64;
65539 	long: 64;
65540 	long: 64;
65541 	long: 64;
65542 	long: 64;
65543 	long: 64;
65544 	long: 64;
65545 	long: 64;
65546 	long: 64;
65547 	long: 64;
65548 	long: 64;
65549 	long: 64;
65550 	long: 64;
65551 	long: 64;
65552 	long: 64;
65553 	long: 64;
65554 	long: 64;
65555 	long: 64;
65556 	long: 64;
65557 	long: 64;
65558 	long: 64;
65559 	long: 64;
65560 	long: 64;
65561 	long: 64;
65562 	long: 64;
65563 	long: 64;
65564 	long: 64;
65565 	long: 64;
65566 	long: 64;
65567 	long: 64;
65568 	long: 64;
65569 	long: 64;
65570 	long: 64;
65571 	long: 64;
65572 	long: 64;
65573 	long: 64;
65574 	long: 64;
65575 	long: 64;
65576 	long: 64;
65577 	long: 64;
65578 	long: 64;
65579 	long: 64;
65580 	long: 64;
65581 	long: 64;
65582 	long: 64;
65583 	long: 64;
65584 	long: 64;
65585 	long: 64;
65586 	long: 64;
65587 	long: 64;
65588 	long: 64;
65589 	long: 64;
65590 	long: 64;
65591 	long: 64;
65592 	long: 64;
65593 	long: 64;
65594 	long: 64;
65595 	long: 64;
65596 	long: 64;
65597 	long: 64;
65598 	long: 64;
65599 	long: 64;
65600 	long: 64;
65601 	long: 64;
65602 	long: 64;
65603 	long: 64;
65604 	long: 64;
65605 	long: 64;
65606 	long: 64;
65607 	long: 64;
65608 	long: 64;
65609 	long: 64;
65610 	long: 64;
65611 	long: 64;
65612 	long: 64;
65613 	long: 64;
65614 	long: 64;
65615 	long: 64;
65616 	long: 64;
65617 	long: 64;
65618 	long: 64;
65619 	long: 64;
65620 	long: 64;
65621 	long: 64;
65622 	long: 64;
65623 	long: 64;
65624 	long: 64;
65625 	long: 64;
65626 	long: 64;
65627 	long: 64;
65628 	long: 64;
65629 	long: 64;
65630 	long: 64;
65631 	long: 64;
65632 	long: 64;
65633 	long: 64;
65634 	long: 64;
65635 	long: 64;
65636 	long: 64;
65637 	long: 64;
65638 	long: 64;
65639 	long: 64;
65640 	long: 64;
65641 	long: 64;
65642 	long: 64;
65643 	long: 64;
65644 	long: 64;
65645 	long: 64;
65646 	long: 64;
65647 	long: 64;
65648 	long: 64;
65649 	long: 64;
65650 	long: 64;
65651 	long: 64;
65652 	long: 64;
65653 	long: 64;
65654 	long: 64;
65655 	long: 64;
65656 	long: 64;
65657 	long: 64;
65658 	long: 64;
65659 	long: 64;
65660 	long: 64;
65661 	long: 64;
65662 	long: 64;
65663 	long: 64;
65664 	long: 64;
65665 	long: 64;
65666 	long: 64;
65667 	long: 64;
65668 	long: 64;
65669 	long: 64;
65670 	long: 64;
65671 	long: 64;
65672 	long: 64;
65673 	long: 64;
65674 	long: 64;
65675 	long: 64;
65676 	long: 64;
65677 	long: 64;
65678 	long: 64;
65679 	long: 64;
65680 	long: 64;
65681 	long: 64;
65682 	long: 64;
65683 	long: 64;
65684 	long: 64;
65685 	long: 64;
65686 	long: 64;
65687 	long: 64;
65688 	long: 64;
65689 	long: 64;
65690 	long: 64;
65691 	long: 64;
65692 	long: 64;
65693 	long: 64;
65694 	long: 64;
65695 	long: 64;
65696 	long: 64;
65697 	long: 64;
65698 	long: 64;
65699 	long: 64;
65700 	long: 64;
65701 	long: 64;
65702 	long: 64;
65703 	long: 64;
65704 	long: 64;
65705 	long: 64;
65706 	long: 64;
65707 	long: 64;
65708 	long: 64;
65709 	long: 64;
65710 	long: 64;
65711 	long: 64;
65712 	long: 64;
65713 	long: 64;
65714 	long: 64;
65715 	long: 64;
65716 	long: 64;
65717 	long: 64;
65718 	long: 64;
65719 	long: 64;
65720 	long: 64;
65721 	long: 64;
65722 	long: 64;
65723 	long: 64;
65724 	long: 64;
65725 	long: 64;
65726 	long: 64;
65727 	long: 64;
65728 	long: 64;
65729 	long: 64;
65730 	long: 64;
65731 	long: 64;
65732 	long: 64;
65733 	long: 64;
65734 	long: 64;
65735 	long: 64;
65736 	long: 64;
65737 	long: 64;
65738 	long: 64;
65739 	long: 64;
65740 	long: 64;
65741 	long: 64;
65742 	long: 64;
65743 	long: 64;
65744 	long: 64;
65745 	long: 64;
65746 	long: 64;
65747 	long: 64;
65748 	long: 64;
65749 	long: 64;
65750 	long: 64;
65751 	long: 64;
65752 	long: 64;
65753 	long: 64;
65754 	long: 64;
65755 	long: 64;
65756 	long: 64;
65757 	long: 64;
65758 	long: 64;
65759 	long: 64;
65760 	long: 64;
65761 	long: 64;
65762 	long: 64;
65763 	long: 64;
65764 	long: 64;
65765 	long: 64;
65766 	long: 64;
65767 	long: 64;
65768 	long: 64;
65769 	long: 64;
65770 	long: 64;
65771 	long: 64;
65772 	long: 64;
65773 	long: 64;
65774 	long: 64;
65775 	long: 64;
65776 	long: 64;
65777 	long: 64;
65778 	long: 64;
65779 	long: 64;
65780 	long: 64;
65781 	long: 64;
65782 	long: 64;
65783 	long: 64;
65784 	long: 64;
65785 	long: 64;
65786 	long: 64;
65787 	long: 64;
65788 	long: 64;
65789 	long: 64;
65790 	long: 64;
65791 	long: 64;
65792 	long: 64;
65793 	long: 64;
65794 	long: 64;
65795 	long: 64;
65796 	long: 64;
65797 	long: 64;
65798 	long: 64;
65799 	long: 64;
65800 	long: 64;
65801 	long: 64;
65802 	long: 64;
65803 	long: 64;
65804 	long: 64;
65805 	long: 64;
65806 	long: 64;
65807 	long: 64;
65808 	long: 64;
65809 	long: 64;
65810 	long: 64;
65811 	long: 64;
65812 	long: 64;
65813 	long: 64;
65814 	long: 64;
65815 	long: 64;
65816 	long: 64;
65817 	long: 64;
65818 	long: 64;
65819 	long: 64;
65820 	long: 64;
65821 	long: 64;
65822 	long: 64;
65823 	long: 64;
65824 	long: 64;
65825 	long: 64;
65826 	long: 64;
65827 	long: 64;
65828 	long: 64;
65829 	long: 64;
65830 	long: 64;
65831 	long: 64;
65832 	long: 64;
65833 	long: 64;
65834 	long: 64;
65835 	long: 64;
65836 	long: 64;
65837 	long: 64;
65838 	long: 64;
65839 	long: 64;
65840 	long: 64;
65841 	long: 64;
65842 	long: 64;
65843 	long: 64;
65844 	long: 64;
65845 	long: 64;
65846 	long: 64;
65847 	long: 64;
65848 	long: 64;
65849 	long: 64;
65850 	long: 64;
65851 	long: 64;
65852 	long: 64;
65853 	long: 64;
65854 	long: 64;
65855 	long: 64;
65856 	long: 64;
65857 	long: 64;
65858 	long: 64;
65859 	long: 64;
65860 	long: 64;
65861 	long: 64;
65862 	long: 64;
65863 	long: 64;
65864 	long: 64;
65865 	long: 64;
65866 	long: 64;
65867 	long: 64;
65868 	long: 64;
65869 	long: 64;
65870 	long: 64;
65871 	long: 64;
65872 	long: 64;
65873 	long: 64;
65874 	long: 64;
65875 	long: 64;
65876 	long: 64;
65877 	long: 64;
65878 	long: 64;
65879 	long: 64;
65880 	long: 64;
65881 	long: 64;
65882 	long: 64;
65883 	long: 64;
65884 	long: 64;
65885 	long: 64;
65886 	long: 64;
65887 	long: 64;
65888 	long: 64;
65889 	long: 64;
65890 	long: 64;
65891 	long: 64;
65892 	long: 64;
65893 	long: 64;
65894 	long: 64;
65895 	long: 64;
65896 	long: 64;
65897 	long: 64;
65898 	long: 64;
65899 	long: 64;
65900 	long: 64;
65901 	long: 64;
65902 	long: 64;
65903 	long: 64;
65904 	long: 64;
65905 	long: 64;
65906 	long: 64;
65907 	long: 64;
65908 	long: 64;
65909 	long: 64;
65910 	long: 64;
65911 	long: 64;
65912 	long: 64;
65913 	long: 64;
65914 	long: 64;
65915 	long: 64;
65916 	long: 64;
65917 	long: 64;
65918 	long: 64;
65919 	long: 64;
65920 	long: 64;
65921 	long: 64;
65922 	long: 64;
65923 	long: 64;
65924 	long: 64;
65925 	long: 64;
65926 	long: 64;
65927 	long: 64;
65928 	long: 64;
65929 	long: 64;
65930 	long: 64;
65931 	long: 64;
65932 	long: 64;
65933 	long: 64;
65934 	long: 64;
65935 	long: 64;
65936 	long: 64;
65937 	long: 64;
65938 	long: 64;
65939 	long: 64;
65940 	long: 64;
65941 	long: 64;
65942 	long: 64;
65943 	long: 64;
65944 	long: 64;
65945 	long: 64;
65946 	long: 64;
65947 	long: 64;
65948 	long: 64;
65949 	long: 64;
65950 	long: 64;
65951 	long: 64;
65952 	long: 64;
65953 	long: 64;
65954 	long: 64;
65955 	long: 64;
65956 	long: 64;
65957 	long: 64;
65958 	long: 64;
65959 	long: 64;
65960 	long: 64;
65961 	long: 64;
65962 	long: 64;
65963 	long: 64;
65964 	long: 64;
65965 	long: 64;
65966 	long: 64;
65967 	long: 64;
65968 	long: 64;
65969 	long: 64;
65970 	long: 64;
65971 	long: 64;
65972 	long: 64;
65973 	long: 64;
65974 	long: 64;
65975 	long: 64;
65976 	long: 64;
65977 	long: 64;
65978 	long: 64;
65979 	long: 64;
65980 	long: 64;
65981 	long: 64;
65982 	long: 64;
65983 	long: 64;
65984 	long: 64;
65985 	long: 64;
65986 	long: 64;
65987 	long: 64;
65988 	long: 64;
65989 	long: 64;
65990 	long: 64;
65991 	long: 64;
65992 	long: 64;
65993 	long: 64;
65994 	long: 64;
65995 	long: 64;
65996 	long: 64;
65997 	long: 64;
65998 	long: 64;
65999 	long: 64;
66000 	long: 64;
66001 	long: 64;
66002 	long: 64;
66003 	long: 64;
66004 	long: 64;
66005 	long: 64;
66006 	long: 64;
66007 	long: 64;
66008 	long: 64;
66009 	long: 64;
66010 	long: 64;
66011 	long: 64;
66012 	long: 64;
66013 	long: 64;
66014 	long: 64;
66015 	long: 64;
66016 	long: 64;
66017 	long: 64;
66018 	long: 64;
66019 	long: 64;
66020 	long: 64;
66021 	long: 64;
66022 	long: 64;
66023 	long: 64;
66024 	long: 64;
66025 	long: 64;
66026 	long: 64;
66027 	long: 64;
66028 	long: 64;
66029 	long: 64;
66030 	long: 64;
66031 	long: 64;
66032 	long: 64;
66033 	long: 64;
66034 	long: 64;
66035 	long: 64;
66036 	long: 64;
66037 	long: 64;
66038 	long: 64;
66039 	long: 64;
66040 	long: 64;
66041 	long: 64;
66042 	long: 64;
66043 	long: 64;
66044 	long: 64;
66045 	long: 64;
66046 	long: 64;
66047 	long: 64;
66048 	long: 64;
66049 	long: 64;
66050 	long: 64;
66051 	long: 64;
66052 	long: 64;
66053 	long: 64;
66054 	long: 64;
66055 	long: 64;
66056 	long: 64;
66057 	long: 64;
66058 	long: 64;
66059 	long: 64;
66060 	long: 64;
66061 	long: 64;
66062 	long: 64;
66063 	long: 64;
66064 	long: 64;
66065 	long: 64;
66066 	long: 64;
66067 	long: 64;
66068 	long: 64;
66069 	long: 64;
66070 	long: 64;
66071 	long: 64;
66072 	long: 64;
66073 	long: 64;
66074 	long: 64;
66075 	long: 64;
66076 	long: 64;
66077 	long: 64;
66078 	long: 64;
66079 	long: 64;
66080 	long: 64;
66081 	long: 64;
66082 	long: 64;
66083 	long: 64;
66084 	long: 64;
66085 	long: 64;
66086 	long: 64;
66087 	long: 64;
66088 	long: 64;
66089 	long: 64;
66090 	long: 64;
66091 	long: 64;
66092 	long: 64;
66093 	long: 64;
66094 	long: 64;
66095 	long: 64;
66096 	long: 64;
66097 	long: 64;
66098 	long: 64;
66099 	long: 64;
66100 	long: 64;
66101 	long: 64;
66102 	long: 64;
66103 	long: 64;
66104 	long: 64;
66105 	long: 64;
66106 	long: 64;
66107 	long: 64;
66108 	long: 64;
66109 	long: 64;
66110 	long: 64;
66111 	long: 64;
66112 	long: 64;
66113 	long: 64;
66114 	long: 64;
66115 	long: 64;
66116 	long: 64;
66117 	long: 64;
66118 	long: 64;
66119 	long: 64;
66120 	long: 64;
66121 	long: 64;
66122 	long: 64;
66123 	long: 64;
66124 	long: 64;
66125 	long: 64;
66126 	long: 64;
66127 	long: 64;
66128 	long: 64;
66129 	long: 64;
66130 	long: 64;
66131 	long: 64;
66132 	long: 64;
66133 	long: 64;
66134 	long: 64;
66135 	long: 64;
66136 	long: 64;
66137 	long: 64;
66138 	long: 64;
66139 	long: 64;
66140 	long: 64;
66141 	long: 64;
66142 	long: 64;
66143 	long: 64;
66144 	long: 64;
66145 	long: 64;
66146 	long: 64;
66147 	long: 64;
66148 	long: 64;
66149 	long: 64;
66150 	long: 64;
66151 	long: 64;
66152 	long: 64;
66153 	long: 64;
66154 	long: 64;
66155 	long: 64;
66156 	long: 64;
66157 	long: 64;
66158 	long: 64;
66159 	long: 64;
66160 	long: 64;
66161 	long: 64;
66162 	long: 64;
66163 	long: 64;
66164 	long: 64;
66165 	long: 64;
66166 	long: 64;
66167 	long: 64;
66168 	long: 64;
66169 	long: 64;
66170 	long: 64;
66171 	long: 64;
66172 	long: 64;
66173 	long: 64;
66174 	long: 64;
66175 	long: 64;
66176 	long: 64;
66177 	long: 64;
66178 	long: 64;
66179 	long: 64;
66180 	long: 64;
66181 	long: 64;
66182 	long: 64;
66183 	long: 64;
66184 	long: 64;
66185 	long: 64;
66186 	long: 64;
66187 	long: 64;
66188 	long: 64;
66189 	long: 64;
66190 	long: 64;
66191 	long: 64;
66192 	long: 64;
66193 	long: 64;
66194 	long: 64;
66195 	long: 64;
66196 	long: 64;
66197 	long: 64;
66198 	long: 64;
66199 	long: 64;
66200 	long: 64;
66201 	long: 64;
66202 	long: 64;
66203 	long: 64;
66204 	long: 64;
66205 	long: 64;
66206 	long: 64;
66207 	long: 64;
66208 	long: 64;
66209 	long: 64;
66210 	long: 64;
66211 	long: 64;
66212 	long: 64;
66213 	long: 64;
66214 	long: 64;
66215 	long: 64;
66216 	long: 64;
66217 	long: 64;
66218 	long: 64;
66219 	long: 64;
66220 	long: 64;
66221 	long: 64;
66222 	long: 64;
66223 	long: 64;
66224 	long: 64;
66225 	long: 64;
66226 	long: 64;
66227 	long: 64;
66228 	long: 64;
66229 	long: 64;
66230 	long: 64;
66231 	long: 64;
66232 	long: 64;
66233 	long: 64;
66234 	long: 64;
66235 	long: 64;
66236 	long: 64;
66237 	long: 64;
66238 	long: 64;
66239 	long: 64;
66240 	long: 64;
66241 	long: 64;
66242 	long: 64;
66243 	long: 64;
66244 	long: 64;
66245 	long: 64;
66246 	long: 64;
66247 	long: 64;
66248 	long: 64;
66249 	long: 64;
66250 	long: 64;
66251 	long: 64;
66252 	long: 64;
66253 	long: 64;
66254 	long: 64;
66255 	long: 64;
66256 	long: 64;
66257 	long: 64;
66258 	long: 64;
66259 	long: 64;
66260 	long: 64;
66261 	long: 64;
66262 	long: 64;
66263 	long: 64;
66264 	long: 64;
66265 	long: 64;
66266 	long: 64;
66267 	long: 64;
66268 	long: 64;
66269 	long: 64;
66270 	long: 64;
66271 	long: 64;
66272 	long: 64;
66273 	long: 64;
66274 	long: 64;
66275 	long: 64;
66276 	long: 64;
66277 	long: 64;
66278 	long: 64;
66279 	long: 64;
66280 	long: 64;
66281 	long: 64;
66282 	long: 64;
66283 	long: 64;
66284 	long: 64;
66285 	long: 64;
66286 	long: 64;
66287 	long: 64;
66288 	long: 64;
66289 	long: 64;
66290 	long: 64;
66291 	long: 64;
66292 	long: 64;
66293 	long: 64;
66294 	long: 64;
66295 	long: 64;
66296 	long: 64;
66297 	long: 64;
66298 	long: 64;
66299 	long: 64;
66300 	long: 64;
66301 	long: 64;
66302 	long: 64;
66303 	long: 64;
66304 	long: 64;
66305 	long: 64;
66306 	long: 64;
66307 	long: 64;
66308 	long: 64;
66309 	long: 64;
66310 	long: 64;
66311 	long: 64;
66312 	long: 64;
66313 	long: 64;
66314 	long: 64;
66315 	long: 64;
66316 	long: 64;
66317 	long: 64;
66318 	long: 64;
66319 	long: 64;
66320 	long: 64;
66321 	long: 64;
66322 	long: 64;
66323 	long: 64;
66324 	long: 64;
66325 	long: 64;
66326 	long: 64;
66327 	long: 64;
66328 	long: 64;
66329 	long: 64;
66330 	long: 64;
66331 	long: 64;
66332 	long: 64;
66333 	long: 64;
66334 	long: 64;
66335 	long: 64;
66336 	long: 64;
66337 	long: 64;
66338 	long: 64;
66339 	long: 64;
66340 	long: 64;
66341 	long: 64;
66342 	long: 64;
66343 	long: 64;
66344 	long: 64;
66345 	long: 64;
66346 	long: 64;
66347 	long: 64;
66348 	long: 64;
66349 	long: 64;
66350 	long: 64;
66351 	long: 64;
66352 	long: 64;
66353 	long: 64;
66354 	long: 64;
66355 	long: 64;
66356 	long: 64;
66357 	long: 64;
66358 	long: 64;
66359 	long: 64;
66360 	long: 64;
66361 	long: 64;
66362 	long: 64;
66363 	long: 64;
66364 	long: 64;
66365 	long: 64;
66366 	long: 64;
66367 	long: 64;
66368 	long: 64;
66369 	long: 64;
66370 	long: 64;
66371 	long: 64;
66372 	long: 64;
66373 	long: 64;
66374 	long: 64;
66375 	long: 64;
66376 	long: 64;
66377 	long: 64;
66378 	long: 64;
66379 	long: 64;
66380 	long: 64;
66381 	long: 64;
66382 	long: 64;
66383 	long: 64;
66384 	long: 64;
66385 	long: 64;
66386 	long: 64;
66387 	long: 64;
66388 	long: 64;
66389 	long: 64;
66390 	long: 64;
66391 	long: 64;
66392 	long: 64;
66393 	long: 64;
66394 	long: 64;
66395 	long: 64;
66396 	long: 64;
66397 	long: 64;
66398 	long: 64;
66399 	long: 64;
66400 	long: 64;
66401 	long: 64;
66402 	long: 64;
66403 	long: 64;
66404 	long: 64;
66405 	long: 64;
66406 	long: 64;
66407 	long: 64;
66408 	long: 64;
66409 	long: 64;
66410 	long: 64;
66411 	long: 64;
66412 	long: 64;
66413 	long: 64;
66414 	long: 64;
66415 	long: 64;
66416 	long: 64;
66417 	long: 64;
66418 	long: 64;
66419 	long: 64;
66420 	long: 64;
66421 	long: 64;
66422 	long: 64;
66423 	long: 64;
66424 	long: 64;
66425 	long: 64;
66426 	long: 64;
66427 	long: 64;
66428 	long: 64;
66429 	long: 64;
66430 	long: 64;
66431 	long: 64;
66432 	long: 64;
66433 	long: 64;
66434 	long: 64;
66435 	long: 64;
66436 	long: 64;
66437 	long: 64;
66438 	long: 64;
66439 	long: 64;
66440 	long: 64;
66441 	long: 64;
66442 	long: 64;
66443 	long: 64;
66444 	long: 64;
66445 	long: 64;
66446 	long: 64;
66447 	long: 64;
66448 	long: 64;
66449 	long: 64;
66450 	long: 64;
66451 	long: 64;
66452 	long: 64;
66453 	long: 64;
66454 	long: 64;
66455 	long: 64;
66456 	long: 64;
66457 	long: 64;
66458 	long: 64;
66459 	long: 64;
66460 	long: 64;
66461 	long: 64;
66462 	long: 64;
66463 	long: 64;
66464 	long: 64;
66465 	long: 64;
66466 	long: 64;
66467 	long: 64;
66468 	long: 64;
66469 	long: 64;
66470 	long: 64;
66471 	long: 64;
66472 	long: 64;
66473 	long: 64;
66474 	long: 64;
66475 	long: 64;
66476 	long: 64;
66477 	long: 64;
66478 	long: 64;
66479 	long: 64;
66480 	long: 64;
66481 	long: 64;
66482 	long: 64;
66483 	long: 64;
66484 	long: 64;
66485 	long: 64;
66486 	long: 64;
66487 	long: 64;
66488 	long: 64;
66489 	long: 64;
66490 	long: 64;
66491 	long: 64;
66492 	long: 64;
66493 	long: 64;
66494 	long: 64;
66495 	long: 64;
66496 	long: 64;
66497 	long: 64;
66498 	long: 64;
66499 	long: 64;
66500 	long: 64;
66501 	long: 64;
66502 	long: 64;
66503 	long: 64;
66504 	long: 64;
66505 	long: 64;
66506 	long: 64;
66507 	long: 64;
66508 	long: 64;
66509 	long: 64;
66510 	long: 64;
66511 	long: 64;
66512 	long: 64;
66513 	long: 64;
66514 	long: 64;
66515 	long: 64;
66516 	long: 64;
66517 	long: 64;
66518 	long: 64;
66519 	long: 64;
66520 	long: 64;
66521 	long: 64;
66522 	long: 64;
66523 	long: 64;
66524 	long: 64;
66525 	long: 64;
66526 	long: 64;
66527 	long: 64;
66528 	long: 64;
66529 	long: 64;
66530 	long: 64;
66531 	long: 64;
66532 	long: 64;
66533 	long: 64;
66534 	long: 64;
66535 	long: 64;
66536 	long: 64;
66537 	long: 64;
66538 	long: 64;
66539 	long: 64;
66540 	long: 64;
66541 	long: 64;
66542 	long: 64;
66543 	long: 64;
66544 	long: 64;
66545 	long: 64;
66546 	long: 64;
66547 	long: 64;
66548 	long: 64;
66549 	long: 64;
66550 	long: 64;
66551 	long: 64;
66552 	long: 64;
66553 	long: 64;
66554 	long: 64;
66555 	long: 64;
66556 	long: 64;
66557 	long: 64;
66558 	long: 64;
66559 	long: 64;
66560 	long: 64;
66561 	long: 64;
66562 	long: 64;
66563 	long: 64;
66564 	long: 64;
66565 	long: 64;
66566 	long: 64;
66567 	long: 64;
66568 	long: 64;
66569 	long: 64;
66570 	long: 64;
66571 	long: 64;
66572 	long: 64;
66573 	long: 64;
66574 	long: 64;
66575 	long: 64;
66576 	long: 64;
66577 	long: 64;
66578 	long: 64;
66579 	long: 64;
66580 	long: 64;
66581 	long: 64;
66582 	long: 64;
66583 	long: 64;
66584 	long: 64;
66585 	long: 64;
66586 	long: 64;
66587 	long: 64;
66588 	long: 64;
66589 	long: 64;
66590 	long: 64;
66591 	long: 64;
66592 	long: 64;
66593 	long: 64;
66594 	long: 64;
66595 	long: 64;
66596 	long: 64;
66597 	long: 64;
66598 	long: 64;
66599 	long: 64;
66600 	long: 64;
66601 	long: 64;
66602 	long: 64;
66603 	long: 64;
66604 	long: 64;
66605 	long: 64;
66606 	long: 64;
66607 	long: 64;
66608 	long: 64;
66609 	long: 64;
66610 	long: 64;
66611 	long: 64;
66612 	long: 64;
66613 	long: 64;
66614 	long: 64;
66615 	long: 64;
66616 	long: 64;
66617 	long: 64;
66618 	long: 64;
66619 	long: 64;
66620 	long: 64;
66621 	long: 64;
66622 	long: 64;
66623 	long: 64;
66624 	long: 64;
66625 	long: 64;
66626 	long: 64;
66627 	long: 64;
66628 	long: 64;
66629 	long: 64;
66630 	long: 64;
66631 	long: 64;
66632 	long: 64;
66633 	long: 64;
66634 	long: 64;
66635 	long: 64;
66636 	long: 64;
66637 	long: 64;
66638 	long: 64;
66639 	long: 64;
66640 	long: 64;
66641 	long: 64;
66642 	long: 64;
66643 	long: 64;
66644 	long: 64;
66645 	long: 64;
66646 	long: 64;
66647 	long: 64;
66648 	long: 64;
66649 	long: 64;
66650 	long: 64;
66651 	long: 64;
66652 	long: 64;
66653 	long: 64;
66654 	long: 64;
66655 	long: 64;
66656 	long: 64;
66657 	long: 64;
66658 	long: 64;
66659 	long: 64;
66660 	long: 64;
66661 	long: 64;
66662 	long: 64;
66663 	long: 64;
66664 	long: 64;
66665 	long: 64;
66666 	long: 64;
66667 	long: 64;
66668 	long: 64;
66669 	long: 64;
66670 	long: 64;
66671 	long: 64;
66672 	long: 64;
66673 	long: 64;
66674 	long: 64;
66675 	long: 64;
66676 	long: 64;
66677 	long: 64;
66678 	long: 64;
66679 	long: 64;
66680 	long: 64;
66681 	long: 64;
66682 	long: 64;
66683 	long: 64;
66684 	long: 64;
66685 	long: 64;
66686 	long: 64;
66687 	long: 64;
66688 	long: 64;
66689 	long: 64;
66690 	long: 64;
66691 	long: 64;
66692 	long: 64;
66693 	long: 64;
66694 	long: 64;
66695 	long: 64;
66696 	long: 64;
66697 	long: 64;
66698 	long: 64;
66699 	long: 64;
66700 	long: 64;
66701 	long: 64;
66702 	long: 64;
66703 	long: 64;
66704 	long: 64;
66705 	long: 64;
66706 	long: 64;
66707 	long: 64;
66708 	long: 64;
66709 	long: 64;
66710 	long: 64;
66711 	long: 64;
66712 	long: 64;
66713 	long: 64;
66714 	long: 64;
66715 	long: 64;
66716 	long: 64;
66717 	long: 64;
66718 	long: 64;
66719 	long: 64;
66720 	long: 64;
66721 	long: 64;
66722 	long: 64;
66723 	long: 64;
66724 	long: 64;
66725 	long: 64;
66726 	long: 64;
66727 	long: 64;
66728 	long: 64;
66729 	long: 64;
66730 	long: 64;
66731 	long: 64;
66732 	long: 64;
66733 	long: 64;
66734 	long: 64;
66735 	long: 64;
66736 	long: 64;
66737 	long: 64;
66738 	long: 64;
66739 	long: 64;
66740 	long: 64;
66741 	long: 64;
66742 	long: 64;
66743 	long: 64;
66744 	long: 64;
66745 	long: 64;
66746 	long: 64;
66747 	long: 64;
66748 	long: 64;
66749 	long: 64;
66750 	long: 64;
66751 	long: 64;
66752 	long: 64;
66753 	long: 64;
66754 	long: 64;
66755 	long: 64;
66756 	long: 64;
66757 	long: 64;
66758 	long: 64;
66759 	long: 64;
66760 	long: 64;
66761 	long: 64;
66762 	long: 64;
66763 	long: 64;
66764 	long: 64;
66765 	long: 64;
66766 	long: 64;
66767 	long: 64;
66768 	long: 64;
66769 	long: 64;
66770 	long: 64;
66771 	long: 64;
66772 	long: 64;
66773 	long: 64;
66774 	long: 64;
66775 	long: 64;
66776 	long: 64;
66777 	long: 64;
66778 	long: 64;
66779 	long: 64;
66780 	long: 64;
66781 	long: 64;
66782 	long: 64;
66783 	long: 64;
66784 	long: 64;
66785 	long: 64;
66786 	long: 64;
66787 	long: 64;
66788 	long: 64;
66789 	long: 64;
66790 	long: 64;
66791 	long: 64;
66792 	long: 64;
66793 	long: 64;
66794 	long: 64;
66795 	long: 64;
66796 	long: 64;
66797 	long: 64;
66798 	long: 64;
66799 	long: 64;
66800 	long: 64;
66801 	long: 64;
66802 	long: 64;
66803 	long: 64;
66804 	long: 64;
66805 	long: 64;
66806 	long: 64;
66807 	long: 64;
66808 	long: 64;
66809 	long: 64;
66810 	long: 64;
66811 	long: 64;
66812 	long: 64;
66813 	long: 64;
66814 	long: 64;
66815 	long: 64;
66816 	long: 64;
66817 	long: 64;
66818 	long: 64;
66819 	long: 64;
66820 	long: 64;
66821 	long: 64;
66822 	long: 64;
66823 	long: 64;
66824 	long: 64;
66825 	long: 64;
66826 	long: 64;
66827 	long: 64;
66828 	long: 64;
66829 	long: 64;
66830 	long: 64;
66831 	long: 64;
66832 	long: 64;
66833 	long: 64;
66834 	long: 64;
66835 	long: 64;
66836 	long: 64;
66837 	long: 64;
66838 	long: 64;
66839 	long: 64;
66840 	long: 64;
66841 	long: 64;
66842 	long: 64;
66843 	long: 64;
66844 	long: 64;
66845 	long: 64;
66846 	long: 64;
66847 	long: 64;
66848 	long: 64;
66849 	long: 64;
66850 	long: 64;
66851 	long: 64;
66852 	long: 64;
66853 	long: 64;
66854 	long: 64;
66855 	long: 64;
66856 	long: 64;
66857 	long: 64;
66858 	long: 64;
66859 	long: 64;
66860 	long: 64;
66861 	long: 64;
66862 	long: 64;
66863 	long: 64;
66864 	long: 64;
66865 	long: 64;
66866 	long: 64;
66867 	long: 64;
66868 	long: 64;
66869 	long: 64;
66870 	long: 64;
66871 	long: 64;
66872 	long: 64;
66873 	long: 64;
66874 	long: 64;
66875 	long: 64;
66876 	long: 64;
66877 	long: 64;
66878 	long: 64;
66879 	long: 64;
66880 	long: 64;
66881 	long: 64;
66882 	long: 64;
66883 	long: 64;
66884 	long: 64;
66885 	long: 64;
66886 	long: 64;
66887 	long: 64;
66888 	long: 64;
66889 	long: 64;
66890 	long: 64;
66891 	long: 64;
66892 	long: 64;
66893 	long: 64;
66894 	long: 64;
66895 	long: 64;
66896 	long: 64;
66897 	long: 64;
66898 	long: 64;
66899 	long: 64;
66900 	long: 64;
66901 	long: 64;
66902 	long: 64;
66903 	long: 64;
66904 	long: 64;
66905 	long: 64;
66906 	long: 64;
66907 	long: 64;
66908 	long: 64;
66909 	long: 64;
66910 	long: 64;
66911 	long: 64;
66912 	long: 64;
66913 	long: 64;
66914 	long: 64;
66915 	long: 64;
66916 	long: 64;
66917 	long: 64;
66918 	long: 64;
66919 	long: 64;
66920 	long: 64;
66921 	long: 64;
66922 	long: 64;
66923 	long: 64;
66924 	long: 64;
66925 	long: 64;
66926 	long: 64;
66927 	long: 64;
66928 	long: 64;
66929 	long: 64;
66930 	long: 64;
66931 	long: 64;
66932 	long: 64;
66933 	long: 64;
66934 	long: 64;
66935 	long: 64;
66936 	long: 64;
66937 	long: 64;
66938 	long: 64;
66939 	long: 64;
66940 	long: 64;
66941 	long: 64;
66942 	long: 64;
66943 	long: 64;
66944 	long: 64;
66945 	long: 64;
66946 	long: 64;
66947 	long: 64;
66948 	long: 64;
66949 	long: 64;
66950 	long: 64;
66951 	long: 64;
66952 	long: 64;
66953 	long: 64;
66954 	long: 64;
66955 	long: 64;
66956 	long: 64;
66957 	long: 64;
66958 	long: 64;
66959 	long: 64;
66960 	long: 64;
66961 	long: 64;
66962 	long: 64;
66963 	long: 64;
66964 	long: 64;
66965 	long: 64;
66966 	long: 64;
66967 	long: 64;
66968 	long: 64;
66969 	long: 64;
66970 	long: 64;
66971 	long: 64;
66972 	long: 64;
66973 	long: 64;
66974 	long: 64;
66975 	long: 64;
66976 	long: 64;
66977 	long: 64;
66978 	long: 64;
66979 	long: 64;
66980 	long: 64;
66981 	long: 64;
66982 	long: 64;
66983 	long: 64;
66984 	long: 64;
66985 	long: 64;
66986 	long: 64;
66987 	long: 64;
66988 	long: 64;
66989 	long: 64;
66990 	long: 64;
66991 	long: 64;
66992 	long: 64;
66993 	long: 64;
66994 	long: 64;
66995 	long: 64;
66996 	long: 64;
66997 	long: 64;
66998 	long: 64;
66999 	long: 64;
67000 	long: 64;
67001 	long: 64;
67002 	long: 64;
67003 	long: 64;
67004 	long: 64;
67005 	long: 64;
67006 	long: 64;
67007 	long: 64;
67008 	long: 64;
67009 	long: 64;
67010 	long: 64;
67011 	long: 64;
67012 	long: 64;
67013 	long: 64;
67014 	long: 64;
67015 	long: 64;
67016 	long: 64;
67017 	long: 64;
67018 	long: 64;
67019 	long: 64;
67020 	long: 64;
67021 	long: 64;
67022 	long: 64;
67023 	long: 64;
67024 	long: 64;
67025 	long: 64;
67026 	long: 64;
67027 	long: 64;
67028 	long: 64;
67029 	long: 64;
67030 	long: 64;
67031 	long: 64;
67032 	long: 64;
67033 	long: 64;
67034 	long: 64;
67035 	long: 64;
67036 	long: 64;
67037 	long: 64;
67038 	long: 64;
67039 	long: 64;
67040 	long: 64;
67041 	long: 64;
67042 	long: 64;
67043 	long: 64;
67044 	long: 64;
67045 	long: 64;
67046 	long: 64;
67047 	long: 64;
67048 	long: 64;
67049 	long: 64;
67050 	long: 64;
67051 	long: 64;
67052 	long: 64;
67053 	long: 64;
67054 	long: 64;
67055 	long: 64;
67056 	long: 64;
67057 	long: 64;
67058 	long: 64;
67059 	long: 64;
67060 	long: 64;
67061 	long: 64;
67062 	long: 64;
67063 	long: 64;
67064 	long: 64;
67065 	long: 64;
67066 	long: 64;
67067 	long: 64;
67068 	long: 64;
67069 	long: 64;
67070 	long: 64;
67071 	long: 64;
67072 	long: 64;
67073 	long: 64;
67074 	long: 64;
67075 	long: 64;
67076 	long: 64;
67077 	long: 64;
67078 	long: 64;
67079 	long: 64;
67080 	long: 64;
67081 	long: 64;
67082 	long: 64;
67083 	long: 64;
67084 	long: 64;
67085 	long: 64;
67086 	long: 64;
67087 	long: 64;
67088 	long: 64;
67089 	long: 64;
67090 	long: 64;
67091 	long: 64;
67092 	long: 64;
67093 	long: 64;
67094 	long: 64;
67095 	long: 64;
67096 	long: 64;
67097 	long: 64;
67098 	long: 64;
67099 	long: 64;
67100 	long: 64;
67101 	long: 64;
67102 	long: 64;
67103 	long: 64;
67104 	long: 64;
67105 	long: 64;
67106 	long: 64;
67107 	long: 64;
67108 	long: 64;
67109 	long: 64;
67110 	long: 64;
67111 	long: 64;
67112 	long: 64;
67113 	long: 64;
67114 	long: 64;
67115 	long: 64;
67116 	long: 64;
67117 	long: 64;
67118 	long: 64;
67119 	long: 64;
67120 	long: 64;
67121 	long: 64;
67122 	long: 64;
67123 	long: 64;
67124 	long: 64;
67125 	long: 64;
67126 	long: 64;
67127 	long: 64;
67128 	long: 64;
67129 	long: 64;
67130 	long: 64;
67131 	long: 64;
67132 	long: 64;
67133 	long: 64;
67134 	long: 64;
67135 	long: 64;
67136 	long: 64;
67137 	long: 64;
67138 	long: 64;
67139 	long: 64;
67140 	long: 64;
67141 	long: 64;
67142 	long: 64;
67143 	long: 64;
67144 	long: 64;
67145 	long: 64;
67146 	long: 64;
67147 	long: 64;
67148 	long: 64;
67149 	long: 64;
67150 	long: 64;
67151 	long: 64;
67152 	long: 64;
67153 	long: 64;
67154 	long: 64;
67155 	long: 64;
67156 	long: 64;
67157 	long: 64;
67158 	long: 64;
67159 	long: 64;
67160 	long: 64;
67161 	long: 64;
67162 	long: 64;
67163 	long: 64;
67164 	long: 64;
67165 	long: 64;
67166 	long: 64;
67167 	long: 64;
67168 	long: 64;
67169 	long: 64;
67170 	long: 64;
67171 	long: 64;
67172 	long: 64;
67173 	long: 64;
67174 	long: 64;
67175 	long: 64;
67176 	long: 64;
67177 	long: 64;
67178 	long: 64;
67179 	long: 64;
67180 	long: 64;
67181 	long: 64;
67182 	long: 64;
67183 	long: 64;
67184 	long: 64;
67185 	long: 64;
67186 	long: 64;
67187 	long: 64;
67188 	long: 64;
67189 	long: 64;
67190 	long: 64;
67191 	long: 64;
67192 	long: 64;
67193 	long: 64;
67194 	long: 64;
67195 	long: 64;
67196 	long: 64;
67197 	long: 64;
67198 	long: 64;
67199 	long: 64;
67200 	long: 64;
67201 	long: 64;
67202 	long: 64;
67203 	long: 64;
67204 	long: 64;
67205 	long: 64;
67206 	long: 64;
67207 	long: 64;
67208 	long: 64;
67209 	long: 64;
67210 	long: 64;
67211 	long: 64;
67212 	long: 64;
67213 	long: 64;
67214 	long: 64;
67215 	long: 64;
67216 	long: 64;
67217 	long: 64;
67218 	long: 64;
67219 	long: 64;
67220 	long: 64;
67221 	long: 64;
67222 	long: 64;
67223 	long: 64;
67224 	long: 64;
67225 	long: 64;
67226 	long: 64;
67227 	long: 64;
67228 	long: 64;
67229 	long: 64;
67230 	long: 64;
67231 	long: 64;
67232 	long: 64;
67233 	long: 64;
67234 	long: 64;
67235 	long: 64;
67236 	long: 64;
67237 	long: 64;
67238 	long: 64;
67239 	long: 64;
67240 	long: 64;
67241 	long: 64;
67242 	long: 64;
67243 	long: 64;
67244 	long: 64;
67245 	long: 64;
67246 	long: 64;
67247 	long: 64;
67248 	long: 64;
67249 	long: 64;
67250 	long: 64;
67251 	long: 64;
67252 	long: 64;
67253 	long: 64;
67254 	long: 64;
67255 	long: 64;
67256 	long: 64;
67257 	long: 64;
67258 	long: 64;
67259 	long: 64;
67260 	long: 64;
67261 	long: 64;
67262 	long: 64;
67263 	long: 64;
67264 	long: 64;
67265 	long: 64;
67266 	long: 64;
67267 	long: 64;
67268 	long: 64;
67269 	long: 64;
67270 	long: 64;
67271 	long: 64;
67272 	long: 64;
67273 	long: 64;
67274 	long: 64;
67275 	long: 64;
67276 	long: 64;
67277 	long: 64;
67278 	long: 64;
67279 	long: 64;
67280 	long: 64;
67281 	long: 64;
67282 	long: 64;
67283 	long: 64;
67284 	long: 64;
67285 	long: 64;
67286 	long: 64;
67287 	long: 64;
67288 	long: 64;
67289 	long: 64;
67290 	long: 64;
67291 	long: 64;
67292 	long: 64;
67293 	long: 64;
67294 	long: 64;
67295 	long: 64;
67296 	long: 64;
67297 	long: 64;
67298 	long: 64;
67299 	long: 64;
67300 	long: 64;
67301 	long: 64;
67302 	long: 64;
67303 	long: 64;
67304 	long: 64;
67305 	long: 64;
67306 	long: 64;
67307 	long: 64;
67308 	long: 64;
67309 	long: 64;
67310 	long: 64;
67311 	long: 64;
67312 	long: 64;
67313 	long: 64;
67314 	long: 64;
67315 	long: 64;
67316 	long: 64;
67317 	long: 64;
67318 	long: 64;
67319 	long: 64;
67320 	long: 64;
67321 	long: 64;
67322 	long: 64;
67323 	long: 64;
67324 	long: 64;
67325 	long: 64;
67326 	long: 64;
67327 	long: 64;
67328 	long: 64;
67329 	long: 64;
67330 	long: 64;
67331 	long: 64;
67332 	long: 64;
67333 	long: 64;
67334 	long: 64;
67335 	long: 64;
67336 	long: 64;
67337 	long: 64;
67338 	long: 64;
67339 	long: 64;
67340 	long: 64;
67341 	long: 64;
67342 	long: 64;
67343 	long: 64;
67344 	long: 64;
67345 	long: 64;
67346 	long: 64;
67347 	long: 64;
67348 	long: 64;
67349 	long: 64;
67350 	long: 64;
67351 	long: 64;
67352 	long: 64;
67353 	long: 64;
67354 	long: 64;
67355 	long: 64;
67356 	long: 64;
67357 	long: 64;
67358 	long: 64;
67359 	long: 64;
67360 	long: 64;
67361 	long: 64;
67362 	long: 64;
67363 	long: 64;
67364 	long: 64;
67365 	long: 64;
67366 	long: 64;
67367 	long: 64;
67368 	long: 64;
67369 	long: 64;
67370 	long: 64;
67371 	long: 64;
67372 	long: 64;
67373 	long: 64;
67374 	long: 64;
67375 	long: 64;
67376 	long: 64;
67377 	long: 64;
67378 	long: 64;
67379 	long: 64;
67380 	long: 64;
67381 	long: 64;
67382 	long: 64;
67383 	long: 64;
67384 	long: 64;
67385 	long: 64;
67386 	long: 64;
67387 	long: 64;
67388 	long: 64;
67389 	long: 64;
67390 	long: 64;
67391 	long: 64;
67392 	long: 64;
67393 	long: 64;
67394 	long: 64;
67395 	long: 64;
67396 	long: 64;
67397 	long: 64;
67398 	long: 64;
67399 	long: 64;
67400 	long: 64;
67401 	long: 64;
67402 	long: 64;
67403 	long: 64;
67404 	long: 64;
67405 	long: 64;
67406 	long: 64;
67407 	long: 64;
67408 	long: 64;
67409 	long: 64;
67410 	long: 64;
67411 	long: 64;
67412 	long: 64;
67413 	long: 64;
67414 	long: 64;
67415 	long: 64;
67416 	long: 64;
67417 	long: 64;
67418 	long: 64;
67419 	long: 64;
67420 	long: 64;
67421 	long: 64;
67422 	long: 64;
67423 	long: 64;
67424 	long: 64;
67425 	long: 64;
67426 	long: 64;
67427 	long: 64;
67428 	long: 64;
67429 	long: 64;
67430 	long: 64;
67431 	long: 64;
67432 	long: 64;
67433 	long: 64;
67434 	long: 64;
67435 	long: 64;
67436 	long: 64;
67437 	long: 64;
67438 	long: 64;
67439 	long: 64;
67440 	long: 64;
67441 	long: 64;
67442 	long: 64;
67443 	long: 64;
67444 	long: 64;
67445 	long: 64;
67446 	long: 64;
67447 	long: 64;
67448 	long: 64;
67449 	long: 64;
67450 	long: 64;
67451 	long: 64;
67452 	long: 64;
67453 	long: 64;
67454 	long: 64;
67455 	long: 64;
67456 	long: 64;
67457 	long: 64;
67458 	long: 64;
67459 	long: 64;
67460 	long: 64;
67461 	long: 64;
67462 	long: 64;
67463 	long: 64;
67464 	long: 64;
67465 	long: 64;
67466 	long: 64;
67467 	long: 64;
67468 	long: 64;
67469 	long: 64;
67470 	long: 64;
67471 	long: 64;
67472 	long: 64;
67473 	long: 64;
67474 	long: 64;
67475 	long: 64;
67476 	long: 64;
67477 	long: 64;
67478 	long: 64;
67479 	long: 64;
67480 	long: 64;
67481 	long: 64;
67482 	long: 64;
67483 	long: 64;
67484 	long: 64;
67485 	long: 64;
67486 	long: 64;
67487 	long: 64;
67488 	long: 64;
67489 	long: 64;
67490 	long: 64;
67491 	long: 64;
67492 	long: 64;
67493 	long: 64;
67494 	long: 64;
67495 	long: 64;
67496 	long: 64;
67497 	long: 64;
67498 	long: 64;
67499 	long: 64;
67500 	long: 64;
67501 	long: 64;
67502 	long: 64;
67503 	long: 64;
67504 	long: 64;
67505 	long: 64;
67506 	long: 64;
67507 	long: 64;
67508 	long: 64;
67509 	long: 64;
67510 	long: 64;
67511 	long: 64;
67512 	long: 64;
67513 	long: 64;
67514 	long: 64;
67515 	long: 64;
67516 	long: 64;
67517 	long: 64;
67518 	long: 64;
67519 	long: 64;
67520 	long: 64;
67521 	long: 64;
67522 	long: 64;
67523 	long: 64;
67524 	long: 64;
67525 	long: 64;
67526 	long: 64;
67527 	long: 64;
67528 	long: 64;
67529 	long: 64;
67530 	long: 64;
67531 	long: 64;
67532 	long: 64;
67533 	long: 64;
67534 	long: 64;
67535 	long: 64;
67536 	long: 64;
67537 	long: 64;
67538 	long: 64;
67539 	long: 64;
67540 	long: 64;
67541 	long: 64;
67542 	long: 64;
67543 	long: 64;
67544 	long: 64;
67545 	long: 64;
67546 	long: 64;
67547 	long: 64;
67548 	long: 64;
67549 	long: 64;
67550 	long: 64;
67551 	long: 64;
67552 	long: 64;
67553 	long: 64;
67554 	long: 64;
67555 	long: 64;
67556 	long: 64;
67557 	long: 64;
67558 	long: 64;
67559 	long: 64;
67560 	long: 64;
67561 	long: 64;
67562 	long: 64;
67563 	long: 64;
67564 	long: 64;
67565 	long: 64;
67566 	long: 64;
67567 	long: 64;
67568 	long: 64;
67569 	long: 64;
67570 	long: 64;
67571 	long: 64;
67572 	long: 64;
67573 	long: 64;
67574 	long: 64;
67575 	long: 64;
67576 	long: 64;
67577 	long: 64;
67578 	long: 64;
67579 	long: 64;
67580 	long: 64;
67581 	long: 64;
67582 	long: 64;
67583 	long: 64;
67584 	long: 64;
67585 	long: 64;
67586 	long: 64;
67587 	long: 64;
67588 	long: 64;
67589 	long: 64;
67590 	long: 64;
67591 	long: 64;
67592 	long: 64;
67593 	long: 64;
67594 	long: 64;
67595 	long: 64;
67596 	long: 64;
67597 	long: 64;
67598 	long: 64;
67599 	long: 64;
67600 	long: 64;
67601 	long: 64;
67602 	long: 64;
67603 	long: 64;
67604 	long: 64;
67605 	long: 64;
67606 	long: 64;
67607 	long: 64;
67608 	long: 64;
67609 	long: 64;
67610 	long: 64;
67611 	long: 64;
67612 	long: 64;
67613 	long: 64;
67614 	long: 64;
67615 	long: 64;
67616 	long: 64;
67617 	long: 64;
67618 	long: 64;
67619 	long: 64;
67620 	long: 64;
67621 	long: 64;
67622 	long: 64;
67623 	long: 64;
67624 	long: 64;
67625 	long: 64;
67626 	long: 64;
67627 	long: 64;
67628 	long: 64;
67629 	long: 64;
67630 	long: 64;
67631 	long: 64;
67632 	long: 64;
67633 	long: 64;
67634 	long: 64;
67635 	long: 64;
67636 	long: 64;
67637 	long: 64;
67638 	long: 64;
67639 	long: 64;
67640 	long: 64;
67641 	long: 64;
67642 	long: 64;
67643 	long: 64;
67644 	long: 64;
67645 	long: 64;
67646 	long: 64;
67647 	long: 64;
67648 	long: 64;
67649 	long: 64;
67650 	long: 64;
67651 	long: 64;
67652 	long: 64;
67653 	long: 64;
67654 	long: 64;
67655 	long: 64;
67656 	long: 64;
67657 	long: 64;
67658 	long: 64;
67659 	long: 64;
67660 	long: 64;
67661 	long: 64;
67662 	long: 64;
67663 	long: 64;
67664 	long: 64;
67665 	long: 64;
67666 	long: 64;
67667 	long: 64;
67668 	long: 64;
67669 	long: 64;
67670 	long: 64;
67671 	long: 64;
67672 	long: 64;
67673 	long: 64;
67674 	long: 64;
67675 	long: 64;
67676 	long: 64;
67677 	long: 64;
67678 	long: 64;
67679 	long: 64;
67680 	long: 64;
67681 	long: 64;
67682 	long: 64;
67683 	long: 64;
67684 	long: 64;
67685 	long: 64;
67686 	long: 64;
67687 	long: 64;
67688 	long: 64;
67689 	long: 64;
67690 	long: 64;
67691 	long: 64;
67692 	long: 64;
67693 	long: 64;
67694 	long: 64;
67695 	long: 64;
67696 	long: 64;
67697 	long: 64;
67698 	long: 64;
67699 	long: 64;
67700 	long: 64;
67701 	long: 64;
67702 	long: 64;
67703 	long: 64;
67704 	long: 64;
67705 	long: 64;
67706 	long: 64;
67707 	long: 64;
67708 	long: 64;
67709 	long: 64;
67710 	long: 64;
67711 	long: 64;
67712 	long: 64;
67713 	long: 64;
67714 	long: 64;
67715 	long: 64;
67716 	long: 64;
67717 	long: 64;
67718 	long: 64;
67719 	long: 64;
67720 	long: 64;
67721 	long: 64;
67722 	long: 64;
67723 	long: 64;
67724 	long: 64;
67725 	long: 64;
67726 	long: 64;
67727 	long: 64;
67728 	long: 64;
67729 	long: 64;
67730 	long: 64;
67731 	long: 64;
67732 	long: 64;
67733 	long: 64;
67734 	long: 64;
67735 	long: 64;
67736 	long: 64;
67737 	long: 64;
67738 	long: 64;
67739 	long: 64;
67740 	long: 64;
67741 	long: 64;
67742 	long: 64;
67743 	long: 64;
67744 	long: 64;
67745 	long: 64;
67746 	long: 64;
67747 	long: 64;
67748 	long: 64;
67749 	long: 64;
67750 	long: 64;
67751 	long: 64;
67752 	long: 64;
67753 	long: 64;
67754 	long: 64;
67755 	long: 64;
67756 	long: 64;
67757 	long: 64;
67758 	long: 64;
67759 	long: 64;
67760 	long: 64;
67761 	long: 64;
67762 	long: 64;
67763 	long: 64;
67764 	long: 64;
67765 	long: 64;
67766 	long: 64;
67767 	long: 64;
67768 	long: 64;
67769 	long: 64;
67770 	long: 64;
67771 	long: 64;
67772 	long: 64;
67773 	long: 64;
67774 	long: 64;
67775 	long: 64;
67776 	long: 64;
67777 	long: 64;
67778 	long: 64;
67779 	long: 64;
67780 	long: 64;
67781 	long: 64;
67782 	long: 64;
67783 	long: 64;
67784 	long: 64;
67785 	long: 64;
67786 	long: 64;
67787 	long: 64;
67788 	long: 64;
67789 	long: 64;
67790 	long: 64;
67791 	long: 64;
67792 	long: 64;
67793 	long: 64;
67794 	long: 64;
67795 	long: 64;
67796 	long: 64;
67797 	long: 64;
67798 	long: 64;
67799 	long: 64;
67800 	long: 64;
67801 	long: 64;
67802 	long: 64;
67803 	long: 64;
67804 	long: 64;
67805 	long: 64;
67806 	long: 64;
67807 	long: 64;
67808 	long: 64;
67809 	long: 64;
67810 	long: 64;
67811 	long: 64;
67812 	long: 64;
67813 	long: 64;
67814 	long: 64;
67815 	long: 64;
67816 	long: 64;
67817 	long: 64;
67818 	long: 64;
67819 	long: 64;
67820 	long: 64;
67821 	long: 64;
67822 	long: 64;
67823 	long: 64;
67824 	long: 64;
67825 	long: 64;
67826 	long: 64;
67827 	long: 64;
67828 	long: 64;
67829 	long: 64;
67830 	long: 64;
67831 	long: 64;
67832 	long: 64;
67833 	long: 64;
67834 	long: 64;
67835 	long: 64;
67836 	long: 64;
67837 	long: 64;
67838 	long: 64;
67839 	long: 64;
67840 	long: 64;
67841 	long: 64;
67842 	long: 64;
67843 	long: 64;
67844 	long: 64;
67845 	long: 64;
67846 	long: 64;
67847 	long: 64;
67848 	long: 64;
67849 	long: 64;
67850 	long: 64;
67851 	long: 64;
67852 	long: 64;
67853 	long: 64;
67854 	long: 64;
67855 	long: 64;
67856 	long: 64;
67857 	long: 64;
67858 	long: 64;
67859 	long: 64;
67860 	long: 64;
67861 	long: 64;
67862 	long: 64;
67863 	long: 64;
67864 	long: 64;
67865 	long: 64;
67866 	long: 64;
67867 	long: 64;
67868 	long: 64;
67869 	long: 64;
67870 	long: 64;
67871 	long: 64;
67872 	long: 64;
67873 	long: 64;
67874 	long: 64;
67875 	long: 64;
67876 	long: 64;
67877 	long: 64;
67878 	long: 64;
67879 	long: 64;
67880 	long: 64;
67881 	long: 64;
67882 	long: 64;
67883 	long: 64;
67884 	long: 64;
67885 	long: 64;
67886 	long: 64;
67887 	long: 64;
67888 	long: 64;
67889 	long: 64;
67890 	long: 64;
67891 	long: 64;
67892 	long: 64;
67893 	long: 64;
67894 	long: 64;
67895 	long: 64;
67896 	long: 64;
67897 	long: 64;
67898 	long: 64;
67899 	long: 64;
67900 	long: 64;
67901 	long: 64;
67902 	long: 64;
67903 	long: 64;
67904 	long: 64;
67905 	long: 64;
67906 	long: 64;
67907 	long: 64;
67908 	long: 64;
67909 	long: 64;
67910 	long: 64;
67911 	long: 64;
67912 	long: 64;
67913 	long: 64;
67914 	long: 64;
67915 	long: 64;
67916 	long: 64;
67917 	long: 64;
67918 	long: 64;
67919 	long: 64;
67920 	long: 64;
67921 	long: 64;
67922 	long: 64;
67923 	long: 64;
67924 	long: 64;
67925 	long: 64;
67926 	long: 64;
67927 	long: 64;
67928 	long: 64;
67929 	long: 64;
67930 	long: 64;
67931 	long: 64;
67932 	long: 64;
67933 	long: 64;
67934 	long: 64;
67935 	long: 64;
67936 	long: 64;
67937 	long: 64;
67938 	long: 64;
67939 	long: 64;
67940 	long: 64;
67941 	long: 64;
67942 	long: 64;
67943 	long: 64;
67944 	long: 64;
67945 	long: 64;
67946 	long: 64;
67947 	long: 64;
67948 	long: 64;
67949 	long: 64;
67950 	long: 64;
67951 	long: 64;
67952 	long: 64;
67953 	long: 64;
67954 	long: 64;
67955 	long: 64;
67956 	long: 64;
67957 	long: 64;
67958 	long: 64;
67959 	long: 64;
67960 	long: 64;
67961 	long: 64;
67962 	long: 64;
67963 	long: 64;
67964 	long: 64;
67965 	long: 64;
67966 	long: 64;
67967 	long: 64;
67968 	long: 64;
67969 	long: 64;
67970 	long: 64;
67971 	long: 64;
67972 	long: 64;
67973 	long: 64;
67974 	long: 64;
67975 	long: 64;
67976 	long: 64;
67977 	long: 64;
67978 	long: 64;
67979 	long: 64;
67980 	long: 64;
67981 	long: 64;
67982 	long: 64;
67983 	long: 64;
67984 	long: 64;
67985 	long: 64;
67986 	long: 64;
67987 	long: 64;
67988 	long: 64;
67989 	long: 64;
67990 	long: 64;
67991 	long: 64;
67992 	long: 64;
67993 	long: 64;
67994 	long: 64;
67995 	long: 64;
67996 	long: 64;
67997 	long: 64;
67998 	long: 64;
67999 	long: 64;
68000 	long: 64;
68001 	long: 64;
68002 	long: 64;
68003 	long: 64;
68004 	long: 64;
68005 	long: 64;
68006 	long: 64;
68007 	long: 64;
68008 	long: 64;
68009 	long: 64;
68010 	long: 64;
68011 	long: 64;
68012 	long: 64;
68013 	long: 64;
68014 	long: 64;
68015 	long: 64;
68016 	long: 64;
68017 	long: 64;
68018 	long: 64;
68019 	long: 64;
68020 	long: 64;
68021 	long: 64;
68022 	long: 64;
68023 	long: 64;
68024 	long: 64;
68025 	long: 64;
68026 	long: 64;
68027 	long: 64;
68028 	long: 64;
68029 	long: 64;
68030 	long: 64;
68031 	long: 64;
68032 	long: 64;
68033 	long: 64;
68034 	long: 64;
68035 	long: 64;
68036 	long: 64;
68037 	long: 64;
68038 	long: 64;
68039 	long: 64;
68040 	long: 64;
68041 	long: 64;
68042 	long: 64;
68043 	long: 64;
68044 	long: 64;
68045 	long: 64;
68046 	long: 64;
68047 	long: 64;
68048 	long: 64;
68049 	long: 64;
68050 	long: 64;
68051 	long: 64;
68052 	long: 64;
68053 	long: 64;
68054 	long: 64;
68055 	long: 64;
68056 	long: 64;
68057 	long: 64;
68058 	long: 64;
68059 	long: 64;
68060 	long: 64;
68061 	long: 64;
68062 	long: 64;
68063 	long: 64;
68064 	long: 64;
68065 	long: 64;
68066 	long: 64;
68067 	long: 64;
68068 	long: 64;
68069 	long: 64;
68070 	long: 64;
68071 	long: 64;
68072 	long: 64;
68073 	long: 64;
68074 	long: 64;
68075 	long: 64;
68076 	long: 64;
68077 	long: 64;
68078 	long: 64;
68079 	long: 64;
68080 	long: 64;
68081 	long: 64;
68082 	long: 64;
68083 	long: 64;
68084 	long: 64;
68085 	long: 64;
68086 	long: 64;
68087 	long: 64;
68088 	long: 64;
68089 	long: 64;
68090 	long: 64;
68091 	long: 64;
68092 	long: 64;
68093 	long: 64;
68094 	long: 64;
68095 	long: 64;
68096 	long: 64;
68097 	long: 64;
68098 	long: 64;
68099 	long: 64;
68100 	long: 64;
68101 	long: 64;
68102 	long: 64;
68103 	long: 64;
68104 	long: 64;
68105 	long: 64;
68106 	long: 64;
68107 	long: 64;
68108 	long: 64;
68109 	long: 64;
68110 	long: 64;
68111 	long: 64;
68112 	long: 64;
68113 	long: 64;
68114 	long: 64;
68115 	long: 64;
68116 	long: 64;
68117 	long: 64;
68118 	long: 64;
68119 	long: 64;
68120 	long: 64;
68121 	long: 64;
68122 	long: 64;
68123 	long: 64;
68124 	long: 64;
68125 	long: 64;
68126 	long: 64;
68127 	long: 64;
68128 	long: 64;
68129 	long: 64;
68130 	long: 64;
68131 	long: 64;
68132 	long: 64;
68133 	long: 64;
68134 	long: 64;
68135 	long: 64;
68136 	long: 64;
68137 	long: 64;
68138 	long: 64;
68139 	long: 64;
68140 	long: 64;
68141 	long: 64;
68142 	long: 64;
68143 	long: 64;
68144 	long: 64;
68145 	long: 64;
68146 	long: 64;
68147 	long: 64;
68148 	long: 64;
68149 	long: 64;
68150 	long: 64;
68151 	long: 64;
68152 	long: 64;
68153 	long: 64;
68154 	long: 64;
68155 	long: 64;
68156 	long: 64;
68157 	long: 64;
68158 	long: 64;
68159 	long: 64;
68160 	long: 64;
68161 	long: 64;
68162 	long: 64;
68163 	long: 64;
68164 	long: 64;
68165 	long: 64;
68166 	long: 64;
68167 	long: 64;
68168 	long: 64;
68169 	long: 64;
68170 	long: 64;
68171 	long: 64;
68172 	long: 64;
68173 	long: 64;
68174 	long: 64;
68175 	long: 64;
68176 	long: 64;
68177 	long: 64;
68178 	long: 64;
68179 	long: 64;
68180 	long: 64;
68181 	long: 64;
68182 	long: 64;
68183 	long: 64;
68184 	long: 64;
68185 	long: 64;
68186 	long: 64;
68187 	long: 64;
68188 	long: 64;
68189 	long: 64;
68190 	long: 64;
68191 	long: 64;
68192 	long: 64;
68193 	long: 64;
68194 	long: 64;
68195 	long: 64;
68196 	long: 64;
68197 	long: 64;
68198 	long: 64;
68199 	long: 64;
68200 	long: 64;
68201 	long: 64;
68202 	long: 64;
68203 	long: 64;
68204 	long: 64;
68205 	long: 64;
68206 	long: 64;
68207 	long: 64;
68208 	long: 64;
68209 	long: 64;
68210 	long: 64;
68211 	long: 64;
68212 	long: 64;
68213 	long: 64;
68214 	long: 64;
68215 	long: 64;
68216 	long: 64;
68217 	long: 64;
68218 	long: 64;
68219 	long: 64;
68220 	long: 64;
68221 	long: 64;
68222 	long: 64;
68223 	long: 64;
68224 	long: 64;
68225 	long: 64;
68226 	long: 64;
68227 	long: 64;
68228 	long: 64;
68229 	long: 64;
68230 	long: 64;
68231 	long: 64;
68232 	long: 64;
68233 	long: 64;
68234 	long: 64;
68235 	long: 64;
68236 	long: 64;
68237 	long: 64;
68238 	long: 64;
68239 	long: 64;
68240 	long: 64;
68241 	long: 64;
68242 	long: 64;
68243 	long: 64;
68244 	long: 64;
68245 	long: 64;
68246 	long: 64;
68247 	long: 64;
68248 	long: 64;
68249 	long: 64;
68250 	long: 64;
68251 	long: 64;
68252 	long: 64;
68253 	long: 64;
68254 	long: 64;
68255 	long: 64;
68256 	long: 64;
68257 	long: 64;
68258 	long: 64;
68259 	long: 64;
68260 	long: 64;
68261 	long: 64;
68262 	long: 64;
68263 	long: 64;
68264 	long: 64;
68265 	long: 64;
68266 	long: 64;
68267 	long: 64;
68268 	long: 64;
68269 	long: 64;
68270 	long: 64;
68271 	long: 64;
68272 	long: 64;
68273 	long: 64;
68274 	long: 64;
68275 	long: 64;
68276 	long: 64;
68277 	long: 64;
68278 	long: 64;
68279 	long: 64;
68280 	long: 64;
68281 	long: 64;
68282 	long: 64;
68283 	long: 64;
68284 	long: 64;
68285 	long: 64;
68286 	long: 64;
68287 	long: 64;
68288 	long: 64;
68289 	long: 64;
68290 	long unsigned int consumer_pos;
68291 	long: 64;
68292 	long: 64;
68293 	long: 64;
68294 	long: 64;
68295 	long: 64;
68296 	long: 64;
68297 	long: 64;
68298 	long: 64;
68299 	long: 64;
68300 	long: 64;
68301 	long: 64;
68302 	long: 64;
68303 	long: 64;
68304 	long: 64;
68305 	long: 64;
68306 	long: 64;
68307 	long: 64;
68308 	long: 64;
68309 	long: 64;
68310 	long: 64;
68311 	long: 64;
68312 	long: 64;
68313 	long: 64;
68314 	long: 64;
68315 	long: 64;
68316 	long: 64;
68317 	long: 64;
68318 	long: 64;
68319 	long: 64;
68320 	long: 64;
68321 	long: 64;
68322 	long: 64;
68323 	long: 64;
68324 	long: 64;
68325 	long: 64;
68326 	long: 64;
68327 	long: 64;
68328 	long: 64;
68329 	long: 64;
68330 	long: 64;
68331 	long: 64;
68332 	long: 64;
68333 	long: 64;
68334 	long: 64;
68335 	long: 64;
68336 	long: 64;
68337 	long: 64;
68338 	long: 64;
68339 	long: 64;
68340 	long: 64;
68341 	long: 64;
68342 	long: 64;
68343 	long: 64;
68344 	long: 64;
68345 	long: 64;
68346 	long: 64;
68347 	long: 64;
68348 	long: 64;
68349 	long: 64;
68350 	long: 64;
68351 	long: 64;
68352 	long: 64;
68353 	long: 64;
68354 	long: 64;
68355 	long: 64;
68356 	long: 64;
68357 	long: 64;
68358 	long: 64;
68359 	long: 64;
68360 	long: 64;
68361 	long: 64;
68362 	long: 64;
68363 	long: 64;
68364 	long: 64;
68365 	long: 64;
68366 	long: 64;
68367 	long: 64;
68368 	long: 64;
68369 	long: 64;
68370 	long: 64;
68371 	long: 64;
68372 	long: 64;
68373 	long: 64;
68374 	long: 64;
68375 	long: 64;
68376 	long: 64;
68377 	long: 64;
68378 	long: 64;
68379 	long: 64;
68380 	long: 64;
68381 	long: 64;
68382 	long: 64;
68383 	long: 64;
68384 	long: 64;
68385 	long: 64;
68386 	long: 64;
68387 	long: 64;
68388 	long: 64;
68389 	long: 64;
68390 	long: 64;
68391 	long: 64;
68392 	long: 64;
68393 	long: 64;
68394 	long: 64;
68395 	long: 64;
68396 	long: 64;
68397 	long: 64;
68398 	long: 64;
68399 	long: 64;
68400 	long: 64;
68401 	long: 64;
68402 	long: 64;
68403 	long: 64;
68404 	long: 64;
68405 	long: 64;
68406 	long: 64;
68407 	long: 64;
68408 	long: 64;
68409 	long: 64;
68410 	long: 64;
68411 	long: 64;
68412 	long: 64;
68413 	long: 64;
68414 	long: 64;
68415 	long: 64;
68416 	long: 64;
68417 	long: 64;
68418 	long: 64;
68419 	long: 64;
68420 	long: 64;
68421 	long: 64;
68422 	long: 64;
68423 	long: 64;
68424 	long: 64;
68425 	long: 64;
68426 	long: 64;
68427 	long: 64;
68428 	long: 64;
68429 	long: 64;
68430 	long: 64;
68431 	long: 64;
68432 	long: 64;
68433 	long: 64;
68434 	long: 64;
68435 	long: 64;
68436 	long: 64;
68437 	long: 64;
68438 	long: 64;
68439 	long: 64;
68440 	long: 64;
68441 	long: 64;
68442 	long: 64;
68443 	long: 64;
68444 	long: 64;
68445 	long: 64;
68446 	long: 64;
68447 	long: 64;
68448 	long: 64;
68449 	long: 64;
68450 	long: 64;
68451 	long: 64;
68452 	long: 64;
68453 	long: 64;
68454 	long: 64;
68455 	long: 64;
68456 	long: 64;
68457 	long: 64;
68458 	long: 64;
68459 	long: 64;
68460 	long: 64;
68461 	long: 64;
68462 	long: 64;
68463 	long: 64;
68464 	long: 64;
68465 	long: 64;
68466 	long: 64;
68467 	long: 64;
68468 	long: 64;
68469 	long: 64;
68470 	long: 64;
68471 	long: 64;
68472 	long: 64;
68473 	long: 64;
68474 	long: 64;
68475 	long: 64;
68476 	long: 64;
68477 	long: 64;
68478 	long: 64;
68479 	long: 64;
68480 	long: 64;
68481 	long: 64;
68482 	long: 64;
68483 	long: 64;
68484 	long: 64;
68485 	long: 64;
68486 	long: 64;
68487 	long: 64;
68488 	long: 64;
68489 	long: 64;
68490 	long: 64;
68491 	long: 64;
68492 	long: 64;
68493 	long: 64;
68494 	long: 64;
68495 	long: 64;
68496 	long: 64;
68497 	long: 64;
68498 	long: 64;
68499 	long: 64;
68500 	long: 64;
68501 	long: 64;
68502 	long: 64;
68503 	long: 64;
68504 	long: 64;
68505 	long: 64;
68506 	long: 64;
68507 	long: 64;
68508 	long: 64;
68509 	long: 64;
68510 	long: 64;
68511 	long: 64;
68512 	long: 64;
68513 	long: 64;
68514 	long: 64;
68515 	long: 64;
68516 	long: 64;
68517 	long: 64;
68518 	long: 64;
68519 	long: 64;
68520 	long: 64;
68521 	long: 64;
68522 	long: 64;
68523 	long: 64;
68524 	long: 64;
68525 	long: 64;
68526 	long: 64;
68527 	long: 64;
68528 	long: 64;
68529 	long: 64;
68530 	long: 64;
68531 	long: 64;
68532 	long: 64;
68533 	long: 64;
68534 	long: 64;
68535 	long: 64;
68536 	long: 64;
68537 	long: 64;
68538 	long: 64;
68539 	long: 64;
68540 	long: 64;
68541 	long: 64;
68542 	long: 64;
68543 	long: 64;
68544 	long: 64;
68545 	long: 64;
68546 	long: 64;
68547 	long: 64;
68548 	long: 64;
68549 	long: 64;
68550 	long: 64;
68551 	long: 64;
68552 	long: 64;
68553 	long: 64;
68554 	long: 64;
68555 	long: 64;
68556 	long: 64;
68557 	long: 64;
68558 	long: 64;
68559 	long: 64;
68560 	long: 64;
68561 	long: 64;
68562 	long: 64;
68563 	long: 64;
68564 	long: 64;
68565 	long: 64;
68566 	long: 64;
68567 	long: 64;
68568 	long: 64;
68569 	long: 64;
68570 	long: 64;
68571 	long: 64;
68572 	long: 64;
68573 	long: 64;
68574 	long: 64;
68575 	long: 64;
68576 	long: 64;
68577 	long: 64;
68578 	long: 64;
68579 	long: 64;
68580 	long: 64;
68581 	long: 64;
68582 	long: 64;
68583 	long: 64;
68584 	long: 64;
68585 	long: 64;
68586 	long: 64;
68587 	long: 64;
68588 	long: 64;
68589 	long: 64;
68590 	long: 64;
68591 	long: 64;
68592 	long: 64;
68593 	long: 64;
68594 	long: 64;
68595 	long: 64;
68596 	long: 64;
68597 	long: 64;
68598 	long: 64;
68599 	long: 64;
68600 	long: 64;
68601 	long: 64;
68602 	long: 64;
68603 	long: 64;
68604 	long: 64;
68605 	long: 64;
68606 	long: 64;
68607 	long: 64;
68608 	long: 64;
68609 	long: 64;
68610 	long: 64;
68611 	long: 64;
68612 	long: 64;
68613 	long: 64;
68614 	long: 64;
68615 	long: 64;
68616 	long: 64;
68617 	long: 64;
68618 	long: 64;
68619 	long: 64;
68620 	long: 64;
68621 	long: 64;
68622 	long: 64;
68623 	long: 64;
68624 	long: 64;
68625 	long: 64;
68626 	long: 64;
68627 	long: 64;
68628 	long: 64;
68629 	long: 64;
68630 	long: 64;
68631 	long: 64;
68632 	long: 64;
68633 	long: 64;
68634 	long: 64;
68635 	long: 64;
68636 	long: 64;
68637 	long: 64;
68638 	long: 64;
68639 	long: 64;
68640 	long: 64;
68641 	long: 64;
68642 	long: 64;
68643 	long: 64;
68644 	long: 64;
68645 	long: 64;
68646 	long: 64;
68647 	long: 64;
68648 	long: 64;
68649 	long: 64;
68650 	long: 64;
68651 	long: 64;
68652 	long: 64;
68653 	long: 64;
68654 	long: 64;
68655 	long: 64;
68656 	long: 64;
68657 	long: 64;
68658 	long: 64;
68659 	long: 64;
68660 	long: 64;
68661 	long: 64;
68662 	long: 64;
68663 	long: 64;
68664 	long: 64;
68665 	long: 64;
68666 	long: 64;
68667 	long: 64;
68668 	long: 64;
68669 	long: 64;
68670 	long: 64;
68671 	long: 64;
68672 	long: 64;
68673 	long: 64;
68674 	long: 64;
68675 	long: 64;
68676 	long: 64;
68677 	long: 64;
68678 	long: 64;
68679 	long: 64;
68680 	long: 64;
68681 	long: 64;
68682 	long: 64;
68683 	long: 64;
68684 	long: 64;
68685 	long: 64;
68686 	long: 64;
68687 	long: 64;
68688 	long: 64;
68689 	long: 64;
68690 	long: 64;
68691 	long: 64;
68692 	long: 64;
68693 	long: 64;
68694 	long: 64;
68695 	long: 64;
68696 	long: 64;
68697 	long: 64;
68698 	long: 64;
68699 	long: 64;
68700 	long: 64;
68701 	long: 64;
68702 	long: 64;
68703 	long: 64;
68704 	long: 64;
68705 	long: 64;
68706 	long: 64;
68707 	long: 64;
68708 	long: 64;
68709 	long: 64;
68710 	long: 64;
68711 	long: 64;
68712 	long: 64;
68713 	long: 64;
68714 	long: 64;
68715 	long: 64;
68716 	long: 64;
68717 	long: 64;
68718 	long: 64;
68719 	long: 64;
68720 	long: 64;
68721 	long: 64;
68722 	long: 64;
68723 	long: 64;
68724 	long: 64;
68725 	long: 64;
68726 	long: 64;
68727 	long: 64;
68728 	long: 64;
68729 	long: 64;
68730 	long: 64;
68731 	long: 64;
68732 	long: 64;
68733 	long: 64;
68734 	long: 64;
68735 	long: 64;
68736 	long: 64;
68737 	long: 64;
68738 	long: 64;
68739 	long: 64;
68740 	long: 64;
68741 	long: 64;
68742 	long: 64;
68743 	long: 64;
68744 	long: 64;
68745 	long: 64;
68746 	long: 64;
68747 	long: 64;
68748 	long: 64;
68749 	long: 64;
68750 	long: 64;
68751 	long: 64;
68752 	long: 64;
68753 	long: 64;
68754 	long: 64;
68755 	long: 64;
68756 	long: 64;
68757 	long: 64;
68758 	long: 64;
68759 	long: 64;
68760 	long: 64;
68761 	long: 64;
68762 	long: 64;
68763 	long: 64;
68764 	long: 64;
68765 	long: 64;
68766 	long: 64;
68767 	long: 64;
68768 	long: 64;
68769 	long: 64;
68770 	long: 64;
68771 	long: 64;
68772 	long: 64;
68773 	long: 64;
68774 	long: 64;
68775 	long: 64;
68776 	long: 64;
68777 	long: 64;
68778 	long: 64;
68779 	long: 64;
68780 	long: 64;
68781 	long: 64;
68782 	long: 64;
68783 	long: 64;
68784 	long: 64;
68785 	long: 64;
68786 	long: 64;
68787 	long: 64;
68788 	long: 64;
68789 	long: 64;
68790 	long: 64;
68791 	long: 64;
68792 	long: 64;
68793 	long: 64;
68794 	long: 64;
68795 	long: 64;
68796 	long: 64;
68797 	long: 64;
68798 	long: 64;
68799 	long: 64;
68800 	long: 64;
68801 	long: 64;
68802 	long: 64;
68803 	long: 64;
68804 	long: 64;
68805 	long: 64;
68806 	long: 64;
68807 	long: 64;
68808 	long: 64;
68809 	long: 64;
68810 	long: 64;
68811 	long: 64;
68812 	long: 64;
68813 	long: 64;
68814 	long: 64;
68815 	long: 64;
68816 	long: 64;
68817 	long: 64;
68818 	long: 64;
68819 	long: 64;
68820 	long: 64;
68821 	long: 64;
68822 	long: 64;
68823 	long: 64;
68824 	long: 64;
68825 	long: 64;
68826 	long: 64;
68827 	long: 64;
68828 	long: 64;
68829 	long: 64;
68830 	long: 64;
68831 	long: 64;
68832 	long: 64;
68833 	long: 64;
68834 	long: 64;
68835 	long: 64;
68836 	long: 64;
68837 	long: 64;
68838 	long: 64;
68839 	long: 64;
68840 	long: 64;
68841 	long: 64;
68842 	long: 64;
68843 	long: 64;
68844 	long: 64;
68845 	long: 64;
68846 	long: 64;
68847 	long: 64;
68848 	long: 64;
68849 	long: 64;
68850 	long: 64;
68851 	long: 64;
68852 	long: 64;
68853 	long: 64;
68854 	long: 64;
68855 	long: 64;
68856 	long: 64;
68857 	long: 64;
68858 	long: 64;
68859 	long: 64;
68860 	long: 64;
68861 	long: 64;
68862 	long: 64;
68863 	long: 64;
68864 	long: 64;
68865 	long: 64;
68866 	long: 64;
68867 	long: 64;
68868 	long: 64;
68869 	long: 64;
68870 	long: 64;
68871 	long: 64;
68872 	long: 64;
68873 	long: 64;
68874 	long: 64;
68875 	long: 64;
68876 	long: 64;
68877 	long: 64;
68878 	long: 64;
68879 	long: 64;
68880 	long: 64;
68881 	long: 64;
68882 	long: 64;
68883 	long: 64;
68884 	long: 64;
68885 	long: 64;
68886 	long: 64;
68887 	long: 64;
68888 	long: 64;
68889 	long: 64;
68890 	long: 64;
68891 	long: 64;
68892 	long: 64;
68893 	long: 64;
68894 	long: 64;
68895 	long: 64;
68896 	long: 64;
68897 	long: 64;
68898 	long: 64;
68899 	long: 64;
68900 	long: 64;
68901 	long: 64;
68902 	long: 64;
68903 	long: 64;
68904 	long: 64;
68905 	long: 64;
68906 	long: 64;
68907 	long: 64;
68908 	long: 64;
68909 	long: 64;
68910 	long: 64;
68911 	long: 64;
68912 	long: 64;
68913 	long: 64;
68914 	long: 64;
68915 	long: 64;
68916 	long: 64;
68917 	long: 64;
68918 	long: 64;
68919 	long: 64;
68920 	long: 64;
68921 	long: 64;
68922 	long: 64;
68923 	long: 64;
68924 	long: 64;
68925 	long: 64;
68926 	long: 64;
68927 	long: 64;
68928 	long: 64;
68929 	long: 64;
68930 	long: 64;
68931 	long: 64;
68932 	long: 64;
68933 	long: 64;
68934 	long: 64;
68935 	long: 64;
68936 	long: 64;
68937 	long: 64;
68938 	long: 64;
68939 	long: 64;
68940 	long: 64;
68941 	long: 64;
68942 	long: 64;
68943 	long: 64;
68944 	long: 64;
68945 	long: 64;
68946 	long: 64;
68947 	long: 64;
68948 	long: 64;
68949 	long: 64;
68950 	long: 64;
68951 	long: 64;
68952 	long: 64;
68953 	long: 64;
68954 	long: 64;
68955 	long: 64;
68956 	long: 64;
68957 	long: 64;
68958 	long: 64;
68959 	long: 64;
68960 	long: 64;
68961 	long: 64;
68962 	long: 64;
68963 	long: 64;
68964 	long: 64;
68965 	long: 64;
68966 	long: 64;
68967 	long: 64;
68968 	long: 64;
68969 	long: 64;
68970 	long: 64;
68971 	long: 64;
68972 	long: 64;
68973 	long: 64;
68974 	long: 64;
68975 	long: 64;
68976 	long: 64;
68977 	long: 64;
68978 	long: 64;
68979 	long: 64;
68980 	long: 64;
68981 	long: 64;
68982 	long: 64;
68983 	long: 64;
68984 	long: 64;
68985 	long: 64;
68986 	long: 64;
68987 	long: 64;
68988 	long: 64;
68989 	long: 64;
68990 	long: 64;
68991 	long: 64;
68992 	long: 64;
68993 	long: 64;
68994 	long: 64;
68995 	long: 64;
68996 	long: 64;
68997 	long: 64;
68998 	long: 64;
68999 	long: 64;
69000 	long: 64;
69001 	long: 64;
69002 	long: 64;
69003 	long: 64;
69004 	long: 64;
69005 	long: 64;
69006 	long: 64;
69007 	long: 64;
69008 	long: 64;
69009 	long: 64;
69010 	long: 64;
69011 	long: 64;
69012 	long: 64;
69013 	long: 64;
69014 	long: 64;
69015 	long: 64;
69016 	long: 64;
69017 	long: 64;
69018 	long: 64;
69019 	long: 64;
69020 	long: 64;
69021 	long: 64;
69022 	long: 64;
69023 	long: 64;
69024 	long: 64;
69025 	long: 64;
69026 	long: 64;
69027 	long: 64;
69028 	long: 64;
69029 	long: 64;
69030 	long: 64;
69031 	long: 64;
69032 	long: 64;
69033 	long: 64;
69034 	long: 64;
69035 	long: 64;
69036 	long: 64;
69037 	long: 64;
69038 	long: 64;
69039 	long: 64;
69040 	long: 64;
69041 	long: 64;
69042 	long: 64;
69043 	long: 64;
69044 	long: 64;
69045 	long: 64;
69046 	long: 64;
69047 	long: 64;
69048 	long: 64;
69049 	long: 64;
69050 	long: 64;
69051 	long: 64;
69052 	long: 64;
69053 	long: 64;
69054 	long: 64;
69055 	long: 64;
69056 	long: 64;
69057 	long: 64;
69058 	long: 64;
69059 	long: 64;
69060 	long: 64;
69061 	long: 64;
69062 	long: 64;
69063 	long: 64;
69064 	long: 64;
69065 	long: 64;
69066 	long: 64;
69067 	long: 64;
69068 	long: 64;
69069 	long: 64;
69070 	long: 64;
69071 	long: 64;
69072 	long: 64;
69073 	long: 64;
69074 	long: 64;
69075 	long: 64;
69076 	long: 64;
69077 	long: 64;
69078 	long: 64;
69079 	long: 64;
69080 	long: 64;
69081 	long: 64;
69082 	long: 64;
69083 	long: 64;
69084 	long: 64;
69085 	long: 64;
69086 	long: 64;
69087 	long: 64;
69088 	long: 64;
69089 	long: 64;
69090 	long: 64;
69091 	long: 64;
69092 	long: 64;
69093 	long: 64;
69094 	long: 64;
69095 	long: 64;
69096 	long: 64;
69097 	long: 64;
69098 	long: 64;
69099 	long: 64;
69100 	long: 64;
69101 	long: 64;
69102 	long: 64;
69103 	long: 64;
69104 	long: 64;
69105 	long: 64;
69106 	long: 64;
69107 	long: 64;
69108 	long: 64;
69109 	long: 64;
69110 	long: 64;
69111 	long: 64;
69112 	long: 64;
69113 	long: 64;
69114 	long: 64;
69115 	long: 64;
69116 	long: 64;
69117 	long: 64;
69118 	long: 64;
69119 	long: 64;
69120 	long: 64;
69121 	long: 64;
69122 	long: 64;
69123 	long: 64;
69124 	long: 64;
69125 	long: 64;
69126 	long: 64;
69127 	long: 64;
69128 	long: 64;
69129 	long: 64;
69130 	long: 64;
69131 	long: 64;
69132 	long: 64;
69133 	long: 64;
69134 	long: 64;
69135 	long: 64;
69136 	long: 64;
69137 	long: 64;
69138 	long: 64;
69139 	long: 64;
69140 	long: 64;
69141 	long: 64;
69142 	long: 64;
69143 	long: 64;
69144 	long: 64;
69145 	long: 64;
69146 	long: 64;
69147 	long: 64;
69148 	long: 64;
69149 	long: 64;
69150 	long: 64;
69151 	long: 64;
69152 	long: 64;
69153 	long: 64;
69154 	long: 64;
69155 	long: 64;
69156 	long: 64;
69157 	long: 64;
69158 	long: 64;
69159 	long: 64;
69160 	long: 64;
69161 	long: 64;
69162 	long: 64;
69163 	long: 64;
69164 	long: 64;
69165 	long: 64;
69166 	long: 64;
69167 	long: 64;
69168 	long: 64;
69169 	long: 64;
69170 	long: 64;
69171 	long: 64;
69172 	long: 64;
69173 	long: 64;
69174 	long: 64;
69175 	long: 64;
69176 	long: 64;
69177 	long: 64;
69178 	long: 64;
69179 	long: 64;
69180 	long: 64;
69181 	long: 64;
69182 	long: 64;
69183 	long: 64;
69184 	long: 64;
69185 	long: 64;
69186 	long: 64;
69187 	long: 64;
69188 	long: 64;
69189 	long: 64;
69190 	long: 64;
69191 	long: 64;
69192 	long: 64;
69193 	long: 64;
69194 	long: 64;
69195 	long: 64;
69196 	long: 64;
69197 	long: 64;
69198 	long: 64;
69199 	long: 64;
69200 	long: 64;
69201 	long: 64;
69202 	long: 64;
69203 	long: 64;
69204 	long: 64;
69205 	long: 64;
69206 	long: 64;
69207 	long: 64;
69208 	long: 64;
69209 	long: 64;
69210 	long: 64;
69211 	long: 64;
69212 	long: 64;
69213 	long: 64;
69214 	long: 64;
69215 	long: 64;
69216 	long: 64;
69217 	long: 64;
69218 	long: 64;
69219 	long: 64;
69220 	long: 64;
69221 	long: 64;
69222 	long: 64;
69223 	long: 64;
69224 	long: 64;
69225 	long: 64;
69226 	long: 64;
69227 	long: 64;
69228 	long: 64;
69229 	long: 64;
69230 	long: 64;
69231 	long: 64;
69232 	long: 64;
69233 	long: 64;
69234 	long: 64;
69235 	long: 64;
69236 	long: 64;
69237 	long: 64;
69238 	long: 64;
69239 	long: 64;
69240 	long: 64;
69241 	long: 64;
69242 	long: 64;
69243 	long: 64;
69244 	long: 64;
69245 	long: 64;
69246 	long: 64;
69247 	long: 64;
69248 	long: 64;
69249 	long: 64;
69250 	long: 64;
69251 	long: 64;
69252 	long: 64;
69253 	long: 64;
69254 	long: 64;
69255 	long: 64;
69256 	long: 64;
69257 	long: 64;
69258 	long: 64;
69259 	long: 64;
69260 	long: 64;
69261 	long: 64;
69262 	long: 64;
69263 	long: 64;
69264 	long: 64;
69265 	long: 64;
69266 	long: 64;
69267 	long: 64;
69268 	long: 64;
69269 	long: 64;
69270 	long: 64;
69271 	long: 64;
69272 	long: 64;
69273 	long: 64;
69274 	long: 64;
69275 	long: 64;
69276 	long: 64;
69277 	long: 64;
69278 	long: 64;
69279 	long: 64;
69280 	long: 64;
69281 	long: 64;
69282 	long: 64;
69283 	long: 64;
69284 	long: 64;
69285 	long: 64;
69286 	long: 64;
69287 	long: 64;
69288 	long: 64;
69289 	long: 64;
69290 	long: 64;
69291 	long: 64;
69292 	long: 64;
69293 	long: 64;
69294 	long: 64;
69295 	long: 64;
69296 	long: 64;
69297 	long: 64;
69298 	long: 64;
69299 	long: 64;
69300 	long: 64;
69301 	long: 64;
69302 	long: 64;
69303 	long: 64;
69304 	long: 64;
69305 	long: 64;
69306 	long: 64;
69307 	long: 64;
69308 	long: 64;
69309 	long: 64;
69310 	long: 64;
69311 	long: 64;
69312 	long: 64;
69313 	long: 64;
69314 	long: 64;
69315 	long: 64;
69316 	long: 64;
69317 	long: 64;
69318 	long: 64;
69319 	long: 64;
69320 	long: 64;
69321 	long: 64;
69322 	long: 64;
69323 	long: 64;
69324 	long: 64;
69325 	long: 64;
69326 	long: 64;
69327 	long: 64;
69328 	long: 64;
69329 	long: 64;
69330 	long: 64;
69331 	long: 64;
69332 	long: 64;
69333 	long: 64;
69334 	long: 64;
69335 	long: 64;
69336 	long: 64;
69337 	long: 64;
69338 	long: 64;
69339 	long: 64;
69340 	long: 64;
69341 	long: 64;
69342 	long: 64;
69343 	long: 64;
69344 	long: 64;
69345 	long: 64;
69346 	long: 64;
69347 	long: 64;
69348 	long: 64;
69349 	long: 64;
69350 	long: 64;
69351 	long: 64;
69352 	long: 64;
69353 	long: 64;
69354 	long: 64;
69355 	long: 64;
69356 	long: 64;
69357 	long: 64;
69358 	long: 64;
69359 	long: 64;
69360 	long: 64;
69361 	long: 64;
69362 	long: 64;
69363 	long: 64;
69364 	long: 64;
69365 	long: 64;
69366 	long: 64;
69367 	long: 64;
69368 	long: 64;
69369 	long: 64;
69370 	long: 64;
69371 	long: 64;
69372 	long: 64;
69373 	long: 64;
69374 	long: 64;
69375 	long: 64;
69376 	long: 64;
69377 	long: 64;
69378 	long: 64;
69379 	long: 64;
69380 	long: 64;
69381 	long: 64;
69382 	long: 64;
69383 	long: 64;
69384 	long: 64;
69385 	long: 64;
69386 	long: 64;
69387 	long: 64;
69388 	long: 64;
69389 	long: 64;
69390 	long: 64;
69391 	long: 64;
69392 	long: 64;
69393 	long: 64;
69394 	long: 64;
69395 	long: 64;
69396 	long: 64;
69397 	long: 64;
69398 	long: 64;
69399 	long: 64;
69400 	long: 64;
69401 	long: 64;
69402 	long: 64;
69403 	long: 64;
69404 	long: 64;
69405 	long: 64;
69406 	long: 64;
69407 	long: 64;
69408 	long: 64;
69409 	long: 64;
69410 	long: 64;
69411 	long: 64;
69412 	long: 64;
69413 	long: 64;
69414 	long: 64;
69415 	long: 64;
69416 	long: 64;
69417 	long: 64;
69418 	long: 64;
69419 	long: 64;
69420 	long: 64;
69421 	long: 64;
69422 	long: 64;
69423 	long: 64;
69424 	long: 64;
69425 	long: 64;
69426 	long: 64;
69427 	long: 64;
69428 	long: 64;
69429 	long: 64;
69430 	long: 64;
69431 	long: 64;
69432 	long: 64;
69433 	long: 64;
69434 	long: 64;
69435 	long: 64;
69436 	long: 64;
69437 	long: 64;
69438 	long: 64;
69439 	long: 64;
69440 	long: 64;
69441 	long: 64;
69442 	long: 64;
69443 	long: 64;
69444 	long: 64;
69445 	long: 64;
69446 	long: 64;
69447 	long: 64;
69448 	long: 64;
69449 	long: 64;
69450 	long: 64;
69451 	long: 64;
69452 	long: 64;
69453 	long: 64;
69454 	long: 64;
69455 	long: 64;
69456 	long: 64;
69457 	long: 64;
69458 	long: 64;
69459 	long: 64;
69460 	long: 64;
69461 	long: 64;
69462 	long: 64;
69463 	long: 64;
69464 	long: 64;
69465 	long: 64;
69466 	long: 64;
69467 	long: 64;
69468 	long: 64;
69469 	long: 64;
69470 	long: 64;
69471 	long: 64;
69472 	long: 64;
69473 	long: 64;
69474 	long: 64;
69475 	long: 64;
69476 	long: 64;
69477 	long: 64;
69478 	long: 64;
69479 	long: 64;
69480 	long: 64;
69481 	long: 64;
69482 	long: 64;
69483 	long: 64;
69484 	long: 64;
69485 	long: 64;
69486 	long: 64;
69487 	long: 64;
69488 	long: 64;
69489 	long: 64;
69490 	long: 64;
69491 	long: 64;
69492 	long: 64;
69493 	long: 64;
69494 	long: 64;
69495 	long: 64;
69496 	long: 64;
69497 	long: 64;
69498 	long: 64;
69499 	long: 64;
69500 	long: 64;
69501 	long: 64;
69502 	long: 64;
69503 	long: 64;
69504 	long: 64;
69505 	long: 64;
69506 	long: 64;
69507 	long: 64;
69508 	long: 64;
69509 	long: 64;
69510 	long: 64;
69511 	long: 64;
69512 	long: 64;
69513 	long: 64;
69514 	long: 64;
69515 	long: 64;
69516 	long: 64;
69517 	long: 64;
69518 	long: 64;
69519 	long: 64;
69520 	long: 64;
69521 	long: 64;
69522 	long: 64;
69523 	long: 64;
69524 	long: 64;
69525 	long: 64;
69526 	long: 64;
69527 	long: 64;
69528 	long: 64;
69529 	long: 64;
69530 	long: 64;
69531 	long: 64;
69532 	long: 64;
69533 	long: 64;
69534 	long: 64;
69535 	long: 64;
69536 	long: 64;
69537 	long: 64;
69538 	long: 64;
69539 	long: 64;
69540 	long: 64;
69541 	long: 64;
69542 	long: 64;
69543 	long: 64;
69544 	long: 64;
69545 	long: 64;
69546 	long: 64;
69547 	long: 64;
69548 	long: 64;
69549 	long: 64;
69550 	long: 64;
69551 	long: 64;
69552 	long: 64;
69553 	long: 64;
69554 	long: 64;
69555 	long: 64;
69556 	long: 64;
69557 	long: 64;
69558 	long: 64;
69559 	long: 64;
69560 	long: 64;
69561 	long: 64;
69562 	long: 64;
69563 	long: 64;
69564 	long: 64;
69565 	long: 64;
69566 	long: 64;
69567 	long: 64;
69568 	long: 64;
69569 	long: 64;
69570 	long: 64;
69571 	long: 64;
69572 	long: 64;
69573 	long: 64;
69574 	long: 64;
69575 	long: 64;
69576 	long: 64;
69577 	long: 64;
69578 	long: 64;
69579 	long: 64;
69580 	long: 64;
69581 	long: 64;
69582 	long: 64;
69583 	long: 64;
69584 	long: 64;
69585 	long: 64;
69586 	long: 64;
69587 	long: 64;
69588 	long: 64;
69589 	long: 64;
69590 	long: 64;
69591 	long: 64;
69592 	long: 64;
69593 	long: 64;
69594 	long: 64;
69595 	long: 64;
69596 	long: 64;
69597 	long: 64;
69598 	long: 64;
69599 	long: 64;
69600 	long: 64;
69601 	long: 64;
69602 	long: 64;
69603 	long: 64;
69604 	long: 64;
69605 	long: 64;
69606 	long: 64;
69607 	long: 64;
69608 	long: 64;
69609 	long: 64;
69610 	long: 64;
69611 	long: 64;
69612 	long: 64;
69613 	long: 64;
69614 	long: 64;
69615 	long: 64;
69616 	long: 64;
69617 	long: 64;
69618 	long: 64;
69619 	long: 64;
69620 	long: 64;
69621 	long: 64;
69622 	long: 64;
69623 	long: 64;
69624 	long: 64;
69625 	long: 64;
69626 	long: 64;
69627 	long: 64;
69628 	long: 64;
69629 	long: 64;
69630 	long: 64;
69631 	long: 64;
69632 	long: 64;
69633 	long: 64;
69634 	long: 64;
69635 	long: 64;
69636 	long: 64;
69637 	long: 64;
69638 	long: 64;
69639 	long: 64;
69640 	long: 64;
69641 	long: 64;
69642 	long: 64;
69643 	long: 64;
69644 	long: 64;
69645 	long: 64;
69646 	long: 64;
69647 	long: 64;
69648 	long: 64;
69649 	long: 64;
69650 	long: 64;
69651 	long: 64;
69652 	long: 64;
69653 	long: 64;
69654 	long: 64;
69655 	long: 64;
69656 	long: 64;
69657 	long: 64;
69658 	long: 64;
69659 	long: 64;
69660 	long: 64;
69661 	long: 64;
69662 	long: 64;
69663 	long: 64;
69664 	long: 64;
69665 	long: 64;
69666 	long: 64;
69667 	long: 64;
69668 	long: 64;
69669 	long: 64;
69670 	long: 64;
69671 	long: 64;
69672 	long: 64;
69673 	long: 64;
69674 	long: 64;
69675 	long: 64;
69676 	long: 64;
69677 	long: 64;
69678 	long: 64;
69679 	long: 64;
69680 	long: 64;
69681 	long: 64;
69682 	long: 64;
69683 	long: 64;
69684 	long: 64;
69685 	long: 64;
69686 	long: 64;
69687 	long: 64;
69688 	long: 64;
69689 	long: 64;
69690 	long: 64;
69691 	long: 64;
69692 	long: 64;
69693 	long: 64;
69694 	long: 64;
69695 	long: 64;
69696 	long: 64;
69697 	long: 64;
69698 	long: 64;
69699 	long: 64;
69700 	long: 64;
69701 	long: 64;
69702 	long: 64;
69703 	long: 64;
69704 	long: 64;
69705 	long: 64;
69706 	long: 64;
69707 	long: 64;
69708 	long: 64;
69709 	long: 64;
69710 	long: 64;
69711 	long: 64;
69712 	long: 64;
69713 	long: 64;
69714 	long: 64;
69715 	long: 64;
69716 	long: 64;
69717 	long: 64;
69718 	long: 64;
69719 	long: 64;
69720 	long: 64;
69721 	long: 64;
69722 	long: 64;
69723 	long: 64;
69724 	long: 64;
69725 	long: 64;
69726 	long: 64;
69727 	long: 64;
69728 	long: 64;
69729 	long: 64;
69730 	long: 64;
69731 	long: 64;
69732 	long: 64;
69733 	long: 64;
69734 	long: 64;
69735 	long: 64;
69736 	long: 64;
69737 	long: 64;
69738 	long: 64;
69739 	long: 64;
69740 	long: 64;
69741 	long: 64;
69742 	long: 64;
69743 	long: 64;
69744 	long: 64;
69745 	long: 64;
69746 	long: 64;
69747 	long: 64;
69748 	long: 64;
69749 	long: 64;
69750 	long: 64;
69751 	long: 64;
69752 	long: 64;
69753 	long: 64;
69754 	long: 64;
69755 	long: 64;
69756 	long: 64;
69757 	long: 64;
69758 	long: 64;
69759 	long: 64;
69760 	long: 64;
69761 	long: 64;
69762 	long: 64;
69763 	long: 64;
69764 	long: 64;
69765 	long: 64;
69766 	long: 64;
69767 	long: 64;
69768 	long: 64;
69769 	long: 64;
69770 	long: 64;
69771 	long: 64;
69772 	long: 64;
69773 	long: 64;
69774 	long: 64;
69775 	long: 64;
69776 	long: 64;
69777 	long: 64;
69778 	long: 64;
69779 	long: 64;
69780 	long: 64;
69781 	long: 64;
69782 	long: 64;
69783 	long: 64;
69784 	long: 64;
69785 	long: 64;
69786 	long: 64;
69787 	long: 64;
69788 	long: 64;
69789 	long: 64;
69790 	long: 64;
69791 	long: 64;
69792 	long: 64;
69793 	long: 64;
69794 	long: 64;
69795 	long: 64;
69796 	long: 64;
69797 	long: 64;
69798 	long: 64;
69799 	long: 64;
69800 	long: 64;
69801 	long: 64;
69802 	long: 64;
69803 	long: 64;
69804 	long: 64;
69805 	long: 64;
69806 	long: 64;
69807 	long: 64;
69808 	long: 64;
69809 	long: 64;
69810 	long: 64;
69811 	long: 64;
69812 	long: 64;
69813 	long: 64;
69814 	long: 64;
69815 	long: 64;
69816 	long: 64;
69817 	long: 64;
69818 	long: 64;
69819 	long: 64;
69820 	long: 64;
69821 	long: 64;
69822 	long: 64;
69823 	long: 64;
69824 	long: 64;
69825 	long: 64;
69826 	long: 64;
69827 	long: 64;
69828 	long: 64;
69829 	long: 64;
69830 	long: 64;
69831 	long: 64;
69832 	long: 64;
69833 	long: 64;
69834 	long: 64;
69835 	long: 64;
69836 	long: 64;
69837 	long: 64;
69838 	long: 64;
69839 	long: 64;
69840 	long: 64;
69841 	long: 64;
69842 	long: 64;
69843 	long: 64;
69844 	long: 64;
69845 	long: 64;
69846 	long: 64;
69847 	long: 64;
69848 	long: 64;
69849 	long: 64;
69850 	long: 64;
69851 	long: 64;
69852 	long: 64;
69853 	long: 64;
69854 	long: 64;
69855 	long: 64;
69856 	long: 64;
69857 	long: 64;
69858 	long: 64;
69859 	long: 64;
69860 	long: 64;
69861 	long: 64;
69862 	long: 64;
69863 	long: 64;
69864 	long: 64;
69865 	long: 64;
69866 	long: 64;
69867 	long: 64;
69868 	long: 64;
69869 	long: 64;
69870 	long: 64;
69871 	long: 64;
69872 	long: 64;
69873 	long: 64;
69874 	long: 64;
69875 	long: 64;
69876 	long: 64;
69877 	long: 64;
69878 	long: 64;
69879 	long: 64;
69880 	long: 64;
69881 	long: 64;
69882 	long: 64;
69883 	long: 64;
69884 	long: 64;
69885 	long: 64;
69886 	long: 64;
69887 	long: 64;
69888 	long: 64;
69889 	long: 64;
69890 	long: 64;
69891 	long: 64;
69892 	long: 64;
69893 	long: 64;
69894 	long: 64;
69895 	long: 64;
69896 	long: 64;
69897 	long: 64;
69898 	long: 64;
69899 	long: 64;
69900 	long: 64;
69901 	long: 64;
69902 	long: 64;
69903 	long: 64;
69904 	long: 64;
69905 	long: 64;
69906 	long: 64;
69907 	long: 64;
69908 	long: 64;
69909 	long: 64;
69910 	long: 64;
69911 	long: 64;
69912 	long: 64;
69913 	long: 64;
69914 	long: 64;
69915 	long: 64;
69916 	long: 64;
69917 	long: 64;
69918 	long: 64;
69919 	long: 64;
69920 	long: 64;
69921 	long: 64;
69922 	long: 64;
69923 	long: 64;
69924 	long: 64;
69925 	long: 64;
69926 	long: 64;
69927 	long: 64;
69928 	long: 64;
69929 	long: 64;
69930 	long: 64;
69931 	long: 64;
69932 	long: 64;
69933 	long: 64;
69934 	long: 64;
69935 	long: 64;
69936 	long: 64;
69937 	long: 64;
69938 	long: 64;
69939 	long: 64;
69940 	long: 64;
69941 	long: 64;
69942 	long: 64;
69943 	long: 64;
69944 	long: 64;
69945 	long: 64;
69946 	long: 64;
69947 	long: 64;
69948 	long: 64;
69949 	long: 64;
69950 	long: 64;
69951 	long: 64;
69952 	long: 64;
69953 	long: 64;
69954 	long: 64;
69955 	long: 64;
69956 	long: 64;
69957 	long: 64;
69958 	long: 64;
69959 	long: 64;
69960 	long: 64;
69961 	long: 64;
69962 	long: 64;
69963 	long: 64;
69964 	long: 64;
69965 	long: 64;
69966 	long: 64;
69967 	long: 64;
69968 	long: 64;
69969 	long: 64;
69970 	long: 64;
69971 	long: 64;
69972 	long: 64;
69973 	long: 64;
69974 	long: 64;
69975 	long: 64;
69976 	long: 64;
69977 	long: 64;
69978 	long: 64;
69979 	long: 64;
69980 	long: 64;
69981 	long: 64;
69982 	long: 64;
69983 	long: 64;
69984 	long: 64;
69985 	long: 64;
69986 	long: 64;
69987 	long: 64;
69988 	long: 64;
69989 	long: 64;
69990 	long: 64;
69991 	long: 64;
69992 	long: 64;
69993 	long: 64;
69994 	long: 64;
69995 	long: 64;
69996 	long: 64;
69997 	long: 64;
69998 	long: 64;
69999 	long: 64;
70000 	long: 64;
70001 	long: 64;
70002 	long: 64;
70003 	long: 64;
70004 	long: 64;
70005 	long: 64;
70006 	long: 64;
70007 	long: 64;
70008 	long: 64;
70009 	long: 64;
70010 	long: 64;
70011 	long: 64;
70012 	long: 64;
70013 	long: 64;
70014 	long: 64;
70015 	long: 64;
70016 	long: 64;
70017 	long: 64;
70018 	long: 64;
70019 	long: 64;
70020 	long: 64;
70021 	long: 64;
70022 	long: 64;
70023 	long: 64;
70024 	long: 64;
70025 	long: 64;
70026 	long: 64;
70027 	long: 64;
70028 	long: 64;
70029 	long: 64;
70030 	long: 64;
70031 	long: 64;
70032 	long: 64;
70033 	long: 64;
70034 	long: 64;
70035 	long: 64;
70036 	long: 64;
70037 	long: 64;
70038 	long: 64;
70039 	long: 64;
70040 	long: 64;
70041 	long: 64;
70042 	long: 64;
70043 	long: 64;
70044 	long: 64;
70045 	long: 64;
70046 	long: 64;
70047 	long: 64;
70048 	long: 64;
70049 	long: 64;
70050 	long: 64;
70051 	long: 64;
70052 	long: 64;
70053 	long: 64;
70054 	long: 64;
70055 	long: 64;
70056 	long: 64;
70057 	long: 64;
70058 	long: 64;
70059 	long: 64;
70060 	long: 64;
70061 	long: 64;
70062 	long: 64;
70063 	long: 64;
70064 	long: 64;
70065 	long: 64;
70066 	long: 64;
70067 	long: 64;
70068 	long: 64;
70069 	long: 64;
70070 	long: 64;
70071 	long: 64;
70072 	long: 64;
70073 	long: 64;
70074 	long: 64;
70075 	long: 64;
70076 	long: 64;
70077 	long: 64;
70078 	long: 64;
70079 	long: 64;
70080 	long: 64;
70081 	long: 64;
70082 	long: 64;
70083 	long: 64;
70084 	long: 64;
70085 	long: 64;
70086 	long: 64;
70087 	long: 64;
70088 	long: 64;
70089 	long: 64;
70090 	long: 64;
70091 	long: 64;
70092 	long: 64;
70093 	long: 64;
70094 	long: 64;
70095 	long: 64;
70096 	long: 64;
70097 	long: 64;
70098 	long: 64;
70099 	long: 64;
70100 	long: 64;
70101 	long: 64;
70102 	long: 64;
70103 	long: 64;
70104 	long: 64;
70105 	long: 64;
70106 	long: 64;
70107 	long: 64;
70108 	long: 64;
70109 	long: 64;
70110 	long: 64;
70111 	long: 64;
70112 	long: 64;
70113 	long: 64;
70114 	long: 64;
70115 	long: 64;
70116 	long: 64;
70117 	long: 64;
70118 	long: 64;
70119 	long: 64;
70120 	long: 64;
70121 	long: 64;
70122 	long: 64;
70123 	long: 64;
70124 	long: 64;
70125 	long: 64;
70126 	long: 64;
70127 	long: 64;
70128 	long: 64;
70129 	long: 64;
70130 	long: 64;
70131 	long: 64;
70132 	long: 64;
70133 	long: 64;
70134 	long: 64;
70135 	long: 64;
70136 	long: 64;
70137 	long: 64;
70138 	long: 64;
70139 	long: 64;
70140 	long: 64;
70141 	long: 64;
70142 	long: 64;
70143 	long: 64;
70144 	long: 64;
70145 	long: 64;
70146 	long: 64;
70147 	long: 64;
70148 	long: 64;
70149 	long: 64;
70150 	long: 64;
70151 	long: 64;
70152 	long: 64;
70153 	long: 64;
70154 	long: 64;
70155 	long: 64;
70156 	long: 64;
70157 	long: 64;
70158 	long: 64;
70159 	long: 64;
70160 	long: 64;
70161 	long: 64;
70162 	long: 64;
70163 	long: 64;
70164 	long: 64;
70165 	long: 64;
70166 	long: 64;
70167 	long: 64;
70168 	long: 64;
70169 	long: 64;
70170 	long: 64;
70171 	long: 64;
70172 	long: 64;
70173 	long: 64;
70174 	long: 64;
70175 	long: 64;
70176 	long: 64;
70177 	long: 64;
70178 	long: 64;
70179 	long: 64;
70180 	long: 64;
70181 	long: 64;
70182 	long: 64;
70183 	long: 64;
70184 	long: 64;
70185 	long: 64;
70186 	long: 64;
70187 	long: 64;
70188 	long: 64;
70189 	long: 64;
70190 	long: 64;
70191 	long: 64;
70192 	long: 64;
70193 	long: 64;
70194 	long: 64;
70195 	long: 64;
70196 	long: 64;
70197 	long: 64;
70198 	long: 64;
70199 	long: 64;
70200 	long: 64;
70201 	long: 64;
70202 	long: 64;
70203 	long: 64;
70204 	long: 64;
70205 	long: 64;
70206 	long: 64;
70207 	long: 64;
70208 	long: 64;
70209 	long: 64;
70210 	long: 64;
70211 	long: 64;
70212 	long: 64;
70213 	long: 64;
70214 	long: 64;
70215 	long: 64;
70216 	long: 64;
70217 	long: 64;
70218 	long: 64;
70219 	long: 64;
70220 	long: 64;
70221 	long: 64;
70222 	long: 64;
70223 	long: 64;
70224 	long: 64;
70225 	long: 64;
70226 	long: 64;
70227 	long: 64;
70228 	long: 64;
70229 	long: 64;
70230 	long: 64;
70231 	long: 64;
70232 	long: 64;
70233 	long: 64;
70234 	long: 64;
70235 	long: 64;
70236 	long: 64;
70237 	long: 64;
70238 	long: 64;
70239 	long: 64;
70240 	long: 64;
70241 	long: 64;
70242 	long: 64;
70243 	long: 64;
70244 	long: 64;
70245 	long: 64;
70246 	long: 64;
70247 	long: 64;
70248 	long: 64;
70249 	long: 64;
70250 	long: 64;
70251 	long: 64;
70252 	long: 64;
70253 	long: 64;
70254 	long: 64;
70255 	long: 64;
70256 	long: 64;
70257 	long: 64;
70258 	long: 64;
70259 	long: 64;
70260 	long: 64;
70261 	long: 64;
70262 	long: 64;
70263 	long: 64;
70264 	long: 64;
70265 	long: 64;
70266 	long: 64;
70267 	long: 64;
70268 	long: 64;
70269 	long: 64;
70270 	long: 64;
70271 	long: 64;
70272 	long: 64;
70273 	long: 64;
70274 	long: 64;
70275 	long: 64;
70276 	long: 64;
70277 	long: 64;
70278 	long: 64;
70279 	long: 64;
70280 	long: 64;
70281 	long: 64;
70282 	long: 64;
70283 	long: 64;
70284 	long: 64;
70285 	long: 64;
70286 	long: 64;
70287 	long: 64;
70288 	long: 64;
70289 	long: 64;
70290 	long: 64;
70291 	long: 64;
70292 	long: 64;
70293 	long: 64;
70294 	long: 64;
70295 	long: 64;
70296 	long: 64;
70297 	long: 64;
70298 	long: 64;
70299 	long: 64;
70300 	long: 64;
70301 	long: 64;
70302 	long: 64;
70303 	long: 64;
70304 	long: 64;
70305 	long: 64;
70306 	long: 64;
70307 	long: 64;
70308 	long: 64;
70309 	long: 64;
70310 	long: 64;
70311 	long: 64;
70312 	long: 64;
70313 	long: 64;
70314 	long: 64;
70315 	long: 64;
70316 	long: 64;
70317 	long: 64;
70318 	long: 64;
70319 	long: 64;
70320 	long: 64;
70321 	long: 64;
70322 	long: 64;
70323 	long: 64;
70324 	long: 64;
70325 	long: 64;
70326 	long: 64;
70327 	long: 64;
70328 	long: 64;
70329 	long: 64;
70330 	long: 64;
70331 	long: 64;
70332 	long: 64;
70333 	long: 64;
70334 	long: 64;
70335 	long: 64;
70336 	long: 64;
70337 	long: 64;
70338 	long: 64;
70339 	long: 64;
70340 	long: 64;
70341 	long: 64;
70342 	long: 64;
70343 	long: 64;
70344 	long: 64;
70345 	long: 64;
70346 	long: 64;
70347 	long: 64;
70348 	long: 64;
70349 	long: 64;
70350 	long: 64;
70351 	long: 64;
70352 	long: 64;
70353 	long: 64;
70354 	long: 64;
70355 	long: 64;
70356 	long: 64;
70357 	long: 64;
70358 	long: 64;
70359 	long: 64;
70360 	long: 64;
70361 	long: 64;
70362 	long: 64;
70363 	long: 64;
70364 	long: 64;
70365 	long: 64;
70366 	long: 64;
70367 	long: 64;
70368 	long: 64;
70369 	long: 64;
70370 	long: 64;
70371 	long: 64;
70372 	long: 64;
70373 	long: 64;
70374 	long: 64;
70375 	long: 64;
70376 	long: 64;
70377 	long: 64;
70378 	long: 64;
70379 	long: 64;
70380 	long: 64;
70381 	long: 64;
70382 	long: 64;
70383 	long: 64;
70384 	long: 64;
70385 	long: 64;
70386 	long: 64;
70387 	long: 64;
70388 	long: 64;
70389 	long: 64;
70390 	long: 64;
70391 	long: 64;
70392 	long: 64;
70393 	long: 64;
70394 	long: 64;
70395 	long: 64;
70396 	long: 64;
70397 	long: 64;
70398 	long: 64;
70399 	long: 64;
70400 	long: 64;
70401 	long: 64;
70402 	long: 64;
70403 	long: 64;
70404 	long: 64;
70405 	long: 64;
70406 	long: 64;
70407 	long: 64;
70408 	long: 64;
70409 	long: 64;
70410 	long: 64;
70411 	long: 64;
70412 	long: 64;
70413 	long: 64;
70414 	long: 64;
70415 	long: 64;
70416 	long: 64;
70417 	long: 64;
70418 	long: 64;
70419 	long: 64;
70420 	long: 64;
70421 	long: 64;
70422 	long: 64;
70423 	long: 64;
70424 	long: 64;
70425 	long: 64;
70426 	long: 64;
70427 	long: 64;
70428 	long: 64;
70429 	long: 64;
70430 	long: 64;
70431 	long: 64;
70432 	long: 64;
70433 	long: 64;
70434 	long: 64;
70435 	long: 64;
70436 	long: 64;
70437 	long: 64;
70438 	long: 64;
70439 	long: 64;
70440 	long: 64;
70441 	long: 64;
70442 	long: 64;
70443 	long: 64;
70444 	long: 64;
70445 	long: 64;
70446 	long: 64;
70447 	long: 64;
70448 	long: 64;
70449 	long: 64;
70450 	long: 64;
70451 	long: 64;
70452 	long: 64;
70453 	long: 64;
70454 	long: 64;
70455 	long: 64;
70456 	long: 64;
70457 	long: 64;
70458 	long: 64;
70459 	long: 64;
70460 	long: 64;
70461 	long: 64;
70462 	long: 64;
70463 	long: 64;
70464 	long: 64;
70465 	long: 64;
70466 	long: 64;
70467 	long: 64;
70468 	long: 64;
70469 	long: 64;
70470 	long: 64;
70471 	long: 64;
70472 	long: 64;
70473 	long: 64;
70474 	long: 64;
70475 	long: 64;
70476 	long: 64;
70477 	long: 64;
70478 	long: 64;
70479 	long: 64;
70480 	long: 64;
70481 	long: 64;
70482 	long: 64;
70483 	long: 64;
70484 	long: 64;
70485 	long: 64;
70486 	long: 64;
70487 	long: 64;
70488 	long: 64;
70489 	long: 64;
70490 	long: 64;
70491 	long: 64;
70492 	long: 64;
70493 	long: 64;
70494 	long: 64;
70495 	long: 64;
70496 	long: 64;
70497 	long: 64;
70498 	long: 64;
70499 	long: 64;
70500 	long: 64;
70501 	long: 64;
70502 	long: 64;
70503 	long: 64;
70504 	long: 64;
70505 	long: 64;
70506 	long: 64;
70507 	long: 64;
70508 	long: 64;
70509 	long: 64;
70510 	long: 64;
70511 	long: 64;
70512 	long: 64;
70513 	long: 64;
70514 	long: 64;
70515 	long: 64;
70516 	long: 64;
70517 	long: 64;
70518 	long: 64;
70519 	long: 64;
70520 	long: 64;
70521 	long: 64;
70522 	long: 64;
70523 	long: 64;
70524 	long: 64;
70525 	long: 64;
70526 	long: 64;
70527 	long: 64;
70528 	long: 64;
70529 	long: 64;
70530 	long: 64;
70531 	long: 64;
70532 	long: 64;
70533 	long: 64;
70534 	long: 64;
70535 	long: 64;
70536 	long: 64;
70537 	long: 64;
70538 	long: 64;
70539 	long: 64;
70540 	long: 64;
70541 	long: 64;
70542 	long: 64;
70543 	long: 64;
70544 	long: 64;
70545 	long: 64;
70546 	long: 64;
70547 	long: 64;
70548 	long: 64;
70549 	long: 64;
70550 	long: 64;
70551 	long: 64;
70552 	long: 64;
70553 	long: 64;
70554 	long: 64;
70555 	long: 64;
70556 	long: 64;
70557 	long: 64;
70558 	long: 64;
70559 	long: 64;
70560 	long: 64;
70561 	long: 64;
70562 	long: 64;
70563 	long: 64;
70564 	long: 64;
70565 	long: 64;
70566 	long: 64;
70567 	long: 64;
70568 	long: 64;
70569 	long: 64;
70570 	long: 64;
70571 	long: 64;
70572 	long: 64;
70573 	long: 64;
70574 	long: 64;
70575 	long: 64;
70576 	long: 64;
70577 	long: 64;
70578 	long: 64;
70579 	long: 64;
70580 	long: 64;
70581 	long: 64;
70582 	long: 64;
70583 	long: 64;
70584 	long: 64;
70585 	long: 64;
70586 	long: 64;
70587 	long: 64;
70588 	long: 64;
70589 	long: 64;
70590 	long: 64;
70591 	long: 64;
70592 	long: 64;
70593 	long: 64;
70594 	long: 64;
70595 	long: 64;
70596 	long: 64;
70597 	long: 64;
70598 	long: 64;
70599 	long: 64;
70600 	long: 64;
70601 	long: 64;
70602 	long: 64;
70603 	long: 64;
70604 	long: 64;
70605 	long: 64;
70606 	long: 64;
70607 	long: 64;
70608 	long: 64;
70609 	long: 64;
70610 	long: 64;
70611 	long: 64;
70612 	long: 64;
70613 	long: 64;
70614 	long: 64;
70615 	long: 64;
70616 	long: 64;
70617 	long: 64;
70618 	long: 64;
70619 	long: 64;
70620 	long: 64;
70621 	long: 64;
70622 	long: 64;
70623 	long: 64;
70624 	long: 64;
70625 	long: 64;
70626 	long: 64;
70627 	long: 64;
70628 	long: 64;
70629 	long: 64;
70630 	long: 64;
70631 	long: 64;
70632 	long: 64;
70633 	long: 64;
70634 	long: 64;
70635 	long: 64;
70636 	long: 64;
70637 	long: 64;
70638 	long: 64;
70639 	long: 64;
70640 	long: 64;
70641 	long: 64;
70642 	long: 64;
70643 	long: 64;
70644 	long: 64;
70645 	long: 64;
70646 	long: 64;
70647 	long: 64;
70648 	long: 64;
70649 	long: 64;
70650 	long: 64;
70651 	long: 64;
70652 	long: 64;
70653 	long: 64;
70654 	long: 64;
70655 	long: 64;
70656 	long: 64;
70657 	long: 64;
70658 	long: 64;
70659 	long: 64;
70660 	long: 64;
70661 	long: 64;
70662 	long: 64;
70663 	long: 64;
70664 	long: 64;
70665 	long: 64;
70666 	long: 64;
70667 	long: 64;
70668 	long: 64;
70669 	long: 64;
70670 	long: 64;
70671 	long: 64;
70672 	long: 64;
70673 	long: 64;
70674 	long: 64;
70675 	long: 64;
70676 	long: 64;
70677 	long: 64;
70678 	long: 64;
70679 	long: 64;
70680 	long: 64;
70681 	long: 64;
70682 	long: 64;
70683 	long: 64;
70684 	long: 64;
70685 	long: 64;
70686 	long: 64;
70687 	long: 64;
70688 	long: 64;
70689 	long: 64;
70690 	long: 64;
70691 	long: 64;
70692 	long: 64;
70693 	long: 64;
70694 	long: 64;
70695 	long: 64;
70696 	long: 64;
70697 	long: 64;
70698 	long: 64;
70699 	long: 64;
70700 	long: 64;
70701 	long: 64;
70702 	long: 64;
70703 	long: 64;
70704 	long: 64;
70705 	long: 64;
70706 	long: 64;
70707 	long: 64;
70708 	long: 64;
70709 	long: 64;
70710 	long: 64;
70711 	long: 64;
70712 	long: 64;
70713 	long: 64;
70714 	long: 64;
70715 	long: 64;
70716 	long: 64;
70717 	long: 64;
70718 	long: 64;
70719 	long: 64;
70720 	long: 64;
70721 	long: 64;
70722 	long: 64;
70723 	long: 64;
70724 	long: 64;
70725 	long: 64;
70726 	long: 64;
70727 	long: 64;
70728 	long: 64;
70729 	long: 64;
70730 	long: 64;
70731 	long: 64;
70732 	long: 64;
70733 	long: 64;
70734 	long: 64;
70735 	long: 64;
70736 	long: 64;
70737 	long: 64;
70738 	long: 64;
70739 	long: 64;
70740 	long: 64;
70741 	long: 64;
70742 	long: 64;
70743 	long: 64;
70744 	long: 64;
70745 	long: 64;
70746 	long: 64;
70747 	long: 64;
70748 	long: 64;
70749 	long: 64;
70750 	long: 64;
70751 	long: 64;
70752 	long: 64;
70753 	long: 64;
70754 	long: 64;
70755 	long: 64;
70756 	long: 64;
70757 	long: 64;
70758 	long: 64;
70759 	long: 64;
70760 	long: 64;
70761 	long: 64;
70762 	long: 64;
70763 	long: 64;
70764 	long: 64;
70765 	long: 64;
70766 	long: 64;
70767 	long: 64;
70768 	long: 64;
70769 	long: 64;
70770 	long: 64;
70771 	long: 64;
70772 	long: 64;
70773 	long: 64;
70774 	long: 64;
70775 	long: 64;
70776 	long: 64;
70777 	long: 64;
70778 	long: 64;
70779 	long: 64;
70780 	long: 64;
70781 	long: 64;
70782 	long: 64;
70783 	long: 64;
70784 	long: 64;
70785 	long: 64;
70786 	long: 64;
70787 	long: 64;
70788 	long: 64;
70789 	long: 64;
70790 	long: 64;
70791 	long: 64;
70792 	long: 64;
70793 	long: 64;
70794 	long: 64;
70795 	long: 64;
70796 	long: 64;
70797 	long: 64;
70798 	long: 64;
70799 	long: 64;
70800 	long: 64;
70801 	long: 64;
70802 	long: 64;
70803 	long: 64;
70804 	long: 64;
70805 	long: 64;
70806 	long: 64;
70807 	long: 64;
70808 	long: 64;
70809 	long: 64;
70810 	long: 64;
70811 	long: 64;
70812 	long: 64;
70813 	long: 64;
70814 	long: 64;
70815 	long: 64;
70816 	long: 64;
70817 	long: 64;
70818 	long: 64;
70819 	long: 64;
70820 	long: 64;
70821 	long: 64;
70822 	long: 64;
70823 	long: 64;
70824 	long: 64;
70825 	long: 64;
70826 	long: 64;
70827 	long: 64;
70828 	long: 64;
70829 	long: 64;
70830 	long: 64;
70831 	long: 64;
70832 	long: 64;
70833 	long: 64;
70834 	long: 64;
70835 	long: 64;
70836 	long: 64;
70837 	long: 64;
70838 	long: 64;
70839 	long: 64;
70840 	long: 64;
70841 	long: 64;
70842 	long: 64;
70843 	long: 64;
70844 	long: 64;
70845 	long: 64;
70846 	long: 64;
70847 	long: 64;
70848 	long: 64;
70849 	long: 64;
70850 	long: 64;
70851 	long: 64;
70852 	long: 64;
70853 	long: 64;
70854 	long: 64;
70855 	long: 64;
70856 	long: 64;
70857 	long: 64;
70858 	long: 64;
70859 	long: 64;
70860 	long: 64;
70861 	long: 64;
70862 	long: 64;
70863 	long: 64;
70864 	long: 64;
70865 	long: 64;
70866 	long: 64;
70867 	long: 64;
70868 	long: 64;
70869 	long: 64;
70870 	long: 64;
70871 	long: 64;
70872 	long: 64;
70873 	long: 64;
70874 	long: 64;
70875 	long: 64;
70876 	long: 64;
70877 	long: 64;
70878 	long: 64;
70879 	long: 64;
70880 	long: 64;
70881 	long: 64;
70882 	long: 64;
70883 	long: 64;
70884 	long: 64;
70885 	long: 64;
70886 	long: 64;
70887 	long: 64;
70888 	long: 64;
70889 	long: 64;
70890 	long: 64;
70891 	long: 64;
70892 	long: 64;
70893 	long: 64;
70894 	long: 64;
70895 	long: 64;
70896 	long: 64;
70897 	long: 64;
70898 	long: 64;
70899 	long: 64;
70900 	long: 64;
70901 	long: 64;
70902 	long: 64;
70903 	long: 64;
70904 	long: 64;
70905 	long: 64;
70906 	long: 64;
70907 	long: 64;
70908 	long: 64;
70909 	long: 64;
70910 	long: 64;
70911 	long: 64;
70912 	long: 64;
70913 	long: 64;
70914 	long: 64;
70915 	long: 64;
70916 	long: 64;
70917 	long: 64;
70918 	long: 64;
70919 	long: 64;
70920 	long: 64;
70921 	long: 64;
70922 	long: 64;
70923 	long: 64;
70924 	long: 64;
70925 	long: 64;
70926 	long: 64;
70927 	long: 64;
70928 	long: 64;
70929 	long: 64;
70930 	long: 64;
70931 	long: 64;
70932 	long: 64;
70933 	long: 64;
70934 	long: 64;
70935 	long: 64;
70936 	long: 64;
70937 	long: 64;
70938 	long: 64;
70939 	long: 64;
70940 	long: 64;
70941 	long: 64;
70942 	long: 64;
70943 	long: 64;
70944 	long: 64;
70945 	long: 64;
70946 	long: 64;
70947 	long: 64;
70948 	long: 64;
70949 	long: 64;
70950 	long: 64;
70951 	long: 64;
70952 	long: 64;
70953 	long: 64;
70954 	long: 64;
70955 	long: 64;
70956 	long: 64;
70957 	long: 64;
70958 	long: 64;
70959 	long: 64;
70960 	long: 64;
70961 	long: 64;
70962 	long: 64;
70963 	long: 64;
70964 	long: 64;
70965 	long: 64;
70966 	long: 64;
70967 	long: 64;
70968 	long: 64;
70969 	long: 64;
70970 	long: 64;
70971 	long: 64;
70972 	long: 64;
70973 	long: 64;
70974 	long: 64;
70975 	long: 64;
70976 	long: 64;
70977 	long: 64;
70978 	long: 64;
70979 	long: 64;
70980 	long: 64;
70981 	long: 64;
70982 	long: 64;
70983 	long: 64;
70984 	long: 64;
70985 	long: 64;
70986 	long: 64;
70987 	long: 64;
70988 	long: 64;
70989 	long: 64;
70990 	long: 64;
70991 	long: 64;
70992 	long: 64;
70993 	long: 64;
70994 	long: 64;
70995 	long: 64;
70996 	long: 64;
70997 	long: 64;
70998 	long: 64;
70999 	long: 64;
71000 	long: 64;
71001 	long: 64;
71002 	long: 64;
71003 	long: 64;
71004 	long: 64;
71005 	long: 64;
71006 	long: 64;
71007 	long: 64;
71008 	long: 64;
71009 	long: 64;
71010 	long: 64;
71011 	long: 64;
71012 	long: 64;
71013 	long: 64;
71014 	long: 64;
71015 	long: 64;
71016 	long: 64;
71017 	long: 64;
71018 	long: 64;
71019 	long: 64;
71020 	long: 64;
71021 	long: 64;
71022 	long: 64;
71023 	long: 64;
71024 	long: 64;
71025 	long: 64;
71026 	long: 64;
71027 	long: 64;
71028 	long: 64;
71029 	long: 64;
71030 	long: 64;
71031 	long: 64;
71032 	long: 64;
71033 	long: 64;
71034 	long: 64;
71035 	long: 64;
71036 	long: 64;
71037 	long: 64;
71038 	long: 64;
71039 	long: 64;
71040 	long: 64;
71041 	long: 64;
71042 	long: 64;
71043 	long: 64;
71044 	long: 64;
71045 	long: 64;
71046 	long: 64;
71047 	long: 64;
71048 	long: 64;
71049 	long: 64;
71050 	long: 64;
71051 	long: 64;
71052 	long: 64;
71053 	long: 64;
71054 	long: 64;
71055 	long: 64;
71056 	long: 64;
71057 	long: 64;
71058 	long: 64;
71059 	long: 64;
71060 	long: 64;
71061 	long: 64;
71062 	long: 64;
71063 	long: 64;
71064 	long: 64;
71065 	long: 64;
71066 	long: 64;
71067 	long: 64;
71068 	long: 64;
71069 	long: 64;
71070 	long: 64;
71071 	long: 64;
71072 	long: 64;
71073 	long: 64;
71074 	long: 64;
71075 	long: 64;
71076 	long: 64;
71077 	long: 64;
71078 	long: 64;
71079 	long: 64;
71080 	long: 64;
71081 	long: 64;
71082 	long: 64;
71083 	long: 64;
71084 	long: 64;
71085 	long: 64;
71086 	long: 64;
71087 	long: 64;
71088 	long: 64;
71089 	long: 64;
71090 	long: 64;
71091 	long: 64;
71092 	long: 64;
71093 	long: 64;
71094 	long: 64;
71095 	long: 64;
71096 	long: 64;
71097 	long: 64;
71098 	long: 64;
71099 	long: 64;
71100 	long: 64;
71101 	long: 64;
71102 	long: 64;
71103 	long: 64;
71104 	long: 64;
71105 	long: 64;
71106 	long: 64;
71107 	long: 64;
71108 	long: 64;
71109 	long: 64;
71110 	long: 64;
71111 	long: 64;
71112 	long: 64;
71113 	long: 64;
71114 	long: 64;
71115 	long: 64;
71116 	long: 64;
71117 	long: 64;
71118 	long: 64;
71119 	long: 64;
71120 	long: 64;
71121 	long: 64;
71122 	long: 64;
71123 	long: 64;
71124 	long: 64;
71125 	long: 64;
71126 	long: 64;
71127 	long: 64;
71128 	long: 64;
71129 	long: 64;
71130 	long: 64;
71131 	long: 64;
71132 	long: 64;
71133 	long: 64;
71134 	long: 64;
71135 	long: 64;
71136 	long: 64;
71137 	long: 64;
71138 	long: 64;
71139 	long: 64;
71140 	long: 64;
71141 	long: 64;
71142 	long: 64;
71143 	long: 64;
71144 	long: 64;
71145 	long: 64;
71146 	long: 64;
71147 	long: 64;
71148 	long: 64;
71149 	long: 64;
71150 	long: 64;
71151 	long: 64;
71152 	long: 64;
71153 	long: 64;
71154 	long: 64;
71155 	long: 64;
71156 	long: 64;
71157 	long: 64;
71158 	long: 64;
71159 	long: 64;
71160 	long: 64;
71161 	long: 64;
71162 	long: 64;
71163 	long: 64;
71164 	long: 64;
71165 	long: 64;
71166 	long: 64;
71167 	long: 64;
71168 	long: 64;
71169 	long: 64;
71170 	long: 64;
71171 	long: 64;
71172 	long: 64;
71173 	long: 64;
71174 	long: 64;
71175 	long: 64;
71176 	long: 64;
71177 	long: 64;
71178 	long: 64;
71179 	long: 64;
71180 	long: 64;
71181 	long: 64;
71182 	long: 64;
71183 	long: 64;
71184 	long: 64;
71185 	long: 64;
71186 	long: 64;
71187 	long: 64;
71188 	long: 64;
71189 	long: 64;
71190 	long: 64;
71191 	long: 64;
71192 	long: 64;
71193 	long: 64;
71194 	long: 64;
71195 	long: 64;
71196 	long: 64;
71197 	long: 64;
71198 	long: 64;
71199 	long: 64;
71200 	long: 64;
71201 	long: 64;
71202 	long: 64;
71203 	long: 64;
71204 	long: 64;
71205 	long: 64;
71206 	long: 64;
71207 	long: 64;
71208 	long: 64;
71209 	long: 64;
71210 	long: 64;
71211 	long: 64;
71212 	long: 64;
71213 	long: 64;
71214 	long: 64;
71215 	long: 64;
71216 	long: 64;
71217 	long: 64;
71218 	long: 64;
71219 	long: 64;
71220 	long: 64;
71221 	long: 64;
71222 	long: 64;
71223 	long: 64;
71224 	long: 64;
71225 	long: 64;
71226 	long: 64;
71227 	long: 64;
71228 	long: 64;
71229 	long: 64;
71230 	long: 64;
71231 	long: 64;
71232 	long: 64;
71233 	long: 64;
71234 	long: 64;
71235 	long: 64;
71236 	long: 64;
71237 	long: 64;
71238 	long: 64;
71239 	long: 64;
71240 	long: 64;
71241 	long: 64;
71242 	long: 64;
71243 	long: 64;
71244 	long: 64;
71245 	long: 64;
71246 	long: 64;
71247 	long: 64;
71248 	long: 64;
71249 	long: 64;
71250 	long: 64;
71251 	long: 64;
71252 	long: 64;
71253 	long: 64;
71254 	long: 64;
71255 	long: 64;
71256 	long: 64;
71257 	long: 64;
71258 	long: 64;
71259 	long: 64;
71260 	long: 64;
71261 	long: 64;
71262 	long: 64;
71263 	long: 64;
71264 	long: 64;
71265 	long: 64;
71266 	long: 64;
71267 	long: 64;
71268 	long: 64;
71269 	long: 64;
71270 	long: 64;
71271 	long: 64;
71272 	long: 64;
71273 	long: 64;
71274 	long: 64;
71275 	long: 64;
71276 	long: 64;
71277 	long: 64;
71278 	long: 64;
71279 	long: 64;
71280 	long: 64;
71281 	long: 64;
71282 	long: 64;
71283 	long: 64;
71284 	long: 64;
71285 	long: 64;
71286 	long: 64;
71287 	long: 64;
71288 	long: 64;
71289 	long: 64;
71290 	long: 64;
71291 	long: 64;
71292 	long: 64;
71293 	long: 64;
71294 	long: 64;
71295 	long: 64;
71296 	long: 64;
71297 	long: 64;
71298 	long: 64;
71299 	long: 64;
71300 	long: 64;
71301 	long: 64;
71302 	long: 64;
71303 	long: 64;
71304 	long: 64;
71305 	long: 64;
71306 	long: 64;
71307 	long: 64;
71308 	long: 64;
71309 	long: 64;
71310 	long: 64;
71311 	long: 64;
71312 	long: 64;
71313 	long: 64;
71314 	long: 64;
71315 	long: 64;
71316 	long: 64;
71317 	long: 64;
71318 	long: 64;
71319 	long: 64;
71320 	long: 64;
71321 	long: 64;
71322 	long: 64;
71323 	long: 64;
71324 	long: 64;
71325 	long: 64;
71326 	long: 64;
71327 	long: 64;
71328 	long: 64;
71329 	long: 64;
71330 	long: 64;
71331 	long: 64;
71332 	long: 64;
71333 	long: 64;
71334 	long: 64;
71335 	long: 64;
71336 	long: 64;
71337 	long: 64;
71338 	long: 64;
71339 	long: 64;
71340 	long: 64;
71341 	long: 64;
71342 	long: 64;
71343 	long: 64;
71344 	long: 64;
71345 	long: 64;
71346 	long: 64;
71347 	long: 64;
71348 	long: 64;
71349 	long: 64;
71350 	long: 64;
71351 	long: 64;
71352 	long: 64;
71353 	long: 64;
71354 	long: 64;
71355 	long: 64;
71356 	long: 64;
71357 	long: 64;
71358 	long: 64;
71359 	long: 64;
71360 	long: 64;
71361 	long: 64;
71362 	long: 64;
71363 	long: 64;
71364 	long: 64;
71365 	long: 64;
71366 	long: 64;
71367 	long: 64;
71368 	long: 64;
71369 	long: 64;
71370 	long: 64;
71371 	long: 64;
71372 	long: 64;
71373 	long: 64;
71374 	long: 64;
71375 	long: 64;
71376 	long: 64;
71377 	long: 64;
71378 	long: 64;
71379 	long: 64;
71380 	long: 64;
71381 	long: 64;
71382 	long: 64;
71383 	long: 64;
71384 	long: 64;
71385 	long: 64;
71386 	long: 64;
71387 	long: 64;
71388 	long: 64;
71389 	long: 64;
71390 	long: 64;
71391 	long: 64;
71392 	long: 64;
71393 	long: 64;
71394 	long: 64;
71395 	long: 64;
71396 	long: 64;
71397 	long: 64;
71398 	long: 64;
71399 	long: 64;
71400 	long: 64;
71401 	long: 64;
71402 	long: 64;
71403 	long: 64;
71404 	long: 64;
71405 	long: 64;
71406 	long: 64;
71407 	long: 64;
71408 	long: 64;
71409 	long: 64;
71410 	long: 64;
71411 	long: 64;
71412 	long: 64;
71413 	long: 64;
71414 	long: 64;
71415 	long: 64;
71416 	long: 64;
71417 	long: 64;
71418 	long: 64;
71419 	long: 64;
71420 	long: 64;
71421 	long: 64;
71422 	long: 64;
71423 	long: 64;
71424 	long: 64;
71425 	long: 64;
71426 	long: 64;
71427 	long: 64;
71428 	long: 64;
71429 	long: 64;
71430 	long: 64;
71431 	long: 64;
71432 	long: 64;
71433 	long: 64;
71434 	long: 64;
71435 	long: 64;
71436 	long: 64;
71437 	long: 64;
71438 	long: 64;
71439 	long: 64;
71440 	long: 64;
71441 	long: 64;
71442 	long: 64;
71443 	long: 64;
71444 	long: 64;
71445 	long: 64;
71446 	long: 64;
71447 	long: 64;
71448 	long: 64;
71449 	long: 64;
71450 	long: 64;
71451 	long: 64;
71452 	long: 64;
71453 	long: 64;
71454 	long: 64;
71455 	long: 64;
71456 	long: 64;
71457 	long: 64;
71458 	long: 64;
71459 	long: 64;
71460 	long: 64;
71461 	long: 64;
71462 	long: 64;
71463 	long: 64;
71464 	long: 64;
71465 	long: 64;
71466 	long: 64;
71467 	long: 64;
71468 	long: 64;
71469 	long: 64;
71470 	long: 64;
71471 	long: 64;
71472 	long: 64;
71473 	long: 64;
71474 	long: 64;
71475 	long: 64;
71476 	long: 64;
71477 	long: 64;
71478 	long: 64;
71479 	long: 64;
71480 	long: 64;
71481 	long: 64;
71482 	long: 64;
71483 	long: 64;
71484 	long: 64;
71485 	long: 64;
71486 	long: 64;
71487 	long: 64;
71488 	long: 64;
71489 	long: 64;
71490 	long: 64;
71491 	long: 64;
71492 	long: 64;
71493 	long: 64;
71494 	long: 64;
71495 	long: 64;
71496 	long: 64;
71497 	long: 64;
71498 	long: 64;
71499 	long: 64;
71500 	long: 64;
71501 	long: 64;
71502 	long: 64;
71503 	long: 64;
71504 	long: 64;
71505 	long: 64;
71506 	long: 64;
71507 	long: 64;
71508 	long: 64;
71509 	long: 64;
71510 	long: 64;
71511 	long: 64;
71512 	long: 64;
71513 	long: 64;
71514 	long: 64;
71515 	long: 64;
71516 	long: 64;
71517 	long: 64;
71518 	long: 64;
71519 	long: 64;
71520 	long: 64;
71521 	long: 64;
71522 	long: 64;
71523 	long: 64;
71524 	long: 64;
71525 	long: 64;
71526 	long: 64;
71527 	long: 64;
71528 	long: 64;
71529 	long: 64;
71530 	long: 64;
71531 	long: 64;
71532 	long: 64;
71533 	long: 64;
71534 	long: 64;
71535 	long: 64;
71536 	long: 64;
71537 	long: 64;
71538 	long: 64;
71539 	long: 64;
71540 	long: 64;
71541 	long: 64;
71542 	long: 64;
71543 	long: 64;
71544 	long: 64;
71545 	long: 64;
71546 	long: 64;
71547 	long: 64;
71548 	long: 64;
71549 	long: 64;
71550 	long: 64;
71551 	long: 64;
71552 	long: 64;
71553 	long: 64;
71554 	long: 64;
71555 	long: 64;
71556 	long: 64;
71557 	long: 64;
71558 	long: 64;
71559 	long: 64;
71560 	long: 64;
71561 	long: 64;
71562 	long: 64;
71563 	long: 64;
71564 	long: 64;
71565 	long: 64;
71566 	long: 64;
71567 	long: 64;
71568 	long: 64;
71569 	long: 64;
71570 	long: 64;
71571 	long: 64;
71572 	long: 64;
71573 	long: 64;
71574 	long: 64;
71575 	long: 64;
71576 	long: 64;
71577 	long: 64;
71578 	long: 64;
71579 	long: 64;
71580 	long: 64;
71581 	long: 64;
71582 	long: 64;
71583 	long: 64;
71584 	long: 64;
71585 	long: 64;
71586 	long: 64;
71587 	long: 64;
71588 	long: 64;
71589 	long: 64;
71590 	long: 64;
71591 	long: 64;
71592 	long: 64;
71593 	long: 64;
71594 	long: 64;
71595 	long: 64;
71596 	long: 64;
71597 	long: 64;
71598 	long: 64;
71599 	long: 64;
71600 	long: 64;
71601 	long: 64;
71602 	long: 64;
71603 	long: 64;
71604 	long: 64;
71605 	long: 64;
71606 	long: 64;
71607 	long: 64;
71608 	long: 64;
71609 	long: 64;
71610 	long: 64;
71611 	long: 64;
71612 	long: 64;
71613 	long: 64;
71614 	long: 64;
71615 	long: 64;
71616 	long: 64;
71617 	long: 64;
71618 	long: 64;
71619 	long: 64;
71620 	long: 64;
71621 	long: 64;
71622 	long: 64;
71623 	long: 64;
71624 	long: 64;
71625 	long: 64;
71626 	long: 64;
71627 	long: 64;
71628 	long: 64;
71629 	long: 64;
71630 	long: 64;
71631 	long: 64;
71632 	long: 64;
71633 	long: 64;
71634 	long: 64;
71635 	long: 64;
71636 	long: 64;
71637 	long: 64;
71638 	long: 64;
71639 	long: 64;
71640 	long: 64;
71641 	long: 64;
71642 	long: 64;
71643 	long: 64;
71644 	long: 64;
71645 	long: 64;
71646 	long: 64;
71647 	long: 64;
71648 	long: 64;
71649 	long: 64;
71650 	long: 64;
71651 	long: 64;
71652 	long: 64;
71653 	long: 64;
71654 	long: 64;
71655 	long: 64;
71656 	long: 64;
71657 	long: 64;
71658 	long: 64;
71659 	long: 64;
71660 	long: 64;
71661 	long: 64;
71662 	long: 64;
71663 	long: 64;
71664 	long: 64;
71665 	long: 64;
71666 	long: 64;
71667 	long: 64;
71668 	long: 64;
71669 	long: 64;
71670 	long: 64;
71671 	long: 64;
71672 	long: 64;
71673 	long: 64;
71674 	long: 64;
71675 	long: 64;
71676 	long: 64;
71677 	long: 64;
71678 	long: 64;
71679 	long: 64;
71680 	long: 64;
71681 	long: 64;
71682 	long: 64;
71683 	long: 64;
71684 	long: 64;
71685 	long: 64;
71686 	long: 64;
71687 	long: 64;
71688 	long: 64;
71689 	long: 64;
71690 	long: 64;
71691 	long: 64;
71692 	long: 64;
71693 	long: 64;
71694 	long: 64;
71695 	long: 64;
71696 	long: 64;
71697 	long: 64;
71698 	long: 64;
71699 	long: 64;
71700 	long: 64;
71701 	long: 64;
71702 	long: 64;
71703 	long: 64;
71704 	long: 64;
71705 	long: 64;
71706 	long: 64;
71707 	long: 64;
71708 	long: 64;
71709 	long: 64;
71710 	long: 64;
71711 	long: 64;
71712 	long: 64;
71713 	long: 64;
71714 	long: 64;
71715 	long: 64;
71716 	long: 64;
71717 	long: 64;
71718 	long: 64;
71719 	long: 64;
71720 	long: 64;
71721 	long: 64;
71722 	long: 64;
71723 	long: 64;
71724 	long: 64;
71725 	long: 64;
71726 	long: 64;
71727 	long: 64;
71728 	long: 64;
71729 	long: 64;
71730 	long: 64;
71731 	long: 64;
71732 	long: 64;
71733 	long: 64;
71734 	long: 64;
71735 	long: 64;
71736 	long: 64;
71737 	long: 64;
71738 	long: 64;
71739 	long: 64;
71740 	long: 64;
71741 	long: 64;
71742 	long: 64;
71743 	long: 64;
71744 	long: 64;
71745 	long: 64;
71746 	long: 64;
71747 	long: 64;
71748 	long: 64;
71749 	long: 64;
71750 	long: 64;
71751 	long: 64;
71752 	long: 64;
71753 	long: 64;
71754 	long: 64;
71755 	long: 64;
71756 	long: 64;
71757 	long: 64;
71758 	long: 64;
71759 	long: 64;
71760 	long: 64;
71761 	long: 64;
71762 	long: 64;
71763 	long: 64;
71764 	long: 64;
71765 	long: 64;
71766 	long: 64;
71767 	long: 64;
71768 	long: 64;
71769 	long: 64;
71770 	long: 64;
71771 	long: 64;
71772 	long: 64;
71773 	long: 64;
71774 	long: 64;
71775 	long: 64;
71776 	long: 64;
71777 	long: 64;
71778 	long: 64;
71779 	long: 64;
71780 	long: 64;
71781 	long: 64;
71782 	long: 64;
71783 	long: 64;
71784 	long: 64;
71785 	long: 64;
71786 	long: 64;
71787 	long: 64;
71788 	long: 64;
71789 	long: 64;
71790 	long: 64;
71791 	long: 64;
71792 	long: 64;
71793 	long: 64;
71794 	long: 64;
71795 	long: 64;
71796 	long: 64;
71797 	long: 64;
71798 	long: 64;
71799 	long: 64;
71800 	long: 64;
71801 	long: 64;
71802 	long: 64;
71803 	long: 64;
71804 	long: 64;
71805 	long: 64;
71806 	long: 64;
71807 	long: 64;
71808 	long: 64;
71809 	long: 64;
71810 	long: 64;
71811 	long: 64;
71812 	long: 64;
71813 	long: 64;
71814 	long: 64;
71815 	long: 64;
71816 	long: 64;
71817 	long: 64;
71818 	long: 64;
71819 	long: 64;
71820 	long: 64;
71821 	long: 64;
71822 	long: 64;
71823 	long: 64;
71824 	long: 64;
71825 	long: 64;
71826 	long: 64;
71827 	long: 64;
71828 	long: 64;
71829 	long: 64;
71830 	long: 64;
71831 	long: 64;
71832 	long: 64;
71833 	long: 64;
71834 	long: 64;
71835 	long: 64;
71836 	long: 64;
71837 	long: 64;
71838 	long: 64;
71839 	long: 64;
71840 	long: 64;
71841 	long: 64;
71842 	long: 64;
71843 	long: 64;
71844 	long: 64;
71845 	long: 64;
71846 	long: 64;
71847 	long: 64;
71848 	long: 64;
71849 	long: 64;
71850 	long: 64;
71851 	long: 64;
71852 	long: 64;
71853 	long: 64;
71854 	long: 64;
71855 	long: 64;
71856 	long: 64;
71857 	long: 64;
71858 	long: 64;
71859 	long: 64;
71860 	long: 64;
71861 	long: 64;
71862 	long: 64;
71863 	long: 64;
71864 	long: 64;
71865 	long: 64;
71866 	long: 64;
71867 	long: 64;
71868 	long: 64;
71869 	long: 64;
71870 	long: 64;
71871 	long: 64;
71872 	long: 64;
71873 	long: 64;
71874 	long: 64;
71875 	long: 64;
71876 	long: 64;
71877 	long: 64;
71878 	long: 64;
71879 	long: 64;
71880 	long: 64;
71881 	long: 64;
71882 	long: 64;
71883 	long: 64;
71884 	long: 64;
71885 	long: 64;
71886 	long: 64;
71887 	long: 64;
71888 	long: 64;
71889 	long: 64;
71890 	long: 64;
71891 	long: 64;
71892 	long: 64;
71893 	long: 64;
71894 	long: 64;
71895 	long: 64;
71896 	long: 64;
71897 	long: 64;
71898 	long: 64;
71899 	long: 64;
71900 	long: 64;
71901 	long: 64;
71902 	long: 64;
71903 	long: 64;
71904 	long: 64;
71905 	long: 64;
71906 	long: 64;
71907 	long: 64;
71908 	long: 64;
71909 	long: 64;
71910 	long: 64;
71911 	long: 64;
71912 	long: 64;
71913 	long: 64;
71914 	long: 64;
71915 	long: 64;
71916 	long: 64;
71917 	long: 64;
71918 	long: 64;
71919 	long: 64;
71920 	long: 64;
71921 	long: 64;
71922 	long: 64;
71923 	long: 64;
71924 	long: 64;
71925 	long: 64;
71926 	long: 64;
71927 	long: 64;
71928 	long: 64;
71929 	long: 64;
71930 	long: 64;
71931 	long: 64;
71932 	long: 64;
71933 	long: 64;
71934 	long: 64;
71935 	long: 64;
71936 	long: 64;
71937 	long: 64;
71938 	long: 64;
71939 	long: 64;
71940 	long: 64;
71941 	long: 64;
71942 	long: 64;
71943 	long: 64;
71944 	long: 64;
71945 	long: 64;
71946 	long: 64;
71947 	long: 64;
71948 	long: 64;
71949 	long: 64;
71950 	long: 64;
71951 	long: 64;
71952 	long: 64;
71953 	long: 64;
71954 	long: 64;
71955 	long: 64;
71956 	long: 64;
71957 	long: 64;
71958 	long: 64;
71959 	long: 64;
71960 	long: 64;
71961 	long: 64;
71962 	long: 64;
71963 	long: 64;
71964 	long: 64;
71965 	long: 64;
71966 	long: 64;
71967 	long: 64;
71968 	long: 64;
71969 	long: 64;
71970 	long: 64;
71971 	long: 64;
71972 	long: 64;
71973 	long: 64;
71974 	long: 64;
71975 	long: 64;
71976 	long: 64;
71977 	long: 64;
71978 	long: 64;
71979 	long: 64;
71980 	long: 64;
71981 	long: 64;
71982 	long: 64;
71983 	long: 64;
71984 	long: 64;
71985 	long: 64;
71986 	long: 64;
71987 	long: 64;
71988 	long: 64;
71989 	long: 64;
71990 	long: 64;
71991 	long: 64;
71992 	long: 64;
71993 	long: 64;
71994 	long: 64;
71995 	long: 64;
71996 	long: 64;
71997 	long: 64;
71998 	long: 64;
71999 	long: 64;
72000 	long: 64;
72001 	long: 64;
72002 	long: 64;
72003 	long: 64;
72004 	long: 64;
72005 	long: 64;
72006 	long: 64;
72007 	long: 64;
72008 	long: 64;
72009 	long: 64;
72010 	long: 64;
72011 	long: 64;
72012 	long: 64;
72013 	long: 64;
72014 	long: 64;
72015 	long: 64;
72016 	long: 64;
72017 	long: 64;
72018 	long: 64;
72019 	long: 64;
72020 	long: 64;
72021 	long: 64;
72022 	long: 64;
72023 	long: 64;
72024 	long: 64;
72025 	long: 64;
72026 	long: 64;
72027 	long: 64;
72028 	long: 64;
72029 	long: 64;
72030 	long: 64;
72031 	long: 64;
72032 	long: 64;
72033 	long: 64;
72034 	long: 64;
72035 	long: 64;
72036 	long: 64;
72037 	long: 64;
72038 	long: 64;
72039 	long: 64;
72040 	long: 64;
72041 	long: 64;
72042 	long: 64;
72043 	long: 64;
72044 	long: 64;
72045 	long: 64;
72046 	long: 64;
72047 	long: 64;
72048 	long: 64;
72049 	long: 64;
72050 	long: 64;
72051 	long: 64;
72052 	long: 64;
72053 	long: 64;
72054 	long: 64;
72055 	long: 64;
72056 	long: 64;
72057 	long: 64;
72058 	long: 64;
72059 	long: 64;
72060 	long: 64;
72061 	long: 64;
72062 	long: 64;
72063 	long: 64;
72064 	long: 64;
72065 	long: 64;
72066 	long: 64;
72067 	long: 64;
72068 	long: 64;
72069 	long: 64;
72070 	long: 64;
72071 	long: 64;
72072 	long: 64;
72073 	long: 64;
72074 	long: 64;
72075 	long: 64;
72076 	long: 64;
72077 	long: 64;
72078 	long: 64;
72079 	long: 64;
72080 	long: 64;
72081 	long: 64;
72082 	long: 64;
72083 	long: 64;
72084 	long: 64;
72085 	long: 64;
72086 	long: 64;
72087 	long: 64;
72088 	long: 64;
72089 	long: 64;
72090 	long: 64;
72091 	long: 64;
72092 	long: 64;
72093 	long: 64;
72094 	long: 64;
72095 	long: 64;
72096 	long: 64;
72097 	long: 64;
72098 	long: 64;
72099 	long: 64;
72100 	long: 64;
72101 	long: 64;
72102 	long: 64;
72103 	long: 64;
72104 	long: 64;
72105 	long: 64;
72106 	long: 64;
72107 	long: 64;
72108 	long: 64;
72109 	long: 64;
72110 	long: 64;
72111 	long: 64;
72112 	long: 64;
72113 	long: 64;
72114 	long: 64;
72115 	long: 64;
72116 	long: 64;
72117 	long: 64;
72118 	long: 64;
72119 	long: 64;
72120 	long: 64;
72121 	long: 64;
72122 	long: 64;
72123 	long: 64;
72124 	long: 64;
72125 	long: 64;
72126 	long: 64;
72127 	long: 64;
72128 	long: 64;
72129 	long: 64;
72130 	long: 64;
72131 	long: 64;
72132 	long: 64;
72133 	long: 64;
72134 	long: 64;
72135 	long: 64;
72136 	long: 64;
72137 	long: 64;
72138 	long: 64;
72139 	long: 64;
72140 	long: 64;
72141 	long: 64;
72142 	long: 64;
72143 	long: 64;
72144 	long: 64;
72145 	long: 64;
72146 	long: 64;
72147 	long: 64;
72148 	long: 64;
72149 	long: 64;
72150 	long: 64;
72151 	long: 64;
72152 	long: 64;
72153 	long: 64;
72154 	long: 64;
72155 	long: 64;
72156 	long: 64;
72157 	long: 64;
72158 	long: 64;
72159 	long: 64;
72160 	long: 64;
72161 	long: 64;
72162 	long: 64;
72163 	long: 64;
72164 	long: 64;
72165 	long: 64;
72166 	long: 64;
72167 	long: 64;
72168 	long: 64;
72169 	long: 64;
72170 	long: 64;
72171 	long: 64;
72172 	long: 64;
72173 	long: 64;
72174 	long: 64;
72175 	long: 64;
72176 	long: 64;
72177 	long: 64;
72178 	long: 64;
72179 	long: 64;
72180 	long: 64;
72181 	long: 64;
72182 	long: 64;
72183 	long: 64;
72184 	long: 64;
72185 	long: 64;
72186 	long: 64;
72187 	long: 64;
72188 	long: 64;
72189 	long: 64;
72190 	long: 64;
72191 	long: 64;
72192 	long: 64;
72193 	long: 64;
72194 	long: 64;
72195 	long: 64;
72196 	long: 64;
72197 	long: 64;
72198 	long: 64;
72199 	long: 64;
72200 	long: 64;
72201 	long: 64;
72202 	long: 64;
72203 	long: 64;
72204 	long: 64;
72205 	long: 64;
72206 	long: 64;
72207 	long: 64;
72208 	long: 64;
72209 	long: 64;
72210 	long: 64;
72211 	long: 64;
72212 	long: 64;
72213 	long: 64;
72214 	long: 64;
72215 	long: 64;
72216 	long: 64;
72217 	long: 64;
72218 	long: 64;
72219 	long: 64;
72220 	long: 64;
72221 	long: 64;
72222 	long: 64;
72223 	long: 64;
72224 	long: 64;
72225 	long: 64;
72226 	long: 64;
72227 	long: 64;
72228 	long: 64;
72229 	long: 64;
72230 	long: 64;
72231 	long: 64;
72232 	long: 64;
72233 	long: 64;
72234 	long: 64;
72235 	long: 64;
72236 	long: 64;
72237 	long: 64;
72238 	long: 64;
72239 	long: 64;
72240 	long: 64;
72241 	long: 64;
72242 	long: 64;
72243 	long: 64;
72244 	long: 64;
72245 	long: 64;
72246 	long: 64;
72247 	long: 64;
72248 	long: 64;
72249 	long: 64;
72250 	long: 64;
72251 	long: 64;
72252 	long: 64;
72253 	long: 64;
72254 	long: 64;
72255 	long: 64;
72256 	long: 64;
72257 	long: 64;
72258 	long: 64;
72259 	long: 64;
72260 	long: 64;
72261 	long: 64;
72262 	long: 64;
72263 	long: 64;
72264 	long: 64;
72265 	long: 64;
72266 	long: 64;
72267 	long: 64;
72268 	long: 64;
72269 	long: 64;
72270 	long: 64;
72271 	long: 64;
72272 	long: 64;
72273 	long: 64;
72274 	long: 64;
72275 	long: 64;
72276 	long: 64;
72277 	long: 64;
72278 	long: 64;
72279 	long: 64;
72280 	long: 64;
72281 	long: 64;
72282 	long: 64;
72283 	long: 64;
72284 	long: 64;
72285 	long: 64;
72286 	long: 64;
72287 	long: 64;
72288 	long: 64;
72289 	long: 64;
72290 	long: 64;
72291 	long: 64;
72292 	long: 64;
72293 	long: 64;
72294 	long: 64;
72295 	long: 64;
72296 	long: 64;
72297 	long: 64;
72298 	long: 64;
72299 	long: 64;
72300 	long: 64;
72301 	long: 64;
72302 	long: 64;
72303 	long: 64;
72304 	long: 64;
72305 	long: 64;
72306 	long: 64;
72307 	long: 64;
72308 	long: 64;
72309 	long: 64;
72310 	long: 64;
72311 	long: 64;
72312 	long: 64;
72313 	long: 64;
72314 	long: 64;
72315 	long: 64;
72316 	long: 64;
72317 	long: 64;
72318 	long: 64;
72319 	long: 64;
72320 	long: 64;
72321 	long: 64;
72322 	long: 64;
72323 	long: 64;
72324 	long: 64;
72325 	long: 64;
72326 	long: 64;
72327 	long: 64;
72328 	long: 64;
72329 	long: 64;
72330 	long: 64;
72331 	long: 64;
72332 	long: 64;
72333 	long: 64;
72334 	long: 64;
72335 	long: 64;
72336 	long: 64;
72337 	long: 64;
72338 	long: 64;
72339 	long: 64;
72340 	long: 64;
72341 	long: 64;
72342 	long: 64;
72343 	long: 64;
72344 	long: 64;
72345 	long: 64;
72346 	long: 64;
72347 	long: 64;
72348 	long: 64;
72349 	long: 64;
72350 	long: 64;
72351 	long: 64;
72352 	long: 64;
72353 	long: 64;
72354 	long: 64;
72355 	long: 64;
72356 	long: 64;
72357 	long: 64;
72358 	long: 64;
72359 	long: 64;
72360 	long: 64;
72361 	long: 64;
72362 	long: 64;
72363 	long: 64;
72364 	long: 64;
72365 	long: 64;
72366 	long: 64;
72367 	long: 64;
72368 	long: 64;
72369 	long: 64;
72370 	long: 64;
72371 	long: 64;
72372 	long: 64;
72373 	long: 64;
72374 	long: 64;
72375 	long: 64;
72376 	long: 64;
72377 	long: 64;
72378 	long: 64;
72379 	long: 64;
72380 	long: 64;
72381 	long: 64;
72382 	long: 64;
72383 	long: 64;
72384 	long: 64;
72385 	long: 64;
72386 	long: 64;
72387 	long: 64;
72388 	long: 64;
72389 	long: 64;
72390 	long: 64;
72391 	long: 64;
72392 	long: 64;
72393 	long: 64;
72394 	long: 64;
72395 	long: 64;
72396 	long: 64;
72397 	long: 64;
72398 	long: 64;
72399 	long: 64;
72400 	long: 64;
72401 	long: 64;
72402 	long: 64;
72403 	long: 64;
72404 	long: 64;
72405 	long: 64;
72406 	long: 64;
72407 	long: 64;
72408 	long: 64;
72409 	long: 64;
72410 	long: 64;
72411 	long: 64;
72412 	long: 64;
72413 	long: 64;
72414 	long: 64;
72415 	long: 64;
72416 	long: 64;
72417 	long: 64;
72418 	long: 64;
72419 	long: 64;
72420 	long: 64;
72421 	long: 64;
72422 	long: 64;
72423 	long: 64;
72424 	long: 64;
72425 	long: 64;
72426 	long: 64;
72427 	long: 64;
72428 	long: 64;
72429 	long: 64;
72430 	long: 64;
72431 	long: 64;
72432 	long: 64;
72433 	long: 64;
72434 	long: 64;
72435 	long: 64;
72436 	long: 64;
72437 	long: 64;
72438 	long: 64;
72439 	long: 64;
72440 	long: 64;
72441 	long: 64;
72442 	long: 64;
72443 	long: 64;
72444 	long: 64;
72445 	long: 64;
72446 	long: 64;
72447 	long: 64;
72448 	long: 64;
72449 	long: 64;
72450 	long: 64;
72451 	long: 64;
72452 	long: 64;
72453 	long: 64;
72454 	long: 64;
72455 	long: 64;
72456 	long: 64;
72457 	long: 64;
72458 	long: 64;
72459 	long: 64;
72460 	long: 64;
72461 	long: 64;
72462 	long: 64;
72463 	long: 64;
72464 	long: 64;
72465 	long: 64;
72466 	long: 64;
72467 	long: 64;
72468 	long: 64;
72469 	long: 64;
72470 	long: 64;
72471 	long: 64;
72472 	long: 64;
72473 	long: 64;
72474 	long: 64;
72475 	long: 64;
72476 	long: 64;
72477 	long: 64;
72478 	long: 64;
72479 	long: 64;
72480 	long: 64;
72481 	long: 64;
72482 	long: 64;
72483 	long: 64;
72484 	long: 64;
72485 	long: 64;
72486 	long: 64;
72487 	long: 64;
72488 	long: 64;
72489 	long: 64;
72490 	long: 64;
72491 	long: 64;
72492 	long: 64;
72493 	long: 64;
72494 	long: 64;
72495 	long: 64;
72496 	long: 64;
72497 	long: 64;
72498 	long: 64;
72499 	long: 64;
72500 	long: 64;
72501 	long: 64;
72502 	long: 64;
72503 	long: 64;
72504 	long: 64;
72505 	long: 64;
72506 	long: 64;
72507 	long: 64;
72508 	long: 64;
72509 	long: 64;
72510 	long: 64;
72511 	long: 64;
72512 	long: 64;
72513 	long: 64;
72514 	long: 64;
72515 	long: 64;
72516 	long: 64;
72517 	long: 64;
72518 	long: 64;
72519 	long: 64;
72520 	long: 64;
72521 	long: 64;
72522 	long: 64;
72523 	long: 64;
72524 	long: 64;
72525 	long: 64;
72526 	long: 64;
72527 	long: 64;
72528 	long: 64;
72529 	long: 64;
72530 	long: 64;
72531 	long: 64;
72532 	long: 64;
72533 	long: 64;
72534 	long: 64;
72535 	long: 64;
72536 	long: 64;
72537 	long: 64;
72538 	long: 64;
72539 	long: 64;
72540 	long: 64;
72541 	long: 64;
72542 	long: 64;
72543 	long: 64;
72544 	long: 64;
72545 	long: 64;
72546 	long: 64;
72547 	long: 64;
72548 	long: 64;
72549 	long: 64;
72550 	long: 64;
72551 	long: 64;
72552 	long: 64;
72553 	long: 64;
72554 	long: 64;
72555 	long: 64;
72556 	long: 64;
72557 	long: 64;
72558 	long: 64;
72559 	long: 64;
72560 	long: 64;
72561 	long: 64;
72562 	long: 64;
72563 	long: 64;
72564 	long: 64;
72565 	long: 64;
72566 	long: 64;
72567 	long: 64;
72568 	long: 64;
72569 	long: 64;
72570 	long: 64;
72571 	long: 64;
72572 	long: 64;
72573 	long: 64;
72574 	long: 64;
72575 	long: 64;
72576 	long: 64;
72577 	long: 64;
72578 	long: 64;
72579 	long: 64;
72580 	long: 64;
72581 	long: 64;
72582 	long: 64;
72583 	long: 64;
72584 	long: 64;
72585 	long: 64;
72586 	long: 64;
72587 	long: 64;
72588 	long: 64;
72589 	long: 64;
72590 	long: 64;
72591 	long: 64;
72592 	long: 64;
72593 	long: 64;
72594 	long: 64;
72595 	long: 64;
72596 	long: 64;
72597 	long: 64;
72598 	long: 64;
72599 	long: 64;
72600 	long: 64;
72601 	long: 64;
72602 	long: 64;
72603 	long: 64;
72604 	long: 64;
72605 	long: 64;
72606 	long: 64;
72607 	long: 64;
72608 	long: 64;
72609 	long: 64;
72610 	long: 64;
72611 	long: 64;
72612 	long: 64;
72613 	long: 64;
72614 	long: 64;
72615 	long: 64;
72616 	long: 64;
72617 	long: 64;
72618 	long: 64;
72619 	long: 64;
72620 	long: 64;
72621 	long: 64;
72622 	long: 64;
72623 	long: 64;
72624 	long: 64;
72625 	long: 64;
72626 	long: 64;
72627 	long: 64;
72628 	long: 64;
72629 	long: 64;
72630 	long: 64;
72631 	long: 64;
72632 	long: 64;
72633 	long: 64;
72634 	long: 64;
72635 	long: 64;
72636 	long: 64;
72637 	long: 64;
72638 	long: 64;
72639 	long: 64;
72640 	long: 64;
72641 	long: 64;
72642 	long: 64;
72643 	long: 64;
72644 	long: 64;
72645 	long: 64;
72646 	long: 64;
72647 	long: 64;
72648 	long: 64;
72649 	long: 64;
72650 	long: 64;
72651 	long: 64;
72652 	long: 64;
72653 	long: 64;
72654 	long: 64;
72655 	long: 64;
72656 	long: 64;
72657 	long: 64;
72658 	long: 64;
72659 	long: 64;
72660 	long: 64;
72661 	long: 64;
72662 	long: 64;
72663 	long: 64;
72664 	long: 64;
72665 	long: 64;
72666 	long: 64;
72667 	long: 64;
72668 	long: 64;
72669 	long: 64;
72670 	long: 64;
72671 	long: 64;
72672 	long: 64;
72673 	long: 64;
72674 	long: 64;
72675 	long: 64;
72676 	long: 64;
72677 	long: 64;
72678 	long: 64;
72679 	long: 64;
72680 	long: 64;
72681 	long: 64;
72682 	long: 64;
72683 	long: 64;
72684 	long: 64;
72685 	long: 64;
72686 	long: 64;
72687 	long: 64;
72688 	long: 64;
72689 	long: 64;
72690 	long: 64;
72691 	long: 64;
72692 	long: 64;
72693 	long: 64;
72694 	long: 64;
72695 	long: 64;
72696 	long: 64;
72697 	long: 64;
72698 	long: 64;
72699 	long: 64;
72700 	long: 64;
72701 	long: 64;
72702 	long: 64;
72703 	long: 64;
72704 	long: 64;
72705 	long: 64;
72706 	long: 64;
72707 	long: 64;
72708 	long: 64;
72709 	long: 64;
72710 	long: 64;
72711 	long: 64;
72712 	long: 64;
72713 	long: 64;
72714 	long: 64;
72715 	long: 64;
72716 	long: 64;
72717 	long: 64;
72718 	long: 64;
72719 	long: 64;
72720 	long: 64;
72721 	long: 64;
72722 	long: 64;
72723 	long: 64;
72724 	long: 64;
72725 	long: 64;
72726 	long: 64;
72727 	long: 64;
72728 	long: 64;
72729 	long: 64;
72730 	long: 64;
72731 	long: 64;
72732 	long: 64;
72733 	long: 64;
72734 	long: 64;
72735 	long: 64;
72736 	long: 64;
72737 	long: 64;
72738 	long: 64;
72739 	long: 64;
72740 	long: 64;
72741 	long: 64;
72742 	long: 64;
72743 	long: 64;
72744 	long: 64;
72745 	long: 64;
72746 	long: 64;
72747 	long: 64;
72748 	long: 64;
72749 	long: 64;
72750 	long: 64;
72751 	long: 64;
72752 	long: 64;
72753 	long: 64;
72754 	long: 64;
72755 	long: 64;
72756 	long: 64;
72757 	long: 64;
72758 	long: 64;
72759 	long: 64;
72760 	long: 64;
72761 	long: 64;
72762 	long: 64;
72763 	long: 64;
72764 	long: 64;
72765 	long: 64;
72766 	long: 64;
72767 	long: 64;
72768 	long: 64;
72769 	long: 64;
72770 	long: 64;
72771 	long: 64;
72772 	long: 64;
72773 	long: 64;
72774 	long: 64;
72775 	long: 64;
72776 	long: 64;
72777 	long: 64;
72778 	long: 64;
72779 	long: 64;
72780 	long: 64;
72781 	long: 64;
72782 	long: 64;
72783 	long: 64;
72784 	long: 64;
72785 	long: 64;
72786 	long: 64;
72787 	long: 64;
72788 	long: 64;
72789 	long: 64;
72790 	long: 64;
72791 	long: 64;
72792 	long: 64;
72793 	long: 64;
72794 	long: 64;
72795 	long: 64;
72796 	long: 64;
72797 	long: 64;
72798 	long: 64;
72799 	long: 64;
72800 	long: 64;
72801 	long: 64;
72802 	long: 64;
72803 	long: 64;
72804 	long: 64;
72805 	long: 64;
72806 	long: 64;
72807 	long: 64;
72808 	long: 64;
72809 	long: 64;
72810 	long: 64;
72811 	long: 64;
72812 	long: 64;
72813 	long: 64;
72814 	long: 64;
72815 	long: 64;
72816 	long: 64;
72817 	long: 64;
72818 	long: 64;
72819 	long: 64;
72820 	long: 64;
72821 	long: 64;
72822 	long: 64;
72823 	long: 64;
72824 	long: 64;
72825 	long: 64;
72826 	long: 64;
72827 	long: 64;
72828 	long: 64;
72829 	long: 64;
72830 	long: 64;
72831 	long: 64;
72832 	long: 64;
72833 	long: 64;
72834 	long: 64;
72835 	long: 64;
72836 	long: 64;
72837 	long: 64;
72838 	long: 64;
72839 	long: 64;
72840 	long: 64;
72841 	long: 64;
72842 	long: 64;
72843 	long: 64;
72844 	long: 64;
72845 	long: 64;
72846 	long: 64;
72847 	long: 64;
72848 	long: 64;
72849 	long: 64;
72850 	long: 64;
72851 	long: 64;
72852 	long: 64;
72853 	long: 64;
72854 	long: 64;
72855 	long: 64;
72856 	long: 64;
72857 	long: 64;
72858 	long: 64;
72859 	long: 64;
72860 	long: 64;
72861 	long: 64;
72862 	long: 64;
72863 	long: 64;
72864 	long: 64;
72865 	long: 64;
72866 	long: 64;
72867 	long: 64;
72868 	long: 64;
72869 	long: 64;
72870 	long: 64;
72871 	long: 64;
72872 	long: 64;
72873 	long: 64;
72874 	long: 64;
72875 	long: 64;
72876 	long: 64;
72877 	long: 64;
72878 	long: 64;
72879 	long: 64;
72880 	long: 64;
72881 	long: 64;
72882 	long: 64;
72883 	long: 64;
72884 	long: 64;
72885 	long: 64;
72886 	long: 64;
72887 	long: 64;
72888 	long: 64;
72889 	long: 64;
72890 	long: 64;
72891 	long: 64;
72892 	long: 64;
72893 	long: 64;
72894 	long: 64;
72895 	long: 64;
72896 	long: 64;
72897 	long: 64;
72898 	long: 64;
72899 	long: 64;
72900 	long: 64;
72901 	long: 64;
72902 	long: 64;
72903 	long: 64;
72904 	long: 64;
72905 	long: 64;
72906 	long: 64;
72907 	long: 64;
72908 	long: 64;
72909 	long: 64;
72910 	long: 64;
72911 	long: 64;
72912 	long: 64;
72913 	long: 64;
72914 	long: 64;
72915 	long: 64;
72916 	long: 64;
72917 	long: 64;
72918 	long: 64;
72919 	long: 64;
72920 	long: 64;
72921 	long: 64;
72922 	long: 64;
72923 	long: 64;
72924 	long: 64;
72925 	long: 64;
72926 	long: 64;
72927 	long: 64;
72928 	long: 64;
72929 	long: 64;
72930 	long: 64;
72931 	long: 64;
72932 	long: 64;
72933 	long: 64;
72934 	long: 64;
72935 	long: 64;
72936 	long: 64;
72937 	long: 64;
72938 	long: 64;
72939 	long: 64;
72940 	long: 64;
72941 	long: 64;
72942 	long: 64;
72943 	long: 64;
72944 	long: 64;
72945 	long: 64;
72946 	long: 64;
72947 	long: 64;
72948 	long: 64;
72949 	long: 64;
72950 	long: 64;
72951 	long: 64;
72952 	long: 64;
72953 	long: 64;
72954 	long: 64;
72955 	long: 64;
72956 	long: 64;
72957 	long: 64;
72958 	long: 64;
72959 	long: 64;
72960 	long: 64;
72961 	long: 64;
72962 	long: 64;
72963 	long: 64;
72964 	long: 64;
72965 	long: 64;
72966 	long: 64;
72967 	long: 64;
72968 	long: 64;
72969 	long: 64;
72970 	long: 64;
72971 	long: 64;
72972 	long: 64;
72973 	long: 64;
72974 	long: 64;
72975 	long: 64;
72976 	long: 64;
72977 	long: 64;
72978 	long: 64;
72979 	long: 64;
72980 	long: 64;
72981 	long: 64;
72982 	long: 64;
72983 	long: 64;
72984 	long: 64;
72985 	long: 64;
72986 	long: 64;
72987 	long: 64;
72988 	long: 64;
72989 	long: 64;
72990 	long: 64;
72991 	long: 64;
72992 	long: 64;
72993 	long: 64;
72994 	long: 64;
72995 	long: 64;
72996 	long: 64;
72997 	long: 64;
72998 	long: 64;
72999 	long: 64;
73000 	long: 64;
73001 	long: 64;
73002 	long: 64;
73003 	long: 64;
73004 	long: 64;
73005 	long: 64;
73006 	long: 64;
73007 	long: 64;
73008 	long: 64;
73009 	long: 64;
73010 	long: 64;
73011 	long: 64;
73012 	long: 64;
73013 	long: 64;
73014 	long: 64;
73015 	long: 64;
73016 	long: 64;
73017 	long: 64;
73018 	long: 64;
73019 	long: 64;
73020 	long: 64;
73021 	long: 64;
73022 	long: 64;
73023 	long: 64;
73024 	long: 64;
73025 	long: 64;
73026 	long: 64;
73027 	long: 64;
73028 	long: 64;
73029 	long: 64;
73030 	long: 64;
73031 	long: 64;
73032 	long: 64;
73033 	long: 64;
73034 	long: 64;
73035 	long: 64;
73036 	long: 64;
73037 	long: 64;
73038 	long: 64;
73039 	long: 64;
73040 	long: 64;
73041 	long: 64;
73042 	long: 64;
73043 	long: 64;
73044 	long: 64;
73045 	long: 64;
73046 	long: 64;
73047 	long: 64;
73048 	long: 64;
73049 	long: 64;
73050 	long: 64;
73051 	long: 64;
73052 	long: 64;
73053 	long: 64;
73054 	long: 64;
73055 	long: 64;
73056 	long: 64;
73057 	long: 64;
73058 	long: 64;
73059 	long: 64;
73060 	long: 64;
73061 	long: 64;
73062 	long: 64;
73063 	long: 64;
73064 	long: 64;
73065 	long: 64;
73066 	long: 64;
73067 	long: 64;
73068 	long: 64;
73069 	long: 64;
73070 	long: 64;
73071 	long: 64;
73072 	long: 64;
73073 	long: 64;
73074 	long: 64;
73075 	long: 64;
73076 	long: 64;
73077 	long: 64;
73078 	long: 64;
73079 	long: 64;
73080 	long: 64;
73081 	long: 64;
73082 	long: 64;
73083 	long: 64;
73084 	long: 64;
73085 	long: 64;
73086 	long: 64;
73087 	long: 64;
73088 	long: 64;
73089 	long: 64;
73090 	long: 64;
73091 	long: 64;
73092 	long: 64;
73093 	long: 64;
73094 	long: 64;
73095 	long: 64;
73096 	long: 64;
73097 	long: 64;
73098 	long: 64;
73099 	long: 64;
73100 	long: 64;
73101 	long: 64;
73102 	long: 64;
73103 	long: 64;
73104 	long: 64;
73105 	long: 64;
73106 	long: 64;
73107 	long: 64;
73108 	long: 64;
73109 	long: 64;
73110 	long: 64;
73111 	long: 64;
73112 	long: 64;
73113 	long: 64;
73114 	long: 64;
73115 	long: 64;
73116 	long: 64;
73117 	long: 64;
73118 	long: 64;
73119 	long: 64;
73120 	long: 64;
73121 	long: 64;
73122 	long: 64;
73123 	long: 64;
73124 	long: 64;
73125 	long: 64;
73126 	long: 64;
73127 	long: 64;
73128 	long: 64;
73129 	long: 64;
73130 	long: 64;
73131 	long: 64;
73132 	long: 64;
73133 	long: 64;
73134 	long: 64;
73135 	long: 64;
73136 	long: 64;
73137 	long: 64;
73138 	long: 64;
73139 	long: 64;
73140 	long: 64;
73141 	long: 64;
73142 	long: 64;
73143 	long: 64;
73144 	long: 64;
73145 	long: 64;
73146 	long: 64;
73147 	long: 64;
73148 	long: 64;
73149 	long: 64;
73150 	long: 64;
73151 	long: 64;
73152 	long: 64;
73153 	long: 64;
73154 	long: 64;
73155 	long: 64;
73156 	long: 64;
73157 	long: 64;
73158 	long: 64;
73159 	long: 64;
73160 	long: 64;
73161 	long: 64;
73162 	long: 64;
73163 	long: 64;
73164 	long: 64;
73165 	long: 64;
73166 	long: 64;
73167 	long: 64;
73168 	long: 64;
73169 	long: 64;
73170 	long: 64;
73171 	long: 64;
73172 	long: 64;
73173 	long: 64;
73174 	long: 64;
73175 	long: 64;
73176 	long: 64;
73177 	long: 64;
73178 	long: 64;
73179 	long: 64;
73180 	long: 64;
73181 	long: 64;
73182 	long: 64;
73183 	long: 64;
73184 	long: 64;
73185 	long: 64;
73186 	long: 64;
73187 	long: 64;
73188 	long: 64;
73189 	long: 64;
73190 	long: 64;
73191 	long: 64;
73192 	long: 64;
73193 	long: 64;
73194 	long: 64;
73195 	long: 64;
73196 	long: 64;
73197 	long: 64;
73198 	long: 64;
73199 	long: 64;
73200 	long: 64;
73201 	long: 64;
73202 	long: 64;
73203 	long: 64;
73204 	long: 64;
73205 	long: 64;
73206 	long: 64;
73207 	long: 64;
73208 	long: 64;
73209 	long: 64;
73210 	long: 64;
73211 	long: 64;
73212 	long: 64;
73213 	long: 64;
73214 	long: 64;
73215 	long: 64;
73216 	long: 64;
73217 	long: 64;
73218 	long: 64;
73219 	long: 64;
73220 	long: 64;
73221 	long: 64;
73222 	long: 64;
73223 	long: 64;
73224 	long: 64;
73225 	long: 64;
73226 	long: 64;
73227 	long: 64;
73228 	long: 64;
73229 	long: 64;
73230 	long: 64;
73231 	long: 64;
73232 	long: 64;
73233 	long: 64;
73234 	long: 64;
73235 	long: 64;
73236 	long: 64;
73237 	long: 64;
73238 	long: 64;
73239 	long: 64;
73240 	long: 64;
73241 	long: 64;
73242 	long: 64;
73243 	long: 64;
73244 	long: 64;
73245 	long: 64;
73246 	long: 64;
73247 	long: 64;
73248 	long: 64;
73249 	long: 64;
73250 	long: 64;
73251 	long: 64;
73252 	long: 64;
73253 	long: 64;
73254 	long: 64;
73255 	long: 64;
73256 	long: 64;
73257 	long: 64;
73258 	long: 64;
73259 	long: 64;
73260 	long: 64;
73261 	long: 64;
73262 	long: 64;
73263 	long: 64;
73264 	long: 64;
73265 	long: 64;
73266 	long: 64;
73267 	long: 64;
73268 	long: 64;
73269 	long: 64;
73270 	long: 64;
73271 	long: 64;
73272 	long: 64;
73273 	long: 64;
73274 	long: 64;
73275 	long: 64;
73276 	long: 64;
73277 	long: 64;
73278 	long: 64;
73279 	long: 64;
73280 	long: 64;
73281 	long: 64;
73282 	long: 64;
73283 	long: 64;
73284 	long: 64;
73285 	long: 64;
73286 	long: 64;
73287 	long: 64;
73288 	long: 64;
73289 	long: 64;
73290 	long: 64;
73291 	long: 64;
73292 	long: 64;
73293 	long: 64;
73294 	long: 64;
73295 	long: 64;
73296 	long: 64;
73297 	long: 64;
73298 	long: 64;
73299 	long: 64;
73300 	long: 64;
73301 	long: 64;
73302 	long: 64;
73303 	long: 64;
73304 	long: 64;
73305 	long: 64;
73306 	long: 64;
73307 	long: 64;
73308 	long: 64;
73309 	long: 64;
73310 	long: 64;
73311 	long: 64;
73312 	long: 64;
73313 	long: 64;
73314 	long: 64;
73315 	long: 64;
73316 	long: 64;
73317 	long: 64;
73318 	long: 64;
73319 	long: 64;
73320 	long: 64;
73321 	long: 64;
73322 	long: 64;
73323 	long: 64;
73324 	long: 64;
73325 	long: 64;
73326 	long: 64;
73327 	long: 64;
73328 	long: 64;
73329 	long: 64;
73330 	long: 64;
73331 	long: 64;
73332 	long: 64;
73333 	long: 64;
73334 	long: 64;
73335 	long: 64;
73336 	long: 64;
73337 	long: 64;
73338 	long: 64;
73339 	long: 64;
73340 	long: 64;
73341 	long: 64;
73342 	long: 64;
73343 	long: 64;
73344 	long: 64;
73345 	long: 64;
73346 	long: 64;
73347 	long: 64;
73348 	long: 64;
73349 	long: 64;
73350 	long: 64;
73351 	long: 64;
73352 	long: 64;
73353 	long: 64;
73354 	long: 64;
73355 	long: 64;
73356 	long: 64;
73357 	long: 64;
73358 	long: 64;
73359 	long: 64;
73360 	long: 64;
73361 	long: 64;
73362 	long: 64;
73363 	long: 64;
73364 	long: 64;
73365 	long: 64;
73366 	long: 64;
73367 	long: 64;
73368 	long: 64;
73369 	long: 64;
73370 	long: 64;
73371 	long: 64;
73372 	long: 64;
73373 	long: 64;
73374 	long: 64;
73375 	long: 64;
73376 	long: 64;
73377 	long: 64;
73378 	long: 64;
73379 	long: 64;
73380 	long: 64;
73381 	long: 64;
73382 	long: 64;
73383 	long: 64;
73384 	long: 64;
73385 	long: 64;
73386 	long: 64;
73387 	long: 64;
73388 	long: 64;
73389 	long: 64;
73390 	long: 64;
73391 	long: 64;
73392 	long: 64;
73393 	long: 64;
73394 	long: 64;
73395 	long: 64;
73396 	long: 64;
73397 	long: 64;
73398 	long: 64;
73399 	long: 64;
73400 	long: 64;
73401 	long: 64;
73402 	long: 64;
73403 	long: 64;
73404 	long: 64;
73405 	long: 64;
73406 	long: 64;
73407 	long: 64;
73408 	long: 64;
73409 	long: 64;
73410 	long: 64;
73411 	long: 64;
73412 	long: 64;
73413 	long: 64;
73414 	long: 64;
73415 	long: 64;
73416 	long: 64;
73417 	long: 64;
73418 	long: 64;
73419 	long: 64;
73420 	long: 64;
73421 	long: 64;
73422 	long: 64;
73423 	long: 64;
73424 	long: 64;
73425 	long: 64;
73426 	long: 64;
73427 	long: 64;
73428 	long: 64;
73429 	long: 64;
73430 	long: 64;
73431 	long: 64;
73432 	long: 64;
73433 	long: 64;
73434 	long: 64;
73435 	long: 64;
73436 	long: 64;
73437 	long: 64;
73438 	long: 64;
73439 	long: 64;
73440 	long: 64;
73441 	long: 64;
73442 	long: 64;
73443 	long: 64;
73444 	long: 64;
73445 	long: 64;
73446 	long: 64;
73447 	long: 64;
73448 	long: 64;
73449 	long: 64;
73450 	long: 64;
73451 	long: 64;
73452 	long: 64;
73453 	long: 64;
73454 	long: 64;
73455 	long: 64;
73456 	long: 64;
73457 	long: 64;
73458 	long: 64;
73459 	long: 64;
73460 	long: 64;
73461 	long: 64;
73462 	long: 64;
73463 	long: 64;
73464 	long: 64;
73465 	long: 64;
73466 	long: 64;
73467 	long: 64;
73468 	long: 64;
73469 	long: 64;
73470 	long: 64;
73471 	long: 64;
73472 	long: 64;
73473 	long: 64;
73474 	long: 64;
73475 	long: 64;
73476 	long: 64;
73477 	long: 64;
73478 	long: 64;
73479 	long: 64;
73480 	long: 64;
73481 	long: 64;
73482 	long: 64;
73483 	long: 64;
73484 	long: 64;
73485 	long: 64;
73486 	long: 64;
73487 	long: 64;
73488 	long: 64;
73489 	long: 64;
73490 	long: 64;
73491 	long: 64;
73492 	long: 64;
73493 	long: 64;
73494 	long: 64;
73495 	long: 64;
73496 	long: 64;
73497 	long: 64;
73498 	long: 64;
73499 	long: 64;
73500 	long: 64;
73501 	long: 64;
73502 	long: 64;
73503 	long: 64;
73504 	long: 64;
73505 	long: 64;
73506 	long: 64;
73507 	long: 64;
73508 	long: 64;
73509 	long: 64;
73510 	long: 64;
73511 	long: 64;
73512 	long: 64;
73513 	long: 64;
73514 	long: 64;
73515 	long: 64;
73516 	long: 64;
73517 	long: 64;
73518 	long: 64;
73519 	long: 64;
73520 	long: 64;
73521 	long: 64;
73522 	long: 64;
73523 	long: 64;
73524 	long: 64;
73525 	long: 64;
73526 	long: 64;
73527 	long: 64;
73528 	long: 64;
73529 	long: 64;
73530 	long: 64;
73531 	long: 64;
73532 	long: 64;
73533 	long: 64;
73534 	long: 64;
73535 	long: 64;
73536 	long: 64;
73537 	long: 64;
73538 	long: 64;
73539 	long: 64;
73540 	long: 64;
73541 	long: 64;
73542 	long: 64;
73543 	long: 64;
73544 	long: 64;
73545 	long: 64;
73546 	long: 64;
73547 	long: 64;
73548 	long: 64;
73549 	long: 64;
73550 	long: 64;
73551 	long: 64;
73552 	long: 64;
73553 	long: 64;
73554 	long: 64;
73555 	long: 64;
73556 	long: 64;
73557 	long: 64;
73558 	long: 64;
73559 	long: 64;
73560 	long: 64;
73561 	long: 64;
73562 	long: 64;
73563 	long: 64;
73564 	long: 64;
73565 	long: 64;
73566 	long: 64;
73567 	long: 64;
73568 	long: 64;
73569 	long: 64;
73570 	long: 64;
73571 	long: 64;
73572 	long: 64;
73573 	long: 64;
73574 	long: 64;
73575 	long: 64;
73576 	long: 64;
73577 	long: 64;
73578 	long: 64;
73579 	long: 64;
73580 	long: 64;
73581 	long: 64;
73582 	long: 64;
73583 	long: 64;
73584 	long: 64;
73585 	long: 64;
73586 	long: 64;
73587 	long: 64;
73588 	long: 64;
73589 	long: 64;
73590 	long: 64;
73591 	long: 64;
73592 	long: 64;
73593 	long: 64;
73594 	long: 64;
73595 	long: 64;
73596 	long: 64;
73597 	long: 64;
73598 	long: 64;
73599 	long: 64;
73600 	long: 64;
73601 	long: 64;
73602 	long: 64;
73603 	long: 64;
73604 	long: 64;
73605 	long: 64;
73606 	long: 64;
73607 	long: 64;
73608 	long: 64;
73609 	long: 64;
73610 	long: 64;
73611 	long: 64;
73612 	long: 64;
73613 	long: 64;
73614 	long: 64;
73615 	long: 64;
73616 	long: 64;
73617 	long: 64;
73618 	long: 64;
73619 	long: 64;
73620 	long: 64;
73621 	long: 64;
73622 	long: 64;
73623 	long: 64;
73624 	long: 64;
73625 	long: 64;
73626 	long: 64;
73627 	long: 64;
73628 	long: 64;
73629 	long: 64;
73630 	long: 64;
73631 	long: 64;
73632 	long: 64;
73633 	long: 64;
73634 	long: 64;
73635 	long: 64;
73636 	long: 64;
73637 	long: 64;
73638 	long: 64;
73639 	long: 64;
73640 	long: 64;
73641 	long: 64;
73642 	long: 64;
73643 	long: 64;
73644 	long: 64;
73645 	long: 64;
73646 	long: 64;
73647 	long: 64;
73648 	long: 64;
73649 	long: 64;
73650 	long: 64;
73651 	long: 64;
73652 	long: 64;
73653 	long: 64;
73654 	long: 64;
73655 	long: 64;
73656 	long: 64;
73657 	long: 64;
73658 	long: 64;
73659 	long: 64;
73660 	long: 64;
73661 	long: 64;
73662 	long: 64;
73663 	long: 64;
73664 	long: 64;
73665 	long: 64;
73666 	long: 64;
73667 	long: 64;
73668 	long: 64;
73669 	long: 64;
73670 	long: 64;
73671 	long: 64;
73672 	long: 64;
73673 	long: 64;
73674 	long: 64;
73675 	long: 64;
73676 	long: 64;
73677 	long: 64;
73678 	long: 64;
73679 	long: 64;
73680 	long: 64;
73681 	long: 64;
73682 	long: 64;
73683 	long: 64;
73684 	long: 64;
73685 	long: 64;
73686 	long: 64;
73687 	long: 64;
73688 	long: 64;
73689 	long: 64;
73690 	long: 64;
73691 	long: 64;
73692 	long: 64;
73693 	long: 64;
73694 	long: 64;
73695 	long: 64;
73696 	long: 64;
73697 	long: 64;
73698 	long: 64;
73699 	long: 64;
73700 	long: 64;
73701 	long: 64;
73702 	long: 64;
73703 	long: 64;
73704 	long: 64;
73705 	long: 64;
73706 	long: 64;
73707 	long: 64;
73708 	long: 64;
73709 	long: 64;
73710 	long: 64;
73711 	long: 64;
73712 	long: 64;
73713 	long: 64;
73714 	long: 64;
73715 	long: 64;
73716 	long: 64;
73717 	long: 64;
73718 	long: 64;
73719 	long: 64;
73720 	long: 64;
73721 	long: 64;
73722 	long: 64;
73723 	long: 64;
73724 	long: 64;
73725 	long: 64;
73726 	long: 64;
73727 	long: 64;
73728 	long: 64;
73729 	long: 64;
73730 	long: 64;
73731 	long: 64;
73732 	long: 64;
73733 	long: 64;
73734 	long: 64;
73735 	long: 64;
73736 	long: 64;
73737 	long: 64;
73738 	long: 64;
73739 	long: 64;
73740 	long: 64;
73741 	long: 64;
73742 	long: 64;
73743 	long: 64;
73744 	long: 64;
73745 	long: 64;
73746 	long: 64;
73747 	long: 64;
73748 	long: 64;
73749 	long: 64;
73750 	long: 64;
73751 	long: 64;
73752 	long: 64;
73753 	long: 64;
73754 	long: 64;
73755 	long: 64;
73756 	long: 64;
73757 	long: 64;
73758 	long: 64;
73759 	long: 64;
73760 	long: 64;
73761 	long: 64;
73762 	long: 64;
73763 	long: 64;
73764 	long: 64;
73765 	long: 64;
73766 	long: 64;
73767 	long: 64;
73768 	long: 64;
73769 	long: 64;
73770 	long: 64;
73771 	long: 64;
73772 	long: 64;
73773 	long: 64;
73774 	long: 64;
73775 	long: 64;
73776 	long: 64;
73777 	long: 64;
73778 	long: 64;
73779 	long: 64;
73780 	long: 64;
73781 	long: 64;
73782 	long: 64;
73783 	long: 64;
73784 	long: 64;
73785 	long: 64;
73786 	long: 64;
73787 	long: 64;
73788 	long: 64;
73789 	long: 64;
73790 	long: 64;
73791 	long: 64;
73792 	long: 64;
73793 	long: 64;
73794 	long: 64;
73795 	long: 64;
73796 	long: 64;
73797 	long: 64;
73798 	long: 64;
73799 	long: 64;
73800 	long: 64;
73801 	long: 64;
73802 	long: 64;
73803 	long: 64;
73804 	long: 64;
73805 	long: 64;
73806 	long: 64;
73807 	long: 64;
73808 	long: 64;
73809 	long: 64;
73810 	long: 64;
73811 	long: 64;
73812 	long: 64;
73813 	long: 64;
73814 	long: 64;
73815 	long: 64;
73816 	long: 64;
73817 	long: 64;
73818 	long: 64;
73819 	long: 64;
73820 	long: 64;
73821 	long: 64;
73822 	long: 64;
73823 	long: 64;
73824 	long: 64;
73825 	long: 64;
73826 	long: 64;
73827 	long: 64;
73828 	long: 64;
73829 	long: 64;
73830 	long: 64;
73831 	long: 64;
73832 	long: 64;
73833 	long: 64;
73834 	long: 64;
73835 	long: 64;
73836 	long: 64;
73837 	long: 64;
73838 	long: 64;
73839 	long: 64;
73840 	long: 64;
73841 	long: 64;
73842 	long: 64;
73843 	long: 64;
73844 	long: 64;
73845 	long: 64;
73846 	long: 64;
73847 	long: 64;
73848 	long: 64;
73849 	long: 64;
73850 	long: 64;
73851 	long: 64;
73852 	long: 64;
73853 	long: 64;
73854 	long: 64;
73855 	long: 64;
73856 	long: 64;
73857 	long: 64;
73858 	long: 64;
73859 	long: 64;
73860 	long: 64;
73861 	long: 64;
73862 	long: 64;
73863 	long: 64;
73864 	long: 64;
73865 	long: 64;
73866 	long: 64;
73867 	long: 64;
73868 	long: 64;
73869 	long: 64;
73870 	long: 64;
73871 	long: 64;
73872 	long: 64;
73873 	long: 64;
73874 	long: 64;
73875 	long: 64;
73876 	long: 64;
73877 	long: 64;
73878 	long: 64;
73879 	long: 64;
73880 	long: 64;
73881 	long: 64;
73882 	long: 64;
73883 	long: 64;
73884 	long: 64;
73885 	long: 64;
73886 	long: 64;
73887 	long: 64;
73888 	long: 64;
73889 	long: 64;
73890 	long: 64;
73891 	long: 64;
73892 	long: 64;
73893 	long: 64;
73894 	long: 64;
73895 	long: 64;
73896 	long: 64;
73897 	long: 64;
73898 	long: 64;
73899 	long: 64;
73900 	long: 64;
73901 	long: 64;
73902 	long: 64;
73903 	long: 64;
73904 	long: 64;
73905 	long: 64;
73906 	long: 64;
73907 	long: 64;
73908 	long: 64;
73909 	long: 64;
73910 	long: 64;
73911 	long: 64;
73912 	long: 64;
73913 	long: 64;
73914 	long: 64;
73915 	long: 64;
73916 	long: 64;
73917 	long: 64;
73918 	long: 64;
73919 	long: 64;
73920 	long: 64;
73921 	long: 64;
73922 	long: 64;
73923 	long: 64;
73924 	long: 64;
73925 	long: 64;
73926 	long: 64;
73927 	long: 64;
73928 	long: 64;
73929 	long: 64;
73930 	long: 64;
73931 	long: 64;
73932 	long: 64;
73933 	long: 64;
73934 	long: 64;
73935 	long: 64;
73936 	long: 64;
73937 	long: 64;
73938 	long: 64;
73939 	long: 64;
73940 	long: 64;
73941 	long: 64;
73942 	long: 64;
73943 	long: 64;
73944 	long: 64;
73945 	long: 64;
73946 	long: 64;
73947 	long: 64;
73948 	long: 64;
73949 	long: 64;
73950 	long: 64;
73951 	long: 64;
73952 	long: 64;
73953 	long: 64;
73954 	long: 64;
73955 	long: 64;
73956 	long: 64;
73957 	long: 64;
73958 	long: 64;
73959 	long: 64;
73960 	long: 64;
73961 	long: 64;
73962 	long: 64;
73963 	long: 64;
73964 	long: 64;
73965 	long: 64;
73966 	long: 64;
73967 	long: 64;
73968 	long: 64;
73969 	long: 64;
73970 	long: 64;
73971 	long: 64;
73972 	long: 64;
73973 	long: 64;
73974 	long: 64;
73975 	long: 64;
73976 	long: 64;
73977 	long: 64;
73978 	long: 64;
73979 	long: 64;
73980 	long: 64;
73981 	long: 64;
73982 	long: 64;
73983 	long: 64;
73984 	long: 64;
73985 	long: 64;
73986 	long: 64;
73987 	long: 64;
73988 	long: 64;
73989 	long: 64;
73990 	long: 64;
73991 	long: 64;
73992 	long: 64;
73993 	long: 64;
73994 	long: 64;
73995 	long: 64;
73996 	long: 64;
73997 	long: 64;
73998 	long: 64;
73999 	long: 64;
74000 	long: 64;
74001 	long: 64;
74002 	long: 64;
74003 	long: 64;
74004 	long: 64;
74005 	long: 64;
74006 	long: 64;
74007 	long: 64;
74008 	long: 64;
74009 	long: 64;
74010 	long: 64;
74011 	long: 64;
74012 	long: 64;
74013 	long: 64;
74014 	long: 64;
74015 	long: 64;
74016 	long: 64;
74017 	long: 64;
74018 	long: 64;
74019 	long: 64;
74020 	long: 64;
74021 	long: 64;
74022 	long: 64;
74023 	long: 64;
74024 	long: 64;
74025 	long: 64;
74026 	long: 64;
74027 	long: 64;
74028 	long: 64;
74029 	long: 64;
74030 	long: 64;
74031 	long: 64;
74032 	long: 64;
74033 	long: 64;
74034 	long: 64;
74035 	long: 64;
74036 	long: 64;
74037 	long: 64;
74038 	long: 64;
74039 	long: 64;
74040 	long: 64;
74041 	long: 64;
74042 	long: 64;
74043 	long: 64;
74044 	long: 64;
74045 	long: 64;
74046 	long: 64;
74047 	long: 64;
74048 	long: 64;
74049 	long: 64;
74050 	long: 64;
74051 	long: 64;
74052 	long: 64;
74053 	long: 64;
74054 	long: 64;
74055 	long: 64;
74056 	long: 64;
74057 	long: 64;
74058 	long: 64;
74059 	long: 64;
74060 	long: 64;
74061 	long: 64;
74062 	long: 64;
74063 	long: 64;
74064 	long: 64;
74065 	long: 64;
74066 	long: 64;
74067 	long: 64;
74068 	long: 64;
74069 	long: 64;
74070 	long: 64;
74071 	long: 64;
74072 	long: 64;
74073 	long: 64;
74074 	long: 64;
74075 	long: 64;
74076 	long: 64;
74077 	long: 64;
74078 	long: 64;
74079 	long: 64;
74080 	long: 64;
74081 	long: 64;
74082 	long: 64;
74083 	long: 64;
74084 	long: 64;
74085 	long: 64;
74086 	long: 64;
74087 	long: 64;
74088 	long: 64;
74089 	long: 64;
74090 	long: 64;
74091 	long: 64;
74092 	long: 64;
74093 	long: 64;
74094 	long: 64;
74095 	long: 64;
74096 	long: 64;
74097 	long: 64;
74098 	long: 64;
74099 	long: 64;
74100 	long: 64;
74101 	long: 64;
74102 	long: 64;
74103 	long: 64;
74104 	long: 64;
74105 	long: 64;
74106 	long: 64;
74107 	long: 64;
74108 	long: 64;
74109 	long: 64;
74110 	long: 64;
74111 	long: 64;
74112 	long: 64;
74113 	long: 64;
74114 	long: 64;
74115 	long: 64;
74116 	long: 64;
74117 	long: 64;
74118 	long: 64;
74119 	long: 64;
74120 	long: 64;
74121 	long: 64;
74122 	long: 64;
74123 	long: 64;
74124 	long: 64;
74125 	long: 64;
74126 	long: 64;
74127 	long: 64;
74128 	long: 64;
74129 	long: 64;
74130 	long: 64;
74131 	long: 64;
74132 	long: 64;
74133 	long: 64;
74134 	long: 64;
74135 	long: 64;
74136 	long: 64;
74137 	long: 64;
74138 	long: 64;
74139 	long: 64;
74140 	long: 64;
74141 	long: 64;
74142 	long: 64;
74143 	long: 64;
74144 	long: 64;
74145 	long: 64;
74146 	long: 64;
74147 	long: 64;
74148 	long: 64;
74149 	long: 64;
74150 	long: 64;
74151 	long: 64;
74152 	long: 64;
74153 	long: 64;
74154 	long: 64;
74155 	long: 64;
74156 	long: 64;
74157 	long: 64;
74158 	long: 64;
74159 	long: 64;
74160 	long: 64;
74161 	long: 64;
74162 	long: 64;
74163 	long: 64;
74164 	long: 64;
74165 	long: 64;
74166 	long: 64;
74167 	long: 64;
74168 	long: 64;
74169 	long: 64;
74170 	long: 64;
74171 	long: 64;
74172 	long: 64;
74173 	long: 64;
74174 	long: 64;
74175 	long: 64;
74176 	long: 64;
74177 	long: 64;
74178 	long: 64;
74179 	long: 64;
74180 	long: 64;
74181 	long: 64;
74182 	long: 64;
74183 	long: 64;
74184 	long: 64;
74185 	long: 64;
74186 	long: 64;
74187 	long: 64;
74188 	long: 64;
74189 	long: 64;
74190 	long: 64;
74191 	long: 64;
74192 	long: 64;
74193 	long: 64;
74194 	long: 64;
74195 	long: 64;
74196 	long: 64;
74197 	long: 64;
74198 	long: 64;
74199 	long: 64;
74200 	long: 64;
74201 	long: 64;
74202 	long: 64;
74203 	long: 64;
74204 	long: 64;
74205 	long: 64;
74206 	long: 64;
74207 	long: 64;
74208 	long: 64;
74209 	long: 64;
74210 	long: 64;
74211 	long: 64;
74212 	long: 64;
74213 	long: 64;
74214 	long: 64;
74215 	long: 64;
74216 	long: 64;
74217 	long: 64;
74218 	long: 64;
74219 	long: 64;
74220 	long: 64;
74221 	long: 64;
74222 	long: 64;
74223 	long: 64;
74224 	long: 64;
74225 	long: 64;
74226 	long: 64;
74227 	long: 64;
74228 	long: 64;
74229 	long: 64;
74230 	long: 64;
74231 	long: 64;
74232 	long: 64;
74233 	long: 64;
74234 	long: 64;
74235 	long: 64;
74236 	long: 64;
74237 	long: 64;
74238 	long: 64;
74239 	long: 64;
74240 	long: 64;
74241 	long: 64;
74242 	long: 64;
74243 	long: 64;
74244 	long: 64;
74245 	long: 64;
74246 	long: 64;
74247 	long: 64;
74248 	long: 64;
74249 	long: 64;
74250 	long: 64;
74251 	long: 64;
74252 	long: 64;
74253 	long: 64;
74254 	long: 64;
74255 	long: 64;
74256 	long: 64;
74257 	long: 64;
74258 	long: 64;
74259 	long: 64;
74260 	long: 64;
74261 	long: 64;
74262 	long: 64;
74263 	long: 64;
74264 	long: 64;
74265 	long: 64;
74266 	long: 64;
74267 	long: 64;
74268 	long: 64;
74269 	long: 64;
74270 	long: 64;
74271 	long: 64;
74272 	long: 64;
74273 	long: 64;
74274 	long: 64;
74275 	long: 64;
74276 	long: 64;
74277 	long: 64;
74278 	long: 64;
74279 	long: 64;
74280 	long: 64;
74281 	long: 64;
74282 	long: 64;
74283 	long: 64;
74284 	long: 64;
74285 	long: 64;
74286 	long: 64;
74287 	long: 64;
74288 	long: 64;
74289 	long: 64;
74290 	long: 64;
74291 	long: 64;
74292 	long: 64;
74293 	long: 64;
74294 	long: 64;
74295 	long: 64;
74296 	long: 64;
74297 	long: 64;
74298 	long: 64;
74299 	long: 64;
74300 	long: 64;
74301 	long: 64;
74302 	long: 64;
74303 	long: 64;
74304 	long: 64;
74305 	long: 64;
74306 	long: 64;
74307 	long: 64;
74308 	long: 64;
74309 	long: 64;
74310 	long: 64;
74311 	long: 64;
74312 	long: 64;
74313 	long: 64;
74314 	long: 64;
74315 	long: 64;
74316 	long: 64;
74317 	long: 64;
74318 	long: 64;
74319 	long: 64;
74320 	long: 64;
74321 	long: 64;
74322 	long: 64;
74323 	long: 64;
74324 	long: 64;
74325 	long: 64;
74326 	long: 64;
74327 	long: 64;
74328 	long: 64;
74329 	long: 64;
74330 	long: 64;
74331 	long: 64;
74332 	long: 64;
74333 	long: 64;
74334 	long: 64;
74335 	long: 64;
74336 	long: 64;
74337 	long: 64;
74338 	long: 64;
74339 	long: 64;
74340 	long: 64;
74341 	long: 64;
74342 	long: 64;
74343 	long: 64;
74344 	long: 64;
74345 	long: 64;
74346 	long: 64;
74347 	long: 64;
74348 	long: 64;
74349 	long: 64;
74350 	long: 64;
74351 	long: 64;
74352 	long: 64;
74353 	long: 64;
74354 	long: 64;
74355 	long: 64;
74356 	long: 64;
74357 	long: 64;
74358 	long: 64;
74359 	long: 64;
74360 	long: 64;
74361 	long: 64;
74362 	long: 64;
74363 	long: 64;
74364 	long: 64;
74365 	long: 64;
74366 	long: 64;
74367 	long: 64;
74368 	long: 64;
74369 	long: 64;
74370 	long: 64;
74371 	long: 64;
74372 	long: 64;
74373 	long: 64;
74374 	long: 64;
74375 	long: 64;
74376 	long: 64;
74377 	long: 64;
74378 	long: 64;
74379 	long: 64;
74380 	long: 64;
74381 	long: 64;
74382 	long: 64;
74383 	long: 64;
74384 	long: 64;
74385 	long: 64;
74386 	long: 64;
74387 	long: 64;
74388 	long: 64;
74389 	long: 64;
74390 	long: 64;
74391 	long: 64;
74392 	long: 64;
74393 	long: 64;
74394 	long: 64;
74395 	long: 64;
74396 	long: 64;
74397 	long: 64;
74398 	long: 64;
74399 	long: 64;
74400 	long: 64;
74401 	long: 64;
74402 	long: 64;
74403 	long: 64;
74404 	long: 64;
74405 	long: 64;
74406 	long: 64;
74407 	long: 64;
74408 	long: 64;
74409 	long: 64;
74410 	long: 64;
74411 	long: 64;
74412 	long: 64;
74413 	long: 64;
74414 	long: 64;
74415 	long: 64;
74416 	long: 64;
74417 	long: 64;
74418 	long: 64;
74419 	long: 64;
74420 	long: 64;
74421 	long: 64;
74422 	long: 64;
74423 	long: 64;
74424 	long: 64;
74425 	long: 64;
74426 	long: 64;
74427 	long: 64;
74428 	long: 64;
74429 	long: 64;
74430 	long: 64;
74431 	long: 64;
74432 	long: 64;
74433 	long: 64;
74434 	long: 64;
74435 	long: 64;
74436 	long: 64;
74437 	long: 64;
74438 	long: 64;
74439 	long: 64;
74440 	long: 64;
74441 	long: 64;
74442 	long: 64;
74443 	long: 64;
74444 	long: 64;
74445 	long: 64;
74446 	long: 64;
74447 	long: 64;
74448 	long: 64;
74449 	long: 64;
74450 	long: 64;
74451 	long: 64;
74452 	long: 64;
74453 	long: 64;
74454 	long: 64;
74455 	long: 64;
74456 	long: 64;
74457 	long: 64;
74458 	long: 64;
74459 	long: 64;
74460 	long: 64;
74461 	long: 64;
74462 	long: 64;
74463 	long: 64;
74464 	long: 64;
74465 	long: 64;
74466 	long: 64;
74467 	long: 64;
74468 	long: 64;
74469 	long: 64;
74470 	long: 64;
74471 	long: 64;
74472 	long: 64;
74473 	long: 64;
74474 	long: 64;
74475 	long: 64;
74476 	long: 64;
74477 	long: 64;
74478 	long: 64;
74479 	long: 64;
74480 	long: 64;
74481 	long: 64;
74482 	long: 64;
74483 	long: 64;
74484 	long: 64;
74485 	long: 64;
74486 	long: 64;
74487 	long: 64;
74488 	long: 64;
74489 	long: 64;
74490 	long: 64;
74491 	long: 64;
74492 	long: 64;
74493 	long: 64;
74494 	long: 64;
74495 	long: 64;
74496 	long: 64;
74497 	long: 64;
74498 	long: 64;
74499 	long: 64;
74500 	long: 64;
74501 	long: 64;
74502 	long: 64;
74503 	long: 64;
74504 	long: 64;
74505 	long: 64;
74506 	long: 64;
74507 	long: 64;
74508 	long: 64;
74509 	long: 64;
74510 	long: 64;
74511 	long: 64;
74512 	long: 64;
74513 	long: 64;
74514 	long: 64;
74515 	long: 64;
74516 	long: 64;
74517 	long: 64;
74518 	long: 64;
74519 	long: 64;
74520 	long: 64;
74521 	long: 64;
74522 	long: 64;
74523 	long: 64;
74524 	long: 64;
74525 	long: 64;
74526 	long: 64;
74527 	long: 64;
74528 	long: 64;
74529 	long: 64;
74530 	long: 64;
74531 	long: 64;
74532 	long: 64;
74533 	long: 64;
74534 	long: 64;
74535 	long: 64;
74536 	long: 64;
74537 	long: 64;
74538 	long: 64;
74539 	long: 64;
74540 	long: 64;
74541 	long: 64;
74542 	long: 64;
74543 	long: 64;
74544 	long: 64;
74545 	long: 64;
74546 	long: 64;
74547 	long: 64;
74548 	long: 64;
74549 	long: 64;
74550 	long: 64;
74551 	long: 64;
74552 	long: 64;
74553 	long: 64;
74554 	long: 64;
74555 	long: 64;
74556 	long: 64;
74557 	long: 64;
74558 	long: 64;
74559 	long: 64;
74560 	long: 64;
74561 	long: 64;
74562 	long: 64;
74563 	long: 64;
74564 	long: 64;
74565 	long: 64;
74566 	long: 64;
74567 	long: 64;
74568 	long: 64;
74569 	long: 64;
74570 	long: 64;
74571 	long: 64;
74572 	long: 64;
74573 	long: 64;
74574 	long: 64;
74575 	long: 64;
74576 	long: 64;
74577 	long: 64;
74578 	long: 64;
74579 	long: 64;
74580 	long: 64;
74581 	long: 64;
74582 	long: 64;
74583 	long: 64;
74584 	long: 64;
74585 	long: 64;
74586 	long: 64;
74587 	long: 64;
74588 	long: 64;
74589 	long: 64;
74590 	long: 64;
74591 	long: 64;
74592 	long: 64;
74593 	long: 64;
74594 	long: 64;
74595 	long: 64;
74596 	long: 64;
74597 	long: 64;
74598 	long: 64;
74599 	long: 64;
74600 	long: 64;
74601 	long: 64;
74602 	long: 64;
74603 	long: 64;
74604 	long: 64;
74605 	long: 64;
74606 	long: 64;
74607 	long: 64;
74608 	long: 64;
74609 	long: 64;
74610 	long: 64;
74611 	long: 64;
74612 	long: 64;
74613 	long: 64;
74614 	long: 64;
74615 	long: 64;
74616 	long: 64;
74617 	long: 64;
74618 	long: 64;
74619 	long: 64;
74620 	long: 64;
74621 	long: 64;
74622 	long: 64;
74623 	long: 64;
74624 	long: 64;
74625 	long: 64;
74626 	long: 64;
74627 	long: 64;
74628 	long: 64;
74629 	long: 64;
74630 	long: 64;
74631 	long: 64;
74632 	long: 64;
74633 	long: 64;
74634 	long: 64;
74635 	long: 64;
74636 	long: 64;
74637 	long: 64;
74638 	long: 64;
74639 	long: 64;
74640 	long: 64;
74641 	long: 64;
74642 	long: 64;
74643 	long: 64;
74644 	long: 64;
74645 	long: 64;
74646 	long: 64;
74647 	long: 64;
74648 	long: 64;
74649 	long: 64;
74650 	long: 64;
74651 	long: 64;
74652 	long: 64;
74653 	long: 64;
74654 	long: 64;
74655 	long: 64;
74656 	long: 64;
74657 	long: 64;
74658 	long: 64;
74659 	long: 64;
74660 	long: 64;
74661 	long: 64;
74662 	long: 64;
74663 	long: 64;
74664 	long: 64;
74665 	long: 64;
74666 	long: 64;
74667 	long: 64;
74668 	long: 64;
74669 	long: 64;
74670 	long: 64;
74671 	long: 64;
74672 	long: 64;
74673 	long: 64;
74674 	long: 64;
74675 	long: 64;
74676 	long: 64;
74677 	long: 64;
74678 	long: 64;
74679 	long: 64;
74680 	long: 64;
74681 	long: 64;
74682 	long: 64;
74683 	long: 64;
74684 	long: 64;
74685 	long: 64;
74686 	long: 64;
74687 	long: 64;
74688 	long: 64;
74689 	long: 64;
74690 	long: 64;
74691 	long: 64;
74692 	long: 64;
74693 	long: 64;
74694 	long: 64;
74695 	long: 64;
74696 	long: 64;
74697 	long: 64;
74698 	long: 64;
74699 	long: 64;
74700 	long: 64;
74701 	long: 64;
74702 	long: 64;
74703 	long: 64;
74704 	long: 64;
74705 	long: 64;
74706 	long: 64;
74707 	long: 64;
74708 	long: 64;
74709 	long: 64;
74710 	long: 64;
74711 	long: 64;
74712 	long: 64;
74713 	long: 64;
74714 	long: 64;
74715 	long: 64;
74716 	long: 64;
74717 	long: 64;
74718 	long: 64;
74719 	long: 64;
74720 	long: 64;
74721 	long: 64;
74722 	long: 64;
74723 	long: 64;
74724 	long: 64;
74725 	long: 64;
74726 	long: 64;
74727 	long: 64;
74728 	long: 64;
74729 	long: 64;
74730 	long: 64;
74731 	long: 64;
74732 	long: 64;
74733 	long: 64;
74734 	long: 64;
74735 	long: 64;
74736 	long: 64;
74737 	long: 64;
74738 	long: 64;
74739 	long: 64;
74740 	long: 64;
74741 	long: 64;
74742 	long: 64;
74743 	long: 64;
74744 	long: 64;
74745 	long: 64;
74746 	long: 64;
74747 	long: 64;
74748 	long: 64;
74749 	long: 64;
74750 	long: 64;
74751 	long: 64;
74752 	long: 64;
74753 	long: 64;
74754 	long: 64;
74755 	long: 64;
74756 	long: 64;
74757 	long: 64;
74758 	long: 64;
74759 	long: 64;
74760 	long: 64;
74761 	long: 64;
74762 	long: 64;
74763 	long: 64;
74764 	long: 64;
74765 	long: 64;
74766 	long: 64;
74767 	long: 64;
74768 	long: 64;
74769 	long: 64;
74770 	long: 64;
74771 	long: 64;
74772 	long: 64;
74773 	long: 64;
74774 	long: 64;
74775 	long: 64;
74776 	long: 64;
74777 	long: 64;
74778 	long: 64;
74779 	long: 64;
74780 	long: 64;
74781 	long: 64;
74782 	long: 64;
74783 	long: 64;
74784 	long: 64;
74785 	long: 64;
74786 	long: 64;
74787 	long: 64;
74788 	long: 64;
74789 	long: 64;
74790 	long: 64;
74791 	long: 64;
74792 	long: 64;
74793 	long: 64;
74794 	long: 64;
74795 	long: 64;
74796 	long: 64;
74797 	long: 64;
74798 	long: 64;
74799 	long: 64;
74800 	long: 64;
74801 	long: 64;
74802 	long: 64;
74803 	long: 64;
74804 	long: 64;
74805 	long: 64;
74806 	long: 64;
74807 	long: 64;
74808 	long: 64;
74809 	long: 64;
74810 	long: 64;
74811 	long: 64;
74812 	long: 64;
74813 	long: 64;
74814 	long: 64;
74815 	long: 64;
74816 	long: 64;
74817 	long: 64;
74818 	long: 64;
74819 	long: 64;
74820 	long: 64;
74821 	long: 64;
74822 	long: 64;
74823 	long: 64;
74824 	long: 64;
74825 	long: 64;
74826 	long: 64;
74827 	long: 64;
74828 	long: 64;
74829 	long: 64;
74830 	long: 64;
74831 	long: 64;
74832 	long: 64;
74833 	long: 64;
74834 	long: 64;
74835 	long: 64;
74836 	long: 64;
74837 	long: 64;
74838 	long: 64;
74839 	long: 64;
74840 	long: 64;
74841 	long: 64;
74842 	long: 64;
74843 	long: 64;
74844 	long: 64;
74845 	long: 64;
74846 	long: 64;
74847 	long: 64;
74848 	long: 64;
74849 	long: 64;
74850 	long: 64;
74851 	long: 64;
74852 	long: 64;
74853 	long: 64;
74854 	long: 64;
74855 	long: 64;
74856 	long: 64;
74857 	long: 64;
74858 	long: 64;
74859 	long: 64;
74860 	long: 64;
74861 	long: 64;
74862 	long: 64;
74863 	long: 64;
74864 	long: 64;
74865 	long: 64;
74866 	long: 64;
74867 	long: 64;
74868 	long: 64;
74869 	long: 64;
74870 	long: 64;
74871 	long: 64;
74872 	long: 64;
74873 	long: 64;
74874 	long: 64;
74875 	long: 64;
74876 	long: 64;
74877 	long: 64;
74878 	long: 64;
74879 	long: 64;
74880 	long: 64;
74881 	long: 64;
74882 	long: 64;
74883 	long: 64;
74884 	long: 64;
74885 	long: 64;
74886 	long: 64;
74887 	long: 64;
74888 	long: 64;
74889 	long: 64;
74890 	long: 64;
74891 	long: 64;
74892 	long: 64;
74893 	long: 64;
74894 	long: 64;
74895 	long: 64;
74896 	long: 64;
74897 	long: 64;
74898 	long: 64;
74899 	long: 64;
74900 	long: 64;
74901 	long: 64;
74902 	long: 64;
74903 	long: 64;
74904 	long: 64;
74905 	long: 64;
74906 	long: 64;
74907 	long: 64;
74908 	long: 64;
74909 	long: 64;
74910 	long: 64;
74911 	long: 64;
74912 	long: 64;
74913 	long: 64;
74914 	long: 64;
74915 	long: 64;
74916 	long: 64;
74917 	long: 64;
74918 	long: 64;
74919 	long: 64;
74920 	long: 64;
74921 	long: 64;
74922 	long: 64;
74923 	long: 64;
74924 	long: 64;
74925 	long: 64;
74926 	long: 64;
74927 	long: 64;
74928 	long: 64;
74929 	long: 64;
74930 	long: 64;
74931 	long: 64;
74932 	long: 64;
74933 	long: 64;
74934 	long: 64;
74935 	long: 64;
74936 	long: 64;
74937 	long: 64;
74938 	long: 64;
74939 	long: 64;
74940 	long: 64;
74941 	long: 64;
74942 	long: 64;
74943 	long: 64;
74944 	long: 64;
74945 	long: 64;
74946 	long: 64;
74947 	long: 64;
74948 	long: 64;
74949 	long: 64;
74950 	long: 64;
74951 	long: 64;
74952 	long: 64;
74953 	long: 64;
74954 	long: 64;
74955 	long: 64;
74956 	long: 64;
74957 	long: 64;
74958 	long: 64;
74959 	long: 64;
74960 	long: 64;
74961 	long: 64;
74962 	long: 64;
74963 	long: 64;
74964 	long: 64;
74965 	long: 64;
74966 	long: 64;
74967 	long: 64;
74968 	long: 64;
74969 	long: 64;
74970 	long: 64;
74971 	long: 64;
74972 	long: 64;
74973 	long: 64;
74974 	long: 64;
74975 	long: 64;
74976 	long: 64;
74977 	long: 64;
74978 	long: 64;
74979 	long: 64;
74980 	long: 64;
74981 	long: 64;
74982 	long: 64;
74983 	long: 64;
74984 	long: 64;
74985 	long: 64;
74986 	long: 64;
74987 	long: 64;
74988 	long: 64;
74989 	long: 64;
74990 	long: 64;
74991 	long: 64;
74992 	long: 64;
74993 	long: 64;
74994 	long: 64;
74995 	long: 64;
74996 	long: 64;
74997 	long: 64;
74998 	long: 64;
74999 	long: 64;
75000 	long: 64;
75001 	long: 64;
75002 	long: 64;
75003 	long: 64;
75004 	long: 64;
75005 	long: 64;
75006 	long: 64;
75007 	long: 64;
75008 	long: 64;
75009 	long: 64;
75010 	long: 64;
75011 	long: 64;
75012 	long: 64;
75013 	long: 64;
75014 	long: 64;
75015 	long: 64;
75016 	long: 64;
75017 	long: 64;
75018 	long: 64;
75019 	long: 64;
75020 	long: 64;
75021 	long: 64;
75022 	long: 64;
75023 	long: 64;
75024 	long: 64;
75025 	long: 64;
75026 	long: 64;
75027 	long: 64;
75028 	long: 64;
75029 	long: 64;
75030 	long: 64;
75031 	long: 64;
75032 	long: 64;
75033 	long: 64;
75034 	long: 64;
75035 	long: 64;
75036 	long: 64;
75037 	long: 64;
75038 	long: 64;
75039 	long: 64;
75040 	long: 64;
75041 	long: 64;
75042 	long: 64;
75043 	long: 64;
75044 	long: 64;
75045 	long: 64;
75046 	long: 64;
75047 	long: 64;
75048 	long: 64;
75049 	long: 64;
75050 	long: 64;
75051 	long: 64;
75052 	long: 64;
75053 	long: 64;
75054 	long: 64;
75055 	long: 64;
75056 	long: 64;
75057 	long: 64;
75058 	long: 64;
75059 	long: 64;
75060 	long: 64;
75061 	long: 64;
75062 	long: 64;
75063 	long: 64;
75064 	long: 64;
75065 	long: 64;
75066 	long: 64;
75067 	long: 64;
75068 	long: 64;
75069 	long: 64;
75070 	long: 64;
75071 	long: 64;
75072 	long: 64;
75073 	long: 64;
75074 	long: 64;
75075 	long: 64;
75076 	long: 64;
75077 	long: 64;
75078 	long: 64;
75079 	long: 64;
75080 	long: 64;
75081 	long: 64;
75082 	long: 64;
75083 	long: 64;
75084 	long: 64;
75085 	long: 64;
75086 	long: 64;
75087 	long: 64;
75088 	long: 64;
75089 	long: 64;
75090 	long: 64;
75091 	long: 64;
75092 	long: 64;
75093 	long: 64;
75094 	long: 64;
75095 	long: 64;
75096 	long: 64;
75097 	long: 64;
75098 	long: 64;
75099 	long: 64;
75100 	long: 64;
75101 	long: 64;
75102 	long: 64;
75103 	long: 64;
75104 	long: 64;
75105 	long: 64;
75106 	long: 64;
75107 	long: 64;
75108 	long: 64;
75109 	long: 64;
75110 	long: 64;
75111 	long: 64;
75112 	long: 64;
75113 	long: 64;
75114 	long: 64;
75115 	long: 64;
75116 	long: 64;
75117 	long: 64;
75118 	long: 64;
75119 	long: 64;
75120 	long: 64;
75121 	long: 64;
75122 	long: 64;
75123 	long: 64;
75124 	long: 64;
75125 	long: 64;
75126 	long: 64;
75127 	long: 64;
75128 	long: 64;
75129 	long: 64;
75130 	long: 64;
75131 	long: 64;
75132 	long: 64;
75133 	long: 64;
75134 	long: 64;
75135 	long: 64;
75136 	long: 64;
75137 	long: 64;
75138 	long: 64;
75139 	long: 64;
75140 	long: 64;
75141 	long: 64;
75142 	long: 64;
75143 	long: 64;
75144 	long: 64;
75145 	long: 64;
75146 	long: 64;
75147 	long: 64;
75148 	long: 64;
75149 	long: 64;
75150 	long: 64;
75151 	long: 64;
75152 	long: 64;
75153 	long: 64;
75154 	long: 64;
75155 	long: 64;
75156 	long: 64;
75157 	long: 64;
75158 	long: 64;
75159 	long: 64;
75160 	long: 64;
75161 	long: 64;
75162 	long: 64;
75163 	long: 64;
75164 	long: 64;
75165 	long: 64;
75166 	long: 64;
75167 	long: 64;
75168 	long: 64;
75169 	long: 64;
75170 	long: 64;
75171 	long: 64;
75172 	long: 64;
75173 	long: 64;
75174 	long: 64;
75175 	long: 64;
75176 	long: 64;
75177 	long: 64;
75178 	long: 64;
75179 	long: 64;
75180 	long: 64;
75181 	long: 64;
75182 	long: 64;
75183 	long: 64;
75184 	long: 64;
75185 	long: 64;
75186 	long: 64;
75187 	long: 64;
75188 	long: 64;
75189 	long: 64;
75190 	long: 64;
75191 	long: 64;
75192 	long: 64;
75193 	long: 64;
75194 	long: 64;
75195 	long: 64;
75196 	long: 64;
75197 	long: 64;
75198 	long: 64;
75199 	long: 64;
75200 	long: 64;
75201 	long: 64;
75202 	long: 64;
75203 	long: 64;
75204 	long: 64;
75205 	long: 64;
75206 	long: 64;
75207 	long: 64;
75208 	long: 64;
75209 	long: 64;
75210 	long: 64;
75211 	long: 64;
75212 	long: 64;
75213 	long: 64;
75214 	long: 64;
75215 	long: 64;
75216 	long: 64;
75217 	long: 64;
75218 	long: 64;
75219 	long: 64;
75220 	long: 64;
75221 	long: 64;
75222 	long: 64;
75223 	long: 64;
75224 	long: 64;
75225 	long: 64;
75226 	long: 64;
75227 	long: 64;
75228 	long: 64;
75229 	long: 64;
75230 	long: 64;
75231 	long: 64;
75232 	long: 64;
75233 	long: 64;
75234 	long: 64;
75235 	long: 64;
75236 	long: 64;
75237 	long: 64;
75238 	long: 64;
75239 	long: 64;
75240 	long: 64;
75241 	long: 64;
75242 	long: 64;
75243 	long: 64;
75244 	long: 64;
75245 	long: 64;
75246 	long: 64;
75247 	long: 64;
75248 	long: 64;
75249 	long: 64;
75250 	long: 64;
75251 	long: 64;
75252 	long: 64;
75253 	long: 64;
75254 	long: 64;
75255 	long: 64;
75256 	long: 64;
75257 	long: 64;
75258 	long: 64;
75259 	long: 64;
75260 	long: 64;
75261 	long: 64;
75262 	long: 64;
75263 	long: 64;
75264 	long: 64;
75265 	long: 64;
75266 	long: 64;
75267 	long: 64;
75268 	long: 64;
75269 	long: 64;
75270 	long: 64;
75271 	long: 64;
75272 	long: 64;
75273 	long: 64;
75274 	long: 64;
75275 	long: 64;
75276 	long: 64;
75277 	long: 64;
75278 	long: 64;
75279 	long: 64;
75280 	long: 64;
75281 	long: 64;
75282 	long: 64;
75283 	long: 64;
75284 	long: 64;
75285 	long: 64;
75286 	long: 64;
75287 	long: 64;
75288 	long: 64;
75289 	long: 64;
75290 	long: 64;
75291 	long: 64;
75292 	long: 64;
75293 	long: 64;
75294 	long: 64;
75295 	long: 64;
75296 	long: 64;
75297 	long: 64;
75298 	long: 64;
75299 	long: 64;
75300 	long: 64;
75301 	long: 64;
75302 	long: 64;
75303 	long: 64;
75304 	long: 64;
75305 	long: 64;
75306 	long: 64;
75307 	long: 64;
75308 	long: 64;
75309 	long: 64;
75310 	long: 64;
75311 	long: 64;
75312 	long: 64;
75313 	long: 64;
75314 	long: 64;
75315 	long: 64;
75316 	long: 64;
75317 	long: 64;
75318 	long: 64;
75319 	long: 64;
75320 	long: 64;
75321 	long: 64;
75322 	long: 64;
75323 	long: 64;
75324 	long: 64;
75325 	long: 64;
75326 	long: 64;
75327 	long: 64;
75328 	long: 64;
75329 	long: 64;
75330 	long: 64;
75331 	long: 64;
75332 	long: 64;
75333 	long: 64;
75334 	long: 64;
75335 	long: 64;
75336 	long: 64;
75337 	long: 64;
75338 	long: 64;
75339 	long: 64;
75340 	long: 64;
75341 	long: 64;
75342 	long: 64;
75343 	long: 64;
75344 	long: 64;
75345 	long: 64;
75346 	long: 64;
75347 	long: 64;
75348 	long: 64;
75349 	long: 64;
75350 	long: 64;
75351 	long: 64;
75352 	long: 64;
75353 	long: 64;
75354 	long: 64;
75355 	long: 64;
75356 	long: 64;
75357 	long: 64;
75358 	long: 64;
75359 	long: 64;
75360 	long: 64;
75361 	long: 64;
75362 	long: 64;
75363 	long: 64;
75364 	long: 64;
75365 	long: 64;
75366 	long: 64;
75367 	long: 64;
75368 	long: 64;
75369 	long: 64;
75370 	long: 64;
75371 	long: 64;
75372 	long: 64;
75373 	long: 64;
75374 	long: 64;
75375 	long: 64;
75376 	long: 64;
75377 	long: 64;
75378 	long: 64;
75379 	long: 64;
75380 	long: 64;
75381 	long: 64;
75382 	long: 64;
75383 	long: 64;
75384 	long: 64;
75385 	long: 64;
75386 	long: 64;
75387 	long: 64;
75388 	long: 64;
75389 	long: 64;
75390 	long: 64;
75391 	long: 64;
75392 	long: 64;
75393 	long: 64;
75394 	long: 64;
75395 	long: 64;
75396 	long: 64;
75397 	long: 64;
75398 	long: 64;
75399 	long: 64;
75400 	long: 64;
75401 	long: 64;
75402 	long: 64;
75403 	long: 64;
75404 	long: 64;
75405 	long: 64;
75406 	long: 64;
75407 	long: 64;
75408 	long: 64;
75409 	long: 64;
75410 	long: 64;
75411 	long: 64;
75412 	long: 64;
75413 	long: 64;
75414 	long: 64;
75415 	long: 64;
75416 	long: 64;
75417 	long: 64;
75418 	long: 64;
75419 	long: 64;
75420 	long: 64;
75421 	long: 64;
75422 	long: 64;
75423 	long: 64;
75424 	long: 64;
75425 	long: 64;
75426 	long: 64;
75427 	long: 64;
75428 	long: 64;
75429 	long: 64;
75430 	long: 64;
75431 	long: 64;
75432 	long: 64;
75433 	long: 64;
75434 	long: 64;
75435 	long: 64;
75436 	long: 64;
75437 	long: 64;
75438 	long: 64;
75439 	long: 64;
75440 	long: 64;
75441 	long: 64;
75442 	long: 64;
75443 	long: 64;
75444 	long: 64;
75445 	long: 64;
75446 	long: 64;
75447 	long: 64;
75448 	long: 64;
75449 	long: 64;
75450 	long: 64;
75451 	long: 64;
75452 	long: 64;
75453 	long: 64;
75454 	long: 64;
75455 	long: 64;
75456 	long: 64;
75457 	long: 64;
75458 	long: 64;
75459 	long: 64;
75460 	long: 64;
75461 	long: 64;
75462 	long: 64;
75463 	long: 64;
75464 	long: 64;
75465 	long: 64;
75466 	long: 64;
75467 	long: 64;
75468 	long: 64;
75469 	long: 64;
75470 	long: 64;
75471 	long: 64;
75472 	long: 64;
75473 	long: 64;
75474 	long: 64;
75475 	long: 64;
75476 	long: 64;
75477 	long: 64;
75478 	long: 64;
75479 	long: 64;
75480 	long: 64;
75481 	long: 64;
75482 	long: 64;
75483 	long: 64;
75484 	long: 64;
75485 	long: 64;
75486 	long: 64;
75487 	long: 64;
75488 	long: 64;
75489 	long: 64;
75490 	long: 64;
75491 	long: 64;
75492 	long: 64;
75493 	long: 64;
75494 	long: 64;
75495 	long: 64;
75496 	long: 64;
75497 	long: 64;
75498 	long: 64;
75499 	long: 64;
75500 	long: 64;
75501 	long: 64;
75502 	long: 64;
75503 	long: 64;
75504 	long: 64;
75505 	long: 64;
75506 	long: 64;
75507 	long: 64;
75508 	long: 64;
75509 	long: 64;
75510 	long: 64;
75511 	long: 64;
75512 	long: 64;
75513 	long: 64;
75514 	long: 64;
75515 	long: 64;
75516 	long: 64;
75517 	long: 64;
75518 	long: 64;
75519 	long: 64;
75520 	long: 64;
75521 	long: 64;
75522 	long: 64;
75523 	long: 64;
75524 	long: 64;
75525 	long: 64;
75526 	long: 64;
75527 	long: 64;
75528 	long: 64;
75529 	long: 64;
75530 	long: 64;
75531 	long: 64;
75532 	long: 64;
75533 	long: 64;
75534 	long: 64;
75535 	long: 64;
75536 	long: 64;
75537 	long: 64;
75538 	long: 64;
75539 	long: 64;
75540 	long: 64;
75541 	long: 64;
75542 	long: 64;
75543 	long: 64;
75544 	long: 64;
75545 	long: 64;
75546 	long: 64;
75547 	long: 64;
75548 	long: 64;
75549 	long: 64;
75550 	long: 64;
75551 	long: 64;
75552 	long: 64;
75553 	long: 64;
75554 	long: 64;
75555 	long: 64;
75556 	long: 64;
75557 	long: 64;
75558 	long: 64;
75559 	long: 64;
75560 	long: 64;
75561 	long: 64;
75562 	long: 64;
75563 	long: 64;
75564 	long: 64;
75565 	long: 64;
75566 	long: 64;
75567 	long: 64;
75568 	long: 64;
75569 	long: 64;
75570 	long: 64;
75571 	long: 64;
75572 	long: 64;
75573 	long: 64;
75574 	long: 64;
75575 	long: 64;
75576 	long: 64;
75577 	long: 64;
75578 	long: 64;
75579 	long: 64;
75580 	long: 64;
75581 	long: 64;
75582 	long: 64;
75583 	long: 64;
75584 	long: 64;
75585 	long: 64;
75586 	long: 64;
75587 	long: 64;
75588 	long: 64;
75589 	long: 64;
75590 	long: 64;
75591 	long: 64;
75592 	long: 64;
75593 	long: 64;
75594 	long: 64;
75595 	long: 64;
75596 	long: 64;
75597 	long: 64;
75598 	long: 64;
75599 	long: 64;
75600 	long: 64;
75601 	long: 64;
75602 	long: 64;
75603 	long: 64;
75604 	long: 64;
75605 	long: 64;
75606 	long: 64;
75607 	long: 64;
75608 	long: 64;
75609 	long: 64;
75610 	long: 64;
75611 	long: 64;
75612 	long: 64;
75613 	long: 64;
75614 	long: 64;
75615 	long: 64;
75616 	long: 64;
75617 	long: 64;
75618 	long: 64;
75619 	long: 64;
75620 	long: 64;
75621 	long: 64;
75622 	long: 64;
75623 	long: 64;
75624 	long: 64;
75625 	long: 64;
75626 	long: 64;
75627 	long: 64;
75628 	long: 64;
75629 	long: 64;
75630 	long: 64;
75631 	long: 64;
75632 	long: 64;
75633 	long: 64;
75634 	long: 64;
75635 	long: 64;
75636 	long: 64;
75637 	long: 64;
75638 	long: 64;
75639 	long: 64;
75640 	long: 64;
75641 	long: 64;
75642 	long: 64;
75643 	long: 64;
75644 	long: 64;
75645 	long: 64;
75646 	long: 64;
75647 	long: 64;
75648 	long: 64;
75649 	long: 64;
75650 	long: 64;
75651 	long: 64;
75652 	long: 64;
75653 	long: 64;
75654 	long: 64;
75655 	long: 64;
75656 	long: 64;
75657 	long: 64;
75658 	long: 64;
75659 	long: 64;
75660 	long: 64;
75661 	long: 64;
75662 	long: 64;
75663 	long: 64;
75664 	long: 64;
75665 	long: 64;
75666 	long: 64;
75667 	long: 64;
75668 	long: 64;
75669 	long: 64;
75670 	long: 64;
75671 	long: 64;
75672 	long: 64;
75673 	long: 64;
75674 	long: 64;
75675 	long: 64;
75676 	long: 64;
75677 	long: 64;
75678 	long: 64;
75679 	long: 64;
75680 	long: 64;
75681 	long: 64;
75682 	long: 64;
75683 	long: 64;
75684 	long: 64;
75685 	long: 64;
75686 	long: 64;
75687 	long: 64;
75688 	long: 64;
75689 	long: 64;
75690 	long: 64;
75691 	long: 64;
75692 	long: 64;
75693 	long: 64;
75694 	long: 64;
75695 	long: 64;
75696 	long: 64;
75697 	long: 64;
75698 	long: 64;
75699 	long: 64;
75700 	long: 64;
75701 	long: 64;
75702 	long: 64;
75703 	long: 64;
75704 	long: 64;
75705 	long: 64;
75706 	long: 64;
75707 	long: 64;
75708 	long: 64;
75709 	long: 64;
75710 	long: 64;
75711 	long: 64;
75712 	long: 64;
75713 	long: 64;
75714 	long: 64;
75715 	long: 64;
75716 	long: 64;
75717 	long: 64;
75718 	long: 64;
75719 	long: 64;
75720 	long: 64;
75721 	long: 64;
75722 	long: 64;
75723 	long: 64;
75724 	long: 64;
75725 	long: 64;
75726 	long: 64;
75727 	long: 64;
75728 	long: 64;
75729 	long: 64;
75730 	long: 64;
75731 	long: 64;
75732 	long: 64;
75733 	long: 64;
75734 	long: 64;
75735 	long: 64;
75736 	long: 64;
75737 	long: 64;
75738 	long: 64;
75739 	long: 64;
75740 	long: 64;
75741 	long: 64;
75742 	long: 64;
75743 	long: 64;
75744 	long: 64;
75745 	long: 64;
75746 	long: 64;
75747 	long: 64;
75748 	long: 64;
75749 	long: 64;
75750 	long: 64;
75751 	long: 64;
75752 	long: 64;
75753 	long: 64;
75754 	long: 64;
75755 	long: 64;
75756 	long: 64;
75757 	long: 64;
75758 	long: 64;
75759 	long: 64;
75760 	long: 64;
75761 	long: 64;
75762 	long: 64;
75763 	long: 64;
75764 	long: 64;
75765 	long: 64;
75766 	long: 64;
75767 	long: 64;
75768 	long: 64;
75769 	long: 64;
75770 	long: 64;
75771 	long: 64;
75772 	long: 64;
75773 	long: 64;
75774 	long: 64;
75775 	long: 64;
75776 	long: 64;
75777 	long: 64;
75778 	long: 64;
75779 	long: 64;
75780 	long: 64;
75781 	long: 64;
75782 	long: 64;
75783 	long: 64;
75784 	long: 64;
75785 	long: 64;
75786 	long: 64;
75787 	long: 64;
75788 	long: 64;
75789 	long: 64;
75790 	long: 64;
75791 	long: 64;
75792 	long: 64;
75793 	long: 64;
75794 	long: 64;
75795 	long: 64;
75796 	long: 64;
75797 	long: 64;
75798 	long: 64;
75799 	long: 64;
75800 	long: 64;
75801 	long: 64;
75802 	long: 64;
75803 	long: 64;
75804 	long: 64;
75805 	long: 64;
75806 	long: 64;
75807 	long: 64;
75808 	long: 64;
75809 	long: 64;
75810 	long: 64;
75811 	long: 64;
75812 	long: 64;
75813 	long: 64;
75814 	long: 64;
75815 	long: 64;
75816 	long: 64;
75817 	long: 64;
75818 	long: 64;
75819 	long: 64;
75820 	long: 64;
75821 	long: 64;
75822 	long: 64;
75823 	long: 64;
75824 	long: 64;
75825 	long: 64;
75826 	long: 64;
75827 	long: 64;
75828 	long: 64;
75829 	long: 64;
75830 	long: 64;
75831 	long: 64;
75832 	long: 64;
75833 	long: 64;
75834 	long: 64;
75835 	long: 64;
75836 	long: 64;
75837 	long: 64;
75838 	long: 64;
75839 	long: 64;
75840 	long: 64;
75841 	long: 64;
75842 	long: 64;
75843 	long: 64;
75844 	long: 64;
75845 	long: 64;
75846 	long: 64;
75847 	long: 64;
75848 	long: 64;
75849 	long: 64;
75850 	long: 64;
75851 	long: 64;
75852 	long: 64;
75853 	long: 64;
75854 	long: 64;
75855 	long: 64;
75856 	long: 64;
75857 	long: 64;
75858 	long: 64;
75859 	long: 64;
75860 	long: 64;
75861 	long: 64;
75862 	long: 64;
75863 	long: 64;
75864 	long: 64;
75865 	long: 64;
75866 	long: 64;
75867 	long: 64;
75868 	long: 64;
75869 	long: 64;
75870 	long: 64;
75871 	long: 64;
75872 	long: 64;
75873 	long: 64;
75874 	long: 64;
75875 	long: 64;
75876 	long: 64;
75877 	long: 64;
75878 	long: 64;
75879 	long: 64;
75880 	long: 64;
75881 	long: 64;
75882 	long: 64;
75883 	long: 64;
75884 	long: 64;
75885 	long: 64;
75886 	long: 64;
75887 	long: 64;
75888 	long: 64;
75889 	long: 64;
75890 	long: 64;
75891 	long: 64;
75892 	long: 64;
75893 	long: 64;
75894 	long: 64;
75895 	long: 64;
75896 	long: 64;
75897 	long: 64;
75898 	long: 64;
75899 	long: 64;
75900 	long: 64;
75901 	long: 64;
75902 	long: 64;
75903 	long: 64;
75904 	long: 64;
75905 	long: 64;
75906 	long: 64;
75907 	long: 64;
75908 	long: 64;
75909 	long: 64;
75910 	long: 64;
75911 	long: 64;
75912 	long: 64;
75913 	long: 64;
75914 	long: 64;
75915 	long: 64;
75916 	long: 64;
75917 	long: 64;
75918 	long: 64;
75919 	long: 64;
75920 	long: 64;
75921 	long: 64;
75922 	long: 64;
75923 	long: 64;
75924 	long: 64;
75925 	long: 64;
75926 	long: 64;
75927 	long: 64;
75928 	long: 64;
75929 	long: 64;
75930 	long: 64;
75931 	long: 64;
75932 	long: 64;
75933 	long: 64;
75934 	long: 64;
75935 	long: 64;
75936 	long: 64;
75937 	long: 64;
75938 	long: 64;
75939 	long: 64;
75940 	long: 64;
75941 	long: 64;
75942 	long: 64;
75943 	long: 64;
75944 	long: 64;
75945 	long: 64;
75946 	long: 64;
75947 	long: 64;
75948 	long: 64;
75949 	long: 64;
75950 	long: 64;
75951 	long: 64;
75952 	long: 64;
75953 	long: 64;
75954 	long: 64;
75955 	long: 64;
75956 	long: 64;
75957 	long: 64;
75958 	long: 64;
75959 	long: 64;
75960 	long: 64;
75961 	long: 64;
75962 	long: 64;
75963 	long: 64;
75964 	long: 64;
75965 	long: 64;
75966 	long: 64;
75967 	long: 64;
75968 	long: 64;
75969 	long: 64;
75970 	long: 64;
75971 	long: 64;
75972 	long: 64;
75973 	long: 64;
75974 	long: 64;
75975 	long: 64;
75976 	long: 64;
75977 	long: 64;
75978 	long: 64;
75979 	long: 64;
75980 	long: 64;
75981 	long: 64;
75982 	long: 64;
75983 	long: 64;
75984 	long: 64;
75985 	long: 64;
75986 	long: 64;
75987 	long: 64;
75988 	long: 64;
75989 	long: 64;
75990 	long: 64;
75991 	long: 64;
75992 	long: 64;
75993 	long: 64;
75994 	long: 64;
75995 	long: 64;
75996 	long: 64;
75997 	long: 64;
75998 	long: 64;
75999 	long: 64;
76000 	long: 64;
76001 	long: 64;
76002 	long: 64;
76003 	long: 64;
76004 	long: 64;
76005 	long: 64;
76006 	long: 64;
76007 	long: 64;
76008 	long: 64;
76009 	long: 64;
76010 	long: 64;
76011 	long: 64;
76012 	long: 64;
76013 	long: 64;
76014 	long: 64;
76015 	long: 64;
76016 	long: 64;
76017 	long: 64;
76018 	long: 64;
76019 	long: 64;
76020 	long: 64;
76021 	long: 64;
76022 	long: 64;
76023 	long: 64;
76024 	long: 64;
76025 	long: 64;
76026 	long: 64;
76027 	long: 64;
76028 	long: 64;
76029 	long: 64;
76030 	long: 64;
76031 	long: 64;
76032 	long: 64;
76033 	long: 64;
76034 	long: 64;
76035 	long: 64;
76036 	long: 64;
76037 	long: 64;
76038 	long: 64;
76039 	long: 64;
76040 	long: 64;
76041 	long: 64;
76042 	long: 64;
76043 	long: 64;
76044 	long: 64;
76045 	long: 64;
76046 	long: 64;
76047 	long: 64;
76048 	long: 64;
76049 	long: 64;
76050 	long: 64;
76051 	long: 64;
76052 	long: 64;
76053 	long: 64;
76054 	long: 64;
76055 	long: 64;
76056 	long: 64;
76057 	long: 64;
76058 	long: 64;
76059 	long: 64;
76060 	long: 64;
76061 	long: 64;
76062 	long: 64;
76063 	long: 64;
76064 	long: 64;
76065 	long: 64;
76066 	long: 64;
76067 	long: 64;
76068 	long: 64;
76069 	long: 64;
76070 	long: 64;
76071 	long: 64;
76072 	long: 64;
76073 	long: 64;
76074 	long: 64;
76075 	long: 64;
76076 	long: 64;
76077 	long: 64;
76078 	long: 64;
76079 	long: 64;
76080 	long: 64;
76081 	long: 64;
76082 	long: 64;
76083 	long: 64;
76084 	long: 64;
76085 	long: 64;
76086 	long: 64;
76087 	long: 64;
76088 	long: 64;
76089 	long: 64;
76090 	long: 64;
76091 	long: 64;
76092 	long: 64;
76093 	long: 64;
76094 	long: 64;
76095 	long: 64;
76096 	long: 64;
76097 	long: 64;
76098 	long: 64;
76099 	long: 64;
76100 	long: 64;
76101 	long: 64;
76102 	long: 64;
76103 	long: 64;
76104 	long: 64;
76105 	long: 64;
76106 	long: 64;
76107 	long: 64;
76108 	long: 64;
76109 	long: 64;
76110 	long: 64;
76111 	long: 64;
76112 	long: 64;
76113 	long: 64;
76114 	long: 64;
76115 	long: 64;
76116 	long: 64;
76117 	long: 64;
76118 	long: 64;
76119 	long: 64;
76120 	long: 64;
76121 	long: 64;
76122 	long: 64;
76123 	long: 64;
76124 	long: 64;
76125 	long: 64;
76126 	long: 64;
76127 	long: 64;
76128 	long: 64;
76129 	long: 64;
76130 	long: 64;
76131 	long: 64;
76132 	long: 64;
76133 	long: 64;
76134 	long: 64;
76135 	long: 64;
76136 	long: 64;
76137 	long: 64;
76138 	long: 64;
76139 	long: 64;
76140 	long: 64;
76141 	long: 64;
76142 	long: 64;
76143 	long: 64;
76144 	long: 64;
76145 	long: 64;
76146 	long: 64;
76147 	long: 64;
76148 	long: 64;
76149 	long: 64;
76150 	long: 64;
76151 	long: 64;
76152 	long: 64;
76153 	long: 64;
76154 	long: 64;
76155 	long: 64;
76156 	long: 64;
76157 	long: 64;
76158 	long: 64;
76159 	long: 64;
76160 	long: 64;
76161 	long: 64;
76162 	long: 64;
76163 	long: 64;
76164 	long: 64;
76165 	long: 64;
76166 	long: 64;
76167 	long: 64;
76168 	long: 64;
76169 	long: 64;
76170 	long: 64;
76171 	long: 64;
76172 	long: 64;
76173 	long: 64;
76174 	long: 64;
76175 	long: 64;
76176 	long: 64;
76177 	long: 64;
76178 	long: 64;
76179 	long: 64;
76180 	long: 64;
76181 	long: 64;
76182 	long: 64;
76183 	long: 64;
76184 	long: 64;
76185 	long: 64;
76186 	long: 64;
76187 	long: 64;
76188 	long: 64;
76189 	long: 64;
76190 	long: 64;
76191 	long: 64;
76192 	long: 64;
76193 	long: 64;
76194 	long: 64;
76195 	long: 64;
76196 	long: 64;
76197 	long: 64;
76198 	long: 64;
76199 	long: 64;
76200 	long: 64;
76201 	long: 64;
76202 	long: 64;
76203 	long: 64;
76204 	long: 64;
76205 	long: 64;
76206 	long: 64;
76207 	long: 64;
76208 	long: 64;
76209 	long: 64;
76210 	long: 64;
76211 	long: 64;
76212 	long: 64;
76213 	long: 64;
76214 	long: 64;
76215 	long: 64;
76216 	long: 64;
76217 	long: 64;
76218 	long: 64;
76219 	long: 64;
76220 	long: 64;
76221 	long: 64;
76222 	long: 64;
76223 	long: 64;
76224 	long: 64;
76225 	long: 64;
76226 	long: 64;
76227 	long: 64;
76228 	long: 64;
76229 	long: 64;
76230 	long: 64;
76231 	long: 64;
76232 	long: 64;
76233 	long: 64;
76234 	long: 64;
76235 	long: 64;
76236 	long: 64;
76237 	long: 64;
76238 	long: 64;
76239 	long: 64;
76240 	long: 64;
76241 	long: 64;
76242 	long: 64;
76243 	long: 64;
76244 	long: 64;
76245 	long: 64;
76246 	long: 64;
76247 	long: 64;
76248 	long: 64;
76249 	long: 64;
76250 	long: 64;
76251 	long: 64;
76252 	long: 64;
76253 	long: 64;
76254 	long: 64;
76255 	long: 64;
76256 	long: 64;
76257 	long: 64;
76258 	long: 64;
76259 	long: 64;
76260 	long: 64;
76261 	long: 64;
76262 	long: 64;
76263 	long: 64;
76264 	long: 64;
76265 	long: 64;
76266 	long: 64;
76267 	long: 64;
76268 	long: 64;
76269 	long: 64;
76270 	long: 64;
76271 	long: 64;
76272 	long: 64;
76273 	long: 64;
76274 	long: 64;
76275 	long: 64;
76276 	long: 64;
76277 	long: 64;
76278 	long: 64;
76279 	long: 64;
76280 	long: 64;
76281 	long: 64;
76282 	long: 64;
76283 	long: 64;
76284 	long: 64;
76285 	long: 64;
76286 	long: 64;
76287 	long: 64;
76288 	long: 64;
76289 	long: 64;
76290 	long: 64;
76291 	long: 64;
76292 	long: 64;
76293 	long: 64;
76294 	long: 64;
76295 	long: 64;
76296 	long: 64;
76297 	long: 64;
76298 	long: 64;
76299 	long: 64;
76300 	long: 64;
76301 	long: 64;
76302 	long: 64;
76303 	long: 64;
76304 	long: 64;
76305 	long: 64;
76306 	long: 64;
76307 	long: 64;
76308 	long: 64;
76309 	long: 64;
76310 	long: 64;
76311 	long: 64;
76312 	long: 64;
76313 	long: 64;
76314 	long: 64;
76315 	long: 64;
76316 	long: 64;
76317 	long: 64;
76318 	long: 64;
76319 	long: 64;
76320 	long: 64;
76321 	long: 64;
76322 	long: 64;
76323 	long: 64;
76324 	long: 64;
76325 	long: 64;
76326 	long: 64;
76327 	long: 64;
76328 	long: 64;
76329 	long: 64;
76330 	long: 64;
76331 	long: 64;
76332 	long: 64;
76333 	long: 64;
76334 	long: 64;
76335 	long: 64;
76336 	long: 64;
76337 	long: 64;
76338 	long: 64;
76339 	long: 64;
76340 	long: 64;
76341 	long: 64;
76342 	long: 64;
76343 	long: 64;
76344 	long: 64;
76345 	long: 64;
76346 	long: 64;
76347 	long: 64;
76348 	long: 64;
76349 	long: 64;
76350 	long: 64;
76351 	long: 64;
76352 	long: 64;
76353 	long: 64;
76354 	long: 64;
76355 	long: 64;
76356 	long: 64;
76357 	long: 64;
76358 	long: 64;
76359 	long: 64;
76360 	long: 64;
76361 	long: 64;
76362 	long: 64;
76363 	long: 64;
76364 	long: 64;
76365 	long: 64;
76366 	long: 64;
76367 	long: 64;
76368 	long: 64;
76369 	long: 64;
76370 	long: 64;
76371 	long: 64;
76372 	long: 64;
76373 	long: 64;
76374 	long: 64;
76375 	long: 64;
76376 	long: 64;
76377 	long: 64;
76378 	long: 64;
76379 	long: 64;
76380 	long: 64;
76381 	long: 64;
76382 	long: 64;
76383 	long: 64;
76384 	long: 64;
76385 	long: 64;
76386 	long: 64;
76387 	long: 64;
76388 	long: 64;
76389 	long: 64;
76390 	long: 64;
76391 	long: 64;
76392 	long: 64;
76393 	long: 64;
76394 	long: 64;
76395 	long: 64;
76396 	long: 64;
76397 	long: 64;
76398 	long: 64;
76399 	long: 64;
76400 	long: 64;
76401 	long: 64;
76402 	long: 64;
76403 	long: 64;
76404 	long: 64;
76405 	long: 64;
76406 	long: 64;
76407 	long: 64;
76408 	long: 64;
76409 	long: 64;
76410 	long: 64;
76411 	long: 64;
76412 	long: 64;
76413 	long: 64;
76414 	long: 64;
76415 	long: 64;
76416 	long: 64;
76417 	long: 64;
76418 	long: 64;
76419 	long: 64;
76420 	long: 64;
76421 	long: 64;
76422 	long: 64;
76423 	long: 64;
76424 	long: 64;
76425 	long: 64;
76426 	long: 64;
76427 	long: 64;
76428 	long: 64;
76429 	long: 64;
76430 	long: 64;
76431 	long: 64;
76432 	long: 64;
76433 	long: 64;
76434 	long: 64;
76435 	long: 64;
76436 	long: 64;
76437 	long: 64;
76438 	long: 64;
76439 	long: 64;
76440 	long: 64;
76441 	long: 64;
76442 	long: 64;
76443 	long: 64;
76444 	long: 64;
76445 	long: 64;
76446 	long: 64;
76447 	long: 64;
76448 	long: 64;
76449 	long: 64;
76450 	long: 64;
76451 	long: 64;
76452 	long: 64;
76453 	long: 64;
76454 	long: 64;
76455 	long: 64;
76456 	long: 64;
76457 	long: 64;
76458 	long: 64;
76459 	long: 64;
76460 	long: 64;
76461 	long: 64;
76462 	long: 64;
76463 	long: 64;
76464 	long: 64;
76465 	long: 64;
76466 	long: 64;
76467 	long: 64;
76468 	long: 64;
76469 	long: 64;
76470 	long: 64;
76471 	long: 64;
76472 	long: 64;
76473 	long: 64;
76474 	long: 64;
76475 	long: 64;
76476 	long: 64;
76477 	long: 64;
76478 	long: 64;
76479 	long: 64;
76480 	long: 64;
76481 	long: 64;
76482 	long unsigned int producer_pos;
76483 	long: 64;
76484 	long: 64;
76485 	long: 64;
76486 	long: 64;
76487 	long: 64;
76488 	long: 64;
76489 	long: 64;
76490 	long: 64;
76491 	long: 64;
76492 	long: 64;
76493 	long: 64;
76494 	long: 64;
76495 	long: 64;
76496 	long: 64;
76497 	long: 64;
76498 	long: 64;
76499 	long: 64;
76500 	long: 64;
76501 	long: 64;
76502 	long: 64;
76503 	long: 64;
76504 	long: 64;
76505 	long: 64;
76506 	long: 64;
76507 	long: 64;
76508 	long: 64;
76509 	long: 64;
76510 	long: 64;
76511 	long: 64;
76512 	long: 64;
76513 	long: 64;
76514 	long: 64;
76515 	long: 64;
76516 	long: 64;
76517 	long: 64;
76518 	long: 64;
76519 	long: 64;
76520 	long: 64;
76521 	long: 64;
76522 	long: 64;
76523 	long: 64;
76524 	long: 64;
76525 	long: 64;
76526 	long: 64;
76527 	long: 64;
76528 	long: 64;
76529 	long: 64;
76530 	long: 64;
76531 	long: 64;
76532 	long: 64;
76533 	long: 64;
76534 	long: 64;
76535 	long: 64;
76536 	long: 64;
76537 	long: 64;
76538 	long: 64;
76539 	long: 64;
76540 	long: 64;
76541 	long: 64;
76542 	long: 64;
76543 	long: 64;
76544 	long: 64;
76545 	long: 64;
76546 	long: 64;
76547 	long: 64;
76548 	long: 64;
76549 	long: 64;
76550 	long: 64;
76551 	long: 64;
76552 	long: 64;
76553 	long: 64;
76554 	long: 64;
76555 	long: 64;
76556 	long: 64;
76557 	long: 64;
76558 	long: 64;
76559 	long: 64;
76560 	long: 64;
76561 	long: 64;
76562 	long: 64;
76563 	long: 64;
76564 	long: 64;
76565 	long: 64;
76566 	long: 64;
76567 	long: 64;
76568 	long: 64;
76569 	long: 64;
76570 	long: 64;
76571 	long: 64;
76572 	long: 64;
76573 	long: 64;
76574 	long: 64;
76575 	long: 64;
76576 	long: 64;
76577 	long: 64;
76578 	long: 64;
76579 	long: 64;
76580 	long: 64;
76581 	long: 64;
76582 	long: 64;
76583 	long: 64;
76584 	long: 64;
76585 	long: 64;
76586 	long: 64;
76587 	long: 64;
76588 	long: 64;
76589 	long: 64;
76590 	long: 64;
76591 	long: 64;
76592 	long: 64;
76593 	long: 64;
76594 	long: 64;
76595 	long: 64;
76596 	long: 64;
76597 	long: 64;
76598 	long: 64;
76599 	long: 64;
76600 	long: 64;
76601 	long: 64;
76602 	long: 64;
76603 	long: 64;
76604 	long: 64;
76605 	long: 64;
76606 	long: 64;
76607 	long: 64;
76608 	long: 64;
76609 	long: 64;
76610 	long: 64;
76611 	long: 64;
76612 	long: 64;
76613 	long: 64;
76614 	long: 64;
76615 	long: 64;
76616 	long: 64;
76617 	long: 64;
76618 	long: 64;
76619 	long: 64;
76620 	long: 64;
76621 	long: 64;
76622 	long: 64;
76623 	long: 64;
76624 	long: 64;
76625 	long: 64;
76626 	long: 64;
76627 	long: 64;
76628 	long: 64;
76629 	long: 64;
76630 	long: 64;
76631 	long: 64;
76632 	long: 64;
76633 	long: 64;
76634 	long: 64;
76635 	long: 64;
76636 	long: 64;
76637 	long: 64;
76638 	long: 64;
76639 	long: 64;
76640 	long: 64;
76641 	long: 64;
76642 	long: 64;
76643 	long: 64;
76644 	long: 64;
76645 	long: 64;
76646 	long: 64;
76647 	long: 64;
76648 	long: 64;
76649 	long: 64;
76650 	long: 64;
76651 	long: 64;
76652 	long: 64;
76653 	long: 64;
76654 	long: 64;
76655 	long: 64;
76656 	long: 64;
76657 	long: 64;
76658 	long: 64;
76659 	long: 64;
76660 	long: 64;
76661 	long: 64;
76662 	long: 64;
76663 	long: 64;
76664 	long: 64;
76665 	long: 64;
76666 	long: 64;
76667 	long: 64;
76668 	long: 64;
76669 	long: 64;
76670 	long: 64;
76671 	long: 64;
76672 	long: 64;
76673 	long: 64;
76674 	long: 64;
76675 	long: 64;
76676 	long: 64;
76677 	long: 64;
76678 	long: 64;
76679 	long: 64;
76680 	long: 64;
76681 	long: 64;
76682 	long: 64;
76683 	long: 64;
76684 	long: 64;
76685 	long: 64;
76686 	long: 64;
76687 	long: 64;
76688 	long: 64;
76689 	long: 64;
76690 	long: 64;
76691 	long: 64;
76692 	long: 64;
76693 	long: 64;
76694 	long: 64;
76695 	long: 64;
76696 	long: 64;
76697 	long: 64;
76698 	long: 64;
76699 	long: 64;
76700 	long: 64;
76701 	long: 64;
76702 	long: 64;
76703 	long: 64;
76704 	long: 64;
76705 	long: 64;
76706 	long: 64;
76707 	long: 64;
76708 	long: 64;
76709 	long: 64;
76710 	long: 64;
76711 	long: 64;
76712 	long: 64;
76713 	long: 64;
76714 	long: 64;
76715 	long: 64;
76716 	long: 64;
76717 	long: 64;
76718 	long: 64;
76719 	long: 64;
76720 	long: 64;
76721 	long: 64;
76722 	long: 64;
76723 	long: 64;
76724 	long: 64;
76725 	long: 64;
76726 	long: 64;
76727 	long: 64;
76728 	long: 64;
76729 	long: 64;
76730 	long: 64;
76731 	long: 64;
76732 	long: 64;
76733 	long: 64;
76734 	long: 64;
76735 	long: 64;
76736 	long: 64;
76737 	long: 64;
76738 	long: 64;
76739 	long: 64;
76740 	long: 64;
76741 	long: 64;
76742 	long: 64;
76743 	long: 64;
76744 	long: 64;
76745 	long: 64;
76746 	long: 64;
76747 	long: 64;
76748 	long: 64;
76749 	long: 64;
76750 	long: 64;
76751 	long: 64;
76752 	long: 64;
76753 	long: 64;
76754 	long: 64;
76755 	long: 64;
76756 	long: 64;
76757 	long: 64;
76758 	long: 64;
76759 	long: 64;
76760 	long: 64;
76761 	long: 64;
76762 	long: 64;
76763 	long: 64;
76764 	long: 64;
76765 	long: 64;
76766 	long: 64;
76767 	long: 64;
76768 	long: 64;
76769 	long: 64;
76770 	long: 64;
76771 	long: 64;
76772 	long: 64;
76773 	long: 64;
76774 	long: 64;
76775 	long: 64;
76776 	long: 64;
76777 	long: 64;
76778 	long: 64;
76779 	long: 64;
76780 	long: 64;
76781 	long: 64;
76782 	long: 64;
76783 	long: 64;
76784 	long: 64;
76785 	long: 64;
76786 	long: 64;
76787 	long: 64;
76788 	long: 64;
76789 	long: 64;
76790 	long: 64;
76791 	long: 64;
76792 	long: 64;
76793 	long: 64;
76794 	long: 64;
76795 	long: 64;
76796 	long: 64;
76797 	long: 64;
76798 	long: 64;
76799 	long: 64;
76800 	long: 64;
76801 	long: 64;
76802 	long: 64;
76803 	long: 64;
76804 	long: 64;
76805 	long: 64;
76806 	long: 64;
76807 	long: 64;
76808 	long: 64;
76809 	long: 64;
76810 	long: 64;
76811 	long: 64;
76812 	long: 64;
76813 	long: 64;
76814 	long: 64;
76815 	long: 64;
76816 	long: 64;
76817 	long: 64;
76818 	long: 64;
76819 	long: 64;
76820 	long: 64;
76821 	long: 64;
76822 	long: 64;
76823 	long: 64;
76824 	long: 64;
76825 	long: 64;
76826 	long: 64;
76827 	long: 64;
76828 	long: 64;
76829 	long: 64;
76830 	long: 64;
76831 	long: 64;
76832 	long: 64;
76833 	long: 64;
76834 	long: 64;
76835 	long: 64;
76836 	long: 64;
76837 	long: 64;
76838 	long: 64;
76839 	long: 64;
76840 	long: 64;
76841 	long: 64;
76842 	long: 64;
76843 	long: 64;
76844 	long: 64;
76845 	long: 64;
76846 	long: 64;
76847 	long: 64;
76848 	long: 64;
76849 	long: 64;
76850 	long: 64;
76851 	long: 64;
76852 	long: 64;
76853 	long: 64;
76854 	long: 64;
76855 	long: 64;
76856 	long: 64;
76857 	long: 64;
76858 	long: 64;
76859 	long: 64;
76860 	long: 64;
76861 	long: 64;
76862 	long: 64;
76863 	long: 64;
76864 	long: 64;
76865 	long: 64;
76866 	long: 64;
76867 	long: 64;
76868 	long: 64;
76869 	long: 64;
76870 	long: 64;
76871 	long: 64;
76872 	long: 64;
76873 	long: 64;
76874 	long: 64;
76875 	long: 64;
76876 	long: 64;
76877 	long: 64;
76878 	long: 64;
76879 	long: 64;
76880 	long: 64;
76881 	long: 64;
76882 	long: 64;
76883 	long: 64;
76884 	long: 64;
76885 	long: 64;
76886 	long: 64;
76887 	long: 64;
76888 	long: 64;
76889 	long: 64;
76890 	long: 64;
76891 	long: 64;
76892 	long: 64;
76893 	long: 64;
76894 	long: 64;
76895 	long: 64;
76896 	long: 64;
76897 	long: 64;
76898 	long: 64;
76899 	long: 64;
76900 	long: 64;
76901 	long: 64;
76902 	long: 64;
76903 	long: 64;
76904 	long: 64;
76905 	long: 64;
76906 	long: 64;
76907 	long: 64;
76908 	long: 64;
76909 	long: 64;
76910 	long: 64;
76911 	long: 64;
76912 	long: 64;
76913 	long: 64;
76914 	long: 64;
76915 	long: 64;
76916 	long: 64;
76917 	long: 64;
76918 	long: 64;
76919 	long: 64;
76920 	long: 64;
76921 	long: 64;
76922 	long: 64;
76923 	long: 64;
76924 	long: 64;
76925 	long: 64;
76926 	long: 64;
76927 	long: 64;
76928 	long: 64;
76929 	long: 64;
76930 	long: 64;
76931 	long: 64;
76932 	long: 64;
76933 	long: 64;
76934 	long: 64;
76935 	long: 64;
76936 	long: 64;
76937 	long: 64;
76938 	long: 64;
76939 	long: 64;
76940 	long: 64;
76941 	long: 64;
76942 	long: 64;
76943 	long: 64;
76944 	long: 64;
76945 	long: 64;
76946 	long: 64;
76947 	long: 64;
76948 	long: 64;
76949 	long: 64;
76950 	long: 64;
76951 	long: 64;
76952 	long: 64;
76953 	long: 64;
76954 	long: 64;
76955 	long: 64;
76956 	long: 64;
76957 	long: 64;
76958 	long: 64;
76959 	long: 64;
76960 	long: 64;
76961 	long: 64;
76962 	long: 64;
76963 	long: 64;
76964 	long: 64;
76965 	long: 64;
76966 	long: 64;
76967 	long: 64;
76968 	long: 64;
76969 	long: 64;
76970 	long: 64;
76971 	long: 64;
76972 	long: 64;
76973 	long: 64;
76974 	long: 64;
76975 	long: 64;
76976 	long: 64;
76977 	long: 64;
76978 	long: 64;
76979 	long: 64;
76980 	long: 64;
76981 	long: 64;
76982 	long: 64;
76983 	long: 64;
76984 	long: 64;
76985 	long: 64;
76986 	long: 64;
76987 	long: 64;
76988 	long: 64;
76989 	long: 64;
76990 	long: 64;
76991 	long: 64;
76992 	long: 64;
76993 	long: 64;
76994 	long: 64;
76995 	long: 64;
76996 	long: 64;
76997 	long: 64;
76998 	long: 64;
76999 	long: 64;
77000 	long: 64;
77001 	long: 64;
77002 	long: 64;
77003 	long: 64;
77004 	long: 64;
77005 	long: 64;
77006 	long: 64;
77007 	long: 64;
77008 	long: 64;
77009 	long: 64;
77010 	long: 64;
77011 	long: 64;
77012 	long: 64;
77013 	long: 64;
77014 	long: 64;
77015 	long: 64;
77016 	long: 64;
77017 	long: 64;
77018 	long: 64;
77019 	long: 64;
77020 	long: 64;
77021 	long: 64;
77022 	long: 64;
77023 	long: 64;
77024 	long: 64;
77025 	long: 64;
77026 	long: 64;
77027 	long: 64;
77028 	long: 64;
77029 	long: 64;
77030 	long: 64;
77031 	long: 64;
77032 	long: 64;
77033 	long: 64;
77034 	long: 64;
77035 	long: 64;
77036 	long: 64;
77037 	long: 64;
77038 	long: 64;
77039 	long: 64;
77040 	long: 64;
77041 	long: 64;
77042 	long: 64;
77043 	long: 64;
77044 	long: 64;
77045 	long: 64;
77046 	long: 64;
77047 	long: 64;
77048 	long: 64;
77049 	long: 64;
77050 	long: 64;
77051 	long: 64;
77052 	long: 64;
77053 	long: 64;
77054 	long: 64;
77055 	long: 64;
77056 	long: 64;
77057 	long: 64;
77058 	long: 64;
77059 	long: 64;
77060 	long: 64;
77061 	long: 64;
77062 	long: 64;
77063 	long: 64;
77064 	long: 64;
77065 	long: 64;
77066 	long: 64;
77067 	long: 64;
77068 	long: 64;
77069 	long: 64;
77070 	long: 64;
77071 	long: 64;
77072 	long: 64;
77073 	long: 64;
77074 	long: 64;
77075 	long: 64;
77076 	long: 64;
77077 	long: 64;
77078 	long: 64;
77079 	long: 64;
77080 	long: 64;
77081 	long: 64;
77082 	long: 64;
77083 	long: 64;
77084 	long: 64;
77085 	long: 64;
77086 	long: 64;
77087 	long: 64;
77088 	long: 64;
77089 	long: 64;
77090 	long: 64;
77091 	long: 64;
77092 	long: 64;
77093 	long: 64;
77094 	long: 64;
77095 	long: 64;
77096 	long: 64;
77097 	long: 64;
77098 	long: 64;
77099 	long: 64;
77100 	long: 64;
77101 	long: 64;
77102 	long: 64;
77103 	long: 64;
77104 	long: 64;
77105 	long: 64;
77106 	long: 64;
77107 	long: 64;
77108 	long: 64;
77109 	long: 64;
77110 	long: 64;
77111 	long: 64;
77112 	long: 64;
77113 	long: 64;
77114 	long: 64;
77115 	long: 64;
77116 	long: 64;
77117 	long: 64;
77118 	long: 64;
77119 	long: 64;
77120 	long: 64;
77121 	long: 64;
77122 	long: 64;
77123 	long: 64;
77124 	long: 64;
77125 	long: 64;
77126 	long: 64;
77127 	long: 64;
77128 	long: 64;
77129 	long: 64;
77130 	long: 64;
77131 	long: 64;
77132 	long: 64;
77133 	long: 64;
77134 	long: 64;
77135 	long: 64;
77136 	long: 64;
77137 	long: 64;
77138 	long: 64;
77139 	long: 64;
77140 	long: 64;
77141 	long: 64;
77142 	long: 64;
77143 	long: 64;
77144 	long: 64;
77145 	long: 64;
77146 	long: 64;
77147 	long: 64;
77148 	long: 64;
77149 	long: 64;
77150 	long: 64;
77151 	long: 64;
77152 	long: 64;
77153 	long: 64;
77154 	long: 64;
77155 	long: 64;
77156 	long: 64;
77157 	long: 64;
77158 	long: 64;
77159 	long: 64;
77160 	long: 64;
77161 	long: 64;
77162 	long: 64;
77163 	long: 64;
77164 	long: 64;
77165 	long: 64;
77166 	long: 64;
77167 	long: 64;
77168 	long: 64;
77169 	long: 64;
77170 	long: 64;
77171 	long: 64;
77172 	long: 64;
77173 	long: 64;
77174 	long: 64;
77175 	long: 64;
77176 	long: 64;
77177 	long: 64;
77178 	long: 64;
77179 	long: 64;
77180 	long: 64;
77181 	long: 64;
77182 	long: 64;
77183 	long: 64;
77184 	long: 64;
77185 	long: 64;
77186 	long: 64;
77187 	long: 64;
77188 	long: 64;
77189 	long: 64;
77190 	long: 64;
77191 	long: 64;
77192 	long: 64;
77193 	long: 64;
77194 	long: 64;
77195 	long: 64;
77196 	long: 64;
77197 	long: 64;
77198 	long: 64;
77199 	long: 64;
77200 	long: 64;
77201 	long: 64;
77202 	long: 64;
77203 	long: 64;
77204 	long: 64;
77205 	long: 64;
77206 	long: 64;
77207 	long: 64;
77208 	long: 64;
77209 	long: 64;
77210 	long: 64;
77211 	long: 64;
77212 	long: 64;
77213 	long: 64;
77214 	long: 64;
77215 	long: 64;
77216 	long: 64;
77217 	long: 64;
77218 	long: 64;
77219 	long: 64;
77220 	long: 64;
77221 	long: 64;
77222 	long: 64;
77223 	long: 64;
77224 	long: 64;
77225 	long: 64;
77226 	long: 64;
77227 	long: 64;
77228 	long: 64;
77229 	long: 64;
77230 	long: 64;
77231 	long: 64;
77232 	long: 64;
77233 	long: 64;
77234 	long: 64;
77235 	long: 64;
77236 	long: 64;
77237 	long: 64;
77238 	long: 64;
77239 	long: 64;
77240 	long: 64;
77241 	long: 64;
77242 	long: 64;
77243 	long: 64;
77244 	long: 64;
77245 	long: 64;
77246 	long: 64;
77247 	long: 64;
77248 	long: 64;
77249 	long: 64;
77250 	long: 64;
77251 	long: 64;
77252 	long: 64;
77253 	long: 64;
77254 	long: 64;
77255 	long: 64;
77256 	long: 64;
77257 	long: 64;
77258 	long: 64;
77259 	long: 64;
77260 	long: 64;
77261 	long: 64;
77262 	long: 64;
77263 	long: 64;
77264 	long: 64;
77265 	long: 64;
77266 	long: 64;
77267 	long: 64;
77268 	long: 64;
77269 	long: 64;
77270 	long: 64;
77271 	long: 64;
77272 	long: 64;
77273 	long: 64;
77274 	long: 64;
77275 	long: 64;
77276 	long: 64;
77277 	long: 64;
77278 	long: 64;
77279 	long: 64;
77280 	long: 64;
77281 	long: 64;
77282 	long: 64;
77283 	long: 64;
77284 	long: 64;
77285 	long: 64;
77286 	long: 64;
77287 	long: 64;
77288 	long: 64;
77289 	long: 64;
77290 	long: 64;
77291 	long: 64;
77292 	long: 64;
77293 	long: 64;
77294 	long: 64;
77295 	long: 64;
77296 	long: 64;
77297 	long: 64;
77298 	long: 64;
77299 	long: 64;
77300 	long: 64;
77301 	long: 64;
77302 	long: 64;
77303 	long: 64;
77304 	long: 64;
77305 	long: 64;
77306 	long: 64;
77307 	long: 64;
77308 	long: 64;
77309 	long: 64;
77310 	long: 64;
77311 	long: 64;
77312 	long: 64;
77313 	long: 64;
77314 	long: 64;
77315 	long: 64;
77316 	long: 64;
77317 	long: 64;
77318 	long: 64;
77319 	long: 64;
77320 	long: 64;
77321 	long: 64;
77322 	long: 64;
77323 	long: 64;
77324 	long: 64;
77325 	long: 64;
77326 	long: 64;
77327 	long: 64;
77328 	long: 64;
77329 	long: 64;
77330 	long: 64;
77331 	long: 64;
77332 	long: 64;
77333 	long: 64;
77334 	long: 64;
77335 	long: 64;
77336 	long: 64;
77337 	long: 64;
77338 	long: 64;
77339 	long: 64;
77340 	long: 64;
77341 	long: 64;
77342 	long: 64;
77343 	long: 64;
77344 	long: 64;
77345 	long: 64;
77346 	long: 64;
77347 	long: 64;
77348 	long: 64;
77349 	long: 64;
77350 	long: 64;
77351 	long: 64;
77352 	long: 64;
77353 	long: 64;
77354 	long: 64;
77355 	long: 64;
77356 	long: 64;
77357 	long: 64;
77358 	long: 64;
77359 	long: 64;
77360 	long: 64;
77361 	long: 64;
77362 	long: 64;
77363 	long: 64;
77364 	long: 64;
77365 	long: 64;
77366 	long: 64;
77367 	long: 64;
77368 	long: 64;
77369 	long: 64;
77370 	long: 64;
77371 	long: 64;
77372 	long: 64;
77373 	long: 64;
77374 	long: 64;
77375 	long: 64;
77376 	long: 64;
77377 	long: 64;
77378 	long: 64;
77379 	long: 64;
77380 	long: 64;
77381 	long: 64;
77382 	long: 64;
77383 	long: 64;
77384 	long: 64;
77385 	long: 64;
77386 	long: 64;
77387 	long: 64;
77388 	long: 64;
77389 	long: 64;
77390 	long: 64;
77391 	long: 64;
77392 	long: 64;
77393 	long: 64;
77394 	long: 64;
77395 	long: 64;
77396 	long: 64;
77397 	long: 64;
77398 	long: 64;
77399 	long: 64;
77400 	long: 64;
77401 	long: 64;
77402 	long: 64;
77403 	long: 64;
77404 	long: 64;
77405 	long: 64;
77406 	long: 64;
77407 	long: 64;
77408 	long: 64;
77409 	long: 64;
77410 	long: 64;
77411 	long: 64;
77412 	long: 64;
77413 	long: 64;
77414 	long: 64;
77415 	long: 64;
77416 	long: 64;
77417 	long: 64;
77418 	long: 64;
77419 	long: 64;
77420 	long: 64;
77421 	long: 64;
77422 	long: 64;
77423 	long: 64;
77424 	long: 64;
77425 	long: 64;
77426 	long: 64;
77427 	long: 64;
77428 	long: 64;
77429 	long: 64;
77430 	long: 64;
77431 	long: 64;
77432 	long: 64;
77433 	long: 64;
77434 	long: 64;
77435 	long: 64;
77436 	long: 64;
77437 	long: 64;
77438 	long: 64;
77439 	long: 64;
77440 	long: 64;
77441 	long: 64;
77442 	long: 64;
77443 	long: 64;
77444 	long: 64;
77445 	long: 64;
77446 	long: 64;
77447 	long: 64;
77448 	long: 64;
77449 	long: 64;
77450 	long: 64;
77451 	long: 64;
77452 	long: 64;
77453 	long: 64;
77454 	long: 64;
77455 	long: 64;
77456 	long: 64;
77457 	long: 64;
77458 	long: 64;
77459 	long: 64;
77460 	long: 64;
77461 	long: 64;
77462 	long: 64;
77463 	long: 64;
77464 	long: 64;
77465 	long: 64;
77466 	long: 64;
77467 	long: 64;
77468 	long: 64;
77469 	long: 64;
77470 	long: 64;
77471 	long: 64;
77472 	long: 64;
77473 	long: 64;
77474 	long: 64;
77475 	long: 64;
77476 	long: 64;
77477 	long: 64;
77478 	long: 64;
77479 	long: 64;
77480 	long: 64;
77481 	long: 64;
77482 	long: 64;
77483 	long: 64;
77484 	long: 64;
77485 	long: 64;
77486 	long: 64;
77487 	long: 64;
77488 	long: 64;
77489 	long: 64;
77490 	long: 64;
77491 	long: 64;
77492 	long: 64;
77493 	long: 64;
77494 	long: 64;
77495 	long: 64;
77496 	long: 64;
77497 	long: 64;
77498 	long: 64;
77499 	long: 64;
77500 	long: 64;
77501 	long: 64;
77502 	long: 64;
77503 	long: 64;
77504 	long: 64;
77505 	long: 64;
77506 	long: 64;
77507 	long: 64;
77508 	long: 64;
77509 	long: 64;
77510 	long: 64;
77511 	long: 64;
77512 	long: 64;
77513 	long: 64;
77514 	long: 64;
77515 	long: 64;
77516 	long: 64;
77517 	long: 64;
77518 	long: 64;
77519 	long: 64;
77520 	long: 64;
77521 	long: 64;
77522 	long: 64;
77523 	long: 64;
77524 	long: 64;
77525 	long: 64;
77526 	long: 64;
77527 	long: 64;
77528 	long: 64;
77529 	long: 64;
77530 	long: 64;
77531 	long: 64;
77532 	long: 64;
77533 	long: 64;
77534 	long: 64;
77535 	long: 64;
77536 	long: 64;
77537 	long: 64;
77538 	long: 64;
77539 	long: 64;
77540 	long: 64;
77541 	long: 64;
77542 	long: 64;
77543 	long: 64;
77544 	long: 64;
77545 	long: 64;
77546 	long: 64;
77547 	long: 64;
77548 	long: 64;
77549 	long: 64;
77550 	long: 64;
77551 	long: 64;
77552 	long: 64;
77553 	long: 64;
77554 	long: 64;
77555 	long: 64;
77556 	long: 64;
77557 	long: 64;
77558 	long: 64;
77559 	long: 64;
77560 	long: 64;
77561 	long: 64;
77562 	long: 64;
77563 	long: 64;
77564 	long: 64;
77565 	long: 64;
77566 	long: 64;
77567 	long: 64;
77568 	long: 64;
77569 	long: 64;
77570 	long: 64;
77571 	long: 64;
77572 	long: 64;
77573 	long: 64;
77574 	long: 64;
77575 	long: 64;
77576 	long: 64;
77577 	long: 64;
77578 	long: 64;
77579 	long: 64;
77580 	long: 64;
77581 	long: 64;
77582 	long: 64;
77583 	long: 64;
77584 	long: 64;
77585 	long: 64;
77586 	long: 64;
77587 	long: 64;
77588 	long: 64;
77589 	long: 64;
77590 	long: 64;
77591 	long: 64;
77592 	long: 64;
77593 	long: 64;
77594 	long: 64;
77595 	long: 64;
77596 	long: 64;
77597 	long: 64;
77598 	long: 64;
77599 	long: 64;
77600 	long: 64;
77601 	long: 64;
77602 	long: 64;
77603 	long: 64;
77604 	long: 64;
77605 	long: 64;
77606 	long: 64;
77607 	long: 64;
77608 	long: 64;
77609 	long: 64;
77610 	long: 64;
77611 	long: 64;
77612 	long: 64;
77613 	long: 64;
77614 	long: 64;
77615 	long: 64;
77616 	long: 64;
77617 	long: 64;
77618 	long: 64;
77619 	long: 64;
77620 	long: 64;
77621 	long: 64;
77622 	long: 64;
77623 	long: 64;
77624 	long: 64;
77625 	long: 64;
77626 	long: 64;
77627 	long: 64;
77628 	long: 64;
77629 	long: 64;
77630 	long: 64;
77631 	long: 64;
77632 	long: 64;
77633 	long: 64;
77634 	long: 64;
77635 	long: 64;
77636 	long: 64;
77637 	long: 64;
77638 	long: 64;
77639 	long: 64;
77640 	long: 64;
77641 	long: 64;
77642 	long: 64;
77643 	long: 64;
77644 	long: 64;
77645 	long: 64;
77646 	long: 64;
77647 	long: 64;
77648 	long: 64;
77649 	long: 64;
77650 	long: 64;
77651 	long: 64;
77652 	long: 64;
77653 	long: 64;
77654 	long: 64;
77655 	long: 64;
77656 	long: 64;
77657 	long: 64;
77658 	long: 64;
77659 	long: 64;
77660 	long: 64;
77661 	long: 64;
77662 	long: 64;
77663 	long: 64;
77664 	long: 64;
77665 	long: 64;
77666 	long: 64;
77667 	long: 64;
77668 	long: 64;
77669 	long: 64;
77670 	long: 64;
77671 	long: 64;
77672 	long: 64;
77673 	long: 64;
77674 	long: 64;
77675 	long: 64;
77676 	long: 64;
77677 	long: 64;
77678 	long: 64;
77679 	long: 64;
77680 	long: 64;
77681 	long: 64;
77682 	long: 64;
77683 	long: 64;
77684 	long: 64;
77685 	long: 64;
77686 	long: 64;
77687 	long: 64;
77688 	long: 64;
77689 	long: 64;
77690 	long: 64;
77691 	long: 64;
77692 	long: 64;
77693 	long: 64;
77694 	long: 64;
77695 	long: 64;
77696 	long: 64;
77697 	long: 64;
77698 	long: 64;
77699 	long: 64;
77700 	long: 64;
77701 	long: 64;
77702 	long: 64;
77703 	long: 64;
77704 	long: 64;
77705 	long: 64;
77706 	long: 64;
77707 	long: 64;
77708 	long: 64;
77709 	long: 64;
77710 	long: 64;
77711 	long: 64;
77712 	long: 64;
77713 	long: 64;
77714 	long: 64;
77715 	long: 64;
77716 	long: 64;
77717 	long: 64;
77718 	long: 64;
77719 	long: 64;
77720 	long: 64;
77721 	long: 64;
77722 	long: 64;
77723 	long: 64;
77724 	long: 64;
77725 	long: 64;
77726 	long: 64;
77727 	long: 64;
77728 	long: 64;
77729 	long: 64;
77730 	long: 64;
77731 	long: 64;
77732 	long: 64;
77733 	long: 64;
77734 	long: 64;
77735 	long: 64;
77736 	long: 64;
77737 	long: 64;
77738 	long: 64;
77739 	long: 64;
77740 	long: 64;
77741 	long: 64;
77742 	long: 64;
77743 	long: 64;
77744 	long: 64;
77745 	long: 64;
77746 	long: 64;
77747 	long: 64;
77748 	long: 64;
77749 	long: 64;
77750 	long: 64;
77751 	long: 64;
77752 	long: 64;
77753 	long: 64;
77754 	long: 64;
77755 	long: 64;
77756 	long: 64;
77757 	long: 64;
77758 	long: 64;
77759 	long: 64;
77760 	long: 64;
77761 	long: 64;
77762 	long: 64;
77763 	long: 64;
77764 	long: 64;
77765 	long: 64;
77766 	long: 64;
77767 	long: 64;
77768 	long: 64;
77769 	long: 64;
77770 	long: 64;
77771 	long: 64;
77772 	long: 64;
77773 	long: 64;
77774 	long: 64;
77775 	long: 64;
77776 	long: 64;
77777 	long: 64;
77778 	long: 64;
77779 	long: 64;
77780 	long: 64;
77781 	long: 64;
77782 	long: 64;
77783 	long: 64;
77784 	long: 64;
77785 	long: 64;
77786 	long: 64;
77787 	long: 64;
77788 	long: 64;
77789 	long: 64;
77790 	long: 64;
77791 	long: 64;
77792 	long: 64;
77793 	long: 64;
77794 	long: 64;
77795 	long: 64;
77796 	long: 64;
77797 	long: 64;
77798 	long: 64;
77799 	long: 64;
77800 	long: 64;
77801 	long: 64;
77802 	long: 64;
77803 	long: 64;
77804 	long: 64;
77805 	long: 64;
77806 	long: 64;
77807 	long: 64;
77808 	long: 64;
77809 	long: 64;
77810 	long: 64;
77811 	long: 64;
77812 	long: 64;
77813 	long: 64;
77814 	long: 64;
77815 	long: 64;
77816 	long: 64;
77817 	long: 64;
77818 	long: 64;
77819 	long: 64;
77820 	long: 64;
77821 	long: 64;
77822 	long: 64;
77823 	long: 64;
77824 	long: 64;
77825 	long: 64;
77826 	long: 64;
77827 	long: 64;
77828 	long: 64;
77829 	long: 64;
77830 	long: 64;
77831 	long: 64;
77832 	long: 64;
77833 	long: 64;
77834 	long: 64;
77835 	long: 64;
77836 	long: 64;
77837 	long: 64;
77838 	long: 64;
77839 	long: 64;
77840 	long: 64;
77841 	long: 64;
77842 	long: 64;
77843 	long: 64;
77844 	long: 64;
77845 	long: 64;
77846 	long: 64;
77847 	long: 64;
77848 	long: 64;
77849 	long: 64;
77850 	long: 64;
77851 	long: 64;
77852 	long: 64;
77853 	long: 64;
77854 	long: 64;
77855 	long: 64;
77856 	long: 64;
77857 	long: 64;
77858 	long: 64;
77859 	long: 64;
77860 	long: 64;
77861 	long: 64;
77862 	long: 64;
77863 	long: 64;
77864 	long: 64;
77865 	long: 64;
77866 	long: 64;
77867 	long: 64;
77868 	long: 64;
77869 	long: 64;
77870 	long: 64;
77871 	long: 64;
77872 	long: 64;
77873 	long: 64;
77874 	long: 64;
77875 	long: 64;
77876 	long: 64;
77877 	long: 64;
77878 	long: 64;
77879 	long: 64;
77880 	long: 64;
77881 	long: 64;
77882 	long: 64;
77883 	long: 64;
77884 	long: 64;
77885 	long: 64;
77886 	long: 64;
77887 	long: 64;
77888 	long: 64;
77889 	long: 64;
77890 	long: 64;
77891 	long: 64;
77892 	long: 64;
77893 	long: 64;
77894 	long: 64;
77895 	long: 64;
77896 	long: 64;
77897 	long: 64;
77898 	long: 64;
77899 	long: 64;
77900 	long: 64;
77901 	long: 64;
77902 	long: 64;
77903 	long: 64;
77904 	long: 64;
77905 	long: 64;
77906 	long: 64;
77907 	long: 64;
77908 	long: 64;
77909 	long: 64;
77910 	long: 64;
77911 	long: 64;
77912 	long: 64;
77913 	long: 64;
77914 	long: 64;
77915 	long: 64;
77916 	long: 64;
77917 	long: 64;
77918 	long: 64;
77919 	long: 64;
77920 	long: 64;
77921 	long: 64;
77922 	long: 64;
77923 	long: 64;
77924 	long: 64;
77925 	long: 64;
77926 	long: 64;
77927 	long: 64;
77928 	long: 64;
77929 	long: 64;
77930 	long: 64;
77931 	long: 64;
77932 	long: 64;
77933 	long: 64;
77934 	long: 64;
77935 	long: 64;
77936 	long: 64;
77937 	long: 64;
77938 	long: 64;
77939 	long: 64;
77940 	long: 64;
77941 	long: 64;
77942 	long: 64;
77943 	long: 64;
77944 	long: 64;
77945 	long: 64;
77946 	long: 64;
77947 	long: 64;
77948 	long: 64;
77949 	long: 64;
77950 	long: 64;
77951 	long: 64;
77952 	long: 64;
77953 	long: 64;
77954 	long: 64;
77955 	long: 64;
77956 	long: 64;
77957 	long: 64;
77958 	long: 64;
77959 	long: 64;
77960 	long: 64;
77961 	long: 64;
77962 	long: 64;
77963 	long: 64;
77964 	long: 64;
77965 	long: 64;
77966 	long: 64;
77967 	long: 64;
77968 	long: 64;
77969 	long: 64;
77970 	long: 64;
77971 	long: 64;
77972 	long: 64;
77973 	long: 64;
77974 	long: 64;
77975 	long: 64;
77976 	long: 64;
77977 	long: 64;
77978 	long: 64;
77979 	long: 64;
77980 	long: 64;
77981 	long: 64;
77982 	long: 64;
77983 	long: 64;
77984 	long: 64;
77985 	long: 64;
77986 	long: 64;
77987 	long: 64;
77988 	long: 64;
77989 	long: 64;
77990 	long: 64;
77991 	long: 64;
77992 	long: 64;
77993 	long: 64;
77994 	long: 64;
77995 	long: 64;
77996 	long: 64;
77997 	long: 64;
77998 	long: 64;
77999 	long: 64;
78000 	long: 64;
78001 	long: 64;
78002 	long: 64;
78003 	long: 64;
78004 	long: 64;
78005 	long: 64;
78006 	long: 64;
78007 	long: 64;
78008 	long: 64;
78009 	long: 64;
78010 	long: 64;
78011 	long: 64;
78012 	long: 64;
78013 	long: 64;
78014 	long: 64;
78015 	long: 64;
78016 	long: 64;
78017 	long: 64;
78018 	long: 64;
78019 	long: 64;
78020 	long: 64;
78021 	long: 64;
78022 	long: 64;
78023 	long: 64;
78024 	long: 64;
78025 	long: 64;
78026 	long: 64;
78027 	long: 64;
78028 	long: 64;
78029 	long: 64;
78030 	long: 64;
78031 	long: 64;
78032 	long: 64;
78033 	long: 64;
78034 	long: 64;
78035 	long: 64;
78036 	long: 64;
78037 	long: 64;
78038 	long: 64;
78039 	long: 64;
78040 	long: 64;
78041 	long: 64;
78042 	long: 64;
78043 	long: 64;
78044 	long: 64;
78045 	long: 64;
78046 	long: 64;
78047 	long: 64;
78048 	long: 64;
78049 	long: 64;
78050 	long: 64;
78051 	long: 64;
78052 	long: 64;
78053 	long: 64;
78054 	long: 64;
78055 	long: 64;
78056 	long: 64;
78057 	long: 64;
78058 	long: 64;
78059 	long: 64;
78060 	long: 64;
78061 	long: 64;
78062 	long: 64;
78063 	long: 64;
78064 	long: 64;
78065 	long: 64;
78066 	long: 64;
78067 	long: 64;
78068 	long: 64;
78069 	long: 64;
78070 	long: 64;
78071 	long: 64;
78072 	long: 64;
78073 	long: 64;
78074 	long: 64;
78075 	long: 64;
78076 	long: 64;
78077 	long: 64;
78078 	long: 64;
78079 	long: 64;
78080 	long: 64;
78081 	long: 64;
78082 	long: 64;
78083 	long: 64;
78084 	long: 64;
78085 	long: 64;
78086 	long: 64;
78087 	long: 64;
78088 	long: 64;
78089 	long: 64;
78090 	long: 64;
78091 	long: 64;
78092 	long: 64;
78093 	long: 64;
78094 	long: 64;
78095 	long: 64;
78096 	long: 64;
78097 	long: 64;
78098 	long: 64;
78099 	long: 64;
78100 	long: 64;
78101 	long: 64;
78102 	long: 64;
78103 	long: 64;
78104 	long: 64;
78105 	long: 64;
78106 	long: 64;
78107 	long: 64;
78108 	long: 64;
78109 	long: 64;
78110 	long: 64;
78111 	long: 64;
78112 	long: 64;
78113 	long: 64;
78114 	long: 64;
78115 	long: 64;
78116 	long: 64;
78117 	long: 64;
78118 	long: 64;
78119 	long: 64;
78120 	long: 64;
78121 	long: 64;
78122 	long: 64;
78123 	long: 64;
78124 	long: 64;
78125 	long: 64;
78126 	long: 64;
78127 	long: 64;
78128 	long: 64;
78129 	long: 64;
78130 	long: 64;
78131 	long: 64;
78132 	long: 64;
78133 	long: 64;
78134 	long: 64;
78135 	long: 64;
78136 	long: 64;
78137 	long: 64;
78138 	long: 64;
78139 	long: 64;
78140 	long: 64;
78141 	long: 64;
78142 	long: 64;
78143 	long: 64;
78144 	long: 64;
78145 	long: 64;
78146 	long: 64;
78147 	long: 64;
78148 	long: 64;
78149 	long: 64;
78150 	long: 64;
78151 	long: 64;
78152 	long: 64;
78153 	long: 64;
78154 	long: 64;
78155 	long: 64;
78156 	long: 64;
78157 	long: 64;
78158 	long: 64;
78159 	long: 64;
78160 	long: 64;
78161 	long: 64;
78162 	long: 64;
78163 	long: 64;
78164 	long: 64;
78165 	long: 64;
78166 	long: 64;
78167 	long: 64;
78168 	long: 64;
78169 	long: 64;
78170 	long: 64;
78171 	long: 64;
78172 	long: 64;
78173 	long: 64;
78174 	long: 64;
78175 	long: 64;
78176 	long: 64;
78177 	long: 64;
78178 	long: 64;
78179 	long: 64;
78180 	long: 64;
78181 	long: 64;
78182 	long: 64;
78183 	long: 64;
78184 	long: 64;
78185 	long: 64;
78186 	long: 64;
78187 	long: 64;
78188 	long: 64;
78189 	long: 64;
78190 	long: 64;
78191 	long: 64;
78192 	long: 64;
78193 	long: 64;
78194 	long: 64;
78195 	long: 64;
78196 	long: 64;
78197 	long: 64;
78198 	long: 64;
78199 	long: 64;
78200 	long: 64;
78201 	long: 64;
78202 	long: 64;
78203 	long: 64;
78204 	long: 64;
78205 	long: 64;
78206 	long: 64;
78207 	long: 64;
78208 	long: 64;
78209 	long: 64;
78210 	long: 64;
78211 	long: 64;
78212 	long: 64;
78213 	long: 64;
78214 	long: 64;
78215 	long: 64;
78216 	long: 64;
78217 	long: 64;
78218 	long: 64;
78219 	long: 64;
78220 	long: 64;
78221 	long: 64;
78222 	long: 64;
78223 	long: 64;
78224 	long: 64;
78225 	long: 64;
78226 	long: 64;
78227 	long: 64;
78228 	long: 64;
78229 	long: 64;
78230 	long: 64;
78231 	long: 64;
78232 	long: 64;
78233 	long: 64;
78234 	long: 64;
78235 	long: 64;
78236 	long: 64;
78237 	long: 64;
78238 	long: 64;
78239 	long: 64;
78240 	long: 64;
78241 	long: 64;
78242 	long: 64;
78243 	long: 64;
78244 	long: 64;
78245 	long: 64;
78246 	long: 64;
78247 	long: 64;
78248 	long: 64;
78249 	long: 64;
78250 	long: 64;
78251 	long: 64;
78252 	long: 64;
78253 	long: 64;
78254 	long: 64;
78255 	long: 64;
78256 	long: 64;
78257 	long: 64;
78258 	long: 64;
78259 	long: 64;
78260 	long: 64;
78261 	long: 64;
78262 	long: 64;
78263 	long: 64;
78264 	long: 64;
78265 	long: 64;
78266 	long: 64;
78267 	long: 64;
78268 	long: 64;
78269 	long: 64;
78270 	long: 64;
78271 	long: 64;
78272 	long: 64;
78273 	long: 64;
78274 	long: 64;
78275 	long: 64;
78276 	long: 64;
78277 	long: 64;
78278 	long: 64;
78279 	long: 64;
78280 	long: 64;
78281 	long: 64;
78282 	long: 64;
78283 	long: 64;
78284 	long: 64;
78285 	long: 64;
78286 	long: 64;
78287 	long: 64;
78288 	long: 64;
78289 	long: 64;
78290 	long: 64;
78291 	long: 64;
78292 	long: 64;
78293 	long: 64;
78294 	long: 64;
78295 	long: 64;
78296 	long: 64;
78297 	long: 64;
78298 	long: 64;
78299 	long: 64;
78300 	long: 64;
78301 	long: 64;
78302 	long: 64;
78303 	long: 64;
78304 	long: 64;
78305 	long: 64;
78306 	long: 64;
78307 	long: 64;
78308 	long: 64;
78309 	long: 64;
78310 	long: 64;
78311 	long: 64;
78312 	long: 64;
78313 	long: 64;
78314 	long: 64;
78315 	long: 64;
78316 	long: 64;
78317 	long: 64;
78318 	long: 64;
78319 	long: 64;
78320 	long: 64;
78321 	long: 64;
78322 	long: 64;
78323 	long: 64;
78324 	long: 64;
78325 	long: 64;
78326 	long: 64;
78327 	long: 64;
78328 	long: 64;
78329 	long: 64;
78330 	long: 64;
78331 	long: 64;
78332 	long: 64;
78333 	long: 64;
78334 	long: 64;
78335 	long: 64;
78336 	long: 64;
78337 	long: 64;
78338 	long: 64;
78339 	long: 64;
78340 	long: 64;
78341 	long: 64;
78342 	long: 64;
78343 	long: 64;
78344 	long: 64;
78345 	long: 64;
78346 	long: 64;
78347 	long: 64;
78348 	long: 64;
78349 	long: 64;
78350 	long: 64;
78351 	long: 64;
78352 	long: 64;
78353 	long: 64;
78354 	long: 64;
78355 	long: 64;
78356 	long: 64;
78357 	long: 64;
78358 	long: 64;
78359 	long: 64;
78360 	long: 64;
78361 	long: 64;
78362 	long: 64;
78363 	long: 64;
78364 	long: 64;
78365 	long: 64;
78366 	long: 64;
78367 	long: 64;
78368 	long: 64;
78369 	long: 64;
78370 	long: 64;
78371 	long: 64;
78372 	long: 64;
78373 	long: 64;
78374 	long: 64;
78375 	long: 64;
78376 	long: 64;
78377 	long: 64;
78378 	long: 64;
78379 	long: 64;
78380 	long: 64;
78381 	long: 64;
78382 	long: 64;
78383 	long: 64;
78384 	long: 64;
78385 	long: 64;
78386 	long: 64;
78387 	long: 64;
78388 	long: 64;
78389 	long: 64;
78390 	long: 64;
78391 	long: 64;
78392 	long: 64;
78393 	long: 64;
78394 	long: 64;
78395 	long: 64;
78396 	long: 64;
78397 	long: 64;
78398 	long: 64;
78399 	long: 64;
78400 	long: 64;
78401 	long: 64;
78402 	long: 64;
78403 	long: 64;
78404 	long: 64;
78405 	long: 64;
78406 	long: 64;
78407 	long: 64;
78408 	long: 64;
78409 	long: 64;
78410 	long: 64;
78411 	long: 64;
78412 	long: 64;
78413 	long: 64;
78414 	long: 64;
78415 	long: 64;
78416 	long: 64;
78417 	long: 64;
78418 	long: 64;
78419 	long: 64;
78420 	long: 64;
78421 	long: 64;
78422 	long: 64;
78423 	long: 64;
78424 	long: 64;
78425 	long: 64;
78426 	long: 64;
78427 	long: 64;
78428 	long: 64;
78429 	long: 64;
78430 	long: 64;
78431 	long: 64;
78432 	long: 64;
78433 	long: 64;
78434 	long: 64;
78435 	long: 64;
78436 	long: 64;
78437 	long: 64;
78438 	long: 64;
78439 	long: 64;
78440 	long: 64;
78441 	long: 64;
78442 	long: 64;
78443 	long: 64;
78444 	long: 64;
78445 	long: 64;
78446 	long: 64;
78447 	long: 64;
78448 	long: 64;
78449 	long: 64;
78450 	long: 64;
78451 	long: 64;
78452 	long: 64;
78453 	long: 64;
78454 	long: 64;
78455 	long: 64;
78456 	long: 64;
78457 	long: 64;
78458 	long: 64;
78459 	long: 64;
78460 	long: 64;
78461 	long: 64;
78462 	long: 64;
78463 	long: 64;
78464 	long: 64;
78465 	long: 64;
78466 	long: 64;
78467 	long: 64;
78468 	long: 64;
78469 	long: 64;
78470 	long: 64;
78471 	long: 64;
78472 	long: 64;
78473 	long: 64;
78474 	long: 64;
78475 	long: 64;
78476 	long: 64;
78477 	long: 64;
78478 	long: 64;
78479 	long: 64;
78480 	long: 64;
78481 	long: 64;
78482 	long: 64;
78483 	long: 64;
78484 	long: 64;
78485 	long: 64;
78486 	long: 64;
78487 	long: 64;
78488 	long: 64;
78489 	long: 64;
78490 	long: 64;
78491 	long: 64;
78492 	long: 64;
78493 	long: 64;
78494 	long: 64;
78495 	long: 64;
78496 	long: 64;
78497 	long: 64;
78498 	long: 64;
78499 	long: 64;
78500 	long: 64;
78501 	long: 64;
78502 	long: 64;
78503 	long: 64;
78504 	long: 64;
78505 	long: 64;
78506 	long: 64;
78507 	long: 64;
78508 	long: 64;
78509 	long: 64;
78510 	long: 64;
78511 	long: 64;
78512 	long: 64;
78513 	long: 64;
78514 	long: 64;
78515 	long: 64;
78516 	long: 64;
78517 	long: 64;
78518 	long: 64;
78519 	long: 64;
78520 	long: 64;
78521 	long: 64;
78522 	long: 64;
78523 	long: 64;
78524 	long: 64;
78525 	long: 64;
78526 	long: 64;
78527 	long: 64;
78528 	long: 64;
78529 	long: 64;
78530 	long: 64;
78531 	long: 64;
78532 	long: 64;
78533 	long: 64;
78534 	long: 64;
78535 	long: 64;
78536 	long: 64;
78537 	long: 64;
78538 	long: 64;
78539 	long: 64;
78540 	long: 64;
78541 	long: 64;
78542 	long: 64;
78543 	long: 64;
78544 	long: 64;
78545 	long: 64;
78546 	long: 64;
78547 	long: 64;
78548 	long: 64;
78549 	long: 64;
78550 	long: 64;
78551 	long: 64;
78552 	long: 64;
78553 	long: 64;
78554 	long: 64;
78555 	long: 64;
78556 	long: 64;
78557 	long: 64;
78558 	long: 64;
78559 	long: 64;
78560 	long: 64;
78561 	long: 64;
78562 	long: 64;
78563 	long: 64;
78564 	long: 64;
78565 	long: 64;
78566 	long: 64;
78567 	long: 64;
78568 	long: 64;
78569 	long: 64;
78570 	long: 64;
78571 	long: 64;
78572 	long: 64;
78573 	long: 64;
78574 	long: 64;
78575 	long: 64;
78576 	long: 64;
78577 	long: 64;
78578 	long: 64;
78579 	long: 64;
78580 	long: 64;
78581 	long: 64;
78582 	long: 64;
78583 	long: 64;
78584 	long: 64;
78585 	long: 64;
78586 	long: 64;
78587 	long: 64;
78588 	long: 64;
78589 	long: 64;
78590 	long: 64;
78591 	long: 64;
78592 	long: 64;
78593 	long: 64;
78594 	long: 64;
78595 	long: 64;
78596 	long: 64;
78597 	long: 64;
78598 	long: 64;
78599 	long: 64;
78600 	long: 64;
78601 	long: 64;
78602 	long: 64;
78603 	long: 64;
78604 	long: 64;
78605 	long: 64;
78606 	long: 64;
78607 	long: 64;
78608 	long: 64;
78609 	long: 64;
78610 	long: 64;
78611 	long: 64;
78612 	long: 64;
78613 	long: 64;
78614 	long: 64;
78615 	long: 64;
78616 	long: 64;
78617 	long: 64;
78618 	long: 64;
78619 	long: 64;
78620 	long: 64;
78621 	long: 64;
78622 	long: 64;
78623 	long: 64;
78624 	long: 64;
78625 	long: 64;
78626 	long: 64;
78627 	long: 64;
78628 	long: 64;
78629 	long: 64;
78630 	long: 64;
78631 	long: 64;
78632 	long: 64;
78633 	long: 64;
78634 	long: 64;
78635 	long: 64;
78636 	long: 64;
78637 	long: 64;
78638 	long: 64;
78639 	long: 64;
78640 	long: 64;
78641 	long: 64;
78642 	long: 64;
78643 	long: 64;
78644 	long: 64;
78645 	long: 64;
78646 	long: 64;
78647 	long: 64;
78648 	long: 64;
78649 	long: 64;
78650 	long: 64;
78651 	long: 64;
78652 	long: 64;
78653 	long: 64;
78654 	long: 64;
78655 	long: 64;
78656 	long: 64;
78657 	long: 64;
78658 	long: 64;
78659 	long: 64;
78660 	long: 64;
78661 	long: 64;
78662 	long: 64;
78663 	long: 64;
78664 	long: 64;
78665 	long: 64;
78666 	long: 64;
78667 	long: 64;
78668 	long: 64;
78669 	long: 64;
78670 	long: 64;
78671 	long: 64;
78672 	long: 64;
78673 	long: 64;
78674 	long: 64;
78675 	long: 64;
78676 	long: 64;
78677 	long: 64;
78678 	long: 64;
78679 	long: 64;
78680 	long: 64;
78681 	long: 64;
78682 	long: 64;
78683 	long: 64;
78684 	long: 64;
78685 	long: 64;
78686 	long: 64;
78687 	long: 64;
78688 	long: 64;
78689 	long: 64;
78690 	long: 64;
78691 	long: 64;
78692 	long: 64;
78693 	long: 64;
78694 	long: 64;
78695 	long: 64;
78696 	long: 64;
78697 	long: 64;
78698 	long: 64;
78699 	long: 64;
78700 	long: 64;
78701 	long: 64;
78702 	long: 64;
78703 	long: 64;
78704 	long: 64;
78705 	long: 64;
78706 	long: 64;
78707 	long: 64;
78708 	long: 64;
78709 	long: 64;
78710 	long: 64;
78711 	long: 64;
78712 	long: 64;
78713 	long: 64;
78714 	long: 64;
78715 	long: 64;
78716 	long: 64;
78717 	long: 64;
78718 	long: 64;
78719 	long: 64;
78720 	long: 64;
78721 	long: 64;
78722 	long: 64;
78723 	long: 64;
78724 	long: 64;
78725 	long: 64;
78726 	long: 64;
78727 	long: 64;
78728 	long: 64;
78729 	long: 64;
78730 	long: 64;
78731 	long: 64;
78732 	long: 64;
78733 	long: 64;
78734 	long: 64;
78735 	long: 64;
78736 	long: 64;
78737 	long: 64;
78738 	long: 64;
78739 	long: 64;
78740 	long: 64;
78741 	long: 64;
78742 	long: 64;
78743 	long: 64;
78744 	long: 64;
78745 	long: 64;
78746 	long: 64;
78747 	long: 64;
78748 	long: 64;
78749 	long: 64;
78750 	long: 64;
78751 	long: 64;
78752 	long: 64;
78753 	long: 64;
78754 	long: 64;
78755 	long: 64;
78756 	long: 64;
78757 	long: 64;
78758 	long: 64;
78759 	long: 64;
78760 	long: 64;
78761 	long: 64;
78762 	long: 64;
78763 	long: 64;
78764 	long: 64;
78765 	long: 64;
78766 	long: 64;
78767 	long: 64;
78768 	long: 64;
78769 	long: 64;
78770 	long: 64;
78771 	long: 64;
78772 	long: 64;
78773 	long: 64;
78774 	long: 64;
78775 	long: 64;
78776 	long: 64;
78777 	long: 64;
78778 	long: 64;
78779 	long: 64;
78780 	long: 64;
78781 	long: 64;
78782 	long: 64;
78783 	long: 64;
78784 	long: 64;
78785 	long: 64;
78786 	long: 64;
78787 	long: 64;
78788 	long: 64;
78789 	long: 64;
78790 	long: 64;
78791 	long: 64;
78792 	long: 64;
78793 	long: 64;
78794 	long: 64;
78795 	long: 64;
78796 	long: 64;
78797 	long: 64;
78798 	long: 64;
78799 	long: 64;
78800 	long: 64;
78801 	long: 64;
78802 	long: 64;
78803 	long: 64;
78804 	long: 64;
78805 	long: 64;
78806 	long: 64;
78807 	long: 64;
78808 	long: 64;
78809 	long: 64;
78810 	long: 64;
78811 	long: 64;
78812 	long: 64;
78813 	long: 64;
78814 	long: 64;
78815 	long: 64;
78816 	long: 64;
78817 	long: 64;
78818 	long: 64;
78819 	long: 64;
78820 	long: 64;
78821 	long: 64;
78822 	long: 64;
78823 	long: 64;
78824 	long: 64;
78825 	long: 64;
78826 	long: 64;
78827 	long: 64;
78828 	long: 64;
78829 	long: 64;
78830 	long: 64;
78831 	long: 64;
78832 	long: 64;
78833 	long: 64;
78834 	long: 64;
78835 	long: 64;
78836 	long: 64;
78837 	long: 64;
78838 	long: 64;
78839 	long: 64;
78840 	long: 64;
78841 	long: 64;
78842 	long: 64;
78843 	long: 64;
78844 	long: 64;
78845 	long: 64;
78846 	long: 64;
78847 	long: 64;
78848 	long: 64;
78849 	long: 64;
78850 	long: 64;
78851 	long: 64;
78852 	long: 64;
78853 	long: 64;
78854 	long: 64;
78855 	long: 64;
78856 	long: 64;
78857 	long: 64;
78858 	long: 64;
78859 	long: 64;
78860 	long: 64;
78861 	long: 64;
78862 	long: 64;
78863 	long: 64;
78864 	long: 64;
78865 	long: 64;
78866 	long: 64;
78867 	long: 64;
78868 	long: 64;
78869 	long: 64;
78870 	long: 64;
78871 	long: 64;
78872 	long: 64;
78873 	long: 64;
78874 	long: 64;
78875 	long: 64;
78876 	long: 64;
78877 	long: 64;
78878 	long: 64;
78879 	long: 64;
78880 	long: 64;
78881 	long: 64;
78882 	long: 64;
78883 	long: 64;
78884 	long: 64;
78885 	long: 64;
78886 	long: 64;
78887 	long: 64;
78888 	long: 64;
78889 	long: 64;
78890 	long: 64;
78891 	long: 64;
78892 	long: 64;
78893 	long: 64;
78894 	long: 64;
78895 	long: 64;
78896 	long: 64;
78897 	long: 64;
78898 	long: 64;
78899 	long: 64;
78900 	long: 64;
78901 	long: 64;
78902 	long: 64;
78903 	long: 64;
78904 	long: 64;
78905 	long: 64;
78906 	long: 64;
78907 	long: 64;
78908 	long: 64;
78909 	long: 64;
78910 	long: 64;
78911 	long: 64;
78912 	long: 64;
78913 	long: 64;
78914 	long: 64;
78915 	long: 64;
78916 	long: 64;
78917 	long: 64;
78918 	long: 64;
78919 	long: 64;
78920 	long: 64;
78921 	long: 64;
78922 	long: 64;
78923 	long: 64;
78924 	long: 64;
78925 	long: 64;
78926 	long: 64;
78927 	long: 64;
78928 	long: 64;
78929 	long: 64;
78930 	long: 64;
78931 	long: 64;
78932 	long: 64;
78933 	long: 64;
78934 	long: 64;
78935 	long: 64;
78936 	long: 64;
78937 	long: 64;
78938 	long: 64;
78939 	long: 64;
78940 	long: 64;
78941 	long: 64;
78942 	long: 64;
78943 	long: 64;
78944 	long: 64;
78945 	long: 64;
78946 	long: 64;
78947 	long: 64;
78948 	long: 64;
78949 	long: 64;
78950 	long: 64;
78951 	long: 64;
78952 	long: 64;
78953 	long: 64;
78954 	long: 64;
78955 	long: 64;
78956 	long: 64;
78957 	long: 64;
78958 	long: 64;
78959 	long: 64;
78960 	long: 64;
78961 	long: 64;
78962 	long: 64;
78963 	long: 64;
78964 	long: 64;
78965 	long: 64;
78966 	long: 64;
78967 	long: 64;
78968 	long: 64;
78969 	long: 64;
78970 	long: 64;
78971 	long: 64;
78972 	long: 64;
78973 	long: 64;
78974 	long: 64;
78975 	long: 64;
78976 	long: 64;
78977 	long: 64;
78978 	long: 64;
78979 	long: 64;
78980 	long: 64;
78981 	long: 64;
78982 	long: 64;
78983 	long: 64;
78984 	long: 64;
78985 	long: 64;
78986 	long: 64;
78987 	long: 64;
78988 	long: 64;
78989 	long: 64;
78990 	long: 64;
78991 	long: 64;
78992 	long: 64;
78993 	long: 64;
78994 	long: 64;
78995 	long: 64;
78996 	long: 64;
78997 	long: 64;
78998 	long: 64;
78999 	long: 64;
79000 	long: 64;
79001 	long: 64;
79002 	long: 64;
79003 	long: 64;
79004 	long: 64;
79005 	long: 64;
79006 	long: 64;
79007 	long: 64;
79008 	long: 64;
79009 	long: 64;
79010 	long: 64;
79011 	long: 64;
79012 	long: 64;
79013 	long: 64;
79014 	long: 64;
79015 	long: 64;
79016 	long: 64;
79017 	long: 64;
79018 	long: 64;
79019 	long: 64;
79020 	long: 64;
79021 	long: 64;
79022 	long: 64;
79023 	long: 64;
79024 	long: 64;
79025 	long: 64;
79026 	long: 64;
79027 	long: 64;
79028 	long: 64;
79029 	long: 64;
79030 	long: 64;
79031 	long: 64;
79032 	long: 64;
79033 	long: 64;
79034 	long: 64;
79035 	long: 64;
79036 	long: 64;
79037 	long: 64;
79038 	long: 64;
79039 	long: 64;
79040 	long: 64;
79041 	long: 64;
79042 	long: 64;
79043 	long: 64;
79044 	long: 64;
79045 	long: 64;
79046 	long: 64;
79047 	long: 64;
79048 	long: 64;
79049 	long: 64;
79050 	long: 64;
79051 	long: 64;
79052 	long: 64;
79053 	long: 64;
79054 	long: 64;
79055 	long: 64;
79056 	long: 64;
79057 	long: 64;
79058 	long: 64;
79059 	long: 64;
79060 	long: 64;
79061 	long: 64;
79062 	long: 64;
79063 	long: 64;
79064 	long: 64;
79065 	long: 64;
79066 	long: 64;
79067 	long: 64;
79068 	long: 64;
79069 	long: 64;
79070 	long: 64;
79071 	long: 64;
79072 	long: 64;
79073 	long: 64;
79074 	long: 64;
79075 	long: 64;
79076 	long: 64;
79077 	long: 64;
79078 	long: 64;
79079 	long: 64;
79080 	long: 64;
79081 	long: 64;
79082 	long: 64;
79083 	long: 64;
79084 	long: 64;
79085 	long: 64;
79086 	long: 64;
79087 	long: 64;
79088 	long: 64;
79089 	long: 64;
79090 	long: 64;
79091 	long: 64;
79092 	long: 64;
79093 	long: 64;
79094 	long: 64;
79095 	long: 64;
79096 	long: 64;
79097 	long: 64;
79098 	long: 64;
79099 	long: 64;
79100 	long: 64;
79101 	long: 64;
79102 	long: 64;
79103 	long: 64;
79104 	long: 64;
79105 	long: 64;
79106 	long: 64;
79107 	long: 64;
79108 	long: 64;
79109 	long: 64;
79110 	long: 64;
79111 	long: 64;
79112 	long: 64;
79113 	long: 64;
79114 	long: 64;
79115 	long: 64;
79116 	long: 64;
79117 	long: 64;
79118 	long: 64;
79119 	long: 64;
79120 	long: 64;
79121 	long: 64;
79122 	long: 64;
79123 	long: 64;
79124 	long: 64;
79125 	long: 64;
79126 	long: 64;
79127 	long: 64;
79128 	long: 64;
79129 	long: 64;
79130 	long: 64;
79131 	long: 64;
79132 	long: 64;
79133 	long: 64;
79134 	long: 64;
79135 	long: 64;
79136 	long: 64;
79137 	long: 64;
79138 	long: 64;
79139 	long: 64;
79140 	long: 64;
79141 	long: 64;
79142 	long: 64;
79143 	long: 64;
79144 	long: 64;
79145 	long: 64;
79146 	long: 64;
79147 	long: 64;
79148 	long: 64;
79149 	long: 64;
79150 	long: 64;
79151 	long: 64;
79152 	long: 64;
79153 	long: 64;
79154 	long: 64;
79155 	long: 64;
79156 	long: 64;
79157 	long: 64;
79158 	long: 64;
79159 	long: 64;
79160 	long: 64;
79161 	long: 64;
79162 	long: 64;
79163 	long: 64;
79164 	long: 64;
79165 	long: 64;
79166 	long: 64;
79167 	long: 64;
79168 	long: 64;
79169 	long: 64;
79170 	long: 64;
79171 	long: 64;
79172 	long: 64;
79173 	long: 64;
79174 	long: 64;
79175 	long: 64;
79176 	long: 64;
79177 	long: 64;
79178 	long: 64;
79179 	long: 64;
79180 	long: 64;
79181 	long: 64;
79182 	long: 64;
79183 	long: 64;
79184 	long: 64;
79185 	long: 64;
79186 	long: 64;
79187 	long: 64;
79188 	long: 64;
79189 	long: 64;
79190 	long: 64;
79191 	long: 64;
79192 	long: 64;
79193 	long: 64;
79194 	long: 64;
79195 	long: 64;
79196 	long: 64;
79197 	long: 64;
79198 	long: 64;
79199 	long: 64;
79200 	long: 64;
79201 	long: 64;
79202 	long: 64;
79203 	long: 64;
79204 	long: 64;
79205 	long: 64;
79206 	long: 64;
79207 	long: 64;
79208 	long: 64;
79209 	long: 64;
79210 	long: 64;
79211 	long: 64;
79212 	long: 64;
79213 	long: 64;
79214 	long: 64;
79215 	long: 64;
79216 	long: 64;
79217 	long: 64;
79218 	long: 64;
79219 	long: 64;
79220 	long: 64;
79221 	long: 64;
79222 	long: 64;
79223 	long: 64;
79224 	long: 64;
79225 	long: 64;
79226 	long: 64;
79227 	long: 64;
79228 	long: 64;
79229 	long: 64;
79230 	long: 64;
79231 	long: 64;
79232 	long: 64;
79233 	long: 64;
79234 	long: 64;
79235 	long: 64;
79236 	long: 64;
79237 	long: 64;
79238 	long: 64;
79239 	long: 64;
79240 	long: 64;
79241 	long: 64;
79242 	long: 64;
79243 	long: 64;
79244 	long: 64;
79245 	long: 64;
79246 	long: 64;
79247 	long: 64;
79248 	long: 64;
79249 	long: 64;
79250 	long: 64;
79251 	long: 64;
79252 	long: 64;
79253 	long: 64;
79254 	long: 64;
79255 	long: 64;
79256 	long: 64;
79257 	long: 64;
79258 	long: 64;
79259 	long: 64;
79260 	long: 64;
79261 	long: 64;
79262 	long: 64;
79263 	long: 64;
79264 	long: 64;
79265 	long: 64;
79266 	long: 64;
79267 	long: 64;
79268 	long: 64;
79269 	long: 64;
79270 	long: 64;
79271 	long: 64;
79272 	long: 64;
79273 	long: 64;
79274 	long: 64;
79275 	long: 64;
79276 	long: 64;
79277 	long: 64;
79278 	long: 64;
79279 	long: 64;
79280 	long: 64;
79281 	long: 64;
79282 	long: 64;
79283 	long: 64;
79284 	long: 64;
79285 	long: 64;
79286 	long: 64;
79287 	long: 64;
79288 	long: 64;
79289 	long: 64;
79290 	long: 64;
79291 	long: 64;
79292 	long: 64;
79293 	long: 64;
79294 	long: 64;
79295 	long: 64;
79296 	long: 64;
79297 	long: 64;
79298 	long: 64;
79299 	long: 64;
79300 	long: 64;
79301 	long: 64;
79302 	long: 64;
79303 	long: 64;
79304 	long: 64;
79305 	long: 64;
79306 	long: 64;
79307 	long: 64;
79308 	long: 64;
79309 	long: 64;
79310 	long: 64;
79311 	long: 64;
79312 	long: 64;
79313 	long: 64;
79314 	long: 64;
79315 	long: 64;
79316 	long: 64;
79317 	long: 64;
79318 	long: 64;
79319 	long: 64;
79320 	long: 64;
79321 	long: 64;
79322 	long: 64;
79323 	long: 64;
79324 	long: 64;
79325 	long: 64;
79326 	long: 64;
79327 	long: 64;
79328 	long: 64;
79329 	long: 64;
79330 	long: 64;
79331 	long: 64;
79332 	long: 64;
79333 	long: 64;
79334 	long: 64;
79335 	long: 64;
79336 	long: 64;
79337 	long: 64;
79338 	long: 64;
79339 	long: 64;
79340 	long: 64;
79341 	long: 64;
79342 	long: 64;
79343 	long: 64;
79344 	long: 64;
79345 	long: 64;
79346 	long: 64;
79347 	long: 64;
79348 	long: 64;
79349 	long: 64;
79350 	long: 64;
79351 	long: 64;
79352 	long: 64;
79353 	long: 64;
79354 	long: 64;
79355 	long: 64;
79356 	long: 64;
79357 	long: 64;
79358 	long: 64;
79359 	long: 64;
79360 	long: 64;
79361 	long: 64;
79362 	long: 64;
79363 	long: 64;
79364 	long: 64;
79365 	long: 64;
79366 	long: 64;
79367 	long: 64;
79368 	long: 64;
79369 	long: 64;
79370 	long: 64;
79371 	long: 64;
79372 	long: 64;
79373 	long: 64;
79374 	long: 64;
79375 	long: 64;
79376 	long: 64;
79377 	long: 64;
79378 	long: 64;
79379 	long: 64;
79380 	long: 64;
79381 	long: 64;
79382 	long: 64;
79383 	long: 64;
79384 	long: 64;
79385 	long: 64;
79386 	long: 64;
79387 	long: 64;
79388 	long: 64;
79389 	long: 64;
79390 	long: 64;
79391 	long: 64;
79392 	long: 64;
79393 	long: 64;
79394 	long: 64;
79395 	long: 64;
79396 	long: 64;
79397 	long: 64;
79398 	long: 64;
79399 	long: 64;
79400 	long: 64;
79401 	long: 64;
79402 	long: 64;
79403 	long: 64;
79404 	long: 64;
79405 	long: 64;
79406 	long: 64;
79407 	long: 64;
79408 	long: 64;
79409 	long: 64;
79410 	long: 64;
79411 	long: 64;
79412 	long: 64;
79413 	long: 64;
79414 	long: 64;
79415 	long: 64;
79416 	long: 64;
79417 	long: 64;
79418 	long: 64;
79419 	long: 64;
79420 	long: 64;
79421 	long: 64;
79422 	long: 64;
79423 	long: 64;
79424 	long: 64;
79425 	long: 64;
79426 	long: 64;
79427 	long: 64;
79428 	long: 64;
79429 	long: 64;
79430 	long: 64;
79431 	long: 64;
79432 	long: 64;
79433 	long: 64;
79434 	long: 64;
79435 	long: 64;
79436 	long: 64;
79437 	long: 64;
79438 	long: 64;
79439 	long: 64;
79440 	long: 64;
79441 	long: 64;
79442 	long: 64;
79443 	long: 64;
79444 	long: 64;
79445 	long: 64;
79446 	long: 64;
79447 	long: 64;
79448 	long: 64;
79449 	long: 64;
79450 	long: 64;
79451 	long: 64;
79452 	long: 64;
79453 	long: 64;
79454 	long: 64;
79455 	long: 64;
79456 	long: 64;
79457 	long: 64;
79458 	long: 64;
79459 	long: 64;
79460 	long: 64;
79461 	long: 64;
79462 	long: 64;
79463 	long: 64;
79464 	long: 64;
79465 	long: 64;
79466 	long: 64;
79467 	long: 64;
79468 	long: 64;
79469 	long: 64;
79470 	long: 64;
79471 	long: 64;
79472 	long: 64;
79473 	long: 64;
79474 	long: 64;
79475 	long: 64;
79476 	long: 64;
79477 	long: 64;
79478 	long: 64;
79479 	long: 64;
79480 	long: 64;
79481 	long: 64;
79482 	long: 64;
79483 	long: 64;
79484 	long: 64;
79485 	long: 64;
79486 	long: 64;
79487 	long: 64;
79488 	long: 64;
79489 	long: 64;
79490 	long: 64;
79491 	long: 64;
79492 	long: 64;
79493 	long: 64;
79494 	long: 64;
79495 	long: 64;
79496 	long: 64;
79497 	long: 64;
79498 	long: 64;
79499 	long: 64;
79500 	long: 64;
79501 	long: 64;
79502 	long: 64;
79503 	long: 64;
79504 	long: 64;
79505 	long: 64;
79506 	long: 64;
79507 	long: 64;
79508 	long: 64;
79509 	long: 64;
79510 	long: 64;
79511 	long: 64;
79512 	long: 64;
79513 	long: 64;
79514 	long: 64;
79515 	long: 64;
79516 	long: 64;
79517 	long: 64;
79518 	long: 64;
79519 	long: 64;
79520 	long: 64;
79521 	long: 64;
79522 	long: 64;
79523 	long: 64;
79524 	long: 64;
79525 	long: 64;
79526 	long: 64;
79527 	long: 64;
79528 	long: 64;
79529 	long: 64;
79530 	long: 64;
79531 	long: 64;
79532 	long: 64;
79533 	long: 64;
79534 	long: 64;
79535 	long: 64;
79536 	long: 64;
79537 	long: 64;
79538 	long: 64;
79539 	long: 64;
79540 	long: 64;
79541 	long: 64;
79542 	long: 64;
79543 	long: 64;
79544 	long: 64;
79545 	long: 64;
79546 	long: 64;
79547 	long: 64;
79548 	long: 64;
79549 	long: 64;
79550 	long: 64;
79551 	long: 64;
79552 	long: 64;
79553 	long: 64;
79554 	long: 64;
79555 	long: 64;
79556 	long: 64;
79557 	long: 64;
79558 	long: 64;
79559 	long: 64;
79560 	long: 64;
79561 	long: 64;
79562 	long: 64;
79563 	long: 64;
79564 	long: 64;
79565 	long: 64;
79566 	long: 64;
79567 	long: 64;
79568 	long: 64;
79569 	long: 64;
79570 	long: 64;
79571 	long: 64;
79572 	long: 64;
79573 	long: 64;
79574 	long: 64;
79575 	long: 64;
79576 	long: 64;
79577 	long: 64;
79578 	long: 64;
79579 	long: 64;
79580 	long: 64;
79581 	long: 64;
79582 	long: 64;
79583 	long: 64;
79584 	long: 64;
79585 	long: 64;
79586 	long: 64;
79587 	long: 64;
79588 	long: 64;
79589 	long: 64;
79590 	long: 64;
79591 	long: 64;
79592 	long: 64;
79593 	long: 64;
79594 	long: 64;
79595 	long: 64;
79596 	long: 64;
79597 	long: 64;
79598 	long: 64;
79599 	long: 64;
79600 	long: 64;
79601 	long: 64;
79602 	long: 64;
79603 	long: 64;
79604 	long: 64;
79605 	long: 64;
79606 	long: 64;
79607 	long: 64;
79608 	long: 64;
79609 	long: 64;
79610 	long: 64;
79611 	long: 64;
79612 	long: 64;
79613 	long: 64;
79614 	long: 64;
79615 	long: 64;
79616 	long: 64;
79617 	long: 64;
79618 	long: 64;
79619 	long: 64;
79620 	long: 64;
79621 	long: 64;
79622 	long: 64;
79623 	long: 64;
79624 	long: 64;
79625 	long: 64;
79626 	long: 64;
79627 	long: 64;
79628 	long: 64;
79629 	long: 64;
79630 	long: 64;
79631 	long: 64;
79632 	long: 64;
79633 	long: 64;
79634 	long: 64;
79635 	long: 64;
79636 	long: 64;
79637 	long: 64;
79638 	long: 64;
79639 	long: 64;
79640 	long: 64;
79641 	long: 64;
79642 	long: 64;
79643 	long: 64;
79644 	long: 64;
79645 	long: 64;
79646 	long: 64;
79647 	long: 64;
79648 	long: 64;
79649 	long: 64;
79650 	long: 64;
79651 	long: 64;
79652 	long: 64;
79653 	long: 64;
79654 	long: 64;
79655 	long: 64;
79656 	long: 64;
79657 	long: 64;
79658 	long: 64;
79659 	long: 64;
79660 	long: 64;
79661 	long: 64;
79662 	long: 64;
79663 	long: 64;
79664 	long: 64;
79665 	long: 64;
79666 	long: 64;
79667 	long: 64;
79668 	long: 64;
79669 	long: 64;
79670 	long: 64;
79671 	long: 64;
79672 	long: 64;
79673 	long: 64;
79674 	long: 64;
79675 	long: 64;
79676 	long: 64;
79677 	long: 64;
79678 	long: 64;
79679 	long: 64;
79680 	long: 64;
79681 	long: 64;
79682 	long: 64;
79683 	long: 64;
79684 	long: 64;
79685 	long: 64;
79686 	long: 64;
79687 	long: 64;
79688 	long: 64;
79689 	long: 64;
79690 	long: 64;
79691 	long: 64;
79692 	long: 64;
79693 	long: 64;
79694 	long: 64;
79695 	long: 64;
79696 	long: 64;
79697 	long: 64;
79698 	long: 64;
79699 	long: 64;
79700 	long: 64;
79701 	long: 64;
79702 	long: 64;
79703 	long: 64;
79704 	long: 64;
79705 	long: 64;
79706 	long: 64;
79707 	long: 64;
79708 	long: 64;
79709 	long: 64;
79710 	long: 64;
79711 	long: 64;
79712 	long: 64;
79713 	long: 64;
79714 	long: 64;
79715 	long: 64;
79716 	long: 64;
79717 	long: 64;
79718 	long: 64;
79719 	long: 64;
79720 	long: 64;
79721 	long: 64;
79722 	long: 64;
79723 	long: 64;
79724 	long: 64;
79725 	long: 64;
79726 	long: 64;
79727 	long: 64;
79728 	long: 64;
79729 	long: 64;
79730 	long: 64;
79731 	long: 64;
79732 	long: 64;
79733 	long: 64;
79734 	long: 64;
79735 	long: 64;
79736 	long: 64;
79737 	long: 64;
79738 	long: 64;
79739 	long: 64;
79740 	long: 64;
79741 	long: 64;
79742 	long: 64;
79743 	long: 64;
79744 	long: 64;
79745 	long: 64;
79746 	long: 64;
79747 	long: 64;
79748 	long: 64;
79749 	long: 64;
79750 	long: 64;
79751 	long: 64;
79752 	long: 64;
79753 	long: 64;
79754 	long: 64;
79755 	long: 64;
79756 	long: 64;
79757 	long: 64;
79758 	long: 64;
79759 	long: 64;
79760 	long: 64;
79761 	long: 64;
79762 	long: 64;
79763 	long: 64;
79764 	long: 64;
79765 	long: 64;
79766 	long: 64;
79767 	long: 64;
79768 	long: 64;
79769 	long: 64;
79770 	long: 64;
79771 	long: 64;
79772 	long: 64;
79773 	long: 64;
79774 	long: 64;
79775 	long: 64;
79776 	long: 64;
79777 	long: 64;
79778 	long: 64;
79779 	long: 64;
79780 	long: 64;
79781 	long: 64;
79782 	long: 64;
79783 	long: 64;
79784 	long: 64;
79785 	long: 64;
79786 	long: 64;
79787 	long: 64;
79788 	long: 64;
79789 	long: 64;
79790 	long: 64;
79791 	long: 64;
79792 	long: 64;
79793 	long: 64;
79794 	long: 64;
79795 	long: 64;
79796 	long: 64;
79797 	long: 64;
79798 	long: 64;
79799 	long: 64;
79800 	long: 64;
79801 	long: 64;
79802 	long: 64;
79803 	long: 64;
79804 	long: 64;
79805 	long: 64;
79806 	long: 64;
79807 	long: 64;
79808 	long: 64;
79809 	long: 64;
79810 	long: 64;
79811 	long: 64;
79812 	long: 64;
79813 	long: 64;
79814 	long: 64;
79815 	long: 64;
79816 	long: 64;
79817 	long: 64;
79818 	long: 64;
79819 	long: 64;
79820 	long: 64;
79821 	long: 64;
79822 	long: 64;
79823 	long: 64;
79824 	long: 64;
79825 	long: 64;
79826 	long: 64;
79827 	long: 64;
79828 	long: 64;
79829 	long: 64;
79830 	long: 64;
79831 	long: 64;
79832 	long: 64;
79833 	long: 64;
79834 	long: 64;
79835 	long: 64;
79836 	long: 64;
79837 	long: 64;
79838 	long: 64;
79839 	long: 64;
79840 	long: 64;
79841 	long: 64;
79842 	long: 64;
79843 	long: 64;
79844 	long: 64;
79845 	long: 64;
79846 	long: 64;
79847 	long: 64;
79848 	long: 64;
79849 	long: 64;
79850 	long: 64;
79851 	long: 64;
79852 	long: 64;
79853 	long: 64;
79854 	long: 64;
79855 	long: 64;
79856 	long: 64;
79857 	long: 64;
79858 	long: 64;
79859 	long: 64;
79860 	long: 64;
79861 	long: 64;
79862 	long: 64;
79863 	long: 64;
79864 	long: 64;
79865 	long: 64;
79866 	long: 64;
79867 	long: 64;
79868 	long: 64;
79869 	long: 64;
79870 	long: 64;
79871 	long: 64;
79872 	long: 64;
79873 	long: 64;
79874 	long: 64;
79875 	long: 64;
79876 	long: 64;
79877 	long: 64;
79878 	long: 64;
79879 	long: 64;
79880 	long: 64;
79881 	long: 64;
79882 	long: 64;
79883 	long: 64;
79884 	long: 64;
79885 	long: 64;
79886 	long: 64;
79887 	long: 64;
79888 	long: 64;
79889 	long: 64;
79890 	long: 64;
79891 	long: 64;
79892 	long: 64;
79893 	long: 64;
79894 	long: 64;
79895 	long: 64;
79896 	long: 64;
79897 	long: 64;
79898 	long: 64;
79899 	long: 64;
79900 	long: 64;
79901 	long: 64;
79902 	long: 64;
79903 	long: 64;
79904 	long: 64;
79905 	long: 64;
79906 	long: 64;
79907 	long: 64;
79908 	long: 64;
79909 	long: 64;
79910 	long: 64;
79911 	long: 64;
79912 	long: 64;
79913 	long: 64;
79914 	long: 64;
79915 	long: 64;
79916 	long: 64;
79917 	long: 64;
79918 	long: 64;
79919 	long: 64;
79920 	long: 64;
79921 	long: 64;
79922 	long: 64;
79923 	long: 64;
79924 	long: 64;
79925 	long: 64;
79926 	long: 64;
79927 	long: 64;
79928 	long: 64;
79929 	long: 64;
79930 	long: 64;
79931 	long: 64;
79932 	long: 64;
79933 	long: 64;
79934 	long: 64;
79935 	long: 64;
79936 	long: 64;
79937 	long: 64;
79938 	long: 64;
79939 	long: 64;
79940 	long: 64;
79941 	long: 64;
79942 	long: 64;
79943 	long: 64;
79944 	long: 64;
79945 	long: 64;
79946 	long: 64;
79947 	long: 64;
79948 	long: 64;
79949 	long: 64;
79950 	long: 64;
79951 	long: 64;
79952 	long: 64;
79953 	long: 64;
79954 	long: 64;
79955 	long: 64;
79956 	long: 64;
79957 	long: 64;
79958 	long: 64;
79959 	long: 64;
79960 	long: 64;
79961 	long: 64;
79962 	long: 64;
79963 	long: 64;
79964 	long: 64;
79965 	long: 64;
79966 	long: 64;
79967 	long: 64;
79968 	long: 64;
79969 	long: 64;
79970 	long: 64;
79971 	long: 64;
79972 	long: 64;
79973 	long: 64;
79974 	long: 64;
79975 	long: 64;
79976 	long: 64;
79977 	long: 64;
79978 	long: 64;
79979 	long: 64;
79980 	long: 64;
79981 	long: 64;
79982 	long: 64;
79983 	long: 64;
79984 	long: 64;
79985 	long: 64;
79986 	long: 64;
79987 	long: 64;
79988 	long: 64;
79989 	long: 64;
79990 	long: 64;
79991 	long: 64;
79992 	long: 64;
79993 	long: 64;
79994 	long: 64;
79995 	long: 64;
79996 	long: 64;
79997 	long: 64;
79998 	long: 64;
79999 	long: 64;
80000 	long: 64;
80001 	long: 64;
80002 	long: 64;
80003 	long: 64;
80004 	long: 64;
80005 	long: 64;
80006 	long: 64;
80007 	long: 64;
80008 	long: 64;
80009 	long: 64;
80010 	long: 64;
80011 	long: 64;
80012 	long: 64;
80013 	long: 64;
80014 	long: 64;
80015 	long: 64;
80016 	long: 64;
80017 	long: 64;
80018 	long: 64;
80019 	long: 64;
80020 	long: 64;
80021 	long: 64;
80022 	long: 64;
80023 	long: 64;
80024 	long: 64;
80025 	long: 64;
80026 	long: 64;
80027 	long: 64;
80028 	long: 64;
80029 	long: 64;
80030 	long: 64;
80031 	long: 64;
80032 	long: 64;
80033 	long: 64;
80034 	long: 64;
80035 	long: 64;
80036 	long: 64;
80037 	long: 64;
80038 	long: 64;
80039 	long: 64;
80040 	long: 64;
80041 	long: 64;
80042 	long: 64;
80043 	long: 64;
80044 	long: 64;
80045 	long: 64;
80046 	long: 64;
80047 	long: 64;
80048 	long: 64;
80049 	long: 64;
80050 	long: 64;
80051 	long: 64;
80052 	long: 64;
80053 	long: 64;
80054 	long: 64;
80055 	long: 64;
80056 	long: 64;
80057 	long: 64;
80058 	long: 64;
80059 	long: 64;
80060 	long: 64;
80061 	long: 64;
80062 	long: 64;
80063 	long: 64;
80064 	long: 64;
80065 	long: 64;
80066 	long: 64;
80067 	long: 64;
80068 	long: 64;
80069 	long: 64;
80070 	long: 64;
80071 	long: 64;
80072 	long: 64;
80073 	long: 64;
80074 	long: 64;
80075 	long: 64;
80076 	long: 64;
80077 	long: 64;
80078 	long: 64;
80079 	long: 64;
80080 	long: 64;
80081 	long: 64;
80082 	long: 64;
80083 	long: 64;
80084 	long: 64;
80085 	long: 64;
80086 	long: 64;
80087 	long: 64;
80088 	long: 64;
80089 	long: 64;
80090 	long: 64;
80091 	long: 64;
80092 	long: 64;
80093 	long: 64;
80094 	long: 64;
80095 	long: 64;
80096 	long: 64;
80097 	long: 64;
80098 	long: 64;
80099 	long: 64;
80100 	long: 64;
80101 	long: 64;
80102 	long: 64;
80103 	long: 64;
80104 	long: 64;
80105 	long: 64;
80106 	long: 64;
80107 	long: 64;
80108 	long: 64;
80109 	long: 64;
80110 	long: 64;
80111 	long: 64;
80112 	long: 64;
80113 	long: 64;
80114 	long: 64;
80115 	long: 64;
80116 	long: 64;
80117 	long: 64;
80118 	long: 64;
80119 	long: 64;
80120 	long: 64;
80121 	long: 64;
80122 	long: 64;
80123 	long: 64;
80124 	long: 64;
80125 	long: 64;
80126 	long: 64;
80127 	long: 64;
80128 	long: 64;
80129 	long: 64;
80130 	long: 64;
80131 	long: 64;
80132 	long: 64;
80133 	long: 64;
80134 	long: 64;
80135 	long: 64;
80136 	long: 64;
80137 	long: 64;
80138 	long: 64;
80139 	long: 64;
80140 	long: 64;
80141 	long: 64;
80142 	long: 64;
80143 	long: 64;
80144 	long: 64;
80145 	long: 64;
80146 	long: 64;
80147 	long: 64;
80148 	long: 64;
80149 	long: 64;
80150 	long: 64;
80151 	long: 64;
80152 	long: 64;
80153 	long: 64;
80154 	long: 64;
80155 	long: 64;
80156 	long: 64;
80157 	long: 64;
80158 	long: 64;
80159 	long: 64;
80160 	long: 64;
80161 	long: 64;
80162 	long: 64;
80163 	long: 64;
80164 	long: 64;
80165 	long: 64;
80166 	long: 64;
80167 	long: 64;
80168 	long: 64;
80169 	long: 64;
80170 	long: 64;
80171 	long: 64;
80172 	long: 64;
80173 	long: 64;
80174 	long: 64;
80175 	long: 64;
80176 	long: 64;
80177 	long: 64;
80178 	long: 64;
80179 	long: 64;
80180 	long: 64;
80181 	long: 64;
80182 	long: 64;
80183 	long: 64;
80184 	long: 64;
80185 	long: 64;
80186 	long: 64;
80187 	long: 64;
80188 	long: 64;
80189 	long: 64;
80190 	long: 64;
80191 	long: 64;
80192 	long: 64;
80193 	long: 64;
80194 	long: 64;
80195 	long: 64;
80196 	long: 64;
80197 	long: 64;
80198 	long: 64;
80199 	long: 64;
80200 	long: 64;
80201 	long: 64;
80202 	long: 64;
80203 	long: 64;
80204 	long: 64;
80205 	long: 64;
80206 	long: 64;
80207 	long: 64;
80208 	long: 64;
80209 	long: 64;
80210 	long: 64;
80211 	long: 64;
80212 	long: 64;
80213 	long: 64;
80214 	long: 64;
80215 	long: 64;
80216 	long: 64;
80217 	long: 64;
80218 	long: 64;
80219 	long: 64;
80220 	long: 64;
80221 	long: 64;
80222 	long: 64;
80223 	long: 64;
80224 	long: 64;
80225 	long: 64;
80226 	long: 64;
80227 	long: 64;
80228 	long: 64;
80229 	long: 64;
80230 	long: 64;
80231 	long: 64;
80232 	long: 64;
80233 	long: 64;
80234 	long: 64;
80235 	long: 64;
80236 	long: 64;
80237 	long: 64;
80238 	long: 64;
80239 	long: 64;
80240 	long: 64;
80241 	long: 64;
80242 	long: 64;
80243 	long: 64;
80244 	long: 64;
80245 	long: 64;
80246 	long: 64;
80247 	long: 64;
80248 	long: 64;
80249 	long: 64;
80250 	long: 64;
80251 	long: 64;
80252 	long: 64;
80253 	long: 64;
80254 	long: 64;
80255 	long: 64;
80256 	long: 64;
80257 	long: 64;
80258 	long: 64;
80259 	long: 64;
80260 	long: 64;
80261 	long: 64;
80262 	long: 64;
80263 	long: 64;
80264 	long: 64;
80265 	long: 64;
80266 	long: 64;
80267 	long: 64;
80268 	long: 64;
80269 	long: 64;
80270 	long: 64;
80271 	long: 64;
80272 	long: 64;
80273 	long: 64;
80274 	long: 64;
80275 	long: 64;
80276 	long: 64;
80277 	long: 64;
80278 	long: 64;
80279 	long: 64;
80280 	long: 64;
80281 	long: 64;
80282 	long: 64;
80283 	long: 64;
80284 	long: 64;
80285 	long: 64;
80286 	long: 64;
80287 	long: 64;
80288 	long: 64;
80289 	long: 64;
80290 	long: 64;
80291 	long: 64;
80292 	long: 64;
80293 	long: 64;
80294 	long: 64;
80295 	long: 64;
80296 	long: 64;
80297 	long: 64;
80298 	long: 64;
80299 	long: 64;
80300 	long: 64;
80301 	long: 64;
80302 	long: 64;
80303 	long: 64;
80304 	long: 64;
80305 	long: 64;
80306 	long: 64;
80307 	long: 64;
80308 	long: 64;
80309 	long: 64;
80310 	long: 64;
80311 	long: 64;
80312 	long: 64;
80313 	long: 64;
80314 	long: 64;
80315 	long: 64;
80316 	long: 64;
80317 	long: 64;
80318 	long: 64;
80319 	long: 64;
80320 	long: 64;
80321 	long: 64;
80322 	long: 64;
80323 	long: 64;
80324 	long: 64;
80325 	long: 64;
80326 	long: 64;
80327 	long: 64;
80328 	long: 64;
80329 	long: 64;
80330 	long: 64;
80331 	long: 64;
80332 	long: 64;
80333 	long: 64;
80334 	long: 64;
80335 	long: 64;
80336 	long: 64;
80337 	long: 64;
80338 	long: 64;
80339 	long: 64;
80340 	long: 64;
80341 	long: 64;
80342 	long: 64;
80343 	long: 64;
80344 	long: 64;
80345 	long: 64;
80346 	long: 64;
80347 	long: 64;
80348 	long: 64;
80349 	long: 64;
80350 	long: 64;
80351 	long: 64;
80352 	long: 64;
80353 	long: 64;
80354 	long: 64;
80355 	long: 64;
80356 	long: 64;
80357 	long: 64;
80358 	long: 64;
80359 	long: 64;
80360 	long: 64;
80361 	long: 64;
80362 	long: 64;
80363 	long: 64;
80364 	long: 64;
80365 	long: 64;
80366 	long: 64;
80367 	long: 64;
80368 	long: 64;
80369 	long: 64;
80370 	long: 64;
80371 	long: 64;
80372 	long: 64;
80373 	long: 64;
80374 	long: 64;
80375 	long: 64;
80376 	long: 64;
80377 	long: 64;
80378 	long: 64;
80379 	long: 64;
80380 	long: 64;
80381 	long: 64;
80382 	long: 64;
80383 	long: 64;
80384 	long: 64;
80385 	long: 64;
80386 	long: 64;
80387 	long: 64;
80388 	long: 64;
80389 	long: 64;
80390 	long: 64;
80391 	long: 64;
80392 	long: 64;
80393 	long: 64;
80394 	long: 64;
80395 	long: 64;
80396 	long: 64;
80397 	long: 64;
80398 	long: 64;
80399 	long: 64;
80400 	long: 64;
80401 	long: 64;
80402 	long: 64;
80403 	long: 64;
80404 	long: 64;
80405 	long: 64;
80406 	long: 64;
80407 	long: 64;
80408 	long: 64;
80409 	long: 64;
80410 	long: 64;
80411 	long: 64;
80412 	long: 64;
80413 	long: 64;
80414 	long: 64;
80415 	long: 64;
80416 	long: 64;
80417 	long: 64;
80418 	long: 64;
80419 	long: 64;
80420 	long: 64;
80421 	long: 64;
80422 	long: 64;
80423 	long: 64;
80424 	long: 64;
80425 	long: 64;
80426 	long: 64;
80427 	long: 64;
80428 	long: 64;
80429 	long: 64;
80430 	long: 64;
80431 	long: 64;
80432 	long: 64;
80433 	long: 64;
80434 	long: 64;
80435 	long: 64;
80436 	long: 64;
80437 	long: 64;
80438 	long: 64;
80439 	long: 64;
80440 	long: 64;
80441 	long: 64;
80442 	long: 64;
80443 	long: 64;
80444 	long: 64;
80445 	long: 64;
80446 	long: 64;
80447 	long: 64;
80448 	long: 64;
80449 	long: 64;
80450 	long: 64;
80451 	long: 64;
80452 	long: 64;
80453 	long: 64;
80454 	long: 64;
80455 	long: 64;
80456 	long: 64;
80457 	long: 64;
80458 	long: 64;
80459 	long: 64;
80460 	long: 64;
80461 	long: 64;
80462 	long: 64;
80463 	long: 64;
80464 	long: 64;
80465 	long: 64;
80466 	long: 64;
80467 	long: 64;
80468 	long: 64;
80469 	long: 64;
80470 	long: 64;
80471 	long: 64;
80472 	long: 64;
80473 	long: 64;
80474 	long: 64;
80475 	long: 64;
80476 	long: 64;
80477 	long: 64;
80478 	long: 64;
80479 	long: 64;
80480 	long: 64;
80481 	long: 64;
80482 	long: 64;
80483 	long: 64;
80484 	long: 64;
80485 	long: 64;
80486 	long: 64;
80487 	long: 64;
80488 	long: 64;
80489 	long: 64;
80490 	long: 64;
80491 	long: 64;
80492 	long: 64;
80493 	long: 64;
80494 	long: 64;
80495 	long: 64;
80496 	long: 64;
80497 	long: 64;
80498 	long: 64;
80499 	long: 64;
80500 	long: 64;
80501 	long: 64;
80502 	long: 64;
80503 	long: 64;
80504 	long: 64;
80505 	long: 64;
80506 	long: 64;
80507 	long: 64;
80508 	long: 64;
80509 	long: 64;
80510 	long: 64;
80511 	long: 64;
80512 	long: 64;
80513 	long: 64;
80514 	long: 64;
80515 	long: 64;
80516 	long: 64;
80517 	long: 64;
80518 	long: 64;
80519 	long: 64;
80520 	long: 64;
80521 	long: 64;
80522 	long: 64;
80523 	long: 64;
80524 	long: 64;
80525 	long: 64;
80526 	long: 64;
80527 	long: 64;
80528 	long: 64;
80529 	long: 64;
80530 	long: 64;
80531 	long: 64;
80532 	long: 64;
80533 	long: 64;
80534 	long: 64;
80535 	long: 64;
80536 	long: 64;
80537 	long: 64;
80538 	long: 64;
80539 	long: 64;
80540 	long: 64;
80541 	long: 64;
80542 	long: 64;
80543 	long: 64;
80544 	long: 64;
80545 	long: 64;
80546 	long: 64;
80547 	long: 64;
80548 	long: 64;
80549 	long: 64;
80550 	long: 64;
80551 	long: 64;
80552 	long: 64;
80553 	long: 64;
80554 	long: 64;
80555 	long: 64;
80556 	long: 64;
80557 	long: 64;
80558 	long: 64;
80559 	long: 64;
80560 	long: 64;
80561 	long: 64;
80562 	long: 64;
80563 	long: 64;
80564 	long: 64;
80565 	long: 64;
80566 	long: 64;
80567 	long: 64;
80568 	long: 64;
80569 	long: 64;
80570 	long: 64;
80571 	long: 64;
80572 	long: 64;
80573 	long: 64;
80574 	long: 64;
80575 	long: 64;
80576 	long: 64;
80577 	long: 64;
80578 	long: 64;
80579 	long: 64;
80580 	long: 64;
80581 	long: 64;
80582 	long: 64;
80583 	long: 64;
80584 	long: 64;
80585 	long: 64;
80586 	long: 64;
80587 	long: 64;
80588 	long: 64;
80589 	long: 64;
80590 	long: 64;
80591 	long: 64;
80592 	long: 64;
80593 	long: 64;
80594 	long: 64;
80595 	long: 64;
80596 	long: 64;
80597 	long: 64;
80598 	long: 64;
80599 	long: 64;
80600 	long: 64;
80601 	long: 64;
80602 	long: 64;
80603 	long: 64;
80604 	long: 64;
80605 	long: 64;
80606 	long: 64;
80607 	long: 64;
80608 	long: 64;
80609 	long: 64;
80610 	long: 64;
80611 	long: 64;
80612 	long: 64;
80613 	long: 64;
80614 	long: 64;
80615 	long: 64;
80616 	long: 64;
80617 	long: 64;
80618 	long: 64;
80619 	long: 64;
80620 	long: 64;
80621 	long: 64;
80622 	long: 64;
80623 	long: 64;
80624 	long: 64;
80625 	long: 64;
80626 	long: 64;
80627 	long: 64;
80628 	long: 64;
80629 	long: 64;
80630 	long: 64;
80631 	long: 64;
80632 	long: 64;
80633 	long: 64;
80634 	long: 64;
80635 	long: 64;
80636 	long: 64;
80637 	long: 64;
80638 	long: 64;
80639 	long: 64;
80640 	long: 64;
80641 	long: 64;
80642 	long: 64;
80643 	long: 64;
80644 	long: 64;
80645 	long: 64;
80646 	long: 64;
80647 	long: 64;
80648 	long: 64;
80649 	long: 64;
80650 	long: 64;
80651 	long: 64;
80652 	long: 64;
80653 	long: 64;
80654 	long: 64;
80655 	long: 64;
80656 	long: 64;
80657 	long: 64;
80658 	long: 64;
80659 	long: 64;
80660 	long: 64;
80661 	long: 64;
80662 	long: 64;
80663 	long: 64;
80664 	long: 64;
80665 	long: 64;
80666 	long: 64;
80667 	long: 64;
80668 	long: 64;
80669 	long: 64;
80670 	long: 64;
80671 	long: 64;
80672 	long: 64;
80673 	long: 64;
80674 	long: 64;
80675 	long: 64;
80676 	long: 64;
80677 	long: 64;
80678 	long: 64;
80679 	long: 64;
80680 	long: 64;
80681 	long: 64;
80682 	long: 64;
80683 	long: 64;
80684 	long: 64;
80685 	long: 64;
80686 	long: 64;
80687 	long: 64;
80688 	long: 64;
80689 	long: 64;
80690 	long: 64;
80691 	long: 64;
80692 	long: 64;
80693 	long: 64;
80694 	long: 64;
80695 	long: 64;
80696 	long: 64;
80697 	long: 64;
80698 	long: 64;
80699 	long: 64;
80700 	long: 64;
80701 	long: 64;
80702 	long: 64;
80703 	long: 64;
80704 	long: 64;
80705 	long: 64;
80706 	long: 64;
80707 	long: 64;
80708 	long: 64;
80709 	long: 64;
80710 	long: 64;
80711 	long: 64;
80712 	long: 64;
80713 	long: 64;
80714 	long: 64;
80715 	long: 64;
80716 	long: 64;
80717 	long: 64;
80718 	long: 64;
80719 	long: 64;
80720 	long: 64;
80721 	long: 64;
80722 	long: 64;
80723 	long: 64;
80724 	long: 64;
80725 	long: 64;
80726 	long: 64;
80727 	long: 64;
80728 	long: 64;
80729 	long: 64;
80730 	long: 64;
80731 	long: 64;
80732 	long: 64;
80733 	long: 64;
80734 	long: 64;
80735 	long: 64;
80736 	long: 64;
80737 	long: 64;
80738 	long: 64;
80739 	long: 64;
80740 	long: 64;
80741 	long: 64;
80742 	long: 64;
80743 	long: 64;
80744 	long: 64;
80745 	long: 64;
80746 	long: 64;
80747 	long: 64;
80748 	long: 64;
80749 	long: 64;
80750 	long: 64;
80751 	long: 64;
80752 	long: 64;
80753 	long: 64;
80754 	long: 64;
80755 	long: 64;
80756 	long: 64;
80757 	long: 64;
80758 	long: 64;
80759 	long: 64;
80760 	long: 64;
80761 	long: 64;
80762 	long: 64;
80763 	long: 64;
80764 	long: 64;
80765 	long: 64;
80766 	long: 64;
80767 	long: 64;
80768 	long: 64;
80769 	long: 64;
80770 	long: 64;
80771 	long: 64;
80772 	long: 64;
80773 	long: 64;
80774 	long: 64;
80775 	long: 64;
80776 	long: 64;
80777 	long: 64;
80778 	long: 64;
80779 	long: 64;
80780 	long: 64;
80781 	long: 64;
80782 	long: 64;
80783 	long: 64;
80784 	long: 64;
80785 	long: 64;
80786 	long: 64;
80787 	long: 64;
80788 	long: 64;
80789 	long: 64;
80790 	long: 64;
80791 	long: 64;
80792 	long: 64;
80793 	long: 64;
80794 	long: 64;
80795 	long: 64;
80796 	long: 64;
80797 	long: 64;
80798 	long: 64;
80799 	long: 64;
80800 	long: 64;
80801 	long: 64;
80802 	long: 64;
80803 	long: 64;
80804 	long: 64;
80805 	long: 64;
80806 	long: 64;
80807 	long: 64;
80808 	long: 64;
80809 	long: 64;
80810 	long: 64;
80811 	long: 64;
80812 	long: 64;
80813 	long: 64;
80814 	long: 64;
80815 	long: 64;
80816 	long: 64;
80817 	long: 64;
80818 	long: 64;
80819 	long: 64;
80820 	long: 64;
80821 	long: 64;
80822 	long: 64;
80823 	long: 64;
80824 	long: 64;
80825 	long: 64;
80826 	long: 64;
80827 	long: 64;
80828 	long: 64;
80829 	long: 64;
80830 	long: 64;
80831 	long: 64;
80832 	long: 64;
80833 	long: 64;
80834 	long: 64;
80835 	long: 64;
80836 	long: 64;
80837 	long: 64;
80838 	long: 64;
80839 	long: 64;
80840 	long: 64;
80841 	long: 64;
80842 	long: 64;
80843 	long: 64;
80844 	long: 64;
80845 	long: 64;
80846 	long: 64;
80847 	long: 64;
80848 	long: 64;
80849 	long: 64;
80850 	long: 64;
80851 	long: 64;
80852 	long: 64;
80853 	long: 64;
80854 	long: 64;
80855 	long: 64;
80856 	long: 64;
80857 	long: 64;
80858 	long: 64;
80859 	long: 64;
80860 	long: 64;
80861 	long: 64;
80862 	long: 64;
80863 	long: 64;
80864 	long: 64;
80865 	long: 64;
80866 	long: 64;
80867 	long: 64;
80868 	long: 64;
80869 	long: 64;
80870 	long: 64;
80871 	long: 64;
80872 	long: 64;
80873 	long: 64;
80874 	long: 64;
80875 	long: 64;
80876 	long: 64;
80877 	long: 64;
80878 	long: 64;
80879 	long: 64;
80880 	long: 64;
80881 	long: 64;
80882 	long: 64;
80883 	long: 64;
80884 	long: 64;
80885 	long: 64;
80886 	long: 64;
80887 	long: 64;
80888 	long: 64;
80889 	long: 64;
80890 	long: 64;
80891 	long: 64;
80892 	long: 64;
80893 	long: 64;
80894 	long: 64;
80895 	long: 64;
80896 	long: 64;
80897 	long: 64;
80898 	long: 64;
80899 	long: 64;
80900 	long: 64;
80901 	long: 64;
80902 	long: 64;
80903 	long: 64;
80904 	long: 64;
80905 	long: 64;
80906 	long: 64;
80907 	long: 64;
80908 	long: 64;
80909 	long: 64;
80910 	long: 64;
80911 	long: 64;
80912 	long: 64;
80913 	long: 64;
80914 	long: 64;
80915 	long: 64;
80916 	long: 64;
80917 	long: 64;
80918 	long: 64;
80919 	long: 64;
80920 	long: 64;
80921 	long: 64;
80922 	long: 64;
80923 	long: 64;
80924 	long: 64;
80925 	long: 64;
80926 	long: 64;
80927 	long: 64;
80928 	long: 64;
80929 	long: 64;
80930 	long: 64;
80931 	long: 64;
80932 	long: 64;
80933 	long: 64;
80934 	long: 64;
80935 	long: 64;
80936 	long: 64;
80937 	long: 64;
80938 	long: 64;
80939 	long: 64;
80940 	long: 64;
80941 	long: 64;
80942 	long: 64;
80943 	long: 64;
80944 	long: 64;
80945 	long: 64;
80946 	long: 64;
80947 	long: 64;
80948 	long: 64;
80949 	long: 64;
80950 	long: 64;
80951 	long: 64;
80952 	long: 64;
80953 	long: 64;
80954 	long: 64;
80955 	long: 64;
80956 	long: 64;
80957 	long: 64;
80958 	long: 64;
80959 	long: 64;
80960 	long: 64;
80961 	long: 64;
80962 	long: 64;
80963 	long: 64;
80964 	long: 64;
80965 	long: 64;
80966 	long: 64;
80967 	long: 64;
80968 	long: 64;
80969 	long: 64;
80970 	long: 64;
80971 	long: 64;
80972 	long: 64;
80973 	long: 64;
80974 	long: 64;
80975 	long: 64;
80976 	long: 64;
80977 	long: 64;
80978 	long: 64;
80979 	long: 64;
80980 	long: 64;
80981 	long: 64;
80982 	long: 64;
80983 	long: 64;
80984 	long: 64;
80985 	long: 64;
80986 	long: 64;
80987 	long: 64;
80988 	long: 64;
80989 	long: 64;
80990 	long: 64;
80991 	long: 64;
80992 	long: 64;
80993 	long: 64;
80994 	long: 64;
80995 	long: 64;
80996 	long: 64;
80997 	long: 64;
80998 	long: 64;
80999 	long: 64;
81000 	long: 64;
81001 	long: 64;
81002 	long: 64;
81003 	long: 64;
81004 	long: 64;
81005 	long: 64;
81006 	long: 64;
81007 	long: 64;
81008 	long: 64;
81009 	long: 64;
81010 	long: 64;
81011 	long: 64;
81012 	long: 64;
81013 	long: 64;
81014 	long: 64;
81015 	long: 64;
81016 	long: 64;
81017 	long: 64;
81018 	long: 64;
81019 	long: 64;
81020 	long: 64;
81021 	long: 64;
81022 	long: 64;
81023 	long: 64;
81024 	long: 64;
81025 	long: 64;
81026 	long: 64;
81027 	long: 64;
81028 	long: 64;
81029 	long: 64;
81030 	long: 64;
81031 	long: 64;
81032 	long: 64;
81033 	long: 64;
81034 	long: 64;
81035 	long: 64;
81036 	long: 64;
81037 	long: 64;
81038 	long: 64;
81039 	long: 64;
81040 	long: 64;
81041 	long: 64;
81042 	long: 64;
81043 	long: 64;
81044 	long: 64;
81045 	long: 64;
81046 	long: 64;
81047 	long: 64;
81048 	long: 64;
81049 	long: 64;
81050 	long: 64;
81051 	long: 64;
81052 	long: 64;
81053 	long: 64;
81054 	long: 64;
81055 	long: 64;
81056 	long: 64;
81057 	long: 64;
81058 	long: 64;
81059 	long: 64;
81060 	long: 64;
81061 	long: 64;
81062 	long: 64;
81063 	long: 64;
81064 	long: 64;
81065 	long: 64;
81066 	long: 64;
81067 	long: 64;
81068 	long: 64;
81069 	long: 64;
81070 	long: 64;
81071 	long: 64;
81072 	long: 64;
81073 	long: 64;
81074 	long: 64;
81075 	long: 64;
81076 	long: 64;
81077 	long: 64;
81078 	long: 64;
81079 	long: 64;
81080 	long: 64;
81081 	long: 64;
81082 	long: 64;
81083 	long: 64;
81084 	long: 64;
81085 	long: 64;
81086 	long: 64;
81087 	long: 64;
81088 	long: 64;
81089 	long: 64;
81090 	long: 64;
81091 	long: 64;
81092 	long: 64;
81093 	long: 64;
81094 	long: 64;
81095 	long: 64;
81096 	long: 64;
81097 	long: 64;
81098 	long: 64;
81099 	long: 64;
81100 	long: 64;
81101 	long: 64;
81102 	long: 64;
81103 	long: 64;
81104 	long: 64;
81105 	long: 64;
81106 	long: 64;
81107 	long: 64;
81108 	long: 64;
81109 	long: 64;
81110 	long: 64;
81111 	long: 64;
81112 	long: 64;
81113 	long: 64;
81114 	long: 64;
81115 	long: 64;
81116 	long: 64;
81117 	long: 64;
81118 	long: 64;
81119 	long: 64;
81120 	long: 64;
81121 	long: 64;
81122 	long: 64;
81123 	long: 64;
81124 	long: 64;
81125 	long: 64;
81126 	long: 64;
81127 	long: 64;
81128 	long: 64;
81129 	long: 64;
81130 	long: 64;
81131 	long: 64;
81132 	long: 64;
81133 	long: 64;
81134 	long: 64;
81135 	long: 64;
81136 	long: 64;
81137 	long: 64;
81138 	long: 64;
81139 	long: 64;
81140 	long: 64;
81141 	long: 64;
81142 	long: 64;
81143 	long: 64;
81144 	long: 64;
81145 	long: 64;
81146 	long: 64;
81147 	long: 64;
81148 	long: 64;
81149 	long: 64;
81150 	long: 64;
81151 	long: 64;
81152 	long: 64;
81153 	long: 64;
81154 	long: 64;
81155 	long: 64;
81156 	long: 64;
81157 	long: 64;
81158 	long: 64;
81159 	long: 64;
81160 	long: 64;
81161 	long: 64;
81162 	long: 64;
81163 	long: 64;
81164 	long: 64;
81165 	long: 64;
81166 	long: 64;
81167 	long: 64;
81168 	long: 64;
81169 	long: 64;
81170 	long: 64;
81171 	long: 64;
81172 	long: 64;
81173 	long: 64;
81174 	long: 64;
81175 	long: 64;
81176 	long: 64;
81177 	long: 64;
81178 	long: 64;
81179 	long: 64;
81180 	long: 64;
81181 	long: 64;
81182 	long: 64;
81183 	long: 64;
81184 	long: 64;
81185 	long: 64;
81186 	long: 64;
81187 	long: 64;
81188 	long: 64;
81189 	long: 64;
81190 	long: 64;
81191 	long: 64;
81192 	long: 64;
81193 	long: 64;
81194 	long: 64;
81195 	long: 64;
81196 	long: 64;
81197 	long: 64;
81198 	long: 64;
81199 	long: 64;
81200 	long: 64;
81201 	long: 64;
81202 	long: 64;
81203 	long: 64;
81204 	long: 64;
81205 	long: 64;
81206 	long: 64;
81207 	long: 64;
81208 	long: 64;
81209 	long: 64;
81210 	long: 64;
81211 	long: 64;
81212 	long: 64;
81213 	long: 64;
81214 	long: 64;
81215 	long: 64;
81216 	long: 64;
81217 	long: 64;
81218 	long: 64;
81219 	long: 64;
81220 	long: 64;
81221 	long: 64;
81222 	long: 64;
81223 	long: 64;
81224 	long: 64;
81225 	long: 64;
81226 	long: 64;
81227 	long: 64;
81228 	long: 64;
81229 	long: 64;
81230 	long: 64;
81231 	long: 64;
81232 	long: 64;
81233 	long: 64;
81234 	long: 64;
81235 	long: 64;
81236 	long: 64;
81237 	long: 64;
81238 	long: 64;
81239 	long: 64;
81240 	long: 64;
81241 	long: 64;
81242 	long: 64;
81243 	long: 64;
81244 	long: 64;
81245 	long: 64;
81246 	long: 64;
81247 	long: 64;
81248 	long: 64;
81249 	long: 64;
81250 	long: 64;
81251 	long: 64;
81252 	long: 64;
81253 	long: 64;
81254 	long: 64;
81255 	long: 64;
81256 	long: 64;
81257 	long: 64;
81258 	long: 64;
81259 	long: 64;
81260 	long: 64;
81261 	long: 64;
81262 	long: 64;
81263 	long: 64;
81264 	long: 64;
81265 	long: 64;
81266 	long: 64;
81267 	long: 64;
81268 	long: 64;
81269 	long: 64;
81270 	long: 64;
81271 	long: 64;
81272 	long: 64;
81273 	long: 64;
81274 	long: 64;
81275 	long: 64;
81276 	long: 64;
81277 	long: 64;
81278 	long: 64;
81279 	long: 64;
81280 	long: 64;
81281 	long: 64;
81282 	long: 64;
81283 	long: 64;
81284 	long: 64;
81285 	long: 64;
81286 	long: 64;
81287 	long: 64;
81288 	long: 64;
81289 	long: 64;
81290 	long: 64;
81291 	long: 64;
81292 	long: 64;
81293 	long: 64;
81294 	long: 64;
81295 	long: 64;
81296 	long: 64;
81297 	long: 64;
81298 	long: 64;
81299 	long: 64;
81300 	long: 64;
81301 	long: 64;
81302 	long: 64;
81303 	long: 64;
81304 	long: 64;
81305 	long: 64;
81306 	long: 64;
81307 	long: 64;
81308 	long: 64;
81309 	long: 64;
81310 	long: 64;
81311 	long: 64;
81312 	long: 64;
81313 	long: 64;
81314 	long: 64;
81315 	long: 64;
81316 	long: 64;
81317 	long: 64;
81318 	long: 64;
81319 	long: 64;
81320 	long: 64;
81321 	long: 64;
81322 	long: 64;
81323 	long: 64;
81324 	long: 64;
81325 	long: 64;
81326 	long: 64;
81327 	long: 64;
81328 	long: 64;
81329 	long: 64;
81330 	long: 64;
81331 	long: 64;
81332 	long: 64;
81333 	long: 64;
81334 	long: 64;
81335 	long: 64;
81336 	long: 64;
81337 	long: 64;
81338 	long: 64;
81339 	long: 64;
81340 	long: 64;
81341 	long: 64;
81342 	long: 64;
81343 	long: 64;
81344 	long: 64;
81345 	long: 64;
81346 	long: 64;
81347 	long: 64;
81348 	long: 64;
81349 	long: 64;
81350 	long: 64;
81351 	long: 64;
81352 	long: 64;
81353 	long: 64;
81354 	long: 64;
81355 	long: 64;
81356 	long: 64;
81357 	long: 64;
81358 	long: 64;
81359 	long: 64;
81360 	long: 64;
81361 	long: 64;
81362 	long: 64;
81363 	long: 64;
81364 	long: 64;
81365 	long: 64;
81366 	long: 64;
81367 	long: 64;
81368 	long: 64;
81369 	long: 64;
81370 	long: 64;
81371 	long: 64;
81372 	long: 64;
81373 	long: 64;
81374 	long: 64;
81375 	long: 64;
81376 	long: 64;
81377 	long: 64;
81378 	long: 64;
81379 	long: 64;
81380 	long: 64;
81381 	long: 64;
81382 	long: 64;
81383 	long: 64;
81384 	long: 64;
81385 	long: 64;
81386 	long: 64;
81387 	long: 64;
81388 	long: 64;
81389 	long: 64;
81390 	long: 64;
81391 	long: 64;
81392 	long: 64;
81393 	long: 64;
81394 	long: 64;
81395 	long: 64;
81396 	long: 64;
81397 	long: 64;
81398 	long: 64;
81399 	long: 64;
81400 	long: 64;
81401 	long: 64;
81402 	long: 64;
81403 	long: 64;
81404 	long: 64;
81405 	long: 64;
81406 	long: 64;
81407 	long: 64;
81408 	long: 64;
81409 	long: 64;
81410 	long: 64;
81411 	long: 64;
81412 	long: 64;
81413 	long: 64;
81414 	long: 64;
81415 	long: 64;
81416 	long: 64;
81417 	long: 64;
81418 	long: 64;
81419 	long: 64;
81420 	long: 64;
81421 	long: 64;
81422 	long: 64;
81423 	long: 64;
81424 	long: 64;
81425 	long: 64;
81426 	long: 64;
81427 	long: 64;
81428 	long: 64;
81429 	long: 64;
81430 	long: 64;
81431 	long: 64;
81432 	long: 64;
81433 	long: 64;
81434 	long: 64;
81435 	long: 64;
81436 	long: 64;
81437 	long: 64;
81438 	long: 64;
81439 	long: 64;
81440 	long: 64;
81441 	long: 64;
81442 	long: 64;
81443 	long: 64;
81444 	long: 64;
81445 	long: 64;
81446 	long: 64;
81447 	long: 64;
81448 	long: 64;
81449 	long: 64;
81450 	long: 64;
81451 	long: 64;
81452 	long: 64;
81453 	long: 64;
81454 	long: 64;
81455 	long: 64;
81456 	long: 64;
81457 	long: 64;
81458 	long: 64;
81459 	long: 64;
81460 	long: 64;
81461 	long: 64;
81462 	long: 64;
81463 	long: 64;
81464 	long: 64;
81465 	long: 64;
81466 	long: 64;
81467 	long: 64;
81468 	long: 64;
81469 	long: 64;
81470 	long: 64;
81471 	long: 64;
81472 	long: 64;
81473 	long: 64;
81474 	long: 64;
81475 	long: 64;
81476 	long: 64;
81477 	long: 64;
81478 	long: 64;
81479 	long: 64;
81480 	long: 64;
81481 	long: 64;
81482 	long: 64;
81483 	long: 64;
81484 	long: 64;
81485 	long: 64;
81486 	long: 64;
81487 	long: 64;
81488 	long: 64;
81489 	long: 64;
81490 	long: 64;
81491 	long: 64;
81492 	long: 64;
81493 	long: 64;
81494 	long: 64;
81495 	long: 64;
81496 	long: 64;
81497 	long: 64;
81498 	long: 64;
81499 	long: 64;
81500 	long: 64;
81501 	long: 64;
81502 	long: 64;
81503 	long: 64;
81504 	long: 64;
81505 	long: 64;
81506 	long: 64;
81507 	long: 64;
81508 	long: 64;
81509 	long: 64;
81510 	long: 64;
81511 	long: 64;
81512 	long: 64;
81513 	long: 64;
81514 	long: 64;
81515 	long: 64;
81516 	long: 64;
81517 	long: 64;
81518 	long: 64;
81519 	long: 64;
81520 	long: 64;
81521 	long: 64;
81522 	long: 64;
81523 	long: 64;
81524 	long: 64;
81525 	long: 64;
81526 	long: 64;
81527 	long: 64;
81528 	long: 64;
81529 	long: 64;
81530 	long: 64;
81531 	long: 64;
81532 	long: 64;
81533 	long: 64;
81534 	long: 64;
81535 	long: 64;
81536 	long: 64;
81537 	long: 64;
81538 	long: 64;
81539 	long: 64;
81540 	long: 64;
81541 	long: 64;
81542 	long: 64;
81543 	long: 64;
81544 	long: 64;
81545 	long: 64;
81546 	long: 64;
81547 	long: 64;
81548 	long: 64;
81549 	long: 64;
81550 	long: 64;
81551 	long: 64;
81552 	long: 64;
81553 	long: 64;
81554 	long: 64;
81555 	long: 64;
81556 	long: 64;
81557 	long: 64;
81558 	long: 64;
81559 	long: 64;
81560 	long: 64;
81561 	long: 64;
81562 	long: 64;
81563 	long: 64;
81564 	long: 64;
81565 	long: 64;
81566 	long: 64;
81567 	long: 64;
81568 	long: 64;
81569 	long: 64;
81570 	long: 64;
81571 	long: 64;
81572 	long: 64;
81573 	long: 64;
81574 	long: 64;
81575 	long: 64;
81576 	long: 64;
81577 	long: 64;
81578 	long: 64;
81579 	long: 64;
81580 	long: 64;
81581 	long: 64;
81582 	long: 64;
81583 	long: 64;
81584 	long: 64;
81585 	long: 64;
81586 	long: 64;
81587 	long: 64;
81588 	long: 64;
81589 	long: 64;
81590 	long: 64;
81591 	long: 64;
81592 	long: 64;
81593 	long: 64;
81594 	long: 64;
81595 	long: 64;
81596 	long: 64;
81597 	long: 64;
81598 	long: 64;
81599 	long: 64;
81600 	long: 64;
81601 	long: 64;
81602 	long: 64;
81603 	long: 64;
81604 	long: 64;
81605 	long: 64;
81606 	long: 64;
81607 	long: 64;
81608 	long: 64;
81609 	long: 64;
81610 	long: 64;
81611 	long: 64;
81612 	long: 64;
81613 	long: 64;
81614 	long: 64;
81615 	long: 64;
81616 	long: 64;
81617 	long: 64;
81618 	long: 64;
81619 	long: 64;
81620 	long: 64;
81621 	long: 64;
81622 	long: 64;
81623 	long: 64;
81624 	long: 64;
81625 	long: 64;
81626 	long: 64;
81627 	long: 64;
81628 	long: 64;
81629 	long: 64;
81630 	long: 64;
81631 	long: 64;
81632 	long: 64;
81633 	long: 64;
81634 	long: 64;
81635 	long: 64;
81636 	long: 64;
81637 	long: 64;
81638 	long: 64;
81639 	long: 64;
81640 	long: 64;
81641 	long: 64;
81642 	long: 64;
81643 	long: 64;
81644 	long: 64;
81645 	long: 64;
81646 	long: 64;
81647 	long: 64;
81648 	long: 64;
81649 	long: 64;
81650 	long: 64;
81651 	long: 64;
81652 	long: 64;
81653 	long: 64;
81654 	long: 64;
81655 	long: 64;
81656 	long: 64;
81657 	long: 64;
81658 	long: 64;
81659 	long: 64;
81660 	long: 64;
81661 	long: 64;
81662 	long: 64;
81663 	long: 64;
81664 	long: 64;
81665 	long: 64;
81666 	long: 64;
81667 	long: 64;
81668 	long: 64;
81669 	long: 64;
81670 	long: 64;
81671 	long: 64;
81672 	long: 64;
81673 	long: 64;
81674 	long: 64;
81675 	long: 64;
81676 	long: 64;
81677 	long: 64;
81678 	long: 64;
81679 	long: 64;
81680 	long: 64;
81681 	long: 64;
81682 	long: 64;
81683 	long: 64;
81684 	long: 64;
81685 	long: 64;
81686 	long: 64;
81687 	long: 64;
81688 	long: 64;
81689 	long: 64;
81690 	long: 64;
81691 	long: 64;
81692 	long: 64;
81693 	long: 64;
81694 	long: 64;
81695 	long: 64;
81696 	long: 64;
81697 	long: 64;
81698 	long: 64;
81699 	long: 64;
81700 	long: 64;
81701 	long: 64;
81702 	long: 64;
81703 	long: 64;
81704 	long: 64;
81705 	long: 64;
81706 	long: 64;
81707 	long: 64;
81708 	long: 64;
81709 	long: 64;
81710 	long: 64;
81711 	long: 64;
81712 	long: 64;
81713 	long: 64;
81714 	long: 64;
81715 	long: 64;
81716 	long: 64;
81717 	long: 64;
81718 	long: 64;
81719 	long: 64;
81720 	long: 64;
81721 	long: 64;
81722 	long: 64;
81723 	long: 64;
81724 	long: 64;
81725 	long: 64;
81726 	long: 64;
81727 	long: 64;
81728 	long: 64;
81729 	long: 64;
81730 	long: 64;
81731 	long: 64;
81732 	long: 64;
81733 	long: 64;
81734 	long: 64;
81735 	long: 64;
81736 	long: 64;
81737 	long: 64;
81738 	long: 64;
81739 	long: 64;
81740 	long: 64;
81741 	long: 64;
81742 	long: 64;
81743 	long: 64;
81744 	long: 64;
81745 	long: 64;
81746 	long: 64;
81747 	long: 64;
81748 	long: 64;
81749 	long: 64;
81750 	long: 64;
81751 	long: 64;
81752 	long: 64;
81753 	long: 64;
81754 	long: 64;
81755 	long: 64;
81756 	long: 64;
81757 	long: 64;
81758 	long: 64;
81759 	long: 64;
81760 	long: 64;
81761 	long: 64;
81762 	long: 64;
81763 	long: 64;
81764 	long: 64;
81765 	long: 64;
81766 	long: 64;
81767 	long: 64;
81768 	long: 64;
81769 	long: 64;
81770 	long: 64;
81771 	long: 64;
81772 	long: 64;
81773 	long: 64;
81774 	long: 64;
81775 	long: 64;
81776 	long: 64;
81777 	long: 64;
81778 	long: 64;
81779 	long: 64;
81780 	long: 64;
81781 	long: 64;
81782 	long: 64;
81783 	long: 64;
81784 	long: 64;
81785 	long: 64;
81786 	long: 64;
81787 	long: 64;
81788 	long: 64;
81789 	long: 64;
81790 	long: 64;
81791 	long: 64;
81792 	long: 64;
81793 	long: 64;
81794 	long: 64;
81795 	long: 64;
81796 	long: 64;
81797 	long: 64;
81798 	long: 64;
81799 	long: 64;
81800 	long: 64;
81801 	long: 64;
81802 	long: 64;
81803 	long: 64;
81804 	long: 64;
81805 	long: 64;
81806 	long: 64;
81807 	long: 64;
81808 	long: 64;
81809 	long: 64;
81810 	long: 64;
81811 	long: 64;
81812 	long: 64;
81813 	long: 64;
81814 	long: 64;
81815 	long: 64;
81816 	long: 64;
81817 	long: 64;
81818 	long: 64;
81819 	long: 64;
81820 	long: 64;
81821 	long: 64;
81822 	long: 64;
81823 	long: 64;
81824 	long: 64;
81825 	long: 64;
81826 	long: 64;
81827 	long: 64;
81828 	long: 64;
81829 	long: 64;
81830 	long: 64;
81831 	long: 64;
81832 	long: 64;
81833 	long: 64;
81834 	long: 64;
81835 	long: 64;
81836 	long: 64;
81837 	long: 64;
81838 	long: 64;
81839 	long: 64;
81840 	long: 64;
81841 	long: 64;
81842 	long: 64;
81843 	long: 64;
81844 	long: 64;
81845 	long: 64;
81846 	long: 64;
81847 	long: 64;
81848 	long: 64;
81849 	long: 64;
81850 	long: 64;
81851 	long: 64;
81852 	long: 64;
81853 	long: 64;
81854 	long: 64;
81855 	long: 64;
81856 	long: 64;
81857 	long: 64;
81858 	long: 64;
81859 	long: 64;
81860 	long: 64;
81861 	long: 64;
81862 	long: 64;
81863 	long: 64;
81864 	long: 64;
81865 	long: 64;
81866 	long: 64;
81867 	long: 64;
81868 	long: 64;
81869 	long: 64;
81870 	long: 64;
81871 	long: 64;
81872 	long: 64;
81873 	long: 64;
81874 	long: 64;
81875 	long: 64;
81876 	long: 64;
81877 	long: 64;
81878 	long: 64;
81879 	long: 64;
81880 	long: 64;
81881 	long: 64;
81882 	long: 64;
81883 	long: 64;
81884 	long: 64;
81885 	long: 64;
81886 	long: 64;
81887 	long: 64;
81888 	long: 64;
81889 	long: 64;
81890 	long: 64;
81891 	long: 64;
81892 	long: 64;
81893 	long: 64;
81894 	long: 64;
81895 	long: 64;
81896 	long: 64;
81897 	long: 64;
81898 	long: 64;
81899 	long: 64;
81900 	long: 64;
81901 	long: 64;
81902 	long: 64;
81903 	long: 64;
81904 	long: 64;
81905 	long: 64;
81906 	long: 64;
81907 	long: 64;
81908 	long: 64;
81909 	long: 64;
81910 	long: 64;
81911 	long: 64;
81912 	long: 64;
81913 	long: 64;
81914 	long: 64;
81915 	long: 64;
81916 	long: 64;
81917 	long: 64;
81918 	long: 64;
81919 	long: 64;
81920 	long: 64;
81921 	long: 64;
81922 	long: 64;
81923 	long: 64;
81924 	long: 64;
81925 	long: 64;
81926 	long: 64;
81927 	long: 64;
81928 	long: 64;
81929 	long: 64;
81930 	long: 64;
81931 	long: 64;
81932 	long: 64;
81933 	long: 64;
81934 	long: 64;
81935 	long: 64;
81936 	long: 64;
81937 	long: 64;
81938 	long: 64;
81939 	long: 64;
81940 	long: 64;
81941 	long: 64;
81942 	long: 64;
81943 	long: 64;
81944 	long: 64;
81945 	long: 64;
81946 	long: 64;
81947 	long: 64;
81948 	long: 64;
81949 	long: 64;
81950 	long: 64;
81951 	long: 64;
81952 	long: 64;
81953 	long: 64;
81954 	long: 64;
81955 	long: 64;
81956 	long: 64;
81957 	long: 64;
81958 	long: 64;
81959 	long: 64;
81960 	long: 64;
81961 	long: 64;
81962 	long: 64;
81963 	long: 64;
81964 	long: 64;
81965 	long: 64;
81966 	long: 64;
81967 	long: 64;
81968 	long: 64;
81969 	long: 64;
81970 	long: 64;
81971 	long: 64;
81972 	long: 64;
81973 	long: 64;
81974 	long: 64;
81975 	long: 64;
81976 	long: 64;
81977 	long: 64;
81978 	long: 64;
81979 	long: 64;
81980 	long: 64;
81981 	long: 64;
81982 	long: 64;
81983 	long: 64;
81984 	long: 64;
81985 	long: 64;
81986 	long: 64;
81987 	long: 64;
81988 	long: 64;
81989 	long: 64;
81990 	long: 64;
81991 	long: 64;
81992 	long: 64;
81993 	long: 64;
81994 	long: 64;
81995 	long: 64;
81996 	long: 64;
81997 	long: 64;
81998 	long: 64;
81999 	long: 64;
82000 	long: 64;
82001 	long: 64;
82002 	long: 64;
82003 	long: 64;
82004 	long: 64;
82005 	long: 64;
82006 	long: 64;
82007 	long: 64;
82008 	long: 64;
82009 	long: 64;
82010 	long: 64;
82011 	long: 64;
82012 	long: 64;
82013 	long: 64;
82014 	long: 64;
82015 	long: 64;
82016 	long: 64;
82017 	long: 64;
82018 	long: 64;
82019 	long: 64;
82020 	long: 64;
82021 	long: 64;
82022 	long: 64;
82023 	long: 64;
82024 	long: 64;
82025 	long: 64;
82026 	long: 64;
82027 	long: 64;
82028 	long: 64;
82029 	long: 64;
82030 	long: 64;
82031 	long: 64;
82032 	long: 64;
82033 	long: 64;
82034 	long: 64;
82035 	long: 64;
82036 	long: 64;
82037 	long: 64;
82038 	long: 64;
82039 	long: 64;
82040 	long: 64;
82041 	long: 64;
82042 	long: 64;
82043 	long: 64;
82044 	long: 64;
82045 	long: 64;
82046 	long: 64;
82047 	long: 64;
82048 	long: 64;
82049 	long: 64;
82050 	long: 64;
82051 	long: 64;
82052 	long: 64;
82053 	long: 64;
82054 	long: 64;
82055 	long: 64;
82056 	long: 64;
82057 	long: 64;
82058 	long: 64;
82059 	long: 64;
82060 	long: 64;
82061 	long: 64;
82062 	long: 64;
82063 	long: 64;
82064 	long: 64;
82065 	long: 64;
82066 	long: 64;
82067 	long: 64;
82068 	long: 64;
82069 	long: 64;
82070 	long: 64;
82071 	long: 64;
82072 	long: 64;
82073 	long: 64;
82074 	long: 64;
82075 	long: 64;
82076 	long: 64;
82077 	long: 64;
82078 	long: 64;
82079 	long: 64;
82080 	long: 64;
82081 	long: 64;
82082 	long: 64;
82083 	long: 64;
82084 	long: 64;
82085 	long: 64;
82086 	long: 64;
82087 	long: 64;
82088 	long: 64;
82089 	long: 64;
82090 	long: 64;
82091 	long: 64;
82092 	long: 64;
82093 	long: 64;
82094 	long: 64;
82095 	long: 64;
82096 	long: 64;
82097 	long: 64;
82098 	long: 64;
82099 	long: 64;
82100 	long: 64;
82101 	long: 64;
82102 	long: 64;
82103 	long: 64;
82104 	long: 64;
82105 	long: 64;
82106 	long: 64;
82107 	long: 64;
82108 	long: 64;
82109 	long: 64;
82110 	long: 64;
82111 	long: 64;
82112 	long: 64;
82113 	long: 64;
82114 	long: 64;
82115 	long: 64;
82116 	long: 64;
82117 	long: 64;
82118 	long: 64;
82119 	long: 64;
82120 	long: 64;
82121 	long: 64;
82122 	long: 64;
82123 	long: 64;
82124 	long: 64;
82125 	long: 64;
82126 	long: 64;
82127 	long: 64;
82128 	long: 64;
82129 	long: 64;
82130 	long: 64;
82131 	long: 64;
82132 	long: 64;
82133 	long: 64;
82134 	long: 64;
82135 	long: 64;
82136 	long: 64;
82137 	long: 64;
82138 	long: 64;
82139 	long: 64;
82140 	long: 64;
82141 	long: 64;
82142 	long: 64;
82143 	long: 64;
82144 	long: 64;
82145 	long: 64;
82146 	long: 64;
82147 	long: 64;
82148 	long: 64;
82149 	long: 64;
82150 	long: 64;
82151 	long: 64;
82152 	long: 64;
82153 	long: 64;
82154 	long: 64;
82155 	long: 64;
82156 	long: 64;
82157 	long: 64;
82158 	long: 64;
82159 	long: 64;
82160 	long: 64;
82161 	long: 64;
82162 	long: 64;
82163 	long: 64;
82164 	long: 64;
82165 	long: 64;
82166 	long: 64;
82167 	long: 64;
82168 	long: 64;
82169 	long: 64;
82170 	long: 64;
82171 	long: 64;
82172 	long: 64;
82173 	long: 64;
82174 	long: 64;
82175 	long: 64;
82176 	long: 64;
82177 	long: 64;
82178 	long: 64;
82179 	long: 64;
82180 	long: 64;
82181 	long: 64;
82182 	long: 64;
82183 	long: 64;
82184 	long: 64;
82185 	long: 64;
82186 	long: 64;
82187 	long: 64;
82188 	long: 64;
82189 	long: 64;
82190 	long: 64;
82191 	long: 64;
82192 	long: 64;
82193 	long: 64;
82194 	long: 64;
82195 	long: 64;
82196 	long: 64;
82197 	long: 64;
82198 	long: 64;
82199 	long: 64;
82200 	long: 64;
82201 	long: 64;
82202 	long: 64;
82203 	long: 64;
82204 	long: 64;
82205 	long: 64;
82206 	long: 64;
82207 	long: 64;
82208 	long: 64;
82209 	long: 64;
82210 	long: 64;
82211 	long: 64;
82212 	long: 64;
82213 	long: 64;
82214 	long: 64;
82215 	long: 64;
82216 	long: 64;
82217 	long: 64;
82218 	long: 64;
82219 	long: 64;
82220 	long: 64;
82221 	long: 64;
82222 	long: 64;
82223 	long: 64;
82224 	long: 64;
82225 	long: 64;
82226 	long: 64;
82227 	long: 64;
82228 	long: 64;
82229 	long: 64;
82230 	long: 64;
82231 	long: 64;
82232 	long: 64;
82233 	long: 64;
82234 	long: 64;
82235 	long: 64;
82236 	long: 64;
82237 	long: 64;
82238 	long: 64;
82239 	long: 64;
82240 	long: 64;
82241 	long: 64;
82242 	long: 64;
82243 	long: 64;
82244 	long: 64;
82245 	long: 64;
82246 	long: 64;
82247 	long: 64;
82248 	long: 64;
82249 	long: 64;
82250 	long: 64;
82251 	long: 64;
82252 	long: 64;
82253 	long: 64;
82254 	long: 64;
82255 	long: 64;
82256 	long: 64;
82257 	long: 64;
82258 	long: 64;
82259 	long: 64;
82260 	long: 64;
82261 	long: 64;
82262 	long: 64;
82263 	long: 64;
82264 	long: 64;
82265 	long: 64;
82266 	long: 64;
82267 	long: 64;
82268 	long: 64;
82269 	long: 64;
82270 	long: 64;
82271 	long: 64;
82272 	long: 64;
82273 	long: 64;
82274 	long: 64;
82275 	long: 64;
82276 	long: 64;
82277 	long: 64;
82278 	long: 64;
82279 	long: 64;
82280 	long: 64;
82281 	long: 64;
82282 	long: 64;
82283 	long: 64;
82284 	long: 64;
82285 	long: 64;
82286 	long: 64;
82287 	long: 64;
82288 	long: 64;
82289 	long: 64;
82290 	long: 64;
82291 	long: 64;
82292 	long: 64;
82293 	long: 64;
82294 	long: 64;
82295 	long: 64;
82296 	long: 64;
82297 	long: 64;
82298 	long: 64;
82299 	long: 64;
82300 	long: 64;
82301 	long: 64;
82302 	long: 64;
82303 	long: 64;
82304 	long: 64;
82305 	long: 64;
82306 	long: 64;
82307 	long: 64;
82308 	long: 64;
82309 	long: 64;
82310 	long: 64;
82311 	long: 64;
82312 	long: 64;
82313 	long: 64;
82314 	long: 64;
82315 	long: 64;
82316 	long: 64;
82317 	long: 64;
82318 	long: 64;
82319 	long: 64;
82320 	long: 64;
82321 	long: 64;
82322 	long: 64;
82323 	long: 64;
82324 	long: 64;
82325 	long: 64;
82326 	long: 64;
82327 	long: 64;
82328 	long: 64;
82329 	long: 64;
82330 	long: 64;
82331 	long: 64;
82332 	long: 64;
82333 	long: 64;
82334 	long: 64;
82335 	long: 64;
82336 	long: 64;
82337 	long: 64;
82338 	long: 64;
82339 	long: 64;
82340 	long: 64;
82341 	long: 64;
82342 	long: 64;
82343 	long: 64;
82344 	long: 64;
82345 	long: 64;
82346 	long: 64;
82347 	long: 64;
82348 	long: 64;
82349 	long: 64;
82350 	long: 64;
82351 	long: 64;
82352 	long: 64;
82353 	long: 64;
82354 	long: 64;
82355 	long: 64;
82356 	long: 64;
82357 	long: 64;
82358 	long: 64;
82359 	long: 64;
82360 	long: 64;
82361 	long: 64;
82362 	long: 64;
82363 	long: 64;
82364 	long: 64;
82365 	long: 64;
82366 	long: 64;
82367 	long: 64;
82368 	long: 64;
82369 	long: 64;
82370 	long: 64;
82371 	long: 64;
82372 	long: 64;
82373 	long: 64;
82374 	long: 64;
82375 	long: 64;
82376 	long: 64;
82377 	long: 64;
82378 	long: 64;
82379 	long: 64;
82380 	long: 64;
82381 	long: 64;
82382 	long: 64;
82383 	long: 64;
82384 	long: 64;
82385 	long: 64;
82386 	long: 64;
82387 	long: 64;
82388 	long: 64;
82389 	long: 64;
82390 	long: 64;
82391 	long: 64;
82392 	long: 64;
82393 	long: 64;
82394 	long: 64;
82395 	long: 64;
82396 	long: 64;
82397 	long: 64;
82398 	long: 64;
82399 	long: 64;
82400 	long: 64;
82401 	long: 64;
82402 	long: 64;
82403 	long: 64;
82404 	long: 64;
82405 	long: 64;
82406 	long: 64;
82407 	long: 64;
82408 	long: 64;
82409 	long: 64;
82410 	long: 64;
82411 	long: 64;
82412 	long: 64;
82413 	long: 64;
82414 	long: 64;
82415 	long: 64;
82416 	long: 64;
82417 	long: 64;
82418 	long: 64;
82419 	long: 64;
82420 	long: 64;
82421 	long: 64;
82422 	long: 64;
82423 	long: 64;
82424 	long: 64;
82425 	long: 64;
82426 	long: 64;
82427 	long: 64;
82428 	long: 64;
82429 	long: 64;
82430 	long: 64;
82431 	long: 64;
82432 	long: 64;
82433 	long: 64;
82434 	long: 64;
82435 	long: 64;
82436 	long: 64;
82437 	long: 64;
82438 	long: 64;
82439 	long: 64;
82440 	long: 64;
82441 	long: 64;
82442 	long: 64;
82443 	long: 64;
82444 	long: 64;
82445 	long: 64;
82446 	long: 64;
82447 	long: 64;
82448 	long: 64;
82449 	long: 64;
82450 	long: 64;
82451 	long: 64;
82452 	long: 64;
82453 	long: 64;
82454 	long: 64;
82455 	long: 64;
82456 	long: 64;
82457 	long: 64;
82458 	long: 64;
82459 	long: 64;
82460 	long: 64;
82461 	long: 64;
82462 	long: 64;
82463 	long: 64;
82464 	long: 64;
82465 	long: 64;
82466 	long: 64;
82467 	long: 64;
82468 	long: 64;
82469 	long: 64;
82470 	long: 64;
82471 	long: 64;
82472 	long: 64;
82473 	long: 64;
82474 	long: 64;
82475 	long: 64;
82476 	long: 64;
82477 	long: 64;
82478 	long: 64;
82479 	long: 64;
82480 	long: 64;
82481 	long: 64;
82482 	long: 64;
82483 	long: 64;
82484 	long: 64;
82485 	long: 64;
82486 	long: 64;
82487 	long: 64;
82488 	long: 64;
82489 	long: 64;
82490 	long: 64;
82491 	long: 64;
82492 	long: 64;
82493 	long: 64;
82494 	long: 64;
82495 	long: 64;
82496 	long: 64;
82497 	long: 64;
82498 	long: 64;
82499 	long: 64;
82500 	long: 64;
82501 	long: 64;
82502 	long: 64;
82503 	long: 64;
82504 	long: 64;
82505 	long: 64;
82506 	long: 64;
82507 	long: 64;
82508 	long: 64;
82509 	long: 64;
82510 	long: 64;
82511 	long: 64;
82512 	long: 64;
82513 	long: 64;
82514 	long: 64;
82515 	long: 64;
82516 	long: 64;
82517 	long: 64;
82518 	long: 64;
82519 	long: 64;
82520 	long: 64;
82521 	long: 64;
82522 	long: 64;
82523 	long: 64;
82524 	long: 64;
82525 	long: 64;
82526 	long: 64;
82527 	long: 64;
82528 	long: 64;
82529 	long: 64;
82530 	long: 64;
82531 	long: 64;
82532 	long: 64;
82533 	long: 64;
82534 	long: 64;
82535 	long: 64;
82536 	long: 64;
82537 	long: 64;
82538 	long: 64;
82539 	long: 64;
82540 	long: 64;
82541 	long: 64;
82542 	long: 64;
82543 	long: 64;
82544 	long: 64;
82545 	long: 64;
82546 	long: 64;
82547 	long: 64;
82548 	long: 64;
82549 	long: 64;
82550 	long: 64;
82551 	long: 64;
82552 	long: 64;
82553 	long: 64;
82554 	long: 64;
82555 	long: 64;
82556 	long: 64;
82557 	long: 64;
82558 	long: 64;
82559 	long: 64;
82560 	long: 64;
82561 	long: 64;
82562 	long: 64;
82563 	long: 64;
82564 	long: 64;
82565 	long: 64;
82566 	long: 64;
82567 	long: 64;
82568 	long: 64;
82569 	long: 64;
82570 	long: 64;
82571 	long: 64;
82572 	long: 64;
82573 	long: 64;
82574 	long: 64;
82575 	long: 64;
82576 	long: 64;
82577 	long: 64;
82578 	long: 64;
82579 	long: 64;
82580 	long: 64;
82581 	long: 64;
82582 	long: 64;
82583 	long: 64;
82584 	long: 64;
82585 	long: 64;
82586 	long: 64;
82587 	long: 64;
82588 	long: 64;
82589 	long: 64;
82590 	long: 64;
82591 	long: 64;
82592 	long: 64;
82593 	long: 64;
82594 	long: 64;
82595 	long: 64;
82596 	long: 64;
82597 	long: 64;
82598 	long: 64;
82599 	long: 64;
82600 	long: 64;
82601 	long: 64;
82602 	long: 64;
82603 	long: 64;
82604 	long: 64;
82605 	long: 64;
82606 	long: 64;
82607 	long: 64;
82608 	long: 64;
82609 	long: 64;
82610 	long: 64;
82611 	long: 64;
82612 	long: 64;
82613 	long: 64;
82614 	long: 64;
82615 	long: 64;
82616 	long: 64;
82617 	long: 64;
82618 	long: 64;
82619 	long: 64;
82620 	long: 64;
82621 	long: 64;
82622 	long: 64;
82623 	long: 64;
82624 	long: 64;
82625 	long: 64;
82626 	long: 64;
82627 	long: 64;
82628 	long: 64;
82629 	long: 64;
82630 	long: 64;
82631 	long: 64;
82632 	long: 64;
82633 	long: 64;
82634 	long: 64;
82635 	long: 64;
82636 	long: 64;
82637 	long: 64;
82638 	long: 64;
82639 	long: 64;
82640 	long: 64;
82641 	long: 64;
82642 	long: 64;
82643 	long: 64;
82644 	long: 64;
82645 	long: 64;
82646 	long: 64;
82647 	long: 64;
82648 	long: 64;
82649 	long: 64;
82650 	long: 64;
82651 	long: 64;
82652 	long: 64;
82653 	long: 64;
82654 	long: 64;
82655 	long: 64;
82656 	long: 64;
82657 	long: 64;
82658 	long: 64;
82659 	long: 64;
82660 	long: 64;
82661 	long: 64;
82662 	long: 64;
82663 	long: 64;
82664 	long: 64;
82665 	long: 64;
82666 	long: 64;
82667 	long: 64;
82668 	long: 64;
82669 	long: 64;
82670 	long: 64;
82671 	long: 64;
82672 	long: 64;
82673 	long: 64;
82674 	long: 64;
82675 	long: 64;
82676 	long: 64;
82677 	long: 64;
82678 	long: 64;
82679 	long: 64;
82680 	long: 64;
82681 	long: 64;
82682 	long: 64;
82683 	long: 64;
82684 	long: 64;
82685 	long: 64;
82686 	long: 64;
82687 	long: 64;
82688 	long: 64;
82689 	long: 64;
82690 	long: 64;
82691 	long: 64;
82692 	long: 64;
82693 	long: 64;
82694 	long: 64;
82695 	long: 64;
82696 	long: 64;
82697 	long: 64;
82698 	long: 64;
82699 	long: 64;
82700 	long: 64;
82701 	long: 64;
82702 	long: 64;
82703 	long: 64;
82704 	long: 64;
82705 	long: 64;
82706 	long: 64;
82707 	long: 64;
82708 	long: 64;
82709 	long: 64;
82710 	long: 64;
82711 	long: 64;
82712 	long: 64;
82713 	long: 64;
82714 	long: 64;
82715 	long: 64;
82716 	long: 64;
82717 	long: 64;
82718 	long: 64;
82719 	long: 64;
82720 	long: 64;
82721 	long: 64;
82722 	long: 64;
82723 	long: 64;
82724 	long: 64;
82725 	long: 64;
82726 	long: 64;
82727 	long: 64;
82728 	long: 64;
82729 	long: 64;
82730 	long: 64;
82731 	long: 64;
82732 	long: 64;
82733 	long: 64;
82734 	long: 64;
82735 	long: 64;
82736 	long: 64;
82737 	long: 64;
82738 	long: 64;
82739 	long: 64;
82740 	long: 64;
82741 	long: 64;
82742 	long: 64;
82743 	long: 64;
82744 	long: 64;
82745 	long: 64;
82746 	long: 64;
82747 	long: 64;
82748 	long: 64;
82749 	long: 64;
82750 	long: 64;
82751 	long: 64;
82752 	long: 64;
82753 	long: 64;
82754 	long: 64;
82755 	long: 64;
82756 	long: 64;
82757 	long: 64;
82758 	long: 64;
82759 	long: 64;
82760 	long: 64;
82761 	long: 64;
82762 	long: 64;
82763 	long: 64;
82764 	long: 64;
82765 	long: 64;
82766 	long: 64;
82767 	long: 64;
82768 	long: 64;
82769 	long: 64;
82770 	long: 64;
82771 	long: 64;
82772 	long: 64;
82773 	long: 64;
82774 	long: 64;
82775 	long: 64;
82776 	long: 64;
82777 	long: 64;
82778 	long: 64;
82779 	long: 64;
82780 	long: 64;
82781 	long: 64;
82782 	long: 64;
82783 	long: 64;
82784 	long: 64;
82785 	long: 64;
82786 	long: 64;
82787 	long: 64;
82788 	long: 64;
82789 	long: 64;
82790 	long: 64;
82791 	long: 64;
82792 	long: 64;
82793 	long: 64;
82794 	long: 64;
82795 	long: 64;
82796 	long: 64;
82797 	long: 64;
82798 	long: 64;
82799 	long: 64;
82800 	long: 64;
82801 	long: 64;
82802 	long: 64;
82803 	long: 64;
82804 	long: 64;
82805 	long: 64;
82806 	long: 64;
82807 	long: 64;
82808 	long: 64;
82809 	long: 64;
82810 	long: 64;
82811 	long: 64;
82812 	long: 64;
82813 	long: 64;
82814 	long: 64;
82815 	long: 64;
82816 	long: 64;
82817 	long: 64;
82818 	long: 64;
82819 	long: 64;
82820 	long: 64;
82821 	long: 64;
82822 	long: 64;
82823 	long: 64;
82824 	long: 64;
82825 	long: 64;
82826 	long: 64;
82827 	long: 64;
82828 	long: 64;
82829 	long: 64;
82830 	long: 64;
82831 	long: 64;
82832 	long: 64;
82833 	long: 64;
82834 	long: 64;
82835 	long: 64;
82836 	long: 64;
82837 	long: 64;
82838 	long: 64;
82839 	long: 64;
82840 	long: 64;
82841 	long: 64;
82842 	long: 64;
82843 	long: 64;
82844 	long: 64;
82845 	long: 64;
82846 	long: 64;
82847 	long: 64;
82848 	long: 64;
82849 	long: 64;
82850 	long: 64;
82851 	long: 64;
82852 	long: 64;
82853 	long: 64;
82854 	long: 64;
82855 	long: 64;
82856 	long: 64;
82857 	long: 64;
82858 	long: 64;
82859 	long: 64;
82860 	long: 64;
82861 	long: 64;
82862 	long: 64;
82863 	long: 64;
82864 	long: 64;
82865 	long: 64;
82866 	long: 64;
82867 	long: 64;
82868 	long: 64;
82869 	long: 64;
82870 	long: 64;
82871 	long: 64;
82872 	long: 64;
82873 	long: 64;
82874 	long: 64;
82875 	long: 64;
82876 	long: 64;
82877 	long: 64;
82878 	long: 64;
82879 	long: 64;
82880 	long: 64;
82881 	long: 64;
82882 	long: 64;
82883 	long: 64;
82884 	long: 64;
82885 	long: 64;
82886 	long: 64;
82887 	long: 64;
82888 	long: 64;
82889 	long: 64;
82890 	long: 64;
82891 	long: 64;
82892 	long: 64;
82893 	long: 64;
82894 	long: 64;
82895 	long: 64;
82896 	long: 64;
82897 	long: 64;
82898 	long: 64;
82899 	long: 64;
82900 	long: 64;
82901 	long: 64;
82902 	long: 64;
82903 	long: 64;
82904 	long: 64;
82905 	long: 64;
82906 	long: 64;
82907 	long: 64;
82908 	long: 64;
82909 	long: 64;
82910 	long: 64;
82911 	long: 64;
82912 	long: 64;
82913 	long: 64;
82914 	long: 64;
82915 	long: 64;
82916 	long: 64;
82917 	long: 64;
82918 	long: 64;
82919 	long: 64;
82920 	long: 64;
82921 	long: 64;
82922 	long: 64;
82923 	long: 64;
82924 	long: 64;
82925 	long: 64;
82926 	long: 64;
82927 	long: 64;
82928 	long: 64;
82929 	long: 64;
82930 	long: 64;
82931 	long: 64;
82932 	long: 64;
82933 	long: 64;
82934 	long: 64;
82935 	long: 64;
82936 	long: 64;
82937 	long: 64;
82938 	long: 64;
82939 	long: 64;
82940 	long: 64;
82941 	long: 64;
82942 	long: 64;
82943 	long: 64;
82944 	long: 64;
82945 	long: 64;
82946 	long: 64;
82947 	long: 64;
82948 	long: 64;
82949 	long: 64;
82950 	long: 64;
82951 	long: 64;
82952 	long: 64;
82953 	long: 64;
82954 	long: 64;
82955 	long: 64;
82956 	long: 64;
82957 	long: 64;
82958 	long: 64;
82959 	long: 64;
82960 	long: 64;
82961 	long: 64;
82962 	long: 64;
82963 	long: 64;
82964 	long: 64;
82965 	long: 64;
82966 	long: 64;
82967 	long: 64;
82968 	long: 64;
82969 	long: 64;
82970 	long: 64;
82971 	long: 64;
82972 	long: 64;
82973 	long: 64;
82974 	long: 64;
82975 	long: 64;
82976 	long: 64;
82977 	long: 64;
82978 	long: 64;
82979 	long: 64;
82980 	long: 64;
82981 	long: 64;
82982 	long: 64;
82983 	long: 64;
82984 	long: 64;
82985 	long: 64;
82986 	long: 64;
82987 	long: 64;
82988 	long: 64;
82989 	long: 64;
82990 	long: 64;
82991 	long: 64;
82992 	long: 64;
82993 	long: 64;
82994 	long: 64;
82995 	long: 64;
82996 	long: 64;
82997 	long: 64;
82998 	long: 64;
82999 	long: 64;
83000 	long: 64;
83001 	long: 64;
83002 	long: 64;
83003 	long: 64;
83004 	long: 64;
83005 	long: 64;
83006 	long: 64;
83007 	long: 64;
83008 	long: 64;
83009 	long: 64;
83010 	long: 64;
83011 	long: 64;
83012 	long: 64;
83013 	long: 64;
83014 	long: 64;
83015 	long: 64;
83016 	long: 64;
83017 	long: 64;
83018 	long: 64;
83019 	long: 64;
83020 	long: 64;
83021 	long: 64;
83022 	long: 64;
83023 	long: 64;
83024 	long: 64;
83025 	long: 64;
83026 	long: 64;
83027 	long: 64;
83028 	long: 64;
83029 	long: 64;
83030 	long: 64;
83031 	long: 64;
83032 	long: 64;
83033 	long: 64;
83034 	long: 64;
83035 	long: 64;
83036 	long: 64;
83037 	long: 64;
83038 	long: 64;
83039 	long: 64;
83040 	long: 64;
83041 	long: 64;
83042 	long: 64;
83043 	long: 64;
83044 	long: 64;
83045 	long: 64;
83046 	long: 64;
83047 	long: 64;
83048 	long: 64;
83049 	long: 64;
83050 	long: 64;
83051 	long: 64;
83052 	long: 64;
83053 	long: 64;
83054 	long: 64;
83055 	long: 64;
83056 	long: 64;
83057 	long: 64;
83058 	long: 64;
83059 	long: 64;
83060 	long: 64;
83061 	long: 64;
83062 	long: 64;
83063 	long: 64;
83064 	long: 64;
83065 	long: 64;
83066 	long: 64;
83067 	long: 64;
83068 	long: 64;
83069 	long: 64;
83070 	long: 64;
83071 	long: 64;
83072 	long: 64;
83073 	long: 64;
83074 	long: 64;
83075 	long: 64;
83076 	long: 64;
83077 	long: 64;
83078 	long: 64;
83079 	long: 64;
83080 	long: 64;
83081 	long: 64;
83082 	long: 64;
83083 	long: 64;
83084 	long: 64;
83085 	long: 64;
83086 	long: 64;
83087 	long: 64;
83088 	long: 64;
83089 	long: 64;
83090 	long: 64;
83091 	long: 64;
83092 	long: 64;
83093 	long: 64;
83094 	long: 64;
83095 	long: 64;
83096 	long: 64;
83097 	long: 64;
83098 	long: 64;
83099 	long: 64;
83100 	long: 64;
83101 	long: 64;
83102 	long: 64;
83103 	long: 64;
83104 	long: 64;
83105 	long: 64;
83106 	long: 64;
83107 	long: 64;
83108 	long: 64;
83109 	long: 64;
83110 	long: 64;
83111 	long: 64;
83112 	long: 64;
83113 	long: 64;
83114 	long: 64;
83115 	long: 64;
83116 	long: 64;
83117 	long: 64;
83118 	long: 64;
83119 	long: 64;
83120 	long: 64;
83121 	long: 64;
83122 	long: 64;
83123 	long: 64;
83124 	long: 64;
83125 	long: 64;
83126 	long: 64;
83127 	long: 64;
83128 	long: 64;
83129 	long: 64;
83130 	long: 64;
83131 	long: 64;
83132 	long: 64;
83133 	long: 64;
83134 	long: 64;
83135 	long: 64;
83136 	long: 64;
83137 	long: 64;
83138 	long: 64;
83139 	long: 64;
83140 	long: 64;
83141 	long: 64;
83142 	long: 64;
83143 	long: 64;
83144 	long: 64;
83145 	long: 64;
83146 	long: 64;
83147 	long: 64;
83148 	long: 64;
83149 	long: 64;
83150 	long: 64;
83151 	long: 64;
83152 	long: 64;
83153 	long: 64;
83154 	long: 64;
83155 	long: 64;
83156 	long: 64;
83157 	long: 64;
83158 	long: 64;
83159 	long: 64;
83160 	long: 64;
83161 	long: 64;
83162 	long: 64;
83163 	long: 64;
83164 	long: 64;
83165 	long: 64;
83166 	long: 64;
83167 	long: 64;
83168 	long: 64;
83169 	long: 64;
83170 	long: 64;
83171 	long: 64;
83172 	long: 64;
83173 	long: 64;
83174 	long: 64;
83175 	long: 64;
83176 	long: 64;
83177 	long: 64;
83178 	long: 64;
83179 	long: 64;
83180 	long: 64;
83181 	long: 64;
83182 	long: 64;
83183 	long: 64;
83184 	long: 64;
83185 	long: 64;
83186 	long: 64;
83187 	long: 64;
83188 	long: 64;
83189 	long: 64;
83190 	long: 64;
83191 	long: 64;
83192 	long: 64;
83193 	long: 64;
83194 	long: 64;
83195 	long: 64;
83196 	long: 64;
83197 	long: 64;
83198 	long: 64;
83199 	long: 64;
83200 	long: 64;
83201 	long: 64;
83202 	long: 64;
83203 	long: 64;
83204 	long: 64;
83205 	long: 64;
83206 	long: 64;
83207 	long: 64;
83208 	long: 64;
83209 	long: 64;
83210 	long: 64;
83211 	long: 64;
83212 	long: 64;
83213 	long: 64;
83214 	long: 64;
83215 	long: 64;
83216 	long: 64;
83217 	long: 64;
83218 	long: 64;
83219 	long: 64;
83220 	long: 64;
83221 	long: 64;
83222 	long: 64;
83223 	long: 64;
83224 	long: 64;
83225 	long: 64;
83226 	long: 64;
83227 	long: 64;
83228 	long: 64;
83229 	long: 64;
83230 	long: 64;
83231 	long: 64;
83232 	long: 64;
83233 	long: 64;
83234 	long: 64;
83235 	long: 64;
83236 	long: 64;
83237 	long: 64;
83238 	long: 64;
83239 	long: 64;
83240 	long: 64;
83241 	long: 64;
83242 	long: 64;
83243 	long: 64;
83244 	long: 64;
83245 	long: 64;
83246 	long: 64;
83247 	long: 64;
83248 	long: 64;
83249 	long: 64;
83250 	long: 64;
83251 	long: 64;
83252 	long: 64;
83253 	long: 64;
83254 	long: 64;
83255 	long: 64;
83256 	long: 64;
83257 	long: 64;
83258 	long: 64;
83259 	long: 64;
83260 	long: 64;
83261 	long: 64;
83262 	long: 64;
83263 	long: 64;
83264 	long: 64;
83265 	long: 64;
83266 	long: 64;
83267 	long: 64;
83268 	long: 64;
83269 	long: 64;
83270 	long: 64;
83271 	long: 64;
83272 	long: 64;
83273 	long: 64;
83274 	long: 64;
83275 	long: 64;
83276 	long: 64;
83277 	long: 64;
83278 	long: 64;
83279 	long: 64;
83280 	long: 64;
83281 	long: 64;
83282 	long: 64;
83283 	long: 64;
83284 	long: 64;
83285 	long: 64;
83286 	long: 64;
83287 	long: 64;
83288 	long: 64;
83289 	long: 64;
83290 	long: 64;
83291 	long: 64;
83292 	long: 64;
83293 	long: 64;
83294 	long: 64;
83295 	long: 64;
83296 	long: 64;
83297 	long: 64;
83298 	long: 64;
83299 	long: 64;
83300 	long: 64;
83301 	long: 64;
83302 	long: 64;
83303 	long: 64;
83304 	long: 64;
83305 	long: 64;
83306 	long: 64;
83307 	long: 64;
83308 	long: 64;
83309 	long: 64;
83310 	long: 64;
83311 	long: 64;
83312 	long: 64;
83313 	long: 64;
83314 	long: 64;
83315 	long: 64;
83316 	long: 64;
83317 	long: 64;
83318 	long: 64;
83319 	long: 64;
83320 	long: 64;
83321 	long: 64;
83322 	long: 64;
83323 	long: 64;
83324 	long: 64;
83325 	long: 64;
83326 	long: 64;
83327 	long: 64;
83328 	long: 64;
83329 	long: 64;
83330 	long: 64;
83331 	long: 64;
83332 	long: 64;
83333 	long: 64;
83334 	long: 64;
83335 	long: 64;
83336 	long: 64;
83337 	long: 64;
83338 	long: 64;
83339 	long: 64;
83340 	long: 64;
83341 	long: 64;
83342 	long: 64;
83343 	long: 64;
83344 	long: 64;
83345 	long: 64;
83346 	long: 64;
83347 	long: 64;
83348 	long: 64;
83349 	long: 64;
83350 	long: 64;
83351 	long: 64;
83352 	long: 64;
83353 	long: 64;
83354 	long: 64;
83355 	long: 64;
83356 	long: 64;
83357 	long: 64;
83358 	long: 64;
83359 	long: 64;
83360 	long: 64;
83361 	long: 64;
83362 	long: 64;
83363 	long: 64;
83364 	long: 64;
83365 	long: 64;
83366 	long: 64;
83367 	long: 64;
83368 	long: 64;
83369 	long: 64;
83370 	long: 64;
83371 	long: 64;
83372 	long: 64;
83373 	long: 64;
83374 	long: 64;
83375 	long: 64;
83376 	long: 64;
83377 	long: 64;
83378 	long: 64;
83379 	long: 64;
83380 	long: 64;
83381 	long: 64;
83382 	long: 64;
83383 	long: 64;
83384 	long: 64;
83385 	long: 64;
83386 	long: 64;
83387 	long: 64;
83388 	long: 64;
83389 	long: 64;
83390 	long: 64;
83391 	long: 64;
83392 	long: 64;
83393 	long: 64;
83394 	long: 64;
83395 	long: 64;
83396 	long: 64;
83397 	long: 64;
83398 	long: 64;
83399 	long: 64;
83400 	long: 64;
83401 	long: 64;
83402 	long: 64;
83403 	long: 64;
83404 	long: 64;
83405 	long: 64;
83406 	long: 64;
83407 	long: 64;
83408 	long: 64;
83409 	long: 64;
83410 	long: 64;
83411 	long: 64;
83412 	long: 64;
83413 	long: 64;
83414 	long: 64;
83415 	long: 64;
83416 	long: 64;
83417 	long: 64;
83418 	long: 64;
83419 	long: 64;
83420 	long: 64;
83421 	long: 64;
83422 	long: 64;
83423 	long: 64;
83424 	long: 64;
83425 	long: 64;
83426 	long: 64;
83427 	long: 64;
83428 	long: 64;
83429 	long: 64;
83430 	long: 64;
83431 	long: 64;
83432 	long: 64;
83433 	long: 64;
83434 	long: 64;
83435 	long: 64;
83436 	long: 64;
83437 	long: 64;
83438 	long: 64;
83439 	long: 64;
83440 	long: 64;
83441 	long: 64;
83442 	long: 64;
83443 	long: 64;
83444 	long: 64;
83445 	long: 64;
83446 	long: 64;
83447 	long: 64;
83448 	long: 64;
83449 	long: 64;
83450 	long: 64;
83451 	long: 64;
83452 	long: 64;
83453 	long: 64;
83454 	long: 64;
83455 	long: 64;
83456 	long: 64;
83457 	long: 64;
83458 	long: 64;
83459 	long: 64;
83460 	long: 64;
83461 	long: 64;
83462 	long: 64;
83463 	long: 64;
83464 	long: 64;
83465 	long: 64;
83466 	long: 64;
83467 	long: 64;
83468 	long: 64;
83469 	long: 64;
83470 	long: 64;
83471 	long: 64;
83472 	long: 64;
83473 	long: 64;
83474 	long: 64;
83475 	long: 64;
83476 	long: 64;
83477 	long: 64;
83478 	long: 64;
83479 	long: 64;
83480 	long: 64;
83481 	long: 64;
83482 	long: 64;
83483 	long: 64;
83484 	long: 64;
83485 	long: 64;
83486 	long: 64;
83487 	long: 64;
83488 	long: 64;
83489 	long: 64;
83490 	long: 64;
83491 	long: 64;
83492 	long: 64;
83493 	long: 64;
83494 	long: 64;
83495 	long: 64;
83496 	long: 64;
83497 	long: 64;
83498 	long: 64;
83499 	long: 64;
83500 	long: 64;
83501 	long: 64;
83502 	long: 64;
83503 	long: 64;
83504 	long: 64;
83505 	long: 64;
83506 	long: 64;
83507 	long: 64;
83508 	long: 64;
83509 	long: 64;
83510 	long: 64;
83511 	long: 64;
83512 	long: 64;
83513 	long: 64;
83514 	long: 64;
83515 	long: 64;
83516 	long: 64;
83517 	long: 64;
83518 	long: 64;
83519 	long: 64;
83520 	long: 64;
83521 	long: 64;
83522 	long: 64;
83523 	long: 64;
83524 	long: 64;
83525 	long: 64;
83526 	long: 64;
83527 	long: 64;
83528 	long: 64;
83529 	long: 64;
83530 	long: 64;
83531 	long: 64;
83532 	long: 64;
83533 	long: 64;
83534 	long: 64;
83535 	long: 64;
83536 	long: 64;
83537 	long: 64;
83538 	long: 64;
83539 	long: 64;
83540 	long: 64;
83541 	long: 64;
83542 	long: 64;
83543 	long: 64;
83544 	long: 64;
83545 	long: 64;
83546 	long: 64;
83547 	long: 64;
83548 	long: 64;
83549 	long: 64;
83550 	long: 64;
83551 	long: 64;
83552 	long: 64;
83553 	long: 64;
83554 	long: 64;
83555 	long: 64;
83556 	long: 64;
83557 	long: 64;
83558 	long: 64;
83559 	long: 64;
83560 	long: 64;
83561 	long: 64;
83562 	long: 64;
83563 	long: 64;
83564 	long: 64;
83565 	long: 64;
83566 	long: 64;
83567 	long: 64;
83568 	long: 64;
83569 	long: 64;
83570 	long: 64;
83571 	long: 64;
83572 	long: 64;
83573 	long: 64;
83574 	long: 64;
83575 	long: 64;
83576 	long: 64;
83577 	long: 64;
83578 	long: 64;
83579 	long: 64;
83580 	long: 64;
83581 	long: 64;
83582 	long: 64;
83583 	long: 64;
83584 	long: 64;
83585 	long: 64;
83586 	long: 64;
83587 	long: 64;
83588 	long: 64;
83589 	long: 64;
83590 	long: 64;
83591 	long: 64;
83592 	long: 64;
83593 	long: 64;
83594 	long: 64;
83595 	long: 64;
83596 	long: 64;
83597 	long: 64;
83598 	long: 64;
83599 	long: 64;
83600 	long: 64;
83601 	long: 64;
83602 	long: 64;
83603 	long: 64;
83604 	long: 64;
83605 	long: 64;
83606 	long: 64;
83607 	long: 64;
83608 	long: 64;
83609 	long: 64;
83610 	long: 64;
83611 	long: 64;
83612 	long: 64;
83613 	long: 64;
83614 	long: 64;
83615 	long: 64;
83616 	long: 64;
83617 	long: 64;
83618 	long: 64;
83619 	long: 64;
83620 	long: 64;
83621 	long: 64;
83622 	long: 64;
83623 	long: 64;
83624 	long: 64;
83625 	long: 64;
83626 	long: 64;
83627 	long: 64;
83628 	long: 64;
83629 	long: 64;
83630 	long: 64;
83631 	long: 64;
83632 	long: 64;
83633 	long: 64;
83634 	long: 64;
83635 	long: 64;
83636 	long: 64;
83637 	long: 64;
83638 	long: 64;
83639 	long: 64;
83640 	long: 64;
83641 	long: 64;
83642 	long: 64;
83643 	long: 64;
83644 	long: 64;
83645 	long: 64;
83646 	long: 64;
83647 	long: 64;
83648 	long: 64;
83649 	long: 64;
83650 	long: 64;
83651 	long: 64;
83652 	long: 64;
83653 	long: 64;
83654 	long: 64;
83655 	long: 64;
83656 	long: 64;
83657 	long: 64;
83658 	long: 64;
83659 	long: 64;
83660 	long: 64;
83661 	long: 64;
83662 	long: 64;
83663 	long: 64;
83664 	long: 64;
83665 	long: 64;
83666 	long: 64;
83667 	long: 64;
83668 	long: 64;
83669 	long: 64;
83670 	long: 64;
83671 	long: 64;
83672 	long: 64;
83673 	long: 64;
83674 	long: 64;
83675 	long: 64;
83676 	long: 64;
83677 	long: 64;
83678 	long: 64;
83679 	long: 64;
83680 	long: 64;
83681 	long: 64;
83682 	long: 64;
83683 	long: 64;
83684 	long: 64;
83685 	long: 64;
83686 	long: 64;
83687 	long: 64;
83688 	long: 64;
83689 	long: 64;
83690 	long: 64;
83691 	long: 64;
83692 	long: 64;
83693 	long: 64;
83694 	long: 64;
83695 	long: 64;
83696 	long: 64;
83697 	long: 64;
83698 	long: 64;
83699 	long: 64;
83700 	long: 64;
83701 	long: 64;
83702 	long: 64;
83703 	long: 64;
83704 	long: 64;
83705 	long: 64;
83706 	long: 64;
83707 	long: 64;
83708 	long: 64;
83709 	long: 64;
83710 	long: 64;
83711 	long: 64;
83712 	long: 64;
83713 	long: 64;
83714 	long: 64;
83715 	long: 64;
83716 	long: 64;
83717 	long: 64;
83718 	long: 64;
83719 	long: 64;
83720 	long: 64;
83721 	long: 64;
83722 	long: 64;
83723 	long: 64;
83724 	long: 64;
83725 	long: 64;
83726 	long: 64;
83727 	long: 64;
83728 	long: 64;
83729 	long: 64;
83730 	long: 64;
83731 	long: 64;
83732 	long: 64;
83733 	long: 64;
83734 	long: 64;
83735 	long: 64;
83736 	long: 64;
83737 	long: 64;
83738 	long: 64;
83739 	long: 64;
83740 	long: 64;
83741 	long: 64;
83742 	long: 64;
83743 	long: 64;
83744 	long: 64;
83745 	long: 64;
83746 	long: 64;
83747 	long: 64;
83748 	long: 64;
83749 	long: 64;
83750 	long: 64;
83751 	long: 64;
83752 	long: 64;
83753 	long: 64;
83754 	long: 64;
83755 	long: 64;
83756 	long: 64;
83757 	long: 64;
83758 	long: 64;
83759 	long: 64;
83760 	long: 64;
83761 	long: 64;
83762 	long: 64;
83763 	long: 64;
83764 	long: 64;
83765 	long: 64;
83766 	long: 64;
83767 	long: 64;
83768 	long: 64;
83769 	long: 64;
83770 	long: 64;
83771 	long: 64;
83772 	long: 64;
83773 	long: 64;
83774 	long: 64;
83775 	long: 64;
83776 	long: 64;
83777 	long: 64;
83778 	long: 64;
83779 	long: 64;
83780 	long: 64;
83781 	long: 64;
83782 	long: 64;
83783 	long: 64;
83784 	long: 64;
83785 	long: 64;
83786 	long: 64;
83787 	long: 64;
83788 	long: 64;
83789 	long: 64;
83790 	long: 64;
83791 	long: 64;
83792 	long: 64;
83793 	long: 64;
83794 	long: 64;
83795 	long: 64;
83796 	long: 64;
83797 	long: 64;
83798 	long: 64;
83799 	long: 64;
83800 	long: 64;
83801 	long: 64;
83802 	long: 64;
83803 	long: 64;
83804 	long: 64;
83805 	long: 64;
83806 	long: 64;
83807 	long: 64;
83808 	long: 64;
83809 	long: 64;
83810 	long: 64;
83811 	long: 64;
83812 	long: 64;
83813 	long: 64;
83814 	long: 64;
83815 	long: 64;
83816 	long: 64;
83817 	long: 64;
83818 	long: 64;
83819 	long: 64;
83820 	long: 64;
83821 	long: 64;
83822 	long: 64;
83823 	long: 64;
83824 	long: 64;
83825 	long: 64;
83826 	long: 64;
83827 	long: 64;
83828 	long: 64;
83829 	long: 64;
83830 	long: 64;
83831 	long: 64;
83832 	long: 64;
83833 	long: 64;
83834 	long: 64;
83835 	long: 64;
83836 	long: 64;
83837 	long: 64;
83838 	long: 64;
83839 	long: 64;
83840 	long: 64;
83841 	long: 64;
83842 	long: 64;
83843 	long: 64;
83844 	long: 64;
83845 	long: 64;
83846 	long: 64;
83847 	long: 64;
83848 	long: 64;
83849 	long: 64;
83850 	long: 64;
83851 	long: 64;
83852 	long: 64;
83853 	long: 64;
83854 	long: 64;
83855 	long: 64;
83856 	long: 64;
83857 	long: 64;
83858 	long: 64;
83859 	long: 64;
83860 	long: 64;
83861 	long: 64;
83862 	long: 64;
83863 	long: 64;
83864 	long: 64;
83865 	long: 64;
83866 	long: 64;
83867 	long: 64;
83868 	long: 64;
83869 	long: 64;
83870 	long: 64;
83871 	long: 64;
83872 	long: 64;
83873 	long: 64;
83874 	long: 64;
83875 	long: 64;
83876 	long: 64;
83877 	long: 64;
83878 	long: 64;
83879 	long: 64;
83880 	long: 64;
83881 	long: 64;
83882 	long: 64;
83883 	long: 64;
83884 	long: 64;
83885 	long: 64;
83886 	long: 64;
83887 	long: 64;
83888 	long: 64;
83889 	long: 64;
83890 	long: 64;
83891 	long: 64;
83892 	long: 64;
83893 	long: 64;
83894 	long: 64;
83895 	long: 64;
83896 	long: 64;
83897 	long: 64;
83898 	long: 64;
83899 	long: 64;
83900 	long: 64;
83901 	long: 64;
83902 	long: 64;
83903 	long: 64;
83904 	long: 64;
83905 	long: 64;
83906 	long: 64;
83907 	long: 64;
83908 	long: 64;
83909 	long: 64;
83910 	long: 64;
83911 	long: 64;
83912 	long: 64;
83913 	long: 64;
83914 	long: 64;
83915 	long: 64;
83916 	long: 64;
83917 	long: 64;
83918 	long: 64;
83919 	long: 64;
83920 	long: 64;
83921 	long: 64;
83922 	long: 64;
83923 	long: 64;
83924 	long: 64;
83925 	long: 64;
83926 	long: 64;
83927 	long: 64;
83928 	long: 64;
83929 	long: 64;
83930 	long: 64;
83931 	long: 64;
83932 	long: 64;
83933 	long: 64;
83934 	long: 64;
83935 	long: 64;
83936 	long: 64;
83937 	long: 64;
83938 	long: 64;
83939 	long: 64;
83940 	long: 64;
83941 	long: 64;
83942 	long: 64;
83943 	long: 64;
83944 	long: 64;
83945 	long: 64;
83946 	long: 64;
83947 	long: 64;
83948 	long: 64;
83949 	long: 64;
83950 	long: 64;
83951 	long: 64;
83952 	long: 64;
83953 	long: 64;
83954 	long: 64;
83955 	long: 64;
83956 	long: 64;
83957 	long: 64;
83958 	long: 64;
83959 	long: 64;
83960 	long: 64;
83961 	long: 64;
83962 	long: 64;
83963 	long: 64;
83964 	long: 64;
83965 	long: 64;
83966 	long: 64;
83967 	long: 64;
83968 	long: 64;
83969 	long: 64;
83970 	long: 64;
83971 	long: 64;
83972 	long: 64;
83973 	long: 64;
83974 	long: 64;
83975 	long: 64;
83976 	long: 64;
83977 	long: 64;
83978 	long: 64;
83979 	long: 64;
83980 	long: 64;
83981 	long: 64;
83982 	long: 64;
83983 	long: 64;
83984 	long: 64;
83985 	long: 64;
83986 	long: 64;
83987 	long: 64;
83988 	long: 64;
83989 	long: 64;
83990 	long: 64;
83991 	long: 64;
83992 	long: 64;
83993 	long: 64;
83994 	long: 64;
83995 	long: 64;
83996 	long: 64;
83997 	long: 64;
83998 	long: 64;
83999 	long: 64;
84000 	long: 64;
84001 	long: 64;
84002 	long: 64;
84003 	long: 64;
84004 	long: 64;
84005 	long: 64;
84006 	long: 64;
84007 	long: 64;
84008 	long: 64;
84009 	long: 64;
84010 	long: 64;
84011 	long: 64;
84012 	long: 64;
84013 	long: 64;
84014 	long: 64;
84015 	long: 64;
84016 	long: 64;
84017 	long: 64;
84018 	long: 64;
84019 	long: 64;
84020 	long: 64;
84021 	long: 64;
84022 	long: 64;
84023 	long: 64;
84024 	long: 64;
84025 	long: 64;
84026 	long: 64;
84027 	long: 64;
84028 	long: 64;
84029 	long: 64;
84030 	long: 64;
84031 	long: 64;
84032 	long: 64;
84033 	long: 64;
84034 	long: 64;
84035 	long: 64;
84036 	long: 64;
84037 	long: 64;
84038 	long: 64;
84039 	long: 64;
84040 	long: 64;
84041 	long: 64;
84042 	long: 64;
84043 	long: 64;
84044 	long: 64;
84045 	long: 64;
84046 	long: 64;
84047 	long: 64;
84048 	long: 64;
84049 	long: 64;
84050 	long: 64;
84051 	long: 64;
84052 	long: 64;
84053 	long: 64;
84054 	long: 64;
84055 	long: 64;
84056 	long: 64;
84057 	long: 64;
84058 	long: 64;
84059 	long: 64;
84060 	long: 64;
84061 	long: 64;
84062 	long: 64;
84063 	long: 64;
84064 	long: 64;
84065 	long: 64;
84066 	long: 64;
84067 	long: 64;
84068 	long: 64;
84069 	long: 64;
84070 	long: 64;
84071 	long: 64;
84072 	long: 64;
84073 	long: 64;
84074 	long: 64;
84075 	long: 64;
84076 	long: 64;
84077 	long: 64;
84078 	long: 64;
84079 	long: 64;
84080 	long: 64;
84081 	long: 64;
84082 	long: 64;
84083 	long: 64;
84084 	long: 64;
84085 	long: 64;
84086 	long: 64;
84087 	long: 64;
84088 	long: 64;
84089 	long: 64;
84090 	long: 64;
84091 	long: 64;
84092 	long: 64;
84093 	long: 64;
84094 	long: 64;
84095 	long: 64;
84096 	long: 64;
84097 	long: 64;
84098 	long: 64;
84099 	long: 64;
84100 	long: 64;
84101 	long: 64;
84102 	long: 64;
84103 	long: 64;
84104 	long: 64;
84105 	long: 64;
84106 	long: 64;
84107 	long: 64;
84108 	long: 64;
84109 	long: 64;
84110 	long: 64;
84111 	long: 64;
84112 	long: 64;
84113 	long: 64;
84114 	long: 64;
84115 	long: 64;
84116 	long: 64;
84117 	long: 64;
84118 	long: 64;
84119 	long: 64;
84120 	long: 64;
84121 	long: 64;
84122 	long: 64;
84123 	long: 64;
84124 	long: 64;
84125 	long: 64;
84126 	long: 64;
84127 	long: 64;
84128 	long: 64;
84129 	long: 64;
84130 	long: 64;
84131 	long: 64;
84132 	long: 64;
84133 	long: 64;
84134 	long: 64;
84135 	long: 64;
84136 	long: 64;
84137 	long: 64;
84138 	long: 64;
84139 	long: 64;
84140 	long: 64;
84141 	long: 64;
84142 	long: 64;
84143 	long: 64;
84144 	long: 64;
84145 	long: 64;
84146 	long: 64;
84147 	long: 64;
84148 	long: 64;
84149 	long: 64;
84150 	long: 64;
84151 	long: 64;
84152 	long: 64;
84153 	long: 64;
84154 	long: 64;
84155 	long: 64;
84156 	long: 64;
84157 	long: 64;
84158 	long: 64;
84159 	long: 64;
84160 	long: 64;
84161 	long: 64;
84162 	long: 64;
84163 	long: 64;
84164 	long: 64;
84165 	long: 64;
84166 	long: 64;
84167 	long: 64;
84168 	long: 64;
84169 	long: 64;
84170 	long: 64;
84171 	long: 64;
84172 	long: 64;
84173 	long: 64;
84174 	long: 64;
84175 	long: 64;
84176 	long: 64;
84177 	long: 64;
84178 	long: 64;
84179 	long: 64;
84180 	long: 64;
84181 	long: 64;
84182 	long: 64;
84183 	long: 64;
84184 	long: 64;
84185 	long: 64;
84186 	long: 64;
84187 	long: 64;
84188 	long: 64;
84189 	long: 64;
84190 	long: 64;
84191 	long: 64;
84192 	long: 64;
84193 	long: 64;
84194 	long: 64;
84195 	long: 64;
84196 	long: 64;
84197 	long: 64;
84198 	long: 64;
84199 	long: 64;
84200 	long: 64;
84201 	long: 64;
84202 	long: 64;
84203 	long: 64;
84204 	long: 64;
84205 	long: 64;
84206 	long: 64;
84207 	long: 64;
84208 	long: 64;
84209 	long: 64;
84210 	long: 64;
84211 	long: 64;
84212 	long: 64;
84213 	long: 64;
84214 	long: 64;
84215 	long: 64;
84216 	long: 64;
84217 	long: 64;
84218 	long: 64;
84219 	long: 64;
84220 	long: 64;
84221 	long: 64;
84222 	long: 64;
84223 	long: 64;
84224 	long: 64;
84225 	long: 64;
84226 	long: 64;
84227 	long: 64;
84228 	long: 64;
84229 	long: 64;
84230 	long: 64;
84231 	long: 64;
84232 	long: 64;
84233 	long: 64;
84234 	long: 64;
84235 	long: 64;
84236 	long: 64;
84237 	long: 64;
84238 	long: 64;
84239 	long: 64;
84240 	long: 64;
84241 	long: 64;
84242 	long: 64;
84243 	long: 64;
84244 	long: 64;
84245 	long: 64;
84246 	long: 64;
84247 	long: 64;
84248 	long: 64;
84249 	long: 64;
84250 	long: 64;
84251 	long: 64;
84252 	long: 64;
84253 	long: 64;
84254 	long: 64;
84255 	long: 64;
84256 	long: 64;
84257 	long: 64;
84258 	long: 64;
84259 	long: 64;
84260 	long: 64;
84261 	long: 64;
84262 	long: 64;
84263 	long: 64;
84264 	long: 64;
84265 	long: 64;
84266 	long: 64;
84267 	long: 64;
84268 	long: 64;
84269 	long: 64;
84270 	long: 64;
84271 	long: 64;
84272 	long: 64;
84273 	long: 64;
84274 	long: 64;
84275 	long: 64;
84276 	long: 64;
84277 	long: 64;
84278 	long: 64;
84279 	long: 64;
84280 	long: 64;
84281 	long: 64;
84282 	long: 64;
84283 	long: 64;
84284 	long: 64;
84285 	long: 64;
84286 	long: 64;
84287 	long: 64;
84288 	long: 64;
84289 	long: 64;
84290 	long: 64;
84291 	long: 64;
84292 	long: 64;
84293 	long: 64;
84294 	long: 64;
84295 	long: 64;
84296 	long: 64;
84297 	long: 64;
84298 	long: 64;
84299 	long: 64;
84300 	long: 64;
84301 	long: 64;
84302 	long: 64;
84303 	long: 64;
84304 	long: 64;
84305 	long: 64;
84306 	long: 64;
84307 	long: 64;
84308 	long: 64;
84309 	long: 64;
84310 	long: 64;
84311 	long: 64;
84312 	long: 64;
84313 	long: 64;
84314 	long: 64;
84315 	long: 64;
84316 	long: 64;
84317 	long: 64;
84318 	long: 64;
84319 	long: 64;
84320 	long: 64;
84321 	long: 64;
84322 	long: 64;
84323 	long: 64;
84324 	long: 64;
84325 	long: 64;
84326 	long: 64;
84327 	long: 64;
84328 	long: 64;
84329 	long: 64;
84330 	long: 64;
84331 	long: 64;
84332 	long: 64;
84333 	long: 64;
84334 	long: 64;
84335 	long: 64;
84336 	long: 64;
84337 	long: 64;
84338 	long: 64;
84339 	long: 64;
84340 	long: 64;
84341 	long: 64;
84342 	long: 64;
84343 	long: 64;
84344 	long: 64;
84345 	long: 64;
84346 	long: 64;
84347 	long: 64;
84348 	long: 64;
84349 	long: 64;
84350 	long: 64;
84351 	long: 64;
84352 	long: 64;
84353 	long: 64;
84354 	long: 64;
84355 	long: 64;
84356 	long: 64;
84357 	long: 64;
84358 	long: 64;
84359 	long: 64;
84360 	long: 64;
84361 	long: 64;
84362 	long: 64;
84363 	long: 64;
84364 	long: 64;
84365 	long: 64;
84366 	long: 64;
84367 	long: 64;
84368 	long: 64;
84369 	long: 64;
84370 	long: 64;
84371 	long: 64;
84372 	long: 64;
84373 	long: 64;
84374 	long: 64;
84375 	long: 64;
84376 	long: 64;
84377 	long: 64;
84378 	long: 64;
84379 	long: 64;
84380 	long: 64;
84381 	long: 64;
84382 	long: 64;
84383 	long: 64;
84384 	long: 64;
84385 	long: 64;
84386 	long: 64;
84387 	long: 64;
84388 	long: 64;
84389 	long: 64;
84390 	long: 64;
84391 	long: 64;
84392 	long: 64;
84393 	long: 64;
84394 	long: 64;
84395 	long: 64;
84396 	long: 64;
84397 	long: 64;
84398 	long: 64;
84399 	long: 64;
84400 	long: 64;
84401 	long: 64;
84402 	long: 64;
84403 	long: 64;
84404 	long: 64;
84405 	long: 64;
84406 	long: 64;
84407 	long: 64;
84408 	long: 64;
84409 	long: 64;
84410 	long: 64;
84411 	long: 64;
84412 	long: 64;
84413 	long: 64;
84414 	long: 64;
84415 	long: 64;
84416 	long: 64;
84417 	long: 64;
84418 	long: 64;
84419 	long: 64;
84420 	long: 64;
84421 	long: 64;
84422 	long: 64;
84423 	long: 64;
84424 	long: 64;
84425 	long: 64;
84426 	long: 64;
84427 	long: 64;
84428 	long: 64;
84429 	long: 64;
84430 	long: 64;
84431 	long: 64;
84432 	long: 64;
84433 	long: 64;
84434 	long: 64;
84435 	long: 64;
84436 	long: 64;
84437 	long: 64;
84438 	long: 64;
84439 	long: 64;
84440 	long: 64;
84441 	long: 64;
84442 	long: 64;
84443 	long: 64;
84444 	long: 64;
84445 	long: 64;
84446 	long: 64;
84447 	long: 64;
84448 	long: 64;
84449 	long: 64;
84450 	long: 64;
84451 	long: 64;
84452 	long: 64;
84453 	long: 64;
84454 	long: 64;
84455 	long: 64;
84456 	long: 64;
84457 	long: 64;
84458 	long: 64;
84459 	long: 64;
84460 	long: 64;
84461 	long: 64;
84462 	long: 64;
84463 	long: 64;
84464 	long: 64;
84465 	long: 64;
84466 	long: 64;
84467 	long: 64;
84468 	long: 64;
84469 	long: 64;
84470 	long: 64;
84471 	long: 64;
84472 	long: 64;
84473 	long: 64;
84474 	long: 64;
84475 	long: 64;
84476 	long: 64;
84477 	long: 64;
84478 	long: 64;
84479 	long: 64;
84480 	long: 64;
84481 	long: 64;
84482 	long: 64;
84483 	long: 64;
84484 	long: 64;
84485 	long: 64;
84486 	long: 64;
84487 	long: 64;
84488 	long: 64;
84489 	long: 64;
84490 	long: 64;
84491 	long: 64;
84492 	long: 64;
84493 	long: 64;
84494 	long: 64;
84495 	long: 64;
84496 	long: 64;
84497 	long: 64;
84498 	long: 64;
84499 	long: 64;
84500 	long: 64;
84501 	long: 64;
84502 	long: 64;
84503 	long: 64;
84504 	long: 64;
84505 	long: 64;
84506 	long: 64;
84507 	long: 64;
84508 	long: 64;
84509 	long: 64;
84510 	long: 64;
84511 	long: 64;
84512 	long: 64;
84513 	long: 64;
84514 	long: 64;
84515 	long: 64;
84516 	long: 64;
84517 	long: 64;
84518 	long: 64;
84519 	long: 64;
84520 	long: 64;
84521 	long: 64;
84522 	long: 64;
84523 	long: 64;
84524 	long: 64;
84525 	long: 64;
84526 	long: 64;
84527 	long: 64;
84528 	long: 64;
84529 	long: 64;
84530 	long: 64;
84531 	long: 64;
84532 	long: 64;
84533 	long: 64;
84534 	long: 64;
84535 	long: 64;
84536 	long: 64;
84537 	long: 64;
84538 	long: 64;
84539 	long: 64;
84540 	long: 64;
84541 	long: 64;
84542 	long: 64;
84543 	long: 64;
84544 	long: 64;
84545 	long: 64;
84546 	long: 64;
84547 	long: 64;
84548 	long: 64;
84549 	long: 64;
84550 	long: 64;
84551 	long: 64;
84552 	long: 64;
84553 	long: 64;
84554 	long: 64;
84555 	long: 64;
84556 	long: 64;
84557 	long: 64;
84558 	long: 64;
84559 	long: 64;
84560 	long: 64;
84561 	long: 64;
84562 	long: 64;
84563 	long: 64;
84564 	long: 64;
84565 	long: 64;
84566 	long: 64;
84567 	long: 64;
84568 	long: 64;
84569 	long: 64;
84570 	long: 64;
84571 	long: 64;
84572 	long: 64;
84573 	long: 64;
84574 	long: 64;
84575 	long: 64;
84576 	long: 64;
84577 	long: 64;
84578 	long: 64;
84579 	long: 64;
84580 	long: 64;
84581 	long: 64;
84582 	long: 64;
84583 	long: 64;
84584 	long: 64;
84585 	long: 64;
84586 	long: 64;
84587 	long: 64;
84588 	long: 64;
84589 	long: 64;
84590 	long: 64;
84591 	long: 64;
84592 	long: 64;
84593 	long: 64;
84594 	long: 64;
84595 	long: 64;
84596 	long: 64;
84597 	long: 64;
84598 	long: 64;
84599 	long: 64;
84600 	long: 64;
84601 	long: 64;
84602 	long: 64;
84603 	long: 64;
84604 	long: 64;
84605 	long: 64;
84606 	long: 64;
84607 	long: 64;
84608 	long: 64;
84609 	long: 64;
84610 	long: 64;
84611 	long: 64;
84612 	long: 64;
84613 	long: 64;
84614 	long: 64;
84615 	long: 64;
84616 	long: 64;
84617 	long: 64;
84618 	long: 64;
84619 	long: 64;
84620 	long: 64;
84621 	long: 64;
84622 	long: 64;
84623 	long: 64;
84624 	long: 64;
84625 	long: 64;
84626 	long: 64;
84627 	long: 64;
84628 	long: 64;
84629 	long: 64;
84630 	long: 64;
84631 	long: 64;
84632 	long: 64;
84633 	long: 64;
84634 	long: 64;
84635 	long: 64;
84636 	long: 64;
84637 	long: 64;
84638 	long: 64;
84639 	long: 64;
84640 	long: 64;
84641 	long: 64;
84642 	long: 64;
84643 	long: 64;
84644 	long: 64;
84645 	long: 64;
84646 	long: 64;
84647 	long: 64;
84648 	long: 64;
84649 	long: 64;
84650 	long: 64;
84651 	long: 64;
84652 	long: 64;
84653 	long: 64;
84654 	long: 64;
84655 	long: 64;
84656 	long: 64;
84657 	long: 64;
84658 	long: 64;
84659 	long: 64;
84660 	long: 64;
84661 	long: 64;
84662 	long: 64;
84663 	long: 64;
84664 	long: 64;
84665 	long: 64;
84666 	long: 64;
84667 	long: 64;
84668 	long: 64;
84669 	long: 64;
84670 	long: 64;
84671 	long: 64;
84672 	long: 64;
84673 	long: 64;
84674 	char data[0];
84675 };
84676 
84677 struct bpf_ringbuf_map {
84678 	struct bpf_map map;
84679 	struct bpf_ringbuf *rb;
84680 	long: 64;
84681 	long: 64;
84682 	long: 64;
84683 	long: 64;
84684 	long: 64;
84685 	long: 64;
84686 	long: 64;
84687 	long: 64;
84688 	long: 64;
84689 	long: 64;
84690 	long: 64;
84691 	long: 64;
84692 	long: 64;
84693 	long: 64;
84694 	long: 64;
84695 };
84696 
84697 struct bpf_ringbuf_hdr {
84698 	u32 len;
84699 	u32 pg_off;
84700 };
84701 
84702 typedef u64 (*btf_bpf_ringbuf_reserve)(struct bpf_map *, u64, u64);
84703 
84704 typedef u64 (*btf_bpf_ringbuf_submit)(void *, u64);
84705 
84706 typedef u64 (*btf_bpf_ringbuf_discard)(void *, u64);
84707 
84708 typedef u64 (*btf_bpf_ringbuf_output)(struct bpf_map *, void *, u64, u64);
84709 
84710 typedef u64 (*btf_bpf_ringbuf_query)(struct bpf_map *, u64);
84711 
84712 typedef u64 (*btf_bpf_ringbuf_reserve_dynptr)(struct bpf_map *, u32, u64, struct bpf_dynptr_kern *);
84713 
84714 typedef u64 (*btf_bpf_ringbuf_submit_dynptr)(struct bpf_dynptr_kern *, u64);
84715 
84716 typedef u64 (*btf_bpf_ringbuf_discard_dynptr)(struct bpf_dynptr_kern *, u64);
84717 
84718 enum perf_sample_regs_abi {
84719 	PERF_SAMPLE_REGS_ABI_NONE = 0,
84720 	PERF_SAMPLE_REGS_ABI_32 = 1,
84721 	PERF_SAMPLE_REGS_ABI_64 = 2,
84722 };
84723 
84724 enum perf_event_read_format {
84725 	PERF_FORMAT_TOTAL_TIME_ENABLED = 1,
84726 	PERF_FORMAT_TOTAL_TIME_RUNNING = 2,
84727 	PERF_FORMAT_ID = 4,
84728 	PERF_FORMAT_GROUP = 8,
84729 	PERF_FORMAT_LOST = 16,
84730 	PERF_FORMAT_MAX = 32,
84731 };
84732 
84733 enum perf_event_ioc_flags {
84734 	PERF_IOC_FLAG_GROUP = 1,
84735 };
84736 
84737 struct perf_ns_link_info {
84738 	__u64 dev;
84739 	__u64 ino;
84740 };
84741 
84742 enum {
84743 	NET_NS_INDEX = 0,
84744 	UTS_NS_INDEX = 1,
84745 	IPC_NS_INDEX = 2,
84746 	PID_NS_INDEX = 3,
84747 	USER_NS_INDEX = 4,
84748 	MNT_NS_INDEX = 5,
84749 	CGROUP_NS_INDEX = 6,
84750 	NR_NAMESPACES = 7,
84751 };
84752 
84753 enum perf_record_ksymbol_type {
84754 	PERF_RECORD_KSYMBOL_TYPE_UNKNOWN = 0,
84755 	PERF_RECORD_KSYMBOL_TYPE_BPF = 1,
84756 	PERF_RECORD_KSYMBOL_TYPE_OOL = 2,
84757 	PERF_RECORD_KSYMBOL_TYPE_MAX = 3,
84758 };
84759 
84760 enum perf_bpf_event_type {
84761 	PERF_BPF_EVENT_UNKNOWN = 0,
84762 	PERF_BPF_EVENT_PROG_LOAD = 1,
84763 	PERF_BPF_EVENT_PROG_UNLOAD = 2,
84764 	PERF_BPF_EVENT_MAX = 3,
84765 };
84766 
84767 enum perf_addr_filter_action_t {
84768 	PERF_ADDR_FILTER_ACTION_STOP = 0,
84769 	PERF_ADDR_FILTER_ACTION_START = 1,
84770 	PERF_ADDR_FILTER_ACTION_FILTER = 2,
84771 };
84772 
84773 struct perf_addr_filter {
84774 	struct list_head entry;
84775 	struct path path;
84776 	long unsigned int offset;
84777 	long unsigned int size;
84778 	enum perf_addr_filter_action_t action;
84779 };
84780 
84781 struct swevent_hlist {
84782 	struct hlist_head heads[256];
84783 	struct callback_head callback_head;
84784 };
84785 
84786 struct pmu_event_list {
84787 	raw_spinlock_t lock;
84788 	struct list_head list;
84789 };
84790 
84791 struct min_heap {
84792 	void *data;
84793 	int nr;
84794 	int size;
84795 };
84796 
84797 struct min_heap_callbacks {
84798 	int elem_size;
84799 	bool (*less)(const void *, const void *);
84800 	void (*swp)(void *, void *);
84801 };
84802 
84803 typedef int (*remote_function_f)(void *);
84804 
84805 struct remote_function_call {
84806 	struct task_struct *p;
84807 	remote_function_f func;
84808 	void *info;
84809 	int ret;
84810 };
84811 
84812 typedef void (*event_f)(struct perf_event *, struct perf_cpu_context *, struct perf_event_context *, void *);
84813 
84814 struct event_function_struct {
84815 	struct perf_event *event;
84816 	event_f func;
84817 	void *data;
84818 };
84819 
84820 enum event_type_t {
84821 	EVENT_FLEXIBLE = 1,
84822 	EVENT_PINNED = 2,
84823 	EVENT_TIME = 4,
84824 	EVENT_CPU = 8,
84825 	EVENT_ALL = 3,
84826 };
84827 
84828 struct __group_key {
84829 	int cpu;
84830 	struct cgroup *cgroup;
84831 };
84832 
84833 struct stop_event_data {
84834 	struct perf_event *event;
84835 	unsigned int restart;
84836 };
84837 
84838 struct perf_read_data {
84839 	struct perf_event *event;
84840 	bool group;
84841 	int ret;
84842 };
84843 
84844 struct perf_read_event {
84845 	struct perf_event_header header;
84846 	u32 pid;
84847 	u32 tid;
84848 };
84849 
84850 typedef void perf_iterate_f(struct perf_event *, void *);
84851 
84852 struct remote_output {
84853 	struct perf_buffer *rb;
84854 	int err;
84855 };
84856 
84857 struct perf_task_event {
84858 	struct task_struct *task;
84859 	struct perf_event_context *task_ctx;
84860 	struct {
84861 		struct perf_event_header header;
84862 		u32 pid;
84863 		u32 ppid;
84864 		u32 tid;
84865 		u32 ptid;
84866 		u64 time;
84867 	} event_id;
84868 };
84869 
84870 struct perf_comm_event {
84871 	struct task_struct *task;
84872 	char *comm;
84873 	int comm_size;
84874 	struct {
84875 		struct perf_event_header header;
84876 		u32 pid;
84877 		u32 tid;
84878 	} event_id;
84879 };
84880 
84881 struct perf_namespaces_event {
84882 	struct task_struct *task;
84883 	struct {
84884 		struct perf_event_header header;
84885 		u32 pid;
84886 		u32 tid;
84887 		u64 nr_namespaces;
84888 		struct perf_ns_link_info link_info[7];
84889 	} event_id;
84890 };
84891 
84892 struct perf_cgroup_event {
84893 	char *path;
84894 	int path_size;
84895 	struct {
84896 		struct perf_event_header header;
84897 		u64 id;
84898 		char path[0];
84899 	} event_id;
84900 };
84901 
84902 struct perf_mmap_event {
84903 	struct vm_area_struct *vma;
84904 	const char *file_name;
84905 	int file_size;
84906 	int maj;
84907 	int min;
84908 	u64 ino;
84909 	u64 ino_generation;
84910 	u32 prot;
84911 	u32 flags;
84912 	u8 build_id[20];
84913 	u32 build_id_size;
84914 	struct {
84915 		struct perf_event_header header;
84916 		u32 pid;
84917 		u32 tid;
84918 		u64 start;
84919 		u64 len;
84920 		u64 pgoff;
84921 	} event_id;
84922 };
84923 
84924 struct perf_switch_event {
84925 	struct task_struct *task;
84926 	struct task_struct *next_prev;
84927 	struct {
84928 		struct perf_event_header header;
84929 		u32 next_prev_pid;
84930 		u32 next_prev_tid;
84931 	} event_id;
84932 };
84933 
84934 struct perf_ksymbol_event {
84935 	const char *name;
84936 	int name_len;
84937 	struct {
84938 		struct perf_event_header header;
84939 		u64 addr;
84940 		u32 len;
84941 		u16 ksym_type;
84942 		u16 flags;
84943 	} event_id;
84944 };
84945 
84946 struct perf_bpf_event {
84947 	struct bpf_prog *prog;
84948 	struct {
84949 		struct perf_event_header header;
84950 		u16 type;
84951 		u16 flags;
84952 		u32 id;
84953 		u8 tag[8];
84954 	} event_id;
84955 };
84956 
84957 struct perf_text_poke_event {
84958 	const void *old_bytes;
84959 	const void *new_bytes;
84960 	size_t pad;
84961 	u16 old_len;
84962 	u16 new_len;
84963 	struct {
84964 		struct perf_event_header header;
84965 		u64 addr;
84966 	} event_id;
84967 };
84968 
84969 struct swevent_htable {
84970 	struct swevent_hlist *swevent_hlist;
84971 	struct mutex hlist_mutex;
84972 	int hlist_refcount;
84973 	int recursion[4];
84974 };
84975 
84976 enum perf_probe_config {
84977 	PERF_PROBE_CONFIG_IS_RETPROBE = 1,
84978 	PERF_UPROBE_REF_CTR_OFFSET_BITS = 32,
84979 	PERF_UPROBE_REF_CTR_OFFSET_SHIFT = 32,
84980 };
84981 
84982 enum {
84983 	IF_ACT_NONE = -1,
84984 	IF_ACT_FILTER = 0,
84985 	IF_ACT_START = 1,
84986 	IF_ACT_STOP = 2,
84987 	IF_SRC_FILE = 3,
84988 	IF_SRC_KERNEL = 4,
84989 	IF_SRC_FILEADDR = 5,
84990 	IF_SRC_KERNELADDR = 6,
84991 };
84992 
84993 enum {
84994 	IF_STATE_ACTION = 0,
84995 	IF_STATE_SOURCE = 1,
84996 	IF_STATE_END = 2,
84997 };
84998 
84999 struct perf_aux_event {
85000 	struct perf_event_header header;
85001 	u64 hw_id;
85002 };
85003 
85004 struct perf_aux_event___2 {
85005 	struct perf_event_header header;
85006 	u32 pid;
85007 	u32 tid;
85008 };
85009 
85010 struct perf_aux_event___3 {
85011 	struct perf_event_header header;
85012 	u64 offset;
85013 	u64 size;
85014 	u64 flags;
85015 };
85016 
85017 enum pgt_entry {
85018 	NORMAL_PMD = 0,
85019 	HPAGE_PMD = 1,
85020 	NORMAL_PUD = 2,
85021 	HPAGE_PUD = 3,
85022 };
85023 
85024 enum pageblock_bits {
85025 	PB_migrate = 0,
85026 	PB_migrate_end = 2,
85027 	PB_migrate_skip = 3,
85028 	NR_PAGEBLOCK_BITS = 4,
85029 };
85030 
85031 struct trace_event_raw_test_pages_isolated {
85032 	struct trace_entry ent;
85033 	long unsigned int start_pfn;
85034 	long unsigned int end_pfn;
85035 	long unsigned int fin_pfn;
85036 	char __data[0];
85037 };
85038 
85039 struct trace_event_data_offsets_test_pages_isolated {};
85040 
85041 typedef void (*btf_trace_test_pages_isolated)(void *, long unsigned int, long unsigned int, long unsigned int);
85042 
85043 typedef struct kobject *kobj_probe_t(dev_t, int *, void *);
85044 
85045 struct kobj_map;
85046 
85047 struct char_device_struct {
85048 	struct char_device_struct *next;
85049 	unsigned int major;
85050 	unsigned int baseminor;
85051 	int minorct;
85052 	char name[64];
85053 	struct cdev *cdev;
85054 };
85055 
85056 enum fsconfig_command {
85057 	FSCONFIG_SET_FLAG = 0,
85058 	FSCONFIG_SET_STRING = 1,
85059 	FSCONFIG_SET_BINARY = 2,
85060 	FSCONFIG_SET_PATH = 3,
85061 	FSCONFIG_SET_PATH_EMPTY = 4,
85062 	FSCONFIG_SET_FD = 5,
85063 	FSCONFIG_CMD_CREATE = 6,
85064 	FSCONFIG_CMD_RECONFIGURE = 7,
85065 };
85066 
85067 struct name_snapshot {
85068 	struct qstr name;
85069 	unsigned char inline_name[32];
85070 };
85071 
85072 struct epoll_filefd {
85073 	struct file *file;
85074 	int fd;
85075 } __attribute__((packed));
85076 
85077 struct epitem;
85078 
85079 struct eppoll_entry {
85080 	struct eppoll_entry *next;
85081 	struct epitem *base;
85082 	wait_queue_entry_t wait;
85083 	wait_queue_head_t *whead;
85084 };
85085 
85086 struct eventpoll;
85087 
85088 struct epitem {
85089 	union {
85090 		struct rb_node rbn;
85091 		struct callback_head rcu;
85092 	};
85093 	struct list_head rdllink;
85094 	struct epitem *next;
85095 	struct epoll_filefd ffd;
85096 	struct eppoll_entry *pwqlist;
85097 	struct eventpoll *ep;
85098 	struct hlist_node fllink;
85099 	struct wakeup_source *ws;
85100 	struct epoll_event event;
85101 };
85102 
85103 struct eventpoll {
85104 	struct mutex mtx;
85105 	wait_queue_head_t wq;
85106 	wait_queue_head_t poll_wait;
85107 	struct list_head rdllist;
85108 	rwlock_t lock;
85109 	struct rb_root_cached rbr;
85110 	struct epitem *ovflist;
85111 	struct wakeup_source *ws;
85112 	struct user_struct *user;
85113 	struct file *file;
85114 	u64 gen;
85115 	struct hlist_head refs;
85116 	unsigned int napi_id;
85117 };
85118 
85119 struct ep_pqueue {
85120 	poll_table pt;
85121 	struct epitem *epi;
85122 };
85123 
85124 struct epitems_head {
85125 	struct hlist_head epitems;
85126 	struct epitems_head *next;
85127 };
85128 
85129 struct kernfs_super_info {
85130 	struct super_block *sb;
85131 	struct kernfs_root *root;
85132 	const void *ns;
85133 	struct list_head node;
85134 };
85135 
85136 struct fname;
85137 
85138 struct dir_private_info {
85139 	struct rb_root root;
85140 	struct rb_node *curr_node;
85141 	struct fname *extra_fname;
85142 	loff_t last_pos;
85143 	__u32 curr_hash;
85144 	__u32 curr_minor_hash;
85145 	__u32 next_hash;
85146 };
85147 
85148 struct fsverity_info;
85149 
85150 struct fs_error_report {
85151 	int error;
85152 	struct inode *inode;
85153 	struct super_block *sb;
85154 };
85155 
85156 struct ext4_inode {
85157 	__le16 i_mode;
85158 	__le16 i_uid;
85159 	__le32 i_size_lo;
85160 	__le32 i_atime;
85161 	__le32 i_ctime;
85162 	__le32 i_mtime;
85163 	__le32 i_dtime;
85164 	__le16 i_gid;
85165 	__le16 i_links_count;
85166 	__le32 i_blocks_lo;
85167 	__le32 i_flags;
85168 	union {
85169 		struct {
85170 			__le32 l_i_version;
85171 		} linux1;
85172 		struct {
85173 			__u32 h_i_translator;
85174 		} hurd1;
85175 		struct {
85176 			__u32 m_i_reserved1;
85177 		} masix1;
85178 	} osd1;
85179 	__le32 i_block[15];
85180 	__le32 i_generation;
85181 	__le32 i_file_acl_lo;
85182 	__le32 i_size_high;
85183 	__le32 i_obso_faddr;
85184 	union {
85185 		struct {
85186 			__le16 l_i_blocks_high;
85187 			__le16 l_i_file_acl_high;
85188 			__le16 l_i_uid_high;
85189 			__le16 l_i_gid_high;
85190 			__le16 l_i_checksum_lo;
85191 			__le16 l_i_reserved;
85192 		} linux2;
85193 		struct {
85194 			__le16 h_i_reserved1;
85195 			__u16 h_i_mode_high;
85196 			__u16 h_i_uid_high;
85197 			__u16 h_i_gid_high;
85198 			__u32 h_i_author;
85199 		} hurd2;
85200 		struct {
85201 			__le16 h_i_reserved1;
85202 			__le16 m_i_file_acl_high;
85203 			__u32 m_i_reserved2[2];
85204 		} masix2;
85205 	} osd2;
85206 	__le16 i_extra_isize;
85207 	__le16 i_checksum_hi;
85208 	__le32 i_ctime_extra;
85209 	__le32 i_mtime_extra;
85210 	__le32 i_atime_extra;
85211 	__le32 i_crtime;
85212 	__le32 i_crtime_extra;
85213 	__le32 i_version_hi;
85214 	__le32 i_projid;
85215 };
85216 
85217 enum {
85218 	ES_WRITTEN_B = 0,
85219 	ES_UNWRITTEN_B = 1,
85220 	ES_DELAYED_B = 2,
85221 	ES_HOLE_B = 3,
85222 	ES_REFERENCED_B = 4,
85223 	ES_FLAGS = 5,
85224 };
85225 
85226 struct ext4_lazy_init {
85227 	long unsigned int li_state;
85228 	struct list_head li_request_list;
85229 	struct mutex li_list_mtx;
85230 };
85231 
85232 struct ext4_extent {
85233 	__le32 ee_block;
85234 	__le16 ee_len;
85235 	__le16 ee_start_hi;
85236 	__le32 ee_start_lo;
85237 };
85238 
85239 struct partial_cluster {
85240 	ext4_fsblk_t pclu;
85241 	ext4_lblk_t lblk;
85242 	enum {
85243 		initial = 0,
85244 		tofree = 1,
85245 		nofree = 2,
85246 	} state;
85247 };
85248 
85249 struct ext4_journal_cb_entry {
85250 	struct list_head jce_list;
85251 	void (*jce_func)(struct super_block *, struct ext4_journal_cb_entry *, int);
85252 };
85253 
85254 struct ext4_prealloc_space {
85255 	struct list_head pa_inode_list;
85256 	struct list_head pa_group_list;
85257 	union {
85258 		struct list_head pa_tmp_list;
85259 		struct callback_head pa_rcu;
85260 	} u;
85261 	spinlock_t pa_lock;
85262 	atomic_t pa_count;
85263 	unsigned int pa_deleted;
85264 	ext4_fsblk_t pa_pstart;
85265 	ext4_lblk_t pa_lstart;
85266 	ext4_grpblk_t pa_len;
85267 	ext4_grpblk_t pa_free;
85268 	short unsigned int pa_type;
85269 	spinlock_t *pa_obj_lock;
85270 	struct inode *pa_inode;
85271 };
85272 
85273 struct ext4_free_extent {
85274 	ext4_lblk_t fe_logical;
85275 	ext4_grpblk_t fe_start;
85276 	ext4_group_t fe_group;
85277 	ext4_grpblk_t fe_len;
85278 };
85279 
85280 struct ext4_allocation_context {
85281 	struct inode *ac_inode;
85282 	struct super_block *ac_sb;
85283 	struct ext4_free_extent ac_o_ex;
85284 	struct ext4_free_extent ac_g_ex;
85285 	struct ext4_free_extent ac_b_ex;
85286 	struct ext4_free_extent ac_f_ex;
85287 	__u32 ac_groups_considered;
85288 	__u32 ac_flags;
85289 	__u16 ac_groups_scanned;
85290 	__u16 ac_groups_linear_remaining;
85291 	__u16 ac_found;
85292 	__u16 ac_tail;
85293 	__u16 ac_buddy;
85294 	__u8 ac_status;
85295 	__u8 ac_criteria;
85296 	__u8 ac_2order;
85297 	__u8 ac_op;
85298 	struct page *ac_bitmap_page;
85299 	struct page *ac_buddy_page;
85300 	struct ext4_prealloc_space *ac_pa;
85301 	struct ext4_locality_group *ac_lg;
85302 };
85303 
85304 struct ext4_fsmap {
85305 	struct list_head fmr_list;
85306 	dev_t fmr_device;
85307 	uint32_t fmr_flags;
85308 	uint64_t fmr_physical;
85309 	uint64_t fmr_owner;
85310 	uint64_t fmr_length;
85311 };
85312 
85313 struct trace_event_raw_ext4_other_inode_update_time {
85314 	struct trace_entry ent;
85315 	dev_t dev;
85316 	ino_t ino;
85317 	ino_t orig_ino;
85318 	uid_t uid;
85319 	gid_t gid;
85320 	__u16 mode;
85321 	char __data[0];
85322 };
85323 
85324 struct trace_event_raw_ext4_free_inode {
85325 	struct trace_entry ent;
85326 	dev_t dev;
85327 	ino_t ino;
85328 	uid_t uid;
85329 	gid_t gid;
85330 	__u64 blocks;
85331 	__u16 mode;
85332 	char __data[0];
85333 };
85334 
85335 struct trace_event_raw_ext4_request_inode {
85336 	struct trace_entry ent;
85337 	dev_t dev;
85338 	ino_t dir;
85339 	__u16 mode;
85340 	char __data[0];
85341 };
85342 
85343 struct trace_event_raw_ext4_allocate_inode {
85344 	struct trace_entry ent;
85345 	dev_t dev;
85346 	ino_t ino;
85347 	ino_t dir;
85348 	__u16 mode;
85349 	char __data[0];
85350 };
85351 
85352 struct trace_event_raw_ext4_evict_inode {
85353 	struct trace_entry ent;
85354 	dev_t dev;
85355 	ino_t ino;
85356 	int nlink;
85357 	char __data[0];
85358 };
85359 
85360 struct trace_event_raw_ext4_drop_inode {
85361 	struct trace_entry ent;
85362 	dev_t dev;
85363 	ino_t ino;
85364 	int drop;
85365 	char __data[0];
85366 };
85367 
85368 struct trace_event_raw_ext4_nfs_commit_metadata {
85369 	struct trace_entry ent;
85370 	dev_t dev;
85371 	ino_t ino;
85372 	char __data[0];
85373 };
85374 
85375 struct trace_event_raw_ext4_mark_inode_dirty {
85376 	struct trace_entry ent;
85377 	dev_t dev;
85378 	ino_t ino;
85379 	long unsigned int ip;
85380 	char __data[0];
85381 };
85382 
85383 struct trace_event_raw_ext4_begin_ordered_truncate {
85384 	struct trace_entry ent;
85385 	dev_t dev;
85386 	ino_t ino;
85387 	loff_t new_size;
85388 	char __data[0];
85389 };
85390 
85391 struct trace_event_raw_ext4__write_begin {
85392 	struct trace_entry ent;
85393 	dev_t dev;
85394 	ino_t ino;
85395 	loff_t pos;
85396 	unsigned int len;
85397 	char __data[0];
85398 };
85399 
85400 struct trace_event_raw_ext4__write_end {
85401 	struct trace_entry ent;
85402 	dev_t dev;
85403 	ino_t ino;
85404 	loff_t pos;
85405 	unsigned int len;
85406 	unsigned int copied;
85407 	char __data[0];
85408 };
85409 
85410 struct trace_event_raw_ext4_writepages {
85411 	struct trace_entry ent;
85412 	dev_t dev;
85413 	ino_t ino;
85414 	long int nr_to_write;
85415 	long int pages_skipped;
85416 	loff_t range_start;
85417 	loff_t range_end;
85418 	long unsigned int writeback_index;
85419 	int sync_mode;
85420 	char for_kupdate;
85421 	char range_cyclic;
85422 	char __data[0];
85423 };
85424 
85425 struct trace_event_raw_ext4_da_write_pages {
85426 	struct trace_entry ent;
85427 	dev_t dev;
85428 	ino_t ino;
85429 	long unsigned int first_page;
85430 	long int nr_to_write;
85431 	int sync_mode;
85432 	char __data[0];
85433 };
85434 
85435 struct trace_event_raw_ext4_da_write_pages_extent {
85436 	struct trace_entry ent;
85437 	dev_t dev;
85438 	ino_t ino;
85439 	__u64 lblk;
85440 	__u32 len;
85441 	__u32 flags;
85442 	char __data[0];
85443 };
85444 
85445 struct trace_event_raw_ext4_writepages_result {
85446 	struct trace_entry ent;
85447 	dev_t dev;
85448 	ino_t ino;
85449 	int ret;
85450 	int pages_written;
85451 	long int pages_skipped;
85452 	long unsigned int writeback_index;
85453 	int sync_mode;
85454 	char __data[0];
85455 };
85456 
85457 struct trace_event_raw_ext4__page_op {
85458 	struct trace_entry ent;
85459 	dev_t dev;
85460 	ino_t ino;
85461 	long unsigned int index;
85462 	char __data[0];
85463 };
85464 
85465 struct trace_event_raw_ext4_invalidate_folio_op {
85466 	struct trace_entry ent;
85467 	dev_t dev;
85468 	ino_t ino;
85469 	long unsigned int index;
85470 	size_t offset;
85471 	size_t length;
85472 	char __data[0];
85473 };
85474 
85475 struct trace_event_raw_ext4_discard_blocks {
85476 	struct trace_entry ent;
85477 	dev_t dev;
85478 	__u64 blk;
85479 	__u64 count;
85480 	char __data[0];
85481 };
85482 
85483 struct trace_event_raw_ext4__mb_new_pa {
85484 	struct trace_entry ent;
85485 	dev_t dev;
85486 	ino_t ino;
85487 	__u64 pa_pstart;
85488 	__u64 pa_lstart;
85489 	__u32 pa_len;
85490 	char __data[0];
85491 };
85492 
85493 struct trace_event_raw_ext4_mb_release_inode_pa {
85494 	struct trace_entry ent;
85495 	dev_t dev;
85496 	ino_t ino;
85497 	__u64 block;
85498 	__u32 count;
85499 	char __data[0];
85500 };
85501 
85502 struct trace_event_raw_ext4_mb_release_group_pa {
85503 	struct trace_entry ent;
85504 	dev_t dev;
85505 	__u64 pa_pstart;
85506 	__u32 pa_len;
85507 	char __data[0];
85508 };
85509 
85510 struct trace_event_raw_ext4_discard_preallocations {
85511 	struct trace_entry ent;
85512 	dev_t dev;
85513 	ino_t ino;
85514 	unsigned int len;
85515 	unsigned int needed;
85516 	char __data[0];
85517 };
85518 
85519 struct trace_event_raw_ext4_mb_discard_preallocations {
85520 	struct trace_entry ent;
85521 	dev_t dev;
85522 	int needed;
85523 	char __data[0];
85524 };
85525 
85526 struct trace_event_raw_ext4_request_blocks {
85527 	struct trace_entry ent;
85528 	dev_t dev;
85529 	ino_t ino;
85530 	unsigned int len;
85531 	__u32 logical;
85532 	__u32 lleft;
85533 	__u32 lright;
85534 	__u64 goal;
85535 	__u64 pleft;
85536 	__u64 pright;
85537 	unsigned int flags;
85538 	char __data[0];
85539 };
85540 
85541 struct trace_event_raw_ext4_allocate_blocks {
85542 	struct trace_entry ent;
85543 	dev_t dev;
85544 	ino_t ino;
85545 	__u64 block;
85546 	unsigned int len;
85547 	__u32 logical;
85548 	__u32 lleft;
85549 	__u32 lright;
85550 	__u64 goal;
85551 	__u64 pleft;
85552 	__u64 pright;
85553 	unsigned int flags;
85554 	char __data[0];
85555 };
85556 
85557 struct trace_event_raw_ext4_free_blocks {
85558 	struct trace_entry ent;
85559 	dev_t dev;
85560 	ino_t ino;
85561 	__u64 block;
85562 	long unsigned int count;
85563 	int flags;
85564 	__u16 mode;
85565 	char __data[0];
85566 };
85567 
85568 struct trace_event_raw_ext4_sync_file_enter {
85569 	struct trace_entry ent;
85570 	dev_t dev;
85571 	ino_t ino;
85572 	ino_t parent;
85573 	int datasync;
85574 	char __data[0];
85575 };
85576 
85577 struct trace_event_raw_ext4_sync_file_exit {
85578 	struct trace_entry ent;
85579 	dev_t dev;
85580 	ino_t ino;
85581 	int ret;
85582 	char __data[0];
85583 };
85584 
85585 struct trace_event_raw_ext4_sync_fs {
85586 	struct trace_entry ent;
85587 	dev_t dev;
85588 	int wait;
85589 	char __data[0];
85590 };
85591 
85592 struct trace_event_raw_ext4_alloc_da_blocks {
85593 	struct trace_entry ent;
85594 	dev_t dev;
85595 	ino_t ino;
85596 	unsigned int data_blocks;
85597 	char __data[0];
85598 };
85599 
85600 struct trace_event_raw_ext4_mballoc_alloc {
85601 	struct trace_entry ent;
85602 	dev_t dev;
85603 	ino_t ino;
85604 	__u32 orig_logical;
85605 	int orig_start;
85606 	__u32 orig_group;
85607 	int orig_len;
85608 	__u32 goal_logical;
85609 	int goal_start;
85610 	__u32 goal_group;
85611 	int goal_len;
85612 	__u32 result_logical;
85613 	int result_start;
85614 	__u32 result_group;
85615 	int result_len;
85616 	__u16 found;
85617 	__u16 groups;
85618 	__u16 buddy;
85619 	__u16 flags;
85620 	__u16 tail;
85621 	__u8 cr;
85622 	char __data[0];
85623 };
85624 
85625 struct trace_event_raw_ext4_mballoc_prealloc {
85626 	struct trace_entry ent;
85627 	dev_t dev;
85628 	ino_t ino;
85629 	__u32 orig_logical;
85630 	int orig_start;
85631 	__u32 orig_group;
85632 	int orig_len;
85633 	__u32 result_logical;
85634 	int result_start;
85635 	__u32 result_group;
85636 	int result_len;
85637 	char __data[0];
85638 };
85639 
85640 struct trace_event_raw_ext4__mballoc {
85641 	struct trace_entry ent;
85642 	dev_t dev;
85643 	ino_t ino;
85644 	int result_start;
85645 	__u32 result_group;
85646 	int result_len;
85647 	char __data[0];
85648 };
85649 
85650 struct trace_event_raw_ext4_forget {
85651 	struct trace_entry ent;
85652 	dev_t dev;
85653 	ino_t ino;
85654 	__u64 block;
85655 	int is_metadata;
85656 	__u16 mode;
85657 	char __data[0];
85658 };
85659 
85660 struct trace_event_raw_ext4_da_update_reserve_space {
85661 	struct trace_entry ent;
85662 	dev_t dev;
85663 	ino_t ino;
85664 	__u64 i_blocks;
85665 	int used_blocks;
85666 	int reserved_data_blocks;
85667 	int quota_claim;
85668 	__u16 mode;
85669 	char __data[0];
85670 };
85671 
85672 struct trace_event_raw_ext4_da_reserve_space {
85673 	struct trace_entry ent;
85674 	dev_t dev;
85675 	ino_t ino;
85676 	__u64 i_blocks;
85677 	int reserved_data_blocks;
85678 	__u16 mode;
85679 	char __data[0];
85680 };
85681 
85682 struct trace_event_raw_ext4_da_release_space {
85683 	struct trace_entry ent;
85684 	dev_t dev;
85685 	ino_t ino;
85686 	__u64 i_blocks;
85687 	int freed_blocks;
85688 	int reserved_data_blocks;
85689 	__u16 mode;
85690 	char __data[0];
85691 };
85692 
85693 struct trace_event_raw_ext4__bitmap_load {
85694 	struct trace_entry ent;
85695 	dev_t dev;
85696 	__u32 group;
85697 	char __data[0];
85698 };
85699 
85700 struct trace_event_raw_ext4_read_block_bitmap_load {
85701 	struct trace_entry ent;
85702 	dev_t dev;
85703 	__u32 group;
85704 	bool prefetch;
85705 	char __data[0];
85706 };
85707 
85708 struct trace_event_raw_ext4__fallocate_mode {
85709 	struct trace_entry ent;
85710 	dev_t dev;
85711 	ino_t ino;
85712 	loff_t offset;
85713 	loff_t len;
85714 	int mode;
85715 	char __data[0];
85716 };
85717 
85718 struct trace_event_raw_ext4_fallocate_exit {
85719 	struct trace_entry ent;
85720 	dev_t dev;
85721 	ino_t ino;
85722 	loff_t pos;
85723 	unsigned int blocks;
85724 	int ret;
85725 	char __data[0];
85726 };
85727 
85728 struct trace_event_raw_ext4_unlink_enter {
85729 	struct trace_entry ent;
85730 	dev_t dev;
85731 	ino_t ino;
85732 	ino_t parent;
85733 	loff_t size;
85734 	char __data[0];
85735 };
85736 
85737 struct trace_event_raw_ext4_unlink_exit {
85738 	struct trace_entry ent;
85739 	dev_t dev;
85740 	ino_t ino;
85741 	int ret;
85742 	char __data[0];
85743 };
85744 
85745 struct trace_event_raw_ext4__truncate {
85746 	struct trace_entry ent;
85747 	dev_t dev;
85748 	ino_t ino;
85749 	__u64 blocks;
85750 	char __data[0];
85751 };
85752 
85753 struct trace_event_raw_ext4_ext_convert_to_initialized_enter {
85754 	struct trace_entry ent;
85755 	dev_t dev;
85756 	ino_t ino;
85757 	ext4_lblk_t m_lblk;
85758 	unsigned int m_len;
85759 	ext4_lblk_t u_lblk;
85760 	unsigned int u_len;
85761 	ext4_fsblk_t u_pblk;
85762 	char __data[0];
85763 };
85764 
85765 struct trace_event_raw_ext4_ext_convert_to_initialized_fastpath {
85766 	struct trace_entry ent;
85767 	dev_t dev;
85768 	ino_t ino;
85769 	ext4_lblk_t m_lblk;
85770 	unsigned int m_len;
85771 	ext4_lblk_t u_lblk;
85772 	unsigned int u_len;
85773 	ext4_fsblk_t u_pblk;
85774 	ext4_lblk_t i_lblk;
85775 	unsigned int i_len;
85776 	ext4_fsblk_t i_pblk;
85777 	char __data[0];
85778 };
85779 
85780 struct trace_event_raw_ext4__map_blocks_enter {
85781 	struct trace_entry ent;
85782 	dev_t dev;
85783 	ino_t ino;
85784 	ext4_lblk_t lblk;
85785 	unsigned int len;
85786 	unsigned int flags;
85787 	char __data[0];
85788 };
85789 
85790 struct trace_event_raw_ext4__map_blocks_exit {
85791 	struct trace_entry ent;
85792 	dev_t dev;
85793 	ino_t ino;
85794 	unsigned int flags;
85795 	ext4_fsblk_t pblk;
85796 	ext4_lblk_t lblk;
85797 	unsigned int len;
85798 	unsigned int mflags;
85799 	int ret;
85800 	char __data[0];
85801 };
85802 
85803 struct trace_event_raw_ext4_ext_load_extent {
85804 	struct trace_entry ent;
85805 	dev_t dev;
85806 	ino_t ino;
85807 	ext4_fsblk_t pblk;
85808 	ext4_lblk_t lblk;
85809 	char __data[0];
85810 };
85811 
85812 struct trace_event_raw_ext4_load_inode {
85813 	struct trace_entry ent;
85814 	dev_t dev;
85815 	ino_t ino;
85816 	char __data[0];
85817 };
85818 
85819 struct trace_event_raw_ext4_journal_start {
85820 	struct trace_entry ent;
85821 	dev_t dev;
85822 	long unsigned int ip;
85823 	int blocks;
85824 	int rsv_blocks;
85825 	int revoke_creds;
85826 	char __data[0];
85827 };
85828 
85829 struct trace_event_raw_ext4_journal_start_reserved {
85830 	struct trace_entry ent;
85831 	dev_t dev;
85832 	long unsigned int ip;
85833 	int blocks;
85834 	char __data[0];
85835 };
85836 
85837 struct trace_event_raw_ext4__trim {
85838 	struct trace_entry ent;
85839 	int dev_major;
85840 	int dev_minor;
85841 	__u32 group;
85842 	int start;
85843 	int len;
85844 	char __data[0];
85845 };
85846 
85847 struct trace_event_raw_ext4_ext_handle_unwritten_extents {
85848 	struct trace_entry ent;
85849 	dev_t dev;
85850 	ino_t ino;
85851 	int flags;
85852 	ext4_lblk_t lblk;
85853 	ext4_fsblk_t pblk;
85854 	unsigned int len;
85855 	unsigned int allocated;
85856 	ext4_fsblk_t newblk;
85857 	char __data[0];
85858 };
85859 
85860 struct trace_event_raw_ext4_get_implied_cluster_alloc_exit {
85861 	struct trace_entry ent;
85862 	dev_t dev;
85863 	unsigned int flags;
85864 	ext4_lblk_t lblk;
85865 	ext4_fsblk_t pblk;
85866 	unsigned int len;
85867 	int ret;
85868 	char __data[0];
85869 };
85870 
85871 struct trace_event_raw_ext4_ext_show_extent {
85872 	struct trace_entry ent;
85873 	dev_t dev;
85874 	ino_t ino;
85875 	ext4_fsblk_t pblk;
85876 	ext4_lblk_t lblk;
85877 	short unsigned int len;
85878 	char __data[0];
85879 };
85880 
85881 struct trace_event_raw_ext4_remove_blocks {
85882 	struct trace_entry ent;
85883 	dev_t dev;
85884 	ino_t ino;
85885 	ext4_lblk_t from;
85886 	ext4_lblk_t to;
85887 	ext4_fsblk_t ee_pblk;
85888 	ext4_lblk_t ee_lblk;
85889 	short unsigned int ee_len;
85890 	ext4_fsblk_t pc_pclu;
85891 	ext4_lblk_t pc_lblk;
85892 	int pc_state;
85893 	char __data[0];
85894 };
85895 
85896 struct trace_event_raw_ext4_ext_rm_leaf {
85897 	struct trace_entry ent;
85898 	dev_t dev;
85899 	ino_t ino;
85900 	ext4_lblk_t start;
85901 	ext4_lblk_t ee_lblk;
85902 	ext4_fsblk_t ee_pblk;
85903 	short int ee_len;
85904 	ext4_fsblk_t pc_pclu;
85905 	ext4_lblk_t pc_lblk;
85906 	int pc_state;
85907 	char __data[0];
85908 };
85909 
85910 struct trace_event_raw_ext4_ext_rm_idx {
85911 	struct trace_entry ent;
85912 	dev_t dev;
85913 	ino_t ino;
85914 	ext4_fsblk_t pblk;
85915 	char __data[0];
85916 };
85917 
85918 struct trace_event_raw_ext4_ext_remove_space {
85919 	struct trace_entry ent;
85920 	dev_t dev;
85921 	ino_t ino;
85922 	ext4_lblk_t start;
85923 	ext4_lblk_t end;
85924 	int depth;
85925 	char __data[0];
85926 };
85927 
85928 struct trace_event_raw_ext4_ext_remove_space_done {
85929 	struct trace_entry ent;
85930 	dev_t dev;
85931 	ino_t ino;
85932 	ext4_lblk_t start;
85933 	ext4_lblk_t end;
85934 	int depth;
85935 	ext4_fsblk_t pc_pclu;
85936 	ext4_lblk_t pc_lblk;
85937 	int pc_state;
85938 	short unsigned int eh_entries;
85939 	char __data[0];
85940 };
85941 
85942 struct trace_event_raw_ext4__es_extent {
85943 	struct trace_entry ent;
85944 	dev_t dev;
85945 	ino_t ino;
85946 	ext4_lblk_t lblk;
85947 	ext4_lblk_t len;
85948 	ext4_fsblk_t pblk;
85949 	char status;
85950 	char __data[0];
85951 };
85952 
85953 struct trace_event_raw_ext4_es_remove_extent {
85954 	struct trace_entry ent;
85955 	dev_t dev;
85956 	ino_t ino;
85957 	loff_t lblk;
85958 	loff_t len;
85959 	char __data[0];
85960 };
85961 
85962 struct trace_event_raw_ext4_es_find_extent_range_enter {
85963 	struct trace_entry ent;
85964 	dev_t dev;
85965 	ino_t ino;
85966 	ext4_lblk_t lblk;
85967 	char __data[0];
85968 };
85969 
85970 struct trace_event_raw_ext4_es_find_extent_range_exit {
85971 	struct trace_entry ent;
85972 	dev_t dev;
85973 	ino_t ino;
85974 	ext4_lblk_t lblk;
85975 	ext4_lblk_t len;
85976 	ext4_fsblk_t pblk;
85977 	char status;
85978 	char __data[0];
85979 };
85980 
85981 struct trace_event_raw_ext4_es_lookup_extent_enter {
85982 	struct trace_entry ent;
85983 	dev_t dev;
85984 	ino_t ino;
85985 	ext4_lblk_t lblk;
85986 	char __data[0];
85987 };
85988 
85989 struct trace_event_raw_ext4_es_lookup_extent_exit {
85990 	struct trace_entry ent;
85991 	dev_t dev;
85992 	ino_t ino;
85993 	ext4_lblk_t lblk;
85994 	ext4_lblk_t len;
85995 	ext4_fsblk_t pblk;
85996 	char status;
85997 	int found;
85998 	char __data[0];
85999 };
86000 
86001 struct trace_event_raw_ext4__es_shrink_enter {
86002 	struct trace_entry ent;
86003 	dev_t dev;
86004 	int nr_to_scan;
86005 	int cache_cnt;
86006 	char __data[0];
86007 };
86008 
86009 struct trace_event_raw_ext4_es_shrink_scan_exit {
86010 	struct trace_entry ent;
86011 	dev_t dev;
86012 	int nr_shrunk;
86013 	int cache_cnt;
86014 	char __data[0];
86015 };
86016 
86017 struct trace_event_raw_ext4_collapse_range {
86018 	struct trace_entry ent;
86019 	dev_t dev;
86020 	ino_t ino;
86021 	loff_t offset;
86022 	loff_t len;
86023 	char __data[0];
86024 };
86025 
86026 struct trace_event_raw_ext4_insert_range {
86027 	struct trace_entry ent;
86028 	dev_t dev;
86029 	ino_t ino;
86030 	loff_t offset;
86031 	loff_t len;
86032 	char __data[0];
86033 };
86034 
86035 struct trace_event_raw_ext4_es_shrink {
86036 	struct trace_entry ent;
86037 	dev_t dev;
86038 	int nr_shrunk;
86039 	long long unsigned int scan_time;
86040 	int nr_skipped;
86041 	int retried;
86042 	char __data[0];
86043 };
86044 
86045 struct trace_event_raw_ext4_es_insert_delayed_block {
86046 	struct trace_entry ent;
86047 	dev_t dev;
86048 	ino_t ino;
86049 	ext4_lblk_t lblk;
86050 	ext4_lblk_t len;
86051 	ext4_fsblk_t pblk;
86052 	char status;
86053 	bool allocated;
86054 	char __data[0];
86055 };
86056 
86057 struct trace_event_raw_ext4_fsmap_class {
86058 	struct trace_entry ent;
86059 	dev_t dev;
86060 	dev_t keydev;
86061 	u32 agno;
86062 	u64 bno;
86063 	u64 len;
86064 	u64 owner;
86065 	char __data[0];
86066 };
86067 
86068 struct trace_event_raw_ext4_getfsmap_class {
86069 	struct trace_entry ent;
86070 	dev_t dev;
86071 	dev_t keydev;
86072 	u64 block;
86073 	u64 len;
86074 	u64 owner;
86075 	u64 flags;
86076 	char __data[0];
86077 };
86078 
86079 struct trace_event_raw_ext4_shutdown {
86080 	struct trace_entry ent;
86081 	dev_t dev;
86082 	unsigned int flags;
86083 	char __data[0];
86084 };
86085 
86086 struct trace_event_raw_ext4_error {
86087 	struct trace_entry ent;
86088 	dev_t dev;
86089 	const char *function;
86090 	unsigned int line;
86091 	char __data[0];
86092 };
86093 
86094 struct trace_event_raw_ext4_prefetch_bitmaps {
86095 	struct trace_entry ent;
86096 	dev_t dev;
86097 	__u32 group;
86098 	__u32 next;
86099 	__u32 ios;
86100 	char __data[0];
86101 };
86102 
86103 struct trace_event_raw_ext4_lazy_itable_init {
86104 	struct trace_entry ent;
86105 	dev_t dev;
86106 	__u32 group;
86107 	char __data[0];
86108 };
86109 
86110 struct trace_event_raw_ext4_fc_replay_scan {
86111 	struct trace_entry ent;
86112 	dev_t dev;
86113 	int error;
86114 	int off;
86115 	char __data[0];
86116 };
86117 
86118 struct trace_event_raw_ext4_fc_replay {
86119 	struct trace_entry ent;
86120 	dev_t dev;
86121 	int tag;
86122 	int ino;
86123 	int priv1;
86124 	int priv2;
86125 	char __data[0];
86126 };
86127 
86128 struct trace_event_raw_ext4_fc_commit_start {
86129 	struct trace_entry ent;
86130 	dev_t dev;
86131 	tid_t tid;
86132 	char __data[0];
86133 };
86134 
86135 struct trace_event_raw_ext4_fc_commit_stop {
86136 	struct trace_entry ent;
86137 	dev_t dev;
86138 	int nblks;
86139 	int reason;
86140 	int num_fc;
86141 	int num_fc_ineligible;
86142 	int nblks_agg;
86143 	tid_t tid;
86144 	char __data[0];
86145 };
86146 
86147 struct trace_event_raw_ext4_fc_stats {
86148 	struct trace_entry ent;
86149 	dev_t dev;
86150 	unsigned int fc_ineligible_rc[9];
86151 	long unsigned int fc_commits;
86152 	long unsigned int fc_ineligible_commits;
86153 	long unsigned int fc_numblks;
86154 	char __data[0];
86155 };
86156 
86157 struct trace_event_raw_ext4_fc_track_dentry {
86158 	struct trace_entry ent;
86159 	dev_t dev;
86160 	tid_t t_tid;
86161 	ino_t i_ino;
86162 	tid_t i_sync_tid;
86163 	int error;
86164 	char __data[0];
86165 };
86166 
86167 struct trace_event_raw_ext4_fc_track_inode {
86168 	struct trace_entry ent;
86169 	dev_t dev;
86170 	tid_t t_tid;
86171 	ino_t i_ino;
86172 	tid_t i_sync_tid;
86173 	int error;
86174 	char __data[0];
86175 };
86176 
86177 struct trace_event_raw_ext4_fc_track_range {
86178 	struct trace_entry ent;
86179 	dev_t dev;
86180 	tid_t t_tid;
86181 	ino_t i_ino;
86182 	tid_t i_sync_tid;
86183 	long int start;
86184 	long int end;
86185 	int error;
86186 	char __data[0];
86187 };
86188 
86189 struct trace_event_raw_ext4_fc_cleanup {
86190 	struct trace_entry ent;
86191 	dev_t dev;
86192 	int j_fc_off;
86193 	int full;
86194 	tid_t tid;
86195 	char __data[0];
86196 };
86197 
86198 struct trace_event_raw_ext4_update_sb {
86199 	struct trace_entry ent;
86200 	dev_t dev;
86201 	ext4_fsblk_t fsblk;
86202 	unsigned int flags;
86203 	char __data[0];
86204 };
86205 
86206 struct trace_event_data_offsets_ext4_other_inode_update_time {};
86207 
86208 struct trace_event_data_offsets_ext4_free_inode {};
86209 
86210 struct trace_event_data_offsets_ext4_request_inode {};
86211 
86212 struct trace_event_data_offsets_ext4_allocate_inode {};
86213 
86214 struct trace_event_data_offsets_ext4_evict_inode {};
86215 
86216 struct trace_event_data_offsets_ext4_drop_inode {};
86217 
86218 struct trace_event_data_offsets_ext4_nfs_commit_metadata {};
86219 
86220 struct trace_event_data_offsets_ext4_mark_inode_dirty {};
86221 
86222 struct trace_event_data_offsets_ext4_begin_ordered_truncate {};
86223 
86224 struct trace_event_data_offsets_ext4__write_begin {};
86225 
86226 struct trace_event_data_offsets_ext4__write_end {};
86227 
86228 struct trace_event_data_offsets_ext4_writepages {};
86229 
86230 struct trace_event_data_offsets_ext4_da_write_pages {};
86231 
86232 struct trace_event_data_offsets_ext4_da_write_pages_extent {};
86233 
86234 struct trace_event_data_offsets_ext4_writepages_result {};
86235 
86236 struct trace_event_data_offsets_ext4__page_op {};
86237 
86238 struct trace_event_data_offsets_ext4_invalidate_folio_op {};
86239 
86240 struct trace_event_data_offsets_ext4_discard_blocks {};
86241 
86242 struct trace_event_data_offsets_ext4__mb_new_pa {};
86243 
86244 struct trace_event_data_offsets_ext4_mb_release_inode_pa {};
86245 
86246 struct trace_event_data_offsets_ext4_mb_release_group_pa {};
86247 
86248 struct trace_event_data_offsets_ext4_discard_preallocations {};
86249 
86250 struct trace_event_data_offsets_ext4_mb_discard_preallocations {};
86251 
86252 struct trace_event_data_offsets_ext4_request_blocks {};
86253 
86254 struct trace_event_data_offsets_ext4_allocate_blocks {};
86255 
86256 struct trace_event_data_offsets_ext4_free_blocks {};
86257 
86258 struct trace_event_data_offsets_ext4_sync_file_enter {};
86259 
86260 struct trace_event_data_offsets_ext4_sync_file_exit {};
86261 
86262 struct trace_event_data_offsets_ext4_sync_fs {};
86263 
86264 struct trace_event_data_offsets_ext4_alloc_da_blocks {};
86265 
86266 struct trace_event_data_offsets_ext4_mballoc_alloc {};
86267 
86268 struct trace_event_data_offsets_ext4_mballoc_prealloc {};
86269 
86270 struct trace_event_data_offsets_ext4__mballoc {};
86271 
86272 struct trace_event_data_offsets_ext4_forget {};
86273 
86274 struct trace_event_data_offsets_ext4_da_update_reserve_space {};
86275 
86276 struct trace_event_data_offsets_ext4_da_reserve_space {};
86277 
86278 struct trace_event_data_offsets_ext4_da_release_space {};
86279 
86280 struct trace_event_data_offsets_ext4__bitmap_load {};
86281 
86282 struct trace_event_data_offsets_ext4_read_block_bitmap_load {};
86283 
86284 struct trace_event_data_offsets_ext4__fallocate_mode {};
86285 
86286 struct trace_event_data_offsets_ext4_fallocate_exit {};
86287 
86288 struct trace_event_data_offsets_ext4_unlink_enter {};
86289 
86290 struct trace_event_data_offsets_ext4_unlink_exit {};
86291 
86292 struct trace_event_data_offsets_ext4__truncate {};
86293 
86294 struct trace_event_data_offsets_ext4_ext_convert_to_initialized_enter {};
86295 
86296 struct trace_event_data_offsets_ext4_ext_convert_to_initialized_fastpath {};
86297 
86298 struct trace_event_data_offsets_ext4__map_blocks_enter {};
86299 
86300 struct trace_event_data_offsets_ext4__map_blocks_exit {};
86301 
86302 struct trace_event_data_offsets_ext4_ext_load_extent {};
86303 
86304 struct trace_event_data_offsets_ext4_load_inode {};
86305 
86306 struct trace_event_data_offsets_ext4_journal_start {};
86307 
86308 struct trace_event_data_offsets_ext4_journal_start_reserved {};
86309 
86310 struct trace_event_data_offsets_ext4__trim {};
86311 
86312 struct trace_event_data_offsets_ext4_ext_handle_unwritten_extents {};
86313 
86314 struct trace_event_data_offsets_ext4_get_implied_cluster_alloc_exit {};
86315 
86316 struct trace_event_data_offsets_ext4_ext_show_extent {};
86317 
86318 struct trace_event_data_offsets_ext4_remove_blocks {};
86319 
86320 struct trace_event_data_offsets_ext4_ext_rm_leaf {};
86321 
86322 struct trace_event_data_offsets_ext4_ext_rm_idx {};
86323 
86324 struct trace_event_data_offsets_ext4_ext_remove_space {};
86325 
86326 struct trace_event_data_offsets_ext4_ext_remove_space_done {};
86327 
86328 struct trace_event_data_offsets_ext4__es_extent {};
86329 
86330 struct trace_event_data_offsets_ext4_es_remove_extent {};
86331 
86332 struct trace_event_data_offsets_ext4_es_find_extent_range_enter {};
86333 
86334 struct trace_event_data_offsets_ext4_es_find_extent_range_exit {};
86335 
86336 struct trace_event_data_offsets_ext4_es_lookup_extent_enter {};
86337 
86338 struct trace_event_data_offsets_ext4_es_lookup_extent_exit {};
86339 
86340 struct trace_event_data_offsets_ext4__es_shrink_enter {};
86341 
86342 struct trace_event_data_offsets_ext4_es_shrink_scan_exit {};
86343 
86344 struct trace_event_data_offsets_ext4_collapse_range {};
86345 
86346 struct trace_event_data_offsets_ext4_insert_range {};
86347 
86348 struct trace_event_data_offsets_ext4_es_shrink {};
86349 
86350 struct trace_event_data_offsets_ext4_es_insert_delayed_block {};
86351 
86352 struct trace_event_data_offsets_ext4_fsmap_class {};
86353 
86354 struct trace_event_data_offsets_ext4_getfsmap_class {};
86355 
86356 struct trace_event_data_offsets_ext4_shutdown {};
86357 
86358 struct trace_event_data_offsets_ext4_error {};
86359 
86360 struct trace_event_data_offsets_ext4_prefetch_bitmaps {};
86361 
86362 struct trace_event_data_offsets_ext4_lazy_itable_init {};
86363 
86364 struct trace_event_data_offsets_ext4_fc_replay_scan {};
86365 
86366 struct trace_event_data_offsets_ext4_fc_replay {};
86367 
86368 struct trace_event_data_offsets_ext4_fc_commit_start {};
86369 
86370 struct trace_event_data_offsets_ext4_fc_commit_stop {};
86371 
86372 struct trace_event_data_offsets_ext4_fc_stats {};
86373 
86374 struct trace_event_data_offsets_ext4_fc_track_dentry {};
86375 
86376 struct trace_event_data_offsets_ext4_fc_track_inode {};
86377 
86378 struct trace_event_data_offsets_ext4_fc_track_range {};
86379 
86380 struct trace_event_data_offsets_ext4_fc_cleanup {};
86381 
86382 struct trace_event_data_offsets_ext4_update_sb {};
86383 
86384 typedef void (*btf_trace_ext4_other_inode_update_time)(void *, struct inode *, ino_t);
86385 
86386 typedef void (*btf_trace_ext4_free_inode)(void *, struct inode *);
86387 
86388 typedef void (*btf_trace_ext4_request_inode)(void *, struct inode *, int);
86389 
86390 typedef void (*btf_trace_ext4_allocate_inode)(void *, struct inode *, struct inode *, int);
86391 
86392 typedef void (*btf_trace_ext4_evict_inode)(void *, struct inode *);
86393 
86394 typedef void (*btf_trace_ext4_drop_inode)(void *, struct inode *, int);
86395 
86396 typedef void (*btf_trace_ext4_nfs_commit_metadata)(void *, struct inode *);
86397 
86398 typedef void (*btf_trace_ext4_mark_inode_dirty)(void *, struct inode *, long unsigned int);
86399 
86400 typedef void (*btf_trace_ext4_begin_ordered_truncate)(void *, struct inode *, loff_t);
86401 
86402 typedef void (*btf_trace_ext4_write_begin)(void *, struct inode *, loff_t, unsigned int);
86403 
86404 typedef void (*btf_trace_ext4_da_write_begin)(void *, struct inode *, loff_t, unsigned int);
86405 
86406 typedef void (*btf_trace_ext4_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
86407 
86408 typedef void (*btf_trace_ext4_journalled_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
86409 
86410 typedef void (*btf_trace_ext4_da_write_end)(void *, struct inode *, loff_t, unsigned int, unsigned int);
86411 
86412 typedef void (*btf_trace_ext4_writepages)(void *, struct inode *, struct writeback_control *);
86413 
86414 typedef void (*btf_trace_ext4_da_write_pages)(void *, struct inode *, long unsigned int, struct writeback_control *);
86415 
86416 typedef void (*btf_trace_ext4_da_write_pages_extent)(void *, struct inode *, struct ext4_map_blocks *);
86417 
86418 typedef void (*btf_trace_ext4_writepages_result)(void *, struct inode *, struct writeback_control *, int, int);
86419 
86420 typedef void (*btf_trace_ext4_writepage)(void *, struct page *);
86421 
86422 typedef void (*btf_trace_ext4_readpage)(void *, struct page *);
86423 
86424 typedef void (*btf_trace_ext4_releasepage)(void *, struct page *);
86425 
86426 typedef void (*btf_trace_ext4_invalidate_folio)(void *, struct folio *, size_t, size_t);
86427 
86428 typedef void (*btf_trace_ext4_journalled_invalidate_folio)(void *, struct folio *, size_t, size_t);
86429 
86430 typedef void (*btf_trace_ext4_discard_blocks)(void *, struct super_block *, long long unsigned int, long long unsigned int);
86431 
86432 typedef void (*btf_trace_ext4_mb_new_inode_pa)(void *, struct ext4_allocation_context *, struct ext4_prealloc_space *);
86433 
86434 typedef void (*btf_trace_ext4_mb_new_group_pa)(void *, struct ext4_allocation_context *, struct ext4_prealloc_space *);
86435 
86436 typedef void (*btf_trace_ext4_mb_release_inode_pa)(void *, struct ext4_prealloc_space *, long long unsigned int, unsigned int);
86437 
86438 typedef void (*btf_trace_ext4_mb_release_group_pa)(void *, struct super_block *, struct ext4_prealloc_space *);
86439 
86440 typedef void (*btf_trace_ext4_discard_preallocations)(void *, struct inode *, unsigned int, unsigned int);
86441 
86442 typedef void (*btf_trace_ext4_mb_discard_preallocations)(void *, struct super_block *, int);
86443 
86444 typedef void (*btf_trace_ext4_request_blocks)(void *, struct ext4_allocation_request *);
86445 
86446 typedef void (*btf_trace_ext4_allocate_blocks)(void *, struct ext4_allocation_request *, long long unsigned int);
86447 
86448 typedef void (*btf_trace_ext4_free_blocks)(void *, struct inode *, __u64, long unsigned int, int);
86449 
86450 typedef void (*btf_trace_ext4_sync_file_enter)(void *, struct file *, int);
86451 
86452 typedef void (*btf_trace_ext4_sync_file_exit)(void *, struct inode *, int);
86453 
86454 typedef void (*btf_trace_ext4_sync_fs)(void *, struct super_block *, int);
86455 
86456 typedef void (*btf_trace_ext4_alloc_da_blocks)(void *, struct inode *);
86457 
86458 typedef void (*btf_trace_ext4_mballoc_alloc)(void *, struct ext4_allocation_context *);
86459 
86460 typedef void (*btf_trace_ext4_mballoc_prealloc)(void *, struct ext4_allocation_context *);
86461 
86462 typedef void (*btf_trace_ext4_mballoc_discard)(void *, struct super_block *, struct inode *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
86463 
86464 typedef void (*btf_trace_ext4_mballoc_free)(void *, struct super_block *, struct inode *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
86465 
86466 typedef void (*btf_trace_ext4_forget)(void *, struct inode *, int, __u64);
86467 
86468 typedef void (*btf_trace_ext4_da_update_reserve_space)(void *, struct inode *, int, int);
86469 
86470 typedef void (*btf_trace_ext4_da_reserve_space)(void *, struct inode *);
86471 
86472 typedef void (*btf_trace_ext4_da_release_space)(void *, struct inode *, int);
86473 
86474 typedef void (*btf_trace_ext4_mb_bitmap_load)(void *, struct super_block *, long unsigned int);
86475 
86476 typedef void (*btf_trace_ext4_mb_buddy_bitmap_load)(void *, struct super_block *, long unsigned int);
86477 
86478 typedef void (*btf_trace_ext4_load_inode_bitmap)(void *, struct super_block *, long unsigned int);
86479 
86480 typedef void (*btf_trace_ext4_read_block_bitmap_load)(void *, struct super_block *, long unsigned int, bool);
86481 
86482 typedef void (*btf_trace_ext4_fallocate_enter)(void *, struct inode *, loff_t, loff_t, int);
86483 
86484 typedef void (*btf_trace_ext4_punch_hole)(void *, struct inode *, loff_t, loff_t, int);
86485 
86486 typedef void (*btf_trace_ext4_zero_range)(void *, struct inode *, loff_t, loff_t, int);
86487 
86488 typedef void (*btf_trace_ext4_fallocate_exit)(void *, struct inode *, loff_t, unsigned int, int);
86489 
86490 typedef void (*btf_trace_ext4_unlink_enter)(void *, struct inode *, struct dentry *);
86491 
86492 typedef void (*btf_trace_ext4_unlink_exit)(void *, struct dentry *, int);
86493 
86494 typedef void (*btf_trace_ext4_truncate_enter)(void *, struct inode *);
86495 
86496 typedef void (*btf_trace_ext4_truncate_exit)(void *, struct inode *);
86497 
86498 typedef void (*btf_trace_ext4_ext_convert_to_initialized_enter)(void *, struct inode *, struct ext4_map_blocks *, struct ext4_extent *);
86499 
86500 typedef void (*btf_trace_ext4_ext_convert_to_initialized_fastpath)(void *, struct inode *, struct ext4_map_blocks *, struct ext4_extent *, struct ext4_extent *);
86501 
86502 typedef void (*btf_trace_ext4_ext_map_blocks_enter)(void *, struct inode *, ext4_lblk_t, unsigned int, unsigned int);
86503 
86504 typedef void (*btf_trace_ext4_ind_map_blocks_enter)(void *, struct inode *, ext4_lblk_t, unsigned int, unsigned int);
86505 
86506 typedef void (*btf_trace_ext4_ext_map_blocks_exit)(void *, struct inode *, unsigned int, struct ext4_map_blocks *, int);
86507 
86508 typedef void (*btf_trace_ext4_ind_map_blocks_exit)(void *, struct inode *, unsigned int, struct ext4_map_blocks *, int);
86509 
86510 typedef void (*btf_trace_ext4_ext_load_extent)(void *, struct inode *, ext4_lblk_t, ext4_fsblk_t);
86511 
86512 typedef void (*btf_trace_ext4_load_inode)(void *, struct super_block *, long unsigned int);
86513 
86514 typedef void (*btf_trace_ext4_journal_start)(void *, struct super_block *, int, int, int, long unsigned int);
86515 
86516 typedef void (*btf_trace_ext4_journal_start_reserved)(void *, struct super_block *, int, long unsigned int);
86517 
86518 typedef void (*btf_trace_ext4_trim_extent)(void *, struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
86519 
86520 typedef void (*btf_trace_ext4_trim_all_free)(void *, struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t);
86521 
86522 typedef void (*btf_trace_ext4_ext_handle_unwritten_extents)(void *, struct inode *, struct ext4_map_blocks *, int, unsigned int, ext4_fsblk_t);
86523 
86524 typedef void (*btf_trace_ext4_get_implied_cluster_alloc_exit)(void *, struct super_block *, struct ext4_map_blocks *, int);
86525 
86526 typedef void (*btf_trace_ext4_ext_show_extent)(void *, struct inode *, ext4_lblk_t, ext4_fsblk_t, short unsigned int);
86527 
86528 typedef void (*btf_trace_ext4_remove_blocks)(void *, struct inode *, struct ext4_extent *, ext4_lblk_t, ext4_fsblk_t, struct partial_cluster *);
86529 
86530 typedef void (*btf_trace_ext4_ext_rm_leaf)(void *, struct inode *, ext4_lblk_t, struct ext4_extent *, struct partial_cluster *);
86531 
86532 typedef void (*btf_trace_ext4_ext_rm_idx)(void *, struct inode *, ext4_fsblk_t);
86533 
86534 typedef void (*btf_trace_ext4_ext_remove_space)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t, int);
86535 
86536 typedef void (*btf_trace_ext4_ext_remove_space_done)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t, int, struct partial_cluster *, __le16);
86537 
86538 typedef void (*btf_trace_ext4_es_insert_extent)(void *, struct inode *, struct extent_status *);
86539 
86540 typedef void (*btf_trace_ext4_es_cache_extent)(void *, struct inode *, struct extent_status *);
86541 
86542 typedef void (*btf_trace_ext4_es_remove_extent)(void *, struct inode *, ext4_lblk_t, ext4_lblk_t);
86543 
86544 typedef void (*btf_trace_ext4_es_find_extent_range_enter)(void *, struct inode *, ext4_lblk_t);
86545 
86546 typedef void (*btf_trace_ext4_es_find_extent_range_exit)(void *, struct inode *, struct extent_status *);
86547 
86548 typedef void (*btf_trace_ext4_es_lookup_extent_enter)(void *, struct inode *, ext4_lblk_t);
86549 
86550 typedef void (*btf_trace_ext4_es_lookup_extent_exit)(void *, struct inode *, struct extent_status *, int);
86551 
86552 typedef void (*btf_trace_ext4_es_shrink_count)(void *, struct super_block *, int, int);
86553 
86554 typedef void (*btf_trace_ext4_es_shrink_scan_enter)(void *, struct super_block *, int, int);
86555 
86556 typedef void (*btf_trace_ext4_es_shrink_scan_exit)(void *, struct super_block *, int, int);
86557 
86558 typedef void (*btf_trace_ext4_collapse_range)(void *, struct inode *, loff_t, loff_t);
86559 
86560 typedef void (*btf_trace_ext4_insert_range)(void *, struct inode *, loff_t, loff_t);
86561 
86562 typedef void (*btf_trace_ext4_es_shrink)(void *, struct super_block *, int, u64, int, int);
86563 
86564 typedef void (*btf_trace_ext4_es_insert_delayed_block)(void *, struct inode *, struct extent_status *, bool);
86565 
86566 typedef void (*btf_trace_ext4_fsmap_low_key)(void *, struct super_block *, u32, u32, u64, u64, u64);
86567 
86568 typedef void (*btf_trace_ext4_fsmap_high_key)(void *, struct super_block *, u32, u32, u64, u64, u64);
86569 
86570 typedef void (*btf_trace_ext4_fsmap_mapping)(void *, struct super_block *, u32, u32, u64, u64, u64);
86571 
86572 typedef void (*btf_trace_ext4_getfsmap_low_key)(void *, struct super_block *, struct ext4_fsmap *);
86573 
86574 typedef void (*btf_trace_ext4_getfsmap_high_key)(void *, struct super_block *, struct ext4_fsmap *);
86575 
86576 typedef void (*btf_trace_ext4_getfsmap_mapping)(void *, struct super_block *, struct ext4_fsmap *);
86577 
86578 typedef void (*btf_trace_ext4_shutdown)(void *, struct super_block *, long unsigned int);
86579 
86580 typedef void (*btf_trace_ext4_error)(void *, struct super_block *, const char *, unsigned int);
86581 
86582 typedef void (*btf_trace_ext4_prefetch_bitmaps)(void *, struct super_block *, ext4_group_t, ext4_group_t, unsigned int);
86583 
86584 typedef void (*btf_trace_ext4_lazy_itable_init)(void *, struct super_block *, ext4_group_t);
86585 
86586 typedef void (*btf_trace_ext4_fc_replay_scan)(void *, struct super_block *, int, int);
86587 
86588 typedef void (*btf_trace_ext4_fc_replay)(void *, struct super_block *, int, int, int, int);
86589 
86590 typedef void (*btf_trace_ext4_fc_commit_start)(void *, struct super_block *, tid_t);
86591 
86592 typedef void (*btf_trace_ext4_fc_commit_stop)(void *, struct super_block *, int, int, tid_t);
86593 
86594 typedef void (*btf_trace_ext4_fc_stats)(void *, struct super_block *);
86595 
86596 typedef void (*btf_trace_ext4_fc_track_create)(void *, handle_t *, struct inode *, struct dentry *, int);
86597 
86598 typedef void (*btf_trace_ext4_fc_track_link)(void *, handle_t *, struct inode *, struct dentry *, int);
86599 
86600 typedef void (*btf_trace_ext4_fc_track_unlink)(void *, handle_t *, struct inode *, struct dentry *, int);
86601 
86602 typedef void (*btf_trace_ext4_fc_track_inode)(void *, handle_t *, struct inode *, int);
86603 
86604 typedef void (*btf_trace_ext4_fc_track_range)(void *, handle_t *, struct inode *, long int, long int, int);
86605 
86606 typedef void (*btf_trace_ext4_fc_cleanup)(void *, journal_t *, int, tid_t);
86607 
86608 typedef void (*btf_trace_ext4_update_sb)(void *, struct super_block *, ext4_fsblk_t, unsigned int);
86609 
86610 struct ext4_err_translation {
86611 	int code;
86612 	int errno;
86613 };
86614 
86615 enum {
86616 	Opt_bsd_df = 0,
86617 	Opt_minix_df = 1,
86618 	Opt_grpid = 2,
86619 	Opt_nogrpid = 3,
86620 	Opt_resgid = 4,
86621 	Opt_resuid = 5,
86622 	Opt_sb___2 = 6,
86623 	Opt_nouid32 = 7,
86624 	Opt_debug = 8,
86625 	Opt_removed = 9,
86626 	Opt_user_xattr = 10,
86627 	Opt_nouser_xattr = 11,
86628 	Opt_acl = 12,
86629 	Opt_noacl = 13,
86630 	Opt_auto_da_alloc = 14,
86631 	Opt_noauto_da_alloc = 15,
86632 	Opt_noload = 16,
86633 	Opt_commit = 17,
86634 	Opt_min_batch_time = 18,
86635 	Opt_max_batch_time = 19,
86636 	Opt_journal_dev = 20,
86637 	Opt_journal_path = 21,
86638 	Opt_journal_checksum = 22,
86639 	Opt_journal_async_commit = 23,
86640 	Opt_abort = 24,
86641 	Opt_data_journal = 25,
86642 	Opt_data_ordered = 26,
86643 	Opt_data_writeback = 27,
86644 	Opt_data_err_abort = 28,
86645 	Opt_data_err_ignore = 29,
86646 	Opt_test_dummy_encryption = 30,
86647 	Opt_inlinecrypt = 31,
86648 	Opt_usrjquota = 32,
86649 	Opt_grpjquota = 33,
86650 	Opt_quota = 34,
86651 	Opt_noquota = 35,
86652 	Opt_barrier = 36,
86653 	Opt_nobarrier = 37,
86654 	Opt_err___2 = 38,
86655 	Opt_usrquota = 39,
86656 	Opt_grpquota = 40,
86657 	Opt_prjquota = 41,
86658 	Opt_i_version = 42,
86659 	Opt_dax = 43,
86660 	Opt_dax_always = 44,
86661 	Opt_dax_inode = 45,
86662 	Opt_dax_never = 46,
86663 	Opt_stripe = 47,
86664 	Opt_delalloc = 48,
86665 	Opt_nodelalloc = 49,
86666 	Opt_warn_on_error = 50,
86667 	Opt_nowarn_on_error = 51,
86668 	Opt_mblk_io_submit = 52,
86669 	Opt_debug_want_extra_isize = 53,
86670 	Opt_nomblk_io_submit = 54,
86671 	Opt_block_validity = 55,
86672 	Opt_noblock_validity = 56,
86673 	Opt_inode_readahead_blks = 57,
86674 	Opt_journal_ioprio = 58,
86675 	Opt_dioread_nolock = 59,
86676 	Opt_dioread_lock = 60,
86677 	Opt_discard = 61,
86678 	Opt_nodiscard = 62,
86679 	Opt_init_itable = 63,
86680 	Opt_noinit_itable = 64,
86681 	Opt_max_dir_size_kb = 65,
86682 	Opt_nojournal_checksum = 66,
86683 	Opt_nombcache = 67,
86684 	Opt_no_prefetch_block_bitmaps = 68,
86685 	Opt_mb_optimize_scan = 69,
86686 	Opt_errors = 70,
86687 	Opt_data = 71,
86688 	Opt_data_err = 72,
86689 	Opt_jqfmt = 73,
86690 	Opt_dax_type = 74,
86691 };
86692 
86693 struct mount_opts {
86694 	int token;
86695 	int mount_opt;
86696 	int flags;
86697 };
86698 
86699 struct ext4_fs_context {
86700 	char *s_qf_names[3];
86701 	struct fscrypt_dummy_policy dummy_enc_policy;
86702 	int s_jquota_fmt;
86703 	short unsigned int qname_spec;
86704 	long unsigned int vals_s_flags;
86705 	long unsigned int mask_s_flags;
86706 	long unsigned int journal_devnum;
86707 	long unsigned int s_commit_interval;
86708 	long unsigned int s_stripe;
86709 	unsigned int s_inode_readahead_blks;
86710 	unsigned int s_want_extra_isize;
86711 	unsigned int s_li_wait_mult;
86712 	unsigned int s_max_dir_size_kb;
86713 	unsigned int journal_ioprio;
86714 	unsigned int vals_s_mount_opt;
86715 	unsigned int mask_s_mount_opt;
86716 	unsigned int vals_s_mount_opt2;
86717 	unsigned int mask_s_mount_opt2;
86718 	long unsigned int vals_s_mount_flags;
86719 	long unsigned int mask_s_mount_flags;
86720 	unsigned int opt_flags;
86721 	unsigned int spec;
86722 	u32 s_max_batch_time;
86723 	u32 s_min_batch_time;
86724 	kuid_t s_resuid;
86725 	kgid_t s_resgid;
86726 	ext4_fsblk_t s_sb_block;
86727 };
86728 
86729 struct ext4_mount_options {
86730 	long unsigned int s_mount_opt;
86731 	long unsigned int s_mount_opt2;
86732 	kuid_t s_resuid;
86733 	kgid_t s_resgid;
86734 	long unsigned int s_commit_interval;
86735 	u32 s_min_batch_time;
86736 	u32 s_max_batch_time;
86737 };
86738 
86739 struct nfs_subversion {
86740 	struct module *owner;
86741 	struct file_system_type *nfs_fs;
86742 	const struct rpc_version *rpc_vers;
86743 	const struct nfs_rpc_ops *rpc_ops;
86744 	const struct super_operations *sops;
86745 	const struct xattr_handler **xattr;
86746 	struct list_head list;
86747 };
86748 
86749 struct nfs_clone_mount {
86750 	struct super_block *sb;
86751 	struct dentry *dentry;
86752 	struct nfs_fattr *fattr;
86753 	unsigned int inherited_bsize;
86754 };
86755 
86756 struct nfs_fs_context {
86757 	bool internal;
86758 	bool skip_reconfig_option_check;
86759 	bool need_mount;
86760 	bool sloppy;
86761 	unsigned int flags;
86762 	unsigned int rsize;
86763 	unsigned int wsize;
86764 	unsigned int timeo;
86765 	unsigned int retrans;
86766 	unsigned int acregmin;
86767 	unsigned int acregmax;
86768 	unsigned int acdirmin;
86769 	unsigned int acdirmax;
86770 	unsigned int namlen;
86771 	unsigned int options;
86772 	unsigned int bsize;
86773 	struct nfs_auth_info auth_info;
86774 	rpc_authflavor_t selected_flavor;
86775 	char *client_address;
86776 	unsigned int version;
86777 	unsigned int minorversion;
86778 	char *fscache_uniq;
86779 	short unsigned int protofamily;
86780 	short unsigned int mountfamily;
86781 	bool has_sec_mnt_opts;
86782 	struct {
86783 		union {
86784 			struct sockaddr address;
86785 			struct __kernel_sockaddr_storage _address;
86786 		};
86787 		size_t addrlen;
86788 		char *hostname;
86789 		u32 version;
86790 		int port;
86791 		short unsigned int protocol;
86792 	} mount_server;
86793 	struct {
86794 		union {
86795 			struct sockaddr address;
86796 			struct __kernel_sockaddr_storage _address;
86797 		};
86798 		size_t addrlen;
86799 		char *hostname;
86800 		char *export_path;
86801 		int port;
86802 		short unsigned int protocol;
86803 		short unsigned int nconnect;
86804 		short unsigned int max_connect;
86805 		short unsigned int export_path_len;
86806 	} nfs_server;
86807 	struct nfs_fh *mntfh;
86808 	struct nfs_server *server;
86809 	struct nfs_subversion *nfs_mod;
86810 	struct nfs_clone_mount clone_data;
86811 };
86812 
86813 struct nfs3_getaclargs {
86814 	struct nfs_fh *fh;
86815 	int mask;
86816 	struct page **pages;
86817 };
86818 
86819 struct nfs3_setaclargs {
86820 	struct inode *inode;
86821 	int mask;
86822 	struct posix_acl *acl_access;
86823 	struct posix_acl *acl_default;
86824 	size_t len;
86825 	unsigned int npages;
86826 	struct page **pages;
86827 };
86828 
86829 struct nfs3_getaclres {
86830 	struct nfs_fattr *fattr;
86831 	int mask;
86832 	unsigned int acl_access_count;
86833 	unsigned int acl_default_count;
86834 	struct posix_acl *acl_access;
86835 	struct posix_acl *acl_default;
86836 };
86837 
86838 typedef int (*xfs_btree_bload_get_record_fn)(struct xfs_btree_cur *, void *);
86839 
86840 typedef int (*xfs_btree_bload_claim_block_fn)(struct xfs_btree_cur *, union xfs_btree_ptr *, void *);
86841 
86842 typedef size_t (*xfs_btree_bload_iroot_size_fn)(struct xfs_btree_cur *, unsigned int, void *);
86843 
86844 struct xfs_btree_bload {
86845 	xfs_btree_bload_get_record_fn get_record;
86846 	xfs_btree_bload_claim_block_fn claim_block;
86847 	xfs_btree_bload_iroot_size_fn iroot_size;
86848 	uint64_t nr_records;
86849 	int leaf_slack;
86850 	int node_slack;
86851 	uint64_t nr_blocks;
86852 	unsigned int btree_height;
86853 };
86854 
86855 typedef enum {
86856 	XFS_LOOKUP_EQi = 0,
86857 	XFS_LOOKUP_LEi = 1,
86858 	XFS_LOOKUP_GEi = 2,
86859 } xfs_lookup_t;
86860 
86861 typedef struct xfs_inobt_rec_incore xfs_inobt_rec_incore_t;
86862 
86863 typedef int (*xfs_btree_query_range_fn)(struct xfs_btree_cur *, const union xfs_btree_rec *, void *);
86864 
86865 struct xfs_icluster {
86866 	bool deleted;
86867 	xfs_ino_t first_ino;
86868 	uint64_t alloc;
86869 };
86870 
86871 struct xfs_ialloc_count_inodes {
86872 	xfs_agino_t count;
86873 	xfs_agino_t freecount;
86874 };
86875 
86876 typedef int (*xfs_iwalk_fn)(struct xfs_mount *, struct xfs_trans *, xfs_ino_t, void *);
86877 
86878 typedef int (*xfs_inobt_walk_fn)(struct xfs_mount *, struct xfs_trans *, xfs_agnumber_t, const struct xfs_inobt_rec_incore *, void *);
86879 
86880 struct xfs_pwork;
86881 
86882 typedef int (*xfs_pwork_work_fn)(struct xfs_mount *, struct xfs_pwork *);
86883 
86884 struct xfs_pwork_ctl;
86885 
86886 struct xfs_pwork {
86887 	struct work_struct work;
86888 	struct xfs_pwork_ctl *pctl;
86889 };
86890 
86891 struct xfs_pwork_ctl {
86892 	struct workqueue_struct *wq;
86893 	struct xfs_mount *mp;
86894 	xfs_pwork_work_fn work_fn;
86895 	struct wait_queue_head poll_wait;
86896 	atomic_t nr_work;
86897 	int error;
86898 };
86899 
86900 struct xfs_iwalk_ag {
86901 	struct xfs_pwork pwork;
86902 	struct xfs_mount *mp;
86903 	struct xfs_trans *tp;
86904 	struct xfs_perag *pag;
86905 	xfs_ino_t startino;
86906 	xfs_ino_t lastino;
86907 	struct xfs_inobt_rec_incore *recs;
86908 	unsigned int sz_recs;
86909 	unsigned int nr_recs;
86910 	xfs_iwalk_fn iwalk_fn;
86911 	xfs_inobt_walk_fn inobt_walk_fn;
86912 	void *data;
86913 	unsigned int trim_start: 1;
86914 	unsigned int skip_empty: 1;
86915 	unsigned int drop_trans: 1;
86916 };
86917 
86918 struct xfs_map_extent {
86919 	uint64_t me_owner;
86920 	uint64_t me_startblock;
86921 	uint64_t me_startoff;
86922 	uint32_t me_len;
86923 	uint32_t me_flags;
86924 };
86925 
86926 struct xfs_bui_log_format {
86927 	uint16_t bui_type;
86928 	uint16_t bui_size;
86929 	uint32_t bui_nextents;
86930 	uint64_t bui_id;
86931 	struct xfs_map_extent bui_extents[0];
86932 };
86933 
86934 struct xfs_bud_log_format {
86935 	uint16_t bud_type;
86936 	uint16_t bud_size;
86937 	uint32_t __pad;
86938 	uint64_t bud_bui_id;
86939 };
86940 
86941 struct xfs_bui_log_item {
86942 	struct xfs_log_item bui_item;
86943 	atomic_t bui_refcount;
86944 	atomic_t bui_next_extent;
86945 	struct xfs_bui_log_format bui_format;
86946 };
86947 
86948 struct xfs_bud_log_item {
86949 	struct xfs_log_item bud_item;
86950 	struct xfs_bui_log_item *bud_buip;
86951 	struct xfs_bud_log_format bud_format;
86952 };
86953 
86954 enum xfs_bmap_intent_type {
86955 	XFS_BMAP_MAP = 1,
86956 	XFS_BMAP_UNMAP = 2,
86957 };
86958 
86959 struct xfs_bmap_intent {
86960 	struct list_head bi_list;
86961 	enum xfs_bmap_intent_type bi_type;
86962 	int bi_whichfork;
86963 	struct xfs_inode *bi_owner;
86964 	struct xfs_bmbt_irec bi_bmap;
86965 };
86966 
86967 struct xfs_acl_entry {
86968 	__be32 ae_tag;
86969 	__be32 ae_id;
86970 	__be16 ae_perm;
86971 	__be16 ae_pad;
86972 };
86973 
86974 struct xfs_acl {
86975 	__be32 acl_cnt;
86976 	struct xfs_acl_entry acl_entry[0];
86977 };
86978 
86979 enum key_state {
86980 	KEY_IS_UNINSTANTIATED = 0,
86981 	KEY_IS_POSITIVE = 1,
86982 };
86983 
86984 enum {
86985 	CRYPTO_MSG_ALG_REQUEST = 0,
86986 	CRYPTO_MSG_ALG_REGISTER = 1,
86987 	CRYPTO_MSG_ALG_LOADED = 2,
86988 };
86989 
86990 struct crypto_larval {
86991 	struct crypto_alg alg;
86992 	struct crypto_alg *adult;
86993 	struct completion completion;
86994 	u32 mask;
86995 	bool test_started;
86996 };
86997 
86998 enum crypto_attr_type_t {
86999 	CRYPTOCFGA_UNSPEC = 0,
87000 	CRYPTOCFGA_PRIORITY_VAL = 1,
87001 	CRYPTOCFGA_REPORT_LARVAL = 2,
87002 	CRYPTOCFGA_REPORT_HASH = 3,
87003 	CRYPTOCFGA_REPORT_BLKCIPHER = 4,
87004 	CRYPTOCFGA_REPORT_AEAD = 5,
87005 	CRYPTOCFGA_REPORT_COMPRESS = 6,
87006 	CRYPTOCFGA_REPORT_RNG = 7,
87007 	CRYPTOCFGA_REPORT_CIPHER = 8,
87008 	CRYPTOCFGA_REPORT_AKCIPHER = 9,
87009 	CRYPTOCFGA_REPORT_KPP = 10,
87010 	CRYPTOCFGA_REPORT_ACOMP = 11,
87011 	CRYPTOCFGA_STAT_LARVAL = 12,
87012 	CRYPTOCFGA_STAT_HASH = 13,
87013 	CRYPTOCFGA_STAT_BLKCIPHER = 14,
87014 	CRYPTOCFGA_STAT_AEAD = 15,
87015 	CRYPTOCFGA_STAT_COMPRESS = 16,
87016 	CRYPTOCFGA_STAT_RNG = 17,
87017 	CRYPTOCFGA_STAT_CIPHER = 18,
87018 	CRYPTOCFGA_STAT_AKCIPHER = 19,
87019 	CRYPTOCFGA_STAT_KPP = 20,
87020 	CRYPTOCFGA_STAT_ACOMP = 21,
87021 	__CRYPTOCFGA_MAX = 22,
87022 };
87023 
87024 struct crypto_report_comp {
87025 	char type[64];
87026 };
87027 
87028 struct acomp_req {
87029 	struct crypto_async_request base;
87030 	struct scatterlist *src;
87031 	struct scatterlist *dst;
87032 	unsigned int slen;
87033 	unsigned int dlen;
87034 	u32 flags;
87035 	void *__ctx[0];
87036 };
87037 
87038 struct crypto_acomp {
87039 	int (*compress)(struct acomp_req *);
87040 	int (*decompress)(struct acomp_req *);
87041 	void (*dst_free)(struct scatterlist *);
87042 	unsigned int reqsize;
87043 	struct crypto_tfm base;
87044 };
87045 
87046 struct crypto_scomp {
87047 	struct crypto_tfm base;
87048 };
87049 
87050 struct scomp_alg {
87051 	void * (*alloc_ctx)(struct crypto_scomp *);
87052 	void (*free_ctx)(struct crypto_scomp *, void *);
87053 	int (*compress)(struct crypto_scomp *, const u8 *, unsigned int, u8 *, unsigned int *, void *);
87054 	int (*decompress)(struct crypto_scomp *, const u8 *, unsigned int, u8 *, unsigned int *, void *);
87055 	struct crypto_alg base;
87056 };
87057 
87058 struct scomp_scratch {
87059 	spinlock_t lock;
87060 	void *src;
87061 	void *dst;
87062 };
87063 
87064 enum {
87065 	PERCPU_REF_INIT_ATOMIC = 1,
87066 	PERCPU_REF_INIT_DEAD = 2,
87067 	PERCPU_REF_ALLOW_REINIT = 4,
87068 };
87069 
87070 struct blk_plug_cb;
87071 
87072 typedef void (*blk_plug_cb_fn)(struct blk_plug_cb *, bool);
87073 
87074 struct blk_plug_cb {
87075 	struct list_head list;
87076 	blk_plug_cb_fn callback;
87077 	void *data;
87078 };
87079 
87080 struct trace_event_raw_block_buffer {
87081 	struct trace_entry ent;
87082 	dev_t dev;
87083 	sector_t sector;
87084 	size_t size;
87085 	char __data[0];
87086 };
87087 
87088 struct trace_event_raw_block_rq_requeue {
87089 	struct trace_entry ent;
87090 	dev_t dev;
87091 	sector_t sector;
87092 	unsigned int nr_sector;
87093 	char rwbs[8];
87094 	u32 __data_loc_cmd;
87095 	char __data[0];
87096 };
87097 
87098 struct trace_event_raw_block_rq_completion {
87099 	struct trace_entry ent;
87100 	dev_t dev;
87101 	sector_t sector;
87102 	unsigned int nr_sector;
87103 	int error;
87104 	char rwbs[8];
87105 	u32 __data_loc_cmd;
87106 	char __data[0];
87107 };
87108 
87109 struct trace_event_raw_block_rq {
87110 	struct trace_entry ent;
87111 	dev_t dev;
87112 	sector_t sector;
87113 	unsigned int nr_sector;
87114 	unsigned int bytes;
87115 	char rwbs[8];
87116 	char comm[16];
87117 	u32 __data_loc_cmd;
87118 	char __data[0];
87119 };
87120 
87121 struct trace_event_raw_block_bio_complete {
87122 	struct trace_entry ent;
87123 	dev_t dev;
87124 	sector_t sector;
87125 	unsigned int nr_sector;
87126 	int error;
87127 	char rwbs[8];
87128 	char __data[0];
87129 };
87130 
87131 struct trace_event_raw_block_bio {
87132 	struct trace_entry ent;
87133 	dev_t dev;
87134 	sector_t sector;
87135 	unsigned int nr_sector;
87136 	char rwbs[8];
87137 	char comm[16];
87138 	char __data[0];
87139 };
87140 
87141 struct trace_event_raw_block_plug {
87142 	struct trace_entry ent;
87143 	char comm[16];
87144 	char __data[0];
87145 };
87146 
87147 struct trace_event_raw_block_unplug {
87148 	struct trace_entry ent;
87149 	int nr_rq;
87150 	char comm[16];
87151 	char __data[0];
87152 };
87153 
87154 struct trace_event_raw_block_split {
87155 	struct trace_entry ent;
87156 	dev_t dev;
87157 	sector_t sector;
87158 	sector_t new_sector;
87159 	char rwbs[8];
87160 	char comm[16];
87161 	char __data[0];
87162 };
87163 
87164 struct trace_event_raw_block_bio_remap {
87165 	struct trace_entry ent;
87166 	dev_t dev;
87167 	sector_t sector;
87168 	unsigned int nr_sector;
87169 	dev_t old_dev;
87170 	sector_t old_sector;
87171 	char rwbs[8];
87172 	char __data[0];
87173 };
87174 
87175 struct trace_event_raw_block_rq_remap {
87176 	struct trace_entry ent;
87177 	dev_t dev;
87178 	sector_t sector;
87179 	unsigned int nr_sector;
87180 	dev_t old_dev;
87181 	sector_t old_sector;
87182 	unsigned int nr_bios;
87183 	char rwbs[8];
87184 	char __data[0];
87185 };
87186 
87187 struct trace_event_data_offsets_block_buffer {};
87188 
87189 struct trace_event_data_offsets_block_rq_requeue {
87190 	u32 cmd;
87191 };
87192 
87193 struct trace_event_data_offsets_block_rq_completion {
87194 	u32 cmd;
87195 };
87196 
87197 struct trace_event_data_offsets_block_rq {
87198 	u32 cmd;
87199 };
87200 
87201 struct trace_event_data_offsets_block_bio_complete {};
87202 
87203 struct trace_event_data_offsets_block_bio {};
87204 
87205 struct trace_event_data_offsets_block_plug {};
87206 
87207 struct trace_event_data_offsets_block_unplug {};
87208 
87209 struct trace_event_data_offsets_block_split {};
87210 
87211 struct trace_event_data_offsets_block_bio_remap {};
87212 
87213 struct trace_event_data_offsets_block_rq_remap {};
87214 
87215 typedef void (*btf_trace_block_touch_buffer)(void *, struct buffer_head *);
87216 
87217 typedef void (*btf_trace_block_dirty_buffer)(void *, struct buffer_head *);
87218 
87219 typedef void (*btf_trace_block_rq_requeue)(void *, struct request *);
87220 
87221 typedef void (*btf_trace_block_rq_complete)(void *, struct request *, blk_status_t, unsigned int);
87222 
87223 typedef void (*btf_trace_block_rq_error)(void *, struct request *, blk_status_t, unsigned int);
87224 
87225 typedef void (*btf_trace_block_rq_insert)(void *, struct request *);
87226 
87227 typedef void (*btf_trace_block_rq_issue)(void *, struct request *);
87228 
87229 typedef void (*btf_trace_block_rq_merge)(void *, struct request *);
87230 
87231 typedef void (*btf_trace_block_bio_complete)(void *, struct request_queue *, struct bio *);
87232 
87233 typedef void (*btf_trace_block_bio_bounce)(void *, struct bio *);
87234 
87235 typedef void (*btf_trace_block_bio_backmerge)(void *, struct bio *);
87236 
87237 typedef void (*btf_trace_block_bio_frontmerge)(void *, struct bio *);
87238 
87239 typedef void (*btf_trace_block_bio_queue)(void *, struct bio *);
87240 
87241 typedef void (*btf_trace_block_getrq)(void *, struct bio *);
87242 
87243 typedef void (*btf_trace_block_plug)(void *, struct request_queue *);
87244 
87245 typedef void (*btf_trace_block_unplug)(void *, struct request_queue *, unsigned int, bool);
87246 
87247 typedef void (*btf_trace_block_split)(void *, struct bio *, unsigned int);
87248 
87249 typedef void (*btf_trace_block_bio_remap)(void *, struct bio *, dev_t, sector_t);
87250 
87251 typedef void (*btf_trace_block_rq_remap)(void *, struct request *, dev_t, sector_t);
87252 
87253 enum {
87254 	IOSQE_FIXED_FILE_BIT = 0,
87255 	IOSQE_IO_DRAIN_BIT = 1,
87256 	IOSQE_IO_LINK_BIT = 2,
87257 	IOSQE_IO_HARDLINK_BIT = 3,
87258 	IOSQE_ASYNC_BIT = 4,
87259 	IOSQE_BUFFER_SELECT_BIT = 5,
87260 	IOSQE_CQE_SKIP_SUCCESS_BIT = 6,
87261 };
87262 
87263 enum {
87264 	IORING_REGISTER_BUFFERS = 0,
87265 	IORING_UNREGISTER_BUFFERS = 1,
87266 	IORING_REGISTER_FILES = 2,
87267 	IORING_UNREGISTER_FILES = 3,
87268 	IORING_REGISTER_EVENTFD = 4,
87269 	IORING_UNREGISTER_EVENTFD = 5,
87270 	IORING_REGISTER_FILES_UPDATE = 6,
87271 	IORING_REGISTER_EVENTFD_ASYNC = 7,
87272 	IORING_REGISTER_PROBE = 8,
87273 	IORING_REGISTER_PERSONALITY = 9,
87274 	IORING_UNREGISTER_PERSONALITY = 10,
87275 	IORING_REGISTER_RESTRICTIONS = 11,
87276 	IORING_REGISTER_ENABLE_RINGS = 12,
87277 	IORING_REGISTER_FILES2 = 13,
87278 	IORING_REGISTER_FILES_UPDATE2 = 14,
87279 	IORING_REGISTER_BUFFERS2 = 15,
87280 	IORING_REGISTER_BUFFERS_UPDATE = 16,
87281 	IORING_REGISTER_IOWQ_AFF = 17,
87282 	IORING_UNREGISTER_IOWQ_AFF = 18,
87283 	IORING_REGISTER_IOWQ_MAX_WORKERS = 19,
87284 	IORING_REGISTER_RING_FDS = 20,
87285 	IORING_UNREGISTER_RING_FDS = 21,
87286 	IORING_REGISTER_PBUF_RING = 22,
87287 	IORING_UNREGISTER_PBUF_RING = 23,
87288 	IORING_REGISTER_SYNC_CANCEL = 24,
87289 	IORING_REGISTER_FILE_ALLOC_RANGE = 25,
87290 	IORING_REGISTER_LAST = 26,
87291 };
87292 
87293 struct io_uring_rsrc_register {
87294 	__u32 nr;
87295 	__u32 flags;
87296 	__u64 resv2;
87297 	__u64 data;
87298 	__u64 tags;
87299 };
87300 
87301 struct io_uring_rsrc_update2 {
87302 	__u32 offset;
87303 	__u32 resv;
87304 	__u64 data;
87305 	__u64 tags;
87306 	__u32 nr;
87307 	__u32 resv2;
87308 };
87309 
87310 enum {
87311 	IORING_RSRC_FILE = 0,
87312 	IORING_RSRC_BUFFER = 1,
87313 };
87314 
87315 struct io_rsrc_update {
87316 	struct file *file;
87317 	u64 arg;
87318 	u32 nr_args;
87319 	u32 offset;
87320 };
87321 
87322 struct xxh32_state {
87323 	uint32_t total_len_32;
87324 	uint32_t large_len;
87325 	uint32_t v1;
87326 	uint32_t v2;
87327 	uint32_t v3;
87328 	uint32_t v4;
87329 	uint32_t mem32[4];
87330 	uint32_t memsize;
87331 };
87332 
87333 typedef enum {
87334 	ZSTD_error_no_error = 0,
87335 	ZSTD_error_GENERIC = 1,
87336 	ZSTD_error_prefix_unknown = 10,
87337 	ZSTD_error_version_unsupported = 12,
87338 	ZSTD_error_frameParameter_unsupported = 14,
87339 	ZSTD_error_frameParameter_windowTooLarge = 16,
87340 	ZSTD_error_corruption_detected = 20,
87341 	ZSTD_error_checksum_wrong = 22,
87342 	ZSTD_error_dictionary_corrupted = 30,
87343 	ZSTD_error_dictionary_wrong = 32,
87344 	ZSTD_error_dictionaryCreation_failed = 34,
87345 	ZSTD_error_parameter_unsupported = 40,
87346 	ZSTD_error_parameter_outOfBound = 42,
87347 	ZSTD_error_tableLog_tooLarge = 44,
87348 	ZSTD_error_maxSymbolValue_tooLarge = 46,
87349 	ZSTD_error_maxSymbolValue_tooSmall = 48,
87350 	ZSTD_error_stage_wrong = 60,
87351 	ZSTD_error_init_missing = 62,
87352 	ZSTD_error_memory_allocation = 64,
87353 	ZSTD_error_workSpace_tooSmall = 66,
87354 	ZSTD_error_dstSize_tooSmall = 70,
87355 	ZSTD_error_srcSize_wrong = 72,
87356 	ZSTD_error_dstBuffer_null = 74,
87357 	ZSTD_error_frameIndex_tooLarge = 100,
87358 	ZSTD_error_seekableIO = 102,
87359 	ZSTD_error_dstBuffer_wrong = 104,
87360 	ZSTD_error_srcBuffer_wrong = 105,
87361 	ZSTD_error_maxCode = 120,
87362 } ZSTD_ErrorCode;
87363 
87364 typedef ZSTD_ErrorCode ERR_enum;
87365 
87366 typedef enum {
87367 	ZSTD_dct_auto = 0,
87368 	ZSTD_dct_rawContent = 1,
87369 	ZSTD_dct_fullDict = 2,
87370 } ZSTD_dictContentType_e;
87371 
87372 typedef enum {
87373 	ZSTD_dlm_byCopy = 0,
87374 	ZSTD_dlm_byRef = 1,
87375 } ZSTD_dictLoadMethod_e;
87376 
87377 struct xz_dec;
87378 
87379 struct irq_poll;
87380 
87381 typedef int irq_poll_fn(struct irq_poll *, int);
87382 
87383 struct irq_poll {
87384 	struct list_head list;
87385 	long unsigned int state;
87386 	int weight;
87387 	irq_poll_fn *poll;
87388 };
87389 
87390 enum {
87391 	IRQ_POLL_F_SCHED = 0,
87392 	IRQ_POLL_F_DISABLE = 1,
87393 };
87394 
87395 struct fprop_local_single {
87396 	long unsigned int events;
87397 	unsigned int period;
87398 	raw_spinlock_t lock;
87399 };
87400 
87401 struct pci_dynid {
87402 	struct list_head node;
87403 	struct pci_device_id id;
87404 };
87405 
87406 struct drv_dev_and_id {
87407 	struct pci_driver *drv;
87408 	struct pci_dev *dev;
87409 	const struct pci_device_id *id;
87410 };
87411 
87412 struct acpi_device;
87413 
87414 struct pci_slot_attribute {
87415 	struct attribute attr;
87416 	ssize_t (*show)(struct pci_slot *, char *);
87417 	ssize_t (*store)(struct pci_slot *, const char *, size_t);
87418 };
87419 
87420 struct fb_con2fbmap {
87421 	__u32 console;
87422 	__u32 framebuffer;
87423 };
87424 
87425 enum {
87426 	FB_BLANK_UNBLANK = 0,
87427 	FB_BLANK_NORMAL = 1,
87428 	FB_BLANK_VSYNC_SUSPEND = 2,
87429 	FB_BLANK_HSYNC_SUSPEND = 3,
87430 	FB_BLANK_POWERDOWN = 4,
87431 };
87432 
87433 struct font_desc {
87434 	int idx;
87435 	const char *name;
87436 	unsigned int width;
87437 	unsigned int height;
87438 	unsigned int charcount;
87439 	const void *data;
87440 	int pref;
87441 };
87442 
87443 struct fbcon_display {
87444 	const u_char *fontdata;
87445 	int userfont;
87446 	u_short inverse;
87447 	short int yscroll;
87448 	int vrows;
87449 	int cursor_shape;
87450 	int con_rotate;
87451 	u32 xres_virtual;
87452 	u32 yres_virtual;
87453 	u32 height;
87454 	u32 width;
87455 	u32 bits_per_pixel;
87456 	u32 grayscale;
87457 	u32 nonstd;
87458 	u32 accel_flags;
87459 	u32 rotate;
87460 	struct fb_bitfield red;
87461 	struct fb_bitfield green;
87462 	struct fb_bitfield blue;
87463 	struct fb_bitfield transp;
87464 	const struct fb_videomode *mode;
87465 };
87466 
87467 struct fbcon_ops {
87468 	void (*bmove)(struct vc_data *, struct fb_info *, int, int, int, int, int, int);
87469 	void (*clear)(struct vc_data *, struct fb_info *, int, int, int, int);
87470 	void (*putcs)(struct vc_data *, struct fb_info *, const short unsigned int *, int, int, int, int, int);
87471 	void (*clear_margins)(struct vc_data *, struct fb_info *, int, int);
87472 	void (*cursor)(struct vc_data *, struct fb_info *, int, int, int);
87473 	int (*update_start)(struct fb_info *);
87474 	int (*rotate_font)(struct fb_info *, struct vc_data *);
87475 	struct fb_var_screeninfo var;
87476 	struct delayed_work cursor_work;
87477 	struct fb_cursor cursor_state;
87478 	struct fbcon_display *p;
87479 	struct fb_info *info;
87480 	int currcon;
87481 	int cur_blink_jiffies;
87482 	int cursor_flash;
87483 	int cursor_reset;
87484 	int blank_state;
87485 	int graphics;
87486 	int save_graphics;
87487 	bool initialized;
87488 	int rotate;
87489 	int cur_rotate;
87490 	char *cursor_data;
87491 	u8 *fontbuffer;
87492 	u8 *fontdata;
87493 	u8 *cursor_src;
87494 	u32 cursor_size;
87495 	u32 fd_size;
87496 };
87497 
87498 enum {
87499 	FBCON_LOGO_CANSHOW = -1,
87500 	FBCON_LOGO_DRAW = -2,
87501 	FBCON_LOGO_DONTSHOW = -3,
87502 };
87503 
87504 enum ftrace_dump_mode {
87505 	DUMP_NONE = 0,
87506 	DUMP_ALL = 1,
87507 	DUMP_ORIG = 2,
87508 };
87509 
87510 struct sysrq_key_op {
87511 	void (* const handler)(int);
87512 	const char * const help_msg;
87513 	const char * const action_msg;
87514 	const int enable_mask;
87515 };
87516 
87517 struct sysrq_state {
87518 	struct input_handle handle;
87519 	struct work_struct reinject_work;
87520 	long unsigned int key_down[12];
87521 	unsigned int alt;
87522 	unsigned int alt_use;
87523 	unsigned int shift;
87524 	unsigned int shift_use;
87525 	bool active;
87526 	bool need_reinject;
87527 	bool reinjecting;
87528 	bool reset_canceled;
87529 	bool reset_requested;
87530 	long unsigned int reset_keybit[12];
87531 	int reset_seq_len;
87532 	int reset_seq_cnt;
87533 	int reset_seq_version;
87534 	struct timer_list keyreset_timer;
87535 };
87536 
87537 struct nd_cmd_get_config_data_hdr {
87538 	__u32 in_offset;
87539 	__u32 in_length;
87540 	__u32 status;
87541 	__u8 out_buf[0];
87542 };
87543 
87544 enum nvdimm_security_bits {
87545 	NVDIMM_SECURITY_DISABLED = 0,
87546 	NVDIMM_SECURITY_UNLOCKED = 1,
87547 	NVDIMM_SECURITY_LOCKED = 2,
87548 	NVDIMM_SECURITY_FROZEN = 3,
87549 	NVDIMM_SECURITY_OVERWRITE = 4,
87550 };
87551 
87552 struct nd_label_id {
87553 	char id[50];
87554 };
87555 
87556 struct dma_fence_array;
87557 
87558 struct dma_fence_array_cb {
87559 	struct dma_fence_cb cb;
87560 	struct dma_fence_array *array;
87561 };
87562 
87563 struct dma_fence_array {
87564 	struct dma_fence base;
87565 	spinlock_t lock;
87566 	unsigned int num_fences;
87567 	atomic_t num_pending;
87568 	struct dma_fence **fences;
87569 	struct irq_work work;
87570 };
87571 
87572 enum scsi_prot_operations {
87573 	SCSI_PROT_NORMAL = 0,
87574 	SCSI_PROT_READ_INSERT = 1,
87575 	SCSI_PROT_WRITE_STRIP = 2,
87576 	SCSI_PROT_READ_STRIP = 3,
87577 	SCSI_PROT_WRITE_INSERT = 4,
87578 	SCSI_PROT_READ_PASS = 5,
87579 	SCSI_PROT_WRITE_PASS = 6,
87580 };
87581 
87582 struct scsi_driver {
87583 	struct device_driver gendrv;
87584 	void (*rescan)(struct device *);
87585 	blk_status_t (*init_command)(struct scsi_cmnd *);
87586 	void (*uninit_command)(struct scsi_cmnd *);
87587 	int (*done)(struct scsi_cmnd *);
87588 	int (*eh_action)(struct scsi_cmnd *, int);
87589 	void (*eh_reset)(struct scsi_cmnd *);
87590 };
87591 
87592 struct scsi_eh_save {
87593 	int result;
87594 	unsigned int resid_len;
87595 	int eh_eflags;
87596 	enum dma_data_direction data_direction;
87597 	unsigned int underflow;
87598 	unsigned char cmd_len;
87599 	unsigned char prot_op;
87600 	unsigned char cmnd[32];
87601 	struct scsi_data_buffer sdb;
87602 	struct scatterlist sense_sgl;
87603 };
87604 
87605 struct attribute_container {
87606 	struct list_head node;
87607 	struct klist containers;
87608 	struct class *class;
87609 	const struct attribute_group *grp;
87610 	struct device_attribute **attrs;
87611 	int (*match)(struct attribute_container *, struct device *);
87612 	long unsigned int flags;
87613 };
87614 
87615 struct transport_container {
87616 	struct attribute_container ac;
87617 	const struct attribute_group *statistics;
87618 };
87619 
87620 struct scsi_transport_template {
87621 	struct transport_container host_attrs;
87622 	struct transport_container target_attrs;
87623 	struct transport_container device_attrs;
87624 	int (*user_scan)(struct Scsi_Host *, uint, uint, u64);
87625 	int device_size;
87626 	int device_private_offset;
87627 	int target_size;
87628 	int target_private_offset;
87629 	int host_size;
87630 	unsigned int create_work_queue: 1;
87631 	void (*eh_strategy_handler)(struct Scsi_Host *);
87632 };
87633 
87634 struct transport_class {
87635 	struct class class;
87636 	int (*setup)(struct transport_container *, struct device *, struct device *);
87637 	int (*configure)(struct transport_container *, struct device *, struct device *);
87638 	int (*remove)(struct transport_container *, struct device *, struct device *);
87639 };
87640 
87641 struct srp_host_attrs {
87642 	atomic_t next_port_id;
87643 };
87644 
87645 struct srp_internal {
87646 	struct scsi_transport_template t;
87647 	struct srp_function_template *f;
87648 	struct device_attribute *host_attrs[1];
87649 	struct device_attribute *rport_attrs[9];
87650 	struct transport_container rport_attr_cont;
87651 };
87652 
87653 struct phy_setting {
87654 	u32 speed;
87655 	u8 duplex;
87656 	u8 bit;
87657 };
87658 
87659 struct e1000_host_mng_command_header {
87660 	u8 command_id;
87661 	u8 checksum;
87662 	u16 reserved1;
87663 	u16 reserved2;
87664 	u16 command_length;
87665 };
87666 
87667 enum e1000_mng_mode {
87668 	e1000_mng_mode_none = 0,
87669 	e1000_mng_mode_asf = 1,
87670 	e1000_mng_mode_pt = 2,
87671 	e1000_mng_mode_ipmi = 3,
87672 	e1000_mng_mode_host_if_only = 4,
87673 };
87674 
87675 struct class_info {
87676 	int class;
87677 	char *class_name;
87678 };
87679 
87680 struct input_event {
87681 	__kernel_ulong_t __sec;
87682 	__kernel_ulong_t __usec;
87683 	__u16 type;
87684 	__u16 code;
87685 	__s32 value;
87686 };
87687 
87688 struct focaltech_finger_state {
87689 	bool active;
87690 	bool valid;
87691 	unsigned int x;
87692 	unsigned int y;
87693 };
87694 
87695 struct focaltech_hw_state {
87696 	struct focaltech_finger_state fingers[5];
87697 	unsigned int width;
87698 	bool pressed;
87699 };
87700 
87701 struct focaltech_data {
87702 	unsigned int x_max;
87703 	unsigned int y_max;
87704 	struct focaltech_hw_state state;
87705 };
87706 
87707 struct i2c_device_id {
87708 	char name[20];
87709 	kernel_ulong_t driver_data;
87710 };
87711 
87712 enum i2c_alert_protocol {
87713 	I2C_PROTOCOL_SMBUS_ALERT = 0,
87714 	I2C_PROTOCOL_SMBUS_HOST_NOTIFY = 1,
87715 };
87716 
87717 struct i2c_driver {
87718 	unsigned int class;
87719 	int (*probe)(struct i2c_client *, const struct i2c_device_id *);
87720 	int (*remove)(struct i2c_client *);
87721 	int (*probe_new)(struct i2c_client *);
87722 	void (*shutdown)(struct i2c_client *);
87723 	void (*alert)(struct i2c_client *, enum i2c_alert_protocol, unsigned int);
87724 	int (*command)(struct i2c_client *, unsigned int, void *);
87725 	struct device_driver driver;
87726 	const struct i2c_device_id *id_table;
87727 	int (*detect)(struct i2c_client *, struct i2c_board_info *);
87728 	const short unsigned int *address_list;
87729 	struct list_head clients;
87730 	u32 flags;
87731 };
87732 
87733 struct ds1307_platform_data {
87734 	u8 trickle_charger_setup;
87735 };
87736 
87737 struct sensor_device_attribute {
87738 	struct device_attribute dev_attr;
87739 	int index;
87740 };
87741 
87742 enum ds_type {
87743 	unknown_ds_type = 0,
87744 	ds_1307 = 1,
87745 	ds_1308 = 2,
87746 	ds_1337 = 3,
87747 	ds_1338 = 4,
87748 	ds_1339 = 5,
87749 	ds_1340 = 6,
87750 	ds_1341 = 7,
87751 	ds_1388 = 8,
87752 	ds_3231 = 9,
87753 	m41t0 = 10,
87754 	m41t00 = 11,
87755 	m41t11 = 12,
87756 	mcp794xx = 13,
87757 	rx_8025 = 14,
87758 	rx_8130 = 15,
87759 	last_ds_type = 16,
87760 };
87761 
87762 struct regmap;
87763 
87764 struct ds1307 {
87765 	enum ds_type type;
87766 	struct device *dev;
87767 	struct regmap *regmap;
87768 	const char *name;
87769 	struct rtc_device *rtc;
87770 };
87771 
87772 struct chip_desc {
87773 	unsigned int alarm: 1;
87774 	u16 nvram_offset;
87775 	u16 nvram_size;
87776 	u8 offset;
87777 	u8 century_reg;
87778 	u8 century_enable_bit;
87779 	u8 century_bit;
87780 	u8 bbsqi_bit;
87781 	irq_handler_t irq_handler;
87782 	const struct rtc_class_ops *rtc_ops;
87783 	u16 trickle_charger_reg;
87784 	u8 (*do_trickle_setup)(struct ds1307 *, u32, bool);
87785 	bool requires_trickle_resistor;
87786 	bool charge_default;
87787 };
87788 
87789 struct of_phandle_iterator {
87790 	const char *cells_name;
87791 	int cell_count;
87792 	const struct device_node *parent;
87793 	const __be32 *list_end;
87794 	const __be32 *phandle_end;
87795 	const __be32 *cur;
87796 	uint32_t cur_count;
87797 	phandle phandle;
87798 	struct device_node *node;
87799 };
87800 
87801 enum sensors {
87802 	FAN = 0,
87803 	TEMP = 1,
87804 	POWER_SUPPLY = 2,
87805 	POWER_INPUT = 3,
87806 	CURRENT = 4,
87807 	ENERGY = 5,
87808 	MAX_SENSOR_TYPE = 6,
87809 };
87810 
87811 struct sensor_group {
87812 	const char *name;
87813 	struct attribute_group group;
87814 	u32 attr_count;
87815 	u32 hwmon_index;
87816 };
87817 
87818 struct sensor_group_data;
87819 
87820 struct sensor_data {
87821 	u32 id;
87822 	u32 hwmon_index;
87823 	u32 opal_index;
87824 	enum sensors type;
87825 	char label[64];
87826 	char name[32];
87827 	struct device_attribute dev_attr;
87828 	struct sensor_group_data *sgrp_data;
87829 };
87830 
87831 struct sensor_group_data {
87832 	struct mutex mutex;
87833 	u32 gid;
87834 	bool enable;
87835 };
87836 
87837 struct platform_data {
87838 	const struct attribute_group *attr_groups[7];
87839 	struct sensor_group_data *sgrp_data;
87840 	u32 sensors_count;
87841 	u32 nr_sensor_groups;
87842 };
87843 
87844 struct linear_c {
87845 	struct dm_dev *dev;
87846 	sector_t start;
87847 };
87848 
87849 enum dev_type {
87850 	DEV_UNKNOWN = 0,
87851 	DEV_X1 = 1,
87852 	DEV_X2 = 2,
87853 	DEV_X4 = 3,
87854 	DEV_X8 = 4,
87855 	DEV_X16 = 5,
87856 	DEV_X32 = 6,
87857 	DEV_X64 = 7,
87858 };
87859 
87860 enum hw_event_mc_err_type {
87861 	HW_EVENT_ERR_CORRECTED = 0,
87862 	HW_EVENT_ERR_UNCORRECTED = 1,
87863 	HW_EVENT_ERR_DEFERRED = 2,
87864 	HW_EVENT_ERR_FATAL = 3,
87865 	HW_EVENT_ERR_INFO = 4,
87866 };
87867 
87868 enum mem_type {
87869 	MEM_EMPTY = 0,
87870 	MEM_RESERVED = 1,
87871 	MEM_UNKNOWN = 2,
87872 	MEM_FPM = 3,
87873 	MEM_EDO = 4,
87874 	MEM_BEDO = 5,
87875 	MEM_SDR = 6,
87876 	MEM_RDR = 7,
87877 	MEM_DDR = 8,
87878 	MEM_RDDR = 9,
87879 	MEM_RMBS = 10,
87880 	MEM_DDR2 = 11,
87881 	MEM_FB_DDR2 = 12,
87882 	MEM_RDDR2 = 13,
87883 	MEM_XDR = 14,
87884 	MEM_DDR3 = 15,
87885 	MEM_RDDR3 = 16,
87886 	MEM_LRDDR3 = 17,
87887 	MEM_LPDDR3 = 18,
87888 	MEM_DDR4 = 19,
87889 	MEM_RDDR4 = 20,
87890 	MEM_LRDDR4 = 21,
87891 	MEM_LPDDR4 = 22,
87892 	MEM_DDR5 = 23,
87893 	MEM_RDDR5 = 24,
87894 	MEM_LRDDR5 = 25,
87895 	MEM_NVDIMM = 26,
87896 	MEM_WIO2 = 27,
87897 	MEM_HBM2 = 28,
87898 };
87899 
87900 enum edac_type {
87901 	EDAC_UNKNOWN = 0,
87902 	EDAC_NONE = 1,
87903 	EDAC_RESERVED = 2,
87904 	EDAC_PARITY = 3,
87905 	EDAC_EC = 4,
87906 	EDAC_SECDED = 5,
87907 	EDAC_S2ECD2ED = 6,
87908 	EDAC_S4ECD4ED = 7,
87909 	EDAC_S8ECD8ED = 8,
87910 	EDAC_S16ECD16ED = 9,
87911 };
87912 
87913 enum scrub_type {
87914 	SCRUB_UNKNOWN = 0,
87915 	SCRUB_NONE = 1,
87916 	SCRUB_SW_PROG = 2,
87917 	SCRUB_SW_SRC = 3,
87918 	SCRUB_SW_PROG_SRC = 4,
87919 	SCRUB_SW_TUNABLE = 5,
87920 	SCRUB_HW_PROG = 6,
87921 	SCRUB_HW_SRC = 7,
87922 	SCRUB_HW_PROG_SRC = 8,
87923 	SCRUB_HW_TUNABLE = 9,
87924 };
87925 
87926 enum edac_mc_layer_type {
87927 	EDAC_MC_LAYER_BRANCH = 0,
87928 	EDAC_MC_LAYER_CHANNEL = 1,
87929 	EDAC_MC_LAYER_SLOT = 2,
87930 	EDAC_MC_LAYER_CHIP_SELECT = 3,
87931 	EDAC_MC_LAYER_ALL_MEM = 4,
87932 };
87933 
87934 struct edac_mc_layer {
87935 	enum edac_mc_layer_type type;
87936 	unsigned int size;
87937 	bool is_virt_csrow;
87938 };
87939 
87940 struct mem_ctl_info;
87941 
87942 struct dimm_info {
87943 	struct device dev;
87944 	char label[32];
87945 	unsigned int location[3];
87946 	struct mem_ctl_info *mci;
87947 	unsigned int idx;
87948 	u32 grain;
87949 	enum dev_type dtype;
87950 	enum mem_type mtype;
87951 	enum edac_type edac_mode;
87952 	u32 nr_pages;
87953 	unsigned int csrow;
87954 	unsigned int cschannel;
87955 	u16 smbios_handle;
87956 	u32 ce_count;
87957 	u32 ue_count;
87958 };
87959 
87960 struct mcidev_sysfs_attribute;
87961 
87962 struct edac_raw_error_desc {
87963 	char location[256];
87964 	char label[296];
87965 	long int grain;
87966 	u16 error_count;
87967 	enum hw_event_mc_err_type type;
87968 	int top_layer;
87969 	int mid_layer;
87970 	int low_layer;
87971 	long unsigned int page_frame_number;
87972 	long unsigned int offset_in_page;
87973 	long unsigned int syndrome;
87974 	const char *msg;
87975 	const char *other_detail;
87976 };
87977 
87978 struct csrow_info;
87979 
87980 struct mem_ctl_info {
87981 	struct device dev;
87982 	struct bus_type *bus;
87983 	struct list_head link;
87984 	struct module *owner;
87985 	long unsigned int mtype_cap;
87986 	long unsigned int edac_ctl_cap;
87987 	long unsigned int edac_cap;
87988 	long unsigned int scrub_cap;
87989 	enum scrub_type scrub_mode;
87990 	int (*set_sdram_scrub_rate)(struct mem_ctl_info *, u32);
87991 	int (*get_sdram_scrub_rate)(struct mem_ctl_info *);
87992 	void (*edac_check)(struct mem_ctl_info *);
87993 	long unsigned int (*ctl_page_to_phys)(struct mem_ctl_info *, long unsigned int);
87994 	int mc_idx;
87995 	struct csrow_info **csrows;
87996 	unsigned int nr_csrows;
87997 	unsigned int num_cschannel;
87998 	unsigned int n_layers;
87999 	struct edac_mc_layer *layers;
88000 	bool csbased;
88001 	unsigned int tot_dimms;
88002 	struct dimm_info **dimms;
88003 	struct device *pdev;
88004 	const char *mod_name;
88005 	const char *ctl_name;
88006 	const char *dev_name;
88007 	void *pvt_info;
88008 	long unsigned int start_time;
88009 	u32 ce_noinfo_count;
88010 	u32 ue_noinfo_count;
88011 	u32 ue_mc;
88012 	u32 ce_mc;
88013 	struct completion complete;
88014 	const struct mcidev_sysfs_attribute *mc_driver_sysfs_attributes;
88015 	struct delayed_work work;
88016 	struct edac_raw_error_desc error_desc;
88017 	int op_state;
88018 	struct dentry *debugfs;
88019 	u8 fake_inject_layer[3];
88020 	bool fake_inject_ue;
88021 	u16 fake_inject_count;
88022 };
88023 
88024 struct rank_info {
88025 	int chan_idx;
88026 	struct csrow_info *csrow;
88027 	struct dimm_info *dimm;
88028 	u32 ce_count;
88029 };
88030 
88031 struct csrow_info {
88032 	struct device dev;
88033 	long unsigned int first_page;
88034 	long unsigned int last_page;
88035 	long unsigned int page_mask;
88036 	int csrow_idx;
88037 	u32 ue_count;
88038 	u32 ce_count;
88039 	struct mem_ctl_info *mci;
88040 	u32 nr_channels;
88041 	struct rank_info **channels;
88042 };
88043 
88044 struct usage_priority {
88045 	__u32 usage;
88046 	bool global;
88047 	unsigned int slot_overwrite;
88048 };
88049 
88050 typedef bool (*hid_usage_cmp_t)(struct hid_usage *, unsigned int, unsigned int);
88051 
88052 struct hid_class_descriptor {
88053 	__u8 bDescriptorType;
88054 	__le16 wDescriptorLength;
88055 } __attribute__((packed));
88056 
88057 struct hid_descriptor {
88058 	__u8 bLength;
88059 	__u8 bDescriptorType;
88060 	__le16 bcdHID;
88061 	__u8 bCountryCode;
88062 	__u8 bNumDescriptors;
88063 	struct hid_class_descriptor desc[1];
88064 } __attribute__((packed));
88065 
88066 struct sk_psock_link {
88067 	struct list_head list;
88068 	struct bpf_map *map;
88069 	void *link_raw;
88070 };
88071 
88072 struct ethtool_value {
88073 	__u32 cmd;
88074 	__u32 data;
88075 };
88076 
88077 enum tunable_type_id {
88078 	ETHTOOL_TUNABLE_UNSPEC = 0,
88079 	ETHTOOL_TUNABLE_U8 = 1,
88080 	ETHTOOL_TUNABLE_U16 = 2,
88081 	ETHTOOL_TUNABLE_U32 = 3,
88082 	ETHTOOL_TUNABLE_U64 = 4,
88083 	ETHTOOL_TUNABLE_STRING = 5,
88084 	ETHTOOL_TUNABLE_S8 = 6,
88085 	ETHTOOL_TUNABLE_S16 = 7,
88086 	ETHTOOL_TUNABLE_S32 = 8,
88087 	ETHTOOL_TUNABLE_S64 = 9,
88088 };
88089 
88090 struct ethtool_gstrings {
88091 	__u32 cmd;
88092 	__u32 string_set;
88093 	__u32 len;
88094 	__u8 data[0];
88095 };
88096 
88097 struct ethtool_sset_info {
88098 	__u32 cmd;
88099 	__u32 reserved;
88100 	__u64 sset_mask;
88101 	__u32 data[0];
88102 };
88103 
88104 struct ethtool_perm_addr {
88105 	__u32 cmd;
88106 	__u32 size;
88107 	__u8 data[0];
88108 };
88109 
88110 enum ethtool_flags {
88111 	ETH_FLAG_TXVLAN = 128,
88112 	ETH_FLAG_RXVLAN = 256,
88113 	ETH_FLAG_LRO = 32768,
88114 	ETH_FLAG_NTUPLE = 134217728,
88115 	ETH_FLAG_RXHASH = 268435456,
88116 };
88117 
88118 struct ethtool_rxfh {
88119 	__u32 cmd;
88120 	__u32 rss_context;
88121 	__u32 indir_size;
88122 	__u32 key_size;
88123 	__u8 hfunc;
88124 	__u8 rsvd8[3];
88125 	__u32 rsvd32;
88126 	__u32 rss_config[0];
88127 };
88128 
88129 struct ethtool_get_features_block {
88130 	__u32 available;
88131 	__u32 requested;
88132 	__u32 active;
88133 	__u32 never_changed;
88134 };
88135 
88136 struct ethtool_gfeatures {
88137 	__u32 cmd;
88138 	__u32 size;
88139 	struct ethtool_get_features_block features[0];
88140 };
88141 
88142 struct ethtool_set_features_block {
88143 	__u32 valid;
88144 	__u32 requested;
88145 };
88146 
88147 struct ethtool_sfeatures {
88148 	__u32 cmd;
88149 	__u32 size;
88150 	struct ethtool_set_features_block features[0];
88151 };
88152 
88153 enum ethtool_sfeatures_retval_bits {
88154 	ETHTOOL_F_UNSUPPORTED__BIT = 0,
88155 	ETHTOOL_F_WISH__BIT = 1,
88156 	ETHTOOL_F_COMPAT__BIT = 2,
88157 };
88158 
88159 struct ethtool_per_queue_op {
88160 	__u32 cmd;
88161 	__u32 sub_command;
88162 	__u32 queue_mask[128];
88163 	char data[0];
88164 };
88165 
88166 enum ethtool_fec_config_bits {
88167 	ETHTOOL_FEC_NONE_BIT = 0,
88168 	ETHTOOL_FEC_AUTO_BIT = 1,
88169 	ETHTOOL_FEC_OFF_BIT = 2,
88170 	ETHTOOL_FEC_RS_BIT = 3,
88171 	ETHTOOL_FEC_BASER_BIT = 4,
88172 	ETHTOOL_FEC_LLRS_BIT = 5,
88173 };
88174 
88175 struct flow_rule;
88176 
88177 struct ethtool_rx_flow_rule {
88178 	struct flow_rule *rule;
88179 	long unsigned int priv[0];
88180 };
88181 
88182 struct flow_match {
88183 	struct flow_dissector *dissector;
88184 	void *mask;
88185 	void *key;
88186 };
88187 
88188 enum flow_action_id {
88189 	FLOW_ACTION_ACCEPT = 0,
88190 	FLOW_ACTION_DROP = 1,
88191 	FLOW_ACTION_TRAP = 2,
88192 	FLOW_ACTION_GOTO = 3,
88193 	FLOW_ACTION_REDIRECT = 4,
88194 	FLOW_ACTION_MIRRED = 5,
88195 	FLOW_ACTION_REDIRECT_INGRESS = 6,
88196 	FLOW_ACTION_MIRRED_INGRESS = 7,
88197 	FLOW_ACTION_VLAN_PUSH = 8,
88198 	FLOW_ACTION_VLAN_POP = 9,
88199 	FLOW_ACTION_VLAN_MANGLE = 10,
88200 	FLOW_ACTION_TUNNEL_ENCAP = 11,
88201 	FLOW_ACTION_TUNNEL_DECAP = 12,
88202 	FLOW_ACTION_MANGLE = 13,
88203 	FLOW_ACTION_ADD = 14,
88204 	FLOW_ACTION_CSUM = 15,
88205 	FLOW_ACTION_MARK = 16,
88206 	FLOW_ACTION_PTYPE = 17,
88207 	FLOW_ACTION_PRIORITY = 18,
88208 	FLOW_ACTION_WAKE = 19,
88209 	FLOW_ACTION_QUEUE = 20,
88210 	FLOW_ACTION_SAMPLE = 21,
88211 	FLOW_ACTION_POLICE = 22,
88212 	FLOW_ACTION_CT = 23,
88213 	FLOW_ACTION_CT_METADATA = 24,
88214 	FLOW_ACTION_MPLS_PUSH = 25,
88215 	FLOW_ACTION_MPLS_POP = 26,
88216 	FLOW_ACTION_MPLS_MANGLE = 27,
88217 	FLOW_ACTION_GATE = 28,
88218 	FLOW_ACTION_PPPOE_PUSH = 29,
88219 	FLOW_ACTION_JUMP = 30,
88220 	FLOW_ACTION_PIPE = 31,
88221 	FLOW_ACTION_VLAN_PUSH_ETH = 32,
88222 	FLOW_ACTION_VLAN_POP_ETH = 33,
88223 	FLOW_ACTION_CONTINUE = 34,
88224 	NUM_FLOW_ACTIONS = 35,
88225 };
88226 
88227 enum flow_action_hw_stats {
88228 	FLOW_ACTION_HW_STATS_IMMEDIATE = 1,
88229 	FLOW_ACTION_HW_STATS_DELAYED = 2,
88230 	FLOW_ACTION_HW_STATS_ANY = 3,
88231 	FLOW_ACTION_HW_STATS_DISABLED = 4,
88232 	FLOW_ACTION_HW_STATS_DONT_CARE = 7,
88233 };
88234 
88235 typedef void (*action_destr)(void *);
88236 
88237 enum flow_action_mangle_base {
88238 	FLOW_ACT_MANGLE_UNSPEC = 0,
88239 	FLOW_ACT_MANGLE_HDR_TYPE_ETH = 1,
88240 	FLOW_ACT_MANGLE_HDR_TYPE_IP4 = 2,
88241 	FLOW_ACT_MANGLE_HDR_TYPE_IP6 = 3,
88242 	FLOW_ACT_MANGLE_HDR_TYPE_TCP = 4,
88243 	FLOW_ACT_MANGLE_HDR_TYPE_UDP = 5,
88244 };
88245 
88246 struct nf_flowtable;
88247 
88248 struct psample_group;
88249 
88250 struct action_gate_entry;
88251 
88252 struct flow_action_cookie;
88253 
88254 struct flow_action_entry {
88255 	enum flow_action_id id;
88256 	u32 hw_index;
88257 	enum flow_action_hw_stats hw_stats;
88258 	action_destr destructor;
88259 	void *destructor_priv;
88260 	union {
88261 		u32 chain_index;
88262 		struct net_device *dev;
88263 		struct {
88264 			u16 vid;
88265 			__be16 proto;
88266 			u8 prio;
88267 		} vlan;
88268 		struct {
88269 			unsigned char dst[6];
88270 			unsigned char src[6];
88271 		} vlan_push_eth;
88272 		struct {
88273 			enum flow_action_mangle_base htype;
88274 			u32 offset;
88275 			u32 mask;
88276 			u32 val;
88277 		} mangle;
88278 		struct ip_tunnel_info *tunnel;
88279 		u32 csum_flags;
88280 		u32 mark;
88281 		u16 ptype;
88282 		u32 priority;
88283 		struct {
88284 			u32 ctx;
88285 			u32 index;
88286 			u8 vf;
88287 		} queue;
88288 		struct {
88289 			struct psample_group *psample_group;
88290 			u32 rate;
88291 			u32 trunc_size;
88292 			bool truncate;
88293 		} sample;
88294 		struct {
88295 			u32 burst;
88296 			u64 rate_bytes_ps;
88297 			u64 peakrate_bytes_ps;
88298 			u32 avrate;
88299 			u16 overhead;
88300 			u64 burst_pkt;
88301 			u64 rate_pkt_ps;
88302 			u32 mtu;
88303 			struct {
88304 				enum flow_action_id act_id;
88305 				u32 extval;
88306 			} exceed;
88307 			struct {
88308 				enum flow_action_id act_id;
88309 				u32 extval;
88310 			} notexceed;
88311 		} police;
88312 		struct {
88313 			int action;
88314 			u16 zone;
88315 			struct nf_flowtable *flow_table;
88316 		} ct;
88317 		struct {
88318 			long unsigned int cookie;
88319 			u32 mark;
88320 			u32 labels[4];
88321 			bool orig_dir;
88322 		} ct_metadata;
88323 		struct {
88324 			u32 label;
88325 			__be16 proto;
88326 			u8 tc;
88327 			u8 bos;
88328 			u8 ttl;
88329 		} mpls_push;
88330 		struct {
88331 			__be16 proto;
88332 		} mpls_pop;
88333 		struct {
88334 			u32 label;
88335 			u8 tc;
88336 			u8 bos;
88337 			u8 ttl;
88338 		} mpls_mangle;
88339 		struct {
88340 			s32 prio;
88341 			u64 basetime;
88342 			u64 cycletime;
88343 			u64 cycletimeext;
88344 			u32 num_entries;
88345 			struct action_gate_entry *entries;
88346 		} gate;
88347 		struct {
88348 			u16 sid;
88349 		} pppoe;
88350 	};
88351 	struct flow_action_cookie *cookie;
88352 };
88353 
88354 struct flow_action {
88355 	unsigned int num_entries;
88356 	struct flow_action_entry entries[0];
88357 };
88358 
88359 struct flow_rule {
88360 	struct flow_match match;
88361 	struct flow_action action;
88362 };
88363 
88364 struct ethtool_rx_flow_spec_input {
88365 	const struct ethtool_rx_flow_spec *fs;
88366 	u32 rss_ctx;
88367 };
88368 
88369 struct flow_action_cookie {
88370 	u32 cookie_len;
88371 	u8 cookie[0];
88372 };
88373 
88374 struct ethtool_devlink_compat {
88375 	struct devlink *devlink;
88376 	union {
88377 		struct ethtool_flash efl;
88378 		struct ethtool_drvinfo info;
88379 	};
88380 };
88381 
88382 struct ethtool_link_usettings {
88383 	struct ethtool_link_settings base;
88384 	struct {
88385 		__u32 supported[3];
88386 		__u32 advertising[3];
88387 		__u32 lp_advertising[3];
88388 	} link_modes;
88389 };
88390 
88391 struct ethtool_rx_flow_key {
88392 	struct flow_dissector_key_basic basic;
88393 	union {
88394 		struct flow_dissector_key_ipv4_addrs ipv4;
88395 		struct flow_dissector_key_ipv6_addrs ipv6;
88396 	};
88397 	struct flow_dissector_key_ports tp;
88398 	struct flow_dissector_key_ip ip;
88399 	struct flow_dissector_key_vlan vlan;
88400 	struct flow_dissector_key_eth_addrs eth_addrs;
88401 };
88402 
88403 struct ethtool_rx_flow_match {
88404 	struct flow_dissector dissector;
88405 	struct ethtool_rx_flow_key key;
88406 	struct ethtool_rx_flow_key mask;
88407 };
88408 
88409 struct eeprom_req_info {
88410 	struct ethnl_req_info base;
88411 	u32 offset;
88412 	u32 length;
88413 	u8 page;
88414 	u8 bank;
88415 	u8 i2c_address;
88416 };
88417 
88418 struct eeprom_reply_data {
88419 	struct ethnl_reply_data base;
88420 	u32 length;
88421 	u8 *data;
88422 };
88423 
88424 enum tcp_metric_index {
88425 	TCP_METRIC_RTT = 0,
88426 	TCP_METRIC_RTTVAR = 1,
88427 	TCP_METRIC_SSTHRESH = 2,
88428 	TCP_METRIC_CWND = 3,
88429 	TCP_METRIC_REORDERING = 4,
88430 	TCP_METRIC_RTT_US = 5,
88431 	TCP_METRIC_RTTVAR_US = 6,
88432 	__TCP_METRIC_MAX = 7,
88433 };
88434 
88435 enum {
88436 	TCP_METRICS_ATTR_UNSPEC = 0,
88437 	TCP_METRICS_ATTR_ADDR_IPV4 = 1,
88438 	TCP_METRICS_ATTR_ADDR_IPV6 = 2,
88439 	TCP_METRICS_ATTR_AGE = 3,
88440 	TCP_METRICS_ATTR_TW_TSVAL = 4,
88441 	TCP_METRICS_ATTR_TW_TS_STAMP = 5,
88442 	TCP_METRICS_ATTR_VALS = 6,
88443 	TCP_METRICS_ATTR_FOPEN_MSS = 7,
88444 	TCP_METRICS_ATTR_FOPEN_SYN_DROPS = 8,
88445 	TCP_METRICS_ATTR_FOPEN_SYN_DROP_TS = 9,
88446 	TCP_METRICS_ATTR_FOPEN_COOKIE = 10,
88447 	TCP_METRICS_ATTR_SADDR_IPV4 = 11,
88448 	TCP_METRICS_ATTR_SADDR_IPV6 = 12,
88449 	TCP_METRICS_ATTR_PAD = 13,
88450 	__TCP_METRICS_ATTR_MAX = 14,
88451 };
88452 
88453 enum {
88454 	TCP_METRICS_CMD_UNSPEC = 0,
88455 	TCP_METRICS_CMD_GET = 1,
88456 	TCP_METRICS_CMD_DEL = 2,
88457 	__TCP_METRICS_CMD_MAX = 3,
88458 };
88459 
88460 struct tcp_fastopen_metrics {
88461 	u16 mss;
88462 	u16 syn_loss: 10;
88463 	u16 try_exp: 2;
88464 	long unsigned int last_syn_loss;
88465 	struct tcp_fastopen_cookie cookie;
88466 };
88467 
88468 struct tcp_metrics_block {
88469 	struct tcp_metrics_block *tcpm_next;
88470 	possible_net_t tcpm_net;
88471 	struct inetpeer_addr tcpm_saddr;
88472 	struct inetpeer_addr tcpm_daddr;
88473 	long unsigned int tcpm_stamp;
88474 	u32 tcpm_lock;
88475 	u32 tcpm_vals[5];
88476 	struct tcp_fastopen_metrics tcpm_fastopen;
88477 	struct callback_head callback_head;
88478 };
88479 
88480 struct tcpm_hash_bucket {
88481 	struct tcp_metrics_block *chain;
88482 };
88483 
88484 struct ifaddrmsg {
88485 	__u8 ifa_family;
88486 	__u8 ifa_prefixlen;
88487 	__u8 ifa_flags;
88488 	__u8 ifa_scope;
88489 	__u32 ifa_index;
88490 };
88491 
88492 enum {
88493 	IFA_UNSPEC = 0,
88494 	IFA_ADDRESS = 1,
88495 	IFA_LOCAL = 2,
88496 	IFA_LABEL = 3,
88497 	IFA_BROADCAST = 4,
88498 	IFA_ANYCAST = 5,
88499 	IFA_CACHEINFO = 6,
88500 	IFA_MULTICAST = 7,
88501 	IFA_FLAGS = 8,
88502 	IFA_RT_PRIORITY = 9,
88503 	IFA_TARGET_NETNSID = 10,
88504 	IFA_PROTO = 11,
88505 	__IFA_MAX = 12,
88506 };
88507 
88508 struct ifa_cacheinfo {
88509 	__u32 ifa_prefered;
88510 	__u32 ifa_valid;
88511 	__u32 cstamp;
88512 	__u32 tstamp;
88513 };
88514 
88515 enum {
88516 	IFLA_INET_UNSPEC = 0,
88517 	IFLA_INET_CONF = 1,
88518 	__IFLA_INET_MAX = 2,
88519 };
88520 
88521 struct in_validator_info {
88522 	__be32 ivi_addr;
88523 	struct in_device *ivi_dev;
88524 	struct netlink_ext_ack *extack;
88525 };
88526 
88527 struct netconfmsg {
88528 	__u8 ncm_family;
88529 };
88530 
88531 enum {
88532 	NETCONFA_UNSPEC = 0,
88533 	NETCONFA_IFINDEX = 1,
88534 	NETCONFA_FORWARDING = 2,
88535 	NETCONFA_RP_FILTER = 3,
88536 	NETCONFA_MC_FORWARDING = 4,
88537 	NETCONFA_PROXY_NEIGH = 5,
88538 	NETCONFA_IGNORE_ROUTES_WITH_LINKDOWN = 6,
88539 	NETCONFA_INPUT = 7,
88540 	NETCONFA_BC_FORWARDING = 8,
88541 	__NETCONFA_MAX = 9,
88542 };
88543 
88544 struct rtnl_af_ops {
88545 	struct list_head list;
88546 	int family;
88547 	int (*fill_link_af)(struct sk_buff *, const struct net_device *, u32);
88548 	size_t (*get_link_af_size)(const struct net_device *, u32);
88549 	int (*validate_link_af)(const struct net_device *, const struct nlattr *, struct netlink_ext_ack *);
88550 	int (*set_link_af)(struct net_device *, const struct nlattr *, struct netlink_ext_ack *);
88551 	int (*fill_stats_af)(struct sk_buff *, const struct net_device *);
88552 	size_t (*get_stats_af_size)(const struct net_device *);
88553 };
88554 
88555 struct inet_fill_args {
88556 	u32 portid;
88557 	u32 seq;
88558 	int event;
88559 	unsigned int flags;
88560 	int netnsid;
88561 	int ifindex;
88562 };
88563 
88564 struct devinet_sysctl_table {
88565 	struct ctl_table_header *sysctl_header;
88566 	struct ctl_table devinet_vars[34];
88567 };
88568 
88569 struct ac6_iter_state {
88570 	struct seq_net_private p;
88571 	struct net_device *dev;
88572 	struct inet6_dev *idev;
88573 };
88574 
88575 typedef __kernel_clock_t clock_t;
88576 
88577 struct mld_msg {
88578 	struct icmp6hdr mld_hdr;
88579 	struct in6_addr mld_mca;
88580 };
88581 
88582 struct mld2_grec {
88583 	__u8 grec_type;
88584 	__u8 grec_auxwords;
88585 	__be16 grec_nsrcs;
88586 	struct in6_addr grec_mca;
88587 	struct in6_addr grec_src[0];
88588 };
88589 
88590 struct mld2_report {
88591 	struct icmp6hdr mld2r_hdr;
88592 	struct mld2_grec mld2r_grec[0];
88593 };
88594 
88595 struct mld2_query {
88596 	struct icmp6hdr mld2q_hdr;
88597 	struct in6_addr mld2q_mca;
88598 	__u8 mld2q_qrv: 3;
88599 	__u8 mld2q_suppress: 1;
88600 	__u8 mld2q_resv2: 4;
88601 	__u8 mld2q_qqic;
88602 	__be16 mld2q_nsrcs;
88603 	struct in6_addr mld2q_srcs[0];
88604 };
88605 
88606 struct igmp6_mc_iter_state {
88607 	struct seq_net_private p;
88608 	struct net_device *dev;
88609 	struct inet6_dev *idev;
88610 };
88611 
88612 struct igmp6_mcf_iter_state {
88613 	struct seq_net_private p;
88614 	struct net_device *dev;
88615 	struct inet6_dev *idev;
88616 	struct ifmcaddr6 *im;
88617 };
88618 
88619 struct ip6_fraglist_iter {
88620 	struct ipv6hdr *tmp_hdr;
88621 	struct sk_buff *frag;
88622 	int offset;
88623 	unsigned int hlen;
88624 	__be32 frag_id;
88625 	u8 nexthdr;
88626 };
88627 
88628 struct ip6_frag_state {
88629 	u8 *prevhdr;
88630 	unsigned int hlen;
88631 	unsigned int mtu;
88632 	unsigned int left;
88633 	int offset;
88634 	int ptr;
88635 	int hroom;
88636 	int troom;
88637 	__be32 frag_id;
88638 	u8 nexthdr;
88639 };
88640 
88641 struct ip6_rt_info {
88642 	struct in6_addr daddr;
88643 	struct in6_addr saddr;
88644 	u_int32_t mark;
88645 };
88646 
88647 enum {
88648 	BR_MCAST_DIR_RX = 0,
88649 	BR_MCAST_DIR_TX = 1,
88650 	BR_MCAST_DIR_SIZE = 2,
88651 };
88652 
88653 struct br_input_skb_cb {
88654 	struct net_device *brdev;
88655 	u16 frag_max_size;
88656 	u8 igmp;
88657 	u8 mrouters_only: 1;
88658 	u8 proxyarp_replied: 1;
88659 	u8 src_port_isolated: 1;
88660 };
88661 
88662 struct nf_bridge_frag_data;
88663 
88664 struct rpc_buffer {
88665 	size_t len;
88666 	char data[0];
88667 };
88668 
88669 struct sock_xprt {
88670 	struct rpc_xprt xprt;
88671 	struct socket *sock;
88672 	struct sock *inet;
88673 	struct file *file;
88674 	struct {
88675 		struct {
88676 			__be32 fraghdr;
88677 			__be32 xid;
88678 			__be32 calldir;
88679 		};
88680 		u32 offset;
88681 		u32 len;
88682 		long unsigned int copied;
88683 	} recv;
88684 	struct {
88685 		u32 offset;
88686 	} xmit;
88687 	long unsigned int sock_state;
88688 	struct delayed_work connect_worker;
88689 	struct work_struct error_worker;
88690 	struct work_struct recv_worker;
88691 	struct mutex recv_mutex;
88692 	struct __kernel_sockaddr_storage srcaddr;
88693 	short unsigned int srcport;
88694 	int xprt_err;
88695 	size_t rcvsize;
88696 	size_t sndsize;
88697 	struct rpc_timeout tcp_timeout;
88698 	void (*old_data_ready)(struct sock *);
88699 	void (*old_state_change)(struct sock *);
88700 	void (*old_write_space)(struct sock *);
88701 	void (*old_error_report)(struct sock *);
88702 };
88703 
88704 struct trace_event_raw_rpc_xdr_buf_class {
88705 	struct trace_entry ent;
88706 	unsigned int task_id;
88707 	unsigned int client_id;
88708 	const void *head_base;
88709 	size_t head_len;
88710 	const void *tail_base;
88711 	size_t tail_len;
88712 	unsigned int page_base;
88713 	unsigned int page_len;
88714 	unsigned int msg_len;
88715 	char __data[0];
88716 };
88717 
88718 struct trace_event_raw_rpc_clnt_class {
88719 	struct trace_entry ent;
88720 	unsigned int client_id;
88721 	char __data[0];
88722 };
88723 
88724 struct trace_event_raw_rpc_clnt_new {
88725 	struct trace_entry ent;
88726 	unsigned int client_id;
88727 	u32 __data_loc_addr;
88728 	u32 __data_loc_port;
88729 	u32 __data_loc_program;
88730 	u32 __data_loc_server;
88731 	char __data[0];
88732 };
88733 
88734 struct trace_event_raw_rpc_clnt_new_err {
88735 	struct trace_entry ent;
88736 	int error;
88737 	u32 __data_loc_program;
88738 	u32 __data_loc_server;
88739 	char __data[0];
88740 };
88741 
88742 struct trace_event_raw_rpc_clnt_clone_err {
88743 	struct trace_entry ent;
88744 	unsigned int client_id;
88745 	int error;
88746 	char __data[0];
88747 };
88748 
88749 struct trace_event_raw_rpc_task_status {
88750 	struct trace_entry ent;
88751 	unsigned int task_id;
88752 	unsigned int client_id;
88753 	int status;
88754 	char __data[0];
88755 };
88756 
88757 struct trace_event_raw_rpc_request {
88758 	struct trace_entry ent;
88759 	unsigned int task_id;
88760 	unsigned int client_id;
88761 	int version;
88762 	bool async;
88763 	u32 __data_loc_progname;
88764 	u32 __data_loc_procname;
88765 	char __data[0];
88766 };
88767 
88768 struct trace_event_raw_rpc_task_running {
88769 	struct trace_entry ent;
88770 	unsigned int task_id;
88771 	unsigned int client_id;
88772 	const void *action;
88773 	long unsigned int runstate;
88774 	int status;
88775 	short unsigned int flags;
88776 	char __data[0];
88777 };
88778 
88779 struct trace_event_raw_rpc_task_queued {
88780 	struct trace_entry ent;
88781 	unsigned int task_id;
88782 	unsigned int client_id;
88783 	long unsigned int timeout;
88784 	long unsigned int runstate;
88785 	int status;
88786 	short unsigned int flags;
88787 	u32 __data_loc_q_name;
88788 	char __data[0];
88789 };
88790 
88791 struct trace_event_raw_rpc_failure {
88792 	struct trace_entry ent;
88793 	unsigned int task_id;
88794 	unsigned int client_id;
88795 	char __data[0];
88796 };
88797 
88798 struct trace_event_raw_rpc_reply_event {
88799 	struct trace_entry ent;
88800 	unsigned int task_id;
88801 	unsigned int client_id;
88802 	u32 xid;
88803 	u32 __data_loc_progname;
88804 	u32 version;
88805 	u32 __data_loc_procname;
88806 	u32 __data_loc_servername;
88807 	char __data[0];
88808 };
88809 
88810 struct trace_event_raw_rpc_buf_alloc {
88811 	struct trace_entry ent;
88812 	unsigned int task_id;
88813 	unsigned int client_id;
88814 	size_t callsize;
88815 	size_t recvsize;
88816 	int status;
88817 	char __data[0];
88818 };
88819 
88820 struct trace_event_raw_rpc_call_rpcerror {
88821 	struct trace_entry ent;
88822 	unsigned int task_id;
88823 	unsigned int client_id;
88824 	int tk_status;
88825 	int rpc_status;
88826 	char __data[0];
88827 };
88828 
88829 struct trace_event_raw_rpc_stats_latency {
88830 	struct trace_entry ent;
88831 	unsigned int task_id;
88832 	unsigned int client_id;
88833 	u32 xid;
88834 	int version;
88835 	u32 __data_loc_progname;
88836 	u32 __data_loc_procname;
88837 	long unsigned int backlog;
88838 	long unsigned int rtt;
88839 	long unsigned int execute;
88840 	char __data[0];
88841 };
88842 
88843 struct trace_event_raw_rpc_xdr_overflow {
88844 	struct trace_entry ent;
88845 	unsigned int task_id;
88846 	unsigned int client_id;
88847 	int version;
88848 	size_t requested;
88849 	const void *end;
88850 	const void *p;
88851 	const void *head_base;
88852 	size_t head_len;
88853 	const void *tail_base;
88854 	size_t tail_len;
88855 	unsigned int page_len;
88856 	unsigned int len;
88857 	u32 __data_loc_progname;
88858 	u32 __data_loc_procedure;
88859 	char __data[0];
88860 };
88861 
88862 struct trace_event_raw_rpc_xdr_alignment {
88863 	struct trace_entry ent;
88864 	unsigned int task_id;
88865 	unsigned int client_id;
88866 	int version;
88867 	size_t offset;
88868 	unsigned int copied;
88869 	const void *head_base;
88870 	size_t head_len;
88871 	const void *tail_base;
88872 	size_t tail_len;
88873 	unsigned int page_len;
88874 	unsigned int len;
88875 	u32 __data_loc_progname;
88876 	u32 __data_loc_procedure;
88877 	char __data[0];
88878 };
88879 
88880 struct trace_event_raw_xs_socket_event {
88881 	struct trace_entry ent;
88882 	unsigned int socket_state;
88883 	unsigned int sock_state;
88884 	long long unsigned int ino;
88885 	__u8 saddr[28];
88886 	__u8 daddr[28];
88887 	char __data[0];
88888 };
88889 
88890 struct trace_event_raw_xs_socket_event_done {
88891 	struct trace_entry ent;
88892 	int error;
88893 	unsigned int socket_state;
88894 	unsigned int sock_state;
88895 	long long unsigned int ino;
88896 	__u8 saddr[28];
88897 	__u8 daddr[28];
88898 	char __data[0];
88899 };
88900 
88901 struct trace_event_raw_rpc_socket_nospace {
88902 	struct trace_entry ent;
88903 	unsigned int task_id;
88904 	unsigned int client_id;
88905 	unsigned int total;
88906 	unsigned int remaining;
88907 	char __data[0];
88908 };
88909 
88910 struct trace_event_raw_rpc_xprt_lifetime_class {
88911 	struct trace_entry ent;
88912 	long unsigned int state;
88913 	u32 __data_loc_addr;
88914 	u32 __data_loc_port;
88915 	char __data[0];
88916 };
88917 
88918 struct trace_event_raw_rpc_xprt_event {
88919 	struct trace_entry ent;
88920 	u32 xid;
88921 	int status;
88922 	u32 __data_loc_addr;
88923 	u32 __data_loc_port;
88924 	char __data[0];
88925 };
88926 
88927 struct trace_event_raw_xprt_transmit {
88928 	struct trace_entry ent;
88929 	unsigned int task_id;
88930 	unsigned int client_id;
88931 	u32 xid;
88932 	u32 seqno;
88933 	int status;
88934 	char __data[0];
88935 };
88936 
88937 struct trace_event_raw_xprt_retransmit {
88938 	struct trace_entry ent;
88939 	unsigned int task_id;
88940 	unsigned int client_id;
88941 	u32 xid;
88942 	int ntrans;
88943 	int version;
88944 	long unsigned int timeout;
88945 	u32 __data_loc_progname;
88946 	u32 __data_loc_procname;
88947 	char __data[0];
88948 };
88949 
88950 struct trace_event_raw_xprt_ping {
88951 	struct trace_entry ent;
88952 	int status;
88953 	u32 __data_loc_addr;
88954 	u32 __data_loc_port;
88955 	char __data[0];
88956 };
88957 
88958 struct trace_event_raw_xprt_writelock_event {
88959 	struct trace_entry ent;
88960 	unsigned int task_id;
88961 	unsigned int client_id;
88962 	unsigned int snd_task_id;
88963 	char __data[0];
88964 };
88965 
88966 struct trace_event_raw_xprt_cong_event {
88967 	struct trace_entry ent;
88968 	unsigned int task_id;
88969 	unsigned int client_id;
88970 	unsigned int snd_task_id;
88971 	long unsigned int cong;
88972 	long unsigned int cwnd;
88973 	bool wait;
88974 	char __data[0];
88975 };
88976 
88977 struct trace_event_raw_xprt_reserve {
88978 	struct trace_entry ent;
88979 	unsigned int task_id;
88980 	unsigned int client_id;
88981 	u32 xid;
88982 	char __data[0];
88983 };
88984 
88985 struct trace_event_raw_xs_data_ready {
88986 	struct trace_entry ent;
88987 	u32 __data_loc_addr;
88988 	u32 __data_loc_port;
88989 	char __data[0];
88990 };
88991 
88992 struct trace_event_raw_xs_stream_read_data {
88993 	struct trace_entry ent;
88994 	ssize_t err;
88995 	size_t total;
88996 	u32 __data_loc_addr;
88997 	u32 __data_loc_port;
88998 	char __data[0];
88999 };
89000 
89001 struct trace_event_raw_xs_stream_read_request {
89002 	struct trace_entry ent;
89003 	u32 __data_loc_addr;
89004 	u32 __data_loc_port;
89005 	u32 xid;
89006 	long unsigned int copied;
89007 	unsigned int reclen;
89008 	unsigned int offset;
89009 	char __data[0];
89010 };
89011 
89012 struct trace_event_raw_rpcb_getport {
89013 	struct trace_entry ent;
89014 	unsigned int task_id;
89015 	unsigned int client_id;
89016 	unsigned int program;
89017 	unsigned int version;
89018 	int protocol;
89019 	unsigned int bind_version;
89020 	u32 __data_loc_servername;
89021 	char __data[0];
89022 };
89023 
89024 struct trace_event_raw_rpcb_setport {
89025 	struct trace_entry ent;
89026 	unsigned int task_id;
89027 	unsigned int client_id;
89028 	int status;
89029 	short unsigned int port;
89030 	char __data[0];
89031 };
89032 
89033 struct trace_event_raw_pmap_register {
89034 	struct trace_entry ent;
89035 	unsigned int program;
89036 	unsigned int version;
89037 	int protocol;
89038 	unsigned int port;
89039 	char __data[0];
89040 };
89041 
89042 struct trace_event_raw_rpcb_register {
89043 	struct trace_entry ent;
89044 	unsigned int program;
89045 	unsigned int version;
89046 	u32 __data_loc_addr;
89047 	u32 __data_loc_netid;
89048 	char __data[0];
89049 };
89050 
89051 struct trace_event_raw_rpcb_unregister {
89052 	struct trace_entry ent;
89053 	unsigned int program;
89054 	unsigned int version;
89055 	u32 __data_loc_netid;
89056 	char __data[0];
89057 };
89058 
89059 struct trace_event_raw_svc_xdr_msg_class {
89060 	struct trace_entry ent;
89061 	u32 xid;
89062 	const void *head_base;
89063 	size_t head_len;
89064 	const void *tail_base;
89065 	size_t tail_len;
89066 	unsigned int page_len;
89067 	unsigned int msg_len;
89068 	char __data[0];
89069 };
89070 
89071 struct trace_event_raw_svc_xdr_buf_class {
89072 	struct trace_entry ent;
89073 	u32 xid;
89074 	const void *head_base;
89075 	size_t head_len;
89076 	const void *tail_base;
89077 	size_t tail_len;
89078 	unsigned int page_base;
89079 	unsigned int page_len;
89080 	unsigned int msg_len;
89081 	char __data[0];
89082 };
89083 
89084 struct trace_event_raw_svc_authenticate {
89085 	struct trace_entry ent;
89086 	u32 __data_loc_server;
89087 	u32 __data_loc_client;
89088 	unsigned int netns_ino;
89089 	u32 xid;
89090 	long unsigned int svc_status;
89091 	long unsigned int auth_stat;
89092 	char __data[0];
89093 };
89094 
89095 struct trace_event_raw_svc_process {
89096 	struct trace_entry ent;
89097 	u32 xid;
89098 	u32 vers;
89099 	u32 proc;
89100 	u32 __data_loc_service;
89101 	u32 __data_loc_procedure;
89102 	u32 __data_loc_addr;
89103 	char __data[0];
89104 };
89105 
89106 struct trace_event_raw_svc_rqst_event {
89107 	struct trace_entry ent;
89108 	u32 __data_loc_server;
89109 	u32 __data_loc_client;
89110 	unsigned int netns_ino;
89111 	u32 xid;
89112 	long unsigned int flags;
89113 	char __data[0];
89114 };
89115 
89116 struct trace_event_raw_svc_rqst_status {
89117 	struct trace_entry ent;
89118 	u32 __data_loc_server;
89119 	u32 __data_loc_client;
89120 	unsigned int netns_ino;
89121 	u32 xid;
89122 	int status;
89123 	long unsigned int flags;
89124 	char __data[0];
89125 };
89126 
89127 struct trace_event_raw_svc_stats_latency {
89128 	struct trace_entry ent;
89129 	u32 __data_loc_server;
89130 	u32 __data_loc_client;
89131 	unsigned int netns_ino;
89132 	u32 xid;
89133 	long unsigned int execute;
89134 	u32 __data_loc_procedure;
89135 	char __data[0];
89136 };
89137 
89138 struct trace_event_raw_svc_xprt_create_err {
89139 	struct trace_entry ent;
89140 	long int error;
89141 	u32 __data_loc_program;
89142 	u32 __data_loc_protocol;
89143 	u32 __data_loc_addr;
89144 	char __data[0];
89145 };
89146 
89147 struct trace_event_raw_svc_xprt_enqueue {
89148 	struct trace_entry ent;
89149 	u32 __data_loc_server;
89150 	u32 __data_loc_client;
89151 	long unsigned int flags;
89152 	unsigned int netns_ino;
89153 	int pid;
89154 	char __data[0];
89155 };
89156 
89157 struct trace_event_raw_svc_xprt_dequeue {
89158 	struct trace_entry ent;
89159 	u32 __data_loc_server;
89160 	u32 __data_loc_client;
89161 	long unsigned int flags;
89162 	unsigned int netns_ino;
89163 	long unsigned int wakeup;
89164 	char __data[0];
89165 };
89166 
89167 struct trace_event_raw_svc_xprt_event {
89168 	struct trace_entry ent;
89169 	u32 __data_loc_server;
89170 	u32 __data_loc_client;
89171 	long unsigned int flags;
89172 	unsigned int netns_ino;
89173 	char __data[0];
89174 };
89175 
89176 struct trace_event_raw_svc_xprt_accept {
89177 	struct trace_entry ent;
89178 	u32 __data_loc_server;
89179 	u32 __data_loc_client;
89180 	long unsigned int flags;
89181 	unsigned int netns_ino;
89182 	u32 __data_loc_protocol;
89183 	u32 __data_loc_service;
89184 	char __data[0];
89185 };
89186 
89187 struct trace_event_raw_svc_wake_up {
89188 	struct trace_entry ent;
89189 	int pid;
89190 	char __data[0];
89191 };
89192 
89193 struct trace_event_raw_svc_alloc_arg_err {
89194 	struct trace_entry ent;
89195 	unsigned int requested;
89196 	unsigned int allocated;
89197 	char __data[0];
89198 };
89199 
89200 struct trace_event_raw_svc_deferred_event {
89201 	struct trace_entry ent;
89202 	const void *dr;
89203 	u32 xid;
89204 	u32 __data_loc_addr;
89205 	char __data[0];
89206 };
89207 
89208 struct trace_event_raw_svcsock_new_socket {
89209 	struct trace_entry ent;
89210 	long unsigned int type;
89211 	long unsigned int family;
89212 	bool listener;
89213 	char __data[0];
89214 };
89215 
89216 struct trace_event_raw_svcsock_marker {
89217 	struct trace_entry ent;
89218 	unsigned int length;
89219 	bool last;
89220 	u32 __data_loc_addr;
89221 	char __data[0];
89222 };
89223 
89224 struct trace_event_raw_svcsock_class {
89225 	struct trace_entry ent;
89226 	ssize_t result;
89227 	long unsigned int flags;
89228 	u32 __data_loc_addr;
89229 	char __data[0];
89230 };
89231 
89232 struct trace_event_raw_svcsock_tcp_recv_short {
89233 	struct trace_entry ent;
89234 	u32 expected;
89235 	u32 received;
89236 	long unsigned int flags;
89237 	u32 __data_loc_addr;
89238 	char __data[0];
89239 };
89240 
89241 struct trace_event_raw_svcsock_tcp_state {
89242 	struct trace_entry ent;
89243 	long unsigned int socket_state;
89244 	long unsigned int sock_state;
89245 	long unsigned int flags;
89246 	u32 __data_loc_addr;
89247 	char __data[0];
89248 };
89249 
89250 struct trace_event_raw_svcsock_accept_class {
89251 	struct trace_entry ent;
89252 	long int status;
89253 	u32 __data_loc_service;
89254 	unsigned int netns_ino;
89255 	char __data[0];
89256 };
89257 
89258 struct trace_event_raw_cache_event {
89259 	struct trace_entry ent;
89260 	const struct cache_head *h;
89261 	u32 __data_loc_name;
89262 	char __data[0];
89263 };
89264 
89265 struct trace_event_raw_register_class {
89266 	struct trace_entry ent;
89267 	u32 version;
89268 	long unsigned int family;
89269 	short unsigned int protocol;
89270 	short unsigned int port;
89271 	int error;
89272 	u32 __data_loc_program;
89273 	char __data[0];
89274 };
89275 
89276 struct trace_event_raw_svc_unregister {
89277 	struct trace_entry ent;
89278 	u32 version;
89279 	int error;
89280 	u32 __data_loc_program;
89281 	char __data[0];
89282 };
89283 
89284 struct trace_event_data_offsets_rpc_xdr_buf_class {};
89285 
89286 struct trace_event_data_offsets_rpc_clnt_class {};
89287 
89288 struct trace_event_data_offsets_rpc_clnt_new {
89289 	u32 addr;
89290 	u32 port;
89291 	u32 program;
89292 	u32 server;
89293 };
89294 
89295 struct trace_event_data_offsets_rpc_clnt_new_err {
89296 	u32 program;
89297 	u32 server;
89298 };
89299 
89300 struct trace_event_data_offsets_rpc_clnt_clone_err {};
89301 
89302 struct trace_event_data_offsets_rpc_task_status {};
89303 
89304 struct trace_event_data_offsets_rpc_request {
89305 	u32 progname;
89306 	u32 procname;
89307 };
89308 
89309 struct trace_event_data_offsets_rpc_task_running {};
89310 
89311 struct trace_event_data_offsets_rpc_task_queued {
89312 	u32 q_name;
89313 };
89314 
89315 struct trace_event_data_offsets_rpc_failure {};
89316 
89317 struct trace_event_data_offsets_rpc_reply_event {
89318 	u32 progname;
89319 	u32 procname;
89320 	u32 servername;
89321 };
89322 
89323 struct trace_event_data_offsets_rpc_buf_alloc {};
89324 
89325 struct trace_event_data_offsets_rpc_call_rpcerror {};
89326 
89327 struct trace_event_data_offsets_rpc_stats_latency {
89328 	u32 progname;
89329 	u32 procname;
89330 };
89331 
89332 struct trace_event_data_offsets_rpc_xdr_overflow {
89333 	u32 progname;
89334 	u32 procedure;
89335 };
89336 
89337 struct trace_event_data_offsets_rpc_xdr_alignment {
89338 	u32 progname;
89339 	u32 procedure;
89340 };
89341 
89342 struct trace_event_data_offsets_xs_socket_event {};
89343 
89344 struct trace_event_data_offsets_xs_socket_event_done {};
89345 
89346 struct trace_event_data_offsets_rpc_socket_nospace {};
89347 
89348 struct trace_event_data_offsets_rpc_xprt_lifetime_class {
89349 	u32 addr;
89350 	u32 port;
89351 };
89352 
89353 struct trace_event_data_offsets_rpc_xprt_event {
89354 	u32 addr;
89355 	u32 port;
89356 };
89357 
89358 struct trace_event_data_offsets_xprt_transmit {};
89359 
89360 struct trace_event_data_offsets_xprt_retransmit {
89361 	u32 progname;
89362 	u32 procname;
89363 };
89364 
89365 struct trace_event_data_offsets_xprt_ping {
89366 	u32 addr;
89367 	u32 port;
89368 };
89369 
89370 struct trace_event_data_offsets_xprt_writelock_event {};
89371 
89372 struct trace_event_data_offsets_xprt_cong_event {};
89373 
89374 struct trace_event_data_offsets_xprt_reserve {};
89375 
89376 struct trace_event_data_offsets_xs_data_ready {
89377 	u32 addr;
89378 	u32 port;
89379 };
89380 
89381 struct trace_event_data_offsets_xs_stream_read_data {
89382 	u32 addr;
89383 	u32 port;
89384 };
89385 
89386 struct trace_event_data_offsets_xs_stream_read_request {
89387 	u32 addr;
89388 	u32 port;
89389 };
89390 
89391 struct trace_event_data_offsets_rpcb_getport {
89392 	u32 servername;
89393 };
89394 
89395 struct trace_event_data_offsets_rpcb_setport {};
89396 
89397 struct trace_event_data_offsets_pmap_register {};
89398 
89399 struct trace_event_data_offsets_rpcb_register {
89400 	u32 addr;
89401 	u32 netid;
89402 };
89403 
89404 struct trace_event_data_offsets_rpcb_unregister {
89405 	u32 netid;
89406 };
89407 
89408 struct trace_event_data_offsets_svc_xdr_msg_class {};
89409 
89410 struct trace_event_data_offsets_svc_xdr_buf_class {};
89411 
89412 struct trace_event_data_offsets_svc_authenticate {
89413 	u32 server;
89414 	u32 client;
89415 };
89416 
89417 struct trace_event_data_offsets_svc_process {
89418 	u32 service;
89419 	u32 procedure;
89420 	u32 addr;
89421 };
89422 
89423 struct trace_event_data_offsets_svc_rqst_event {
89424 	u32 server;
89425 	u32 client;
89426 };
89427 
89428 struct trace_event_data_offsets_svc_rqst_status {
89429 	u32 server;
89430 	u32 client;
89431 };
89432 
89433 struct trace_event_data_offsets_svc_stats_latency {
89434 	u32 server;
89435 	u32 client;
89436 	u32 procedure;
89437 };
89438 
89439 struct trace_event_data_offsets_svc_xprt_create_err {
89440 	u32 program;
89441 	u32 protocol;
89442 	u32 addr;
89443 };
89444 
89445 struct trace_event_data_offsets_svc_xprt_enqueue {
89446 	u32 server;
89447 	u32 client;
89448 };
89449 
89450 struct trace_event_data_offsets_svc_xprt_dequeue {
89451 	u32 server;
89452 	u32 client;
89453 };
89454 
89455 struct trace_event_data_offsets_svc_xprt_event {
89456 	u32 server;
89457 	u32 client;
89458 };
89459 
89460 struct trace_event_data_offsets_svc_xprt_accept {
89461 	u32 server;
89462 	u32 client;
89463 	u32 protocol;
89464 	u32 service;
89465 };
89466 
89467 struct trace_event_data_offsets_svc_wake_up {};
89468 
89469 struct trace_event_data_offsets_svc_alloc_arg_err {};
89470 
89471 struct trace_event_data_offsets_svc_deferred_event {
89472 	u32 addr;
89473 };
89474 
89475 struct trace_event_data_offsets_svcsock_new_socket {};
89476 
89477 struct trace_event_data_offsets_svcsock_marker {
89478 	u32 addr;
89479 };
89480 
89481 struct trace_event_data_offsets_svcsock_class {
89482 	u32 addr;
89483 };
89484 
89485 struct trace_event_data_offsets_svcsock_tcp_recv_short {
89486 	u32 addr;
89487 };
89488 
89489 struct trace_event_data_offsets_svcsock_tcp_state {
89490 	u32 addr;
89491 };
89492 
89493 struct trace_event_data_offsets_svcsock_accept_class {
89494 	u32 service;
89495 };
89496 
89497 struct trace_event_data_offsets_cache_event {
89498 	u32 name;
89499 };
89500 
89501 struct trace_event_data_offsets_register_class {
89502 	u32 program;
89503 };
89504 
89505 struct trace_event_data_offsets_svc_unregister {
89506 	u32 program;
89507 };
89508 
89509 typedef void (*btf_trace_rpc_xdr_sendto)(void *, const struct rpc_task *, const struct xdr_buf *);
89510 
89511 typedef void (*btf_trace_rpc_xdr_recvfrom)(void *, const struct rpc_task *, const struct xdr_buf *);
89512 
89513 typedef void (*btf_trace_rpc_xdr_reply_pages)(void *, const struct rpc_task *, const struct xdr_buf *);
89514 
89515 typedef void (*btf_trace_rpc_clnt_free)(void *, const struct rpc_clnt *);
89516 
89517 typedef void (*btf_trace_rpc_clnt_killall)(void *, const struct rpc_clnt *);
89518 
89519 typedef void (*btf_trace_rpc_clnt_shutdown)(void *, const struct rpc_clnt *);
89520 
89521 typedef void (*btf_trace_rpc_clnt_release)(void *, const struct rpc_clnt *);
89522 
89523 typedef void (*btf_trace_rpc_clnt_replace_xprt)(void *, const struct rpc_clnt *);
89524 
89525 typedef void (*btf_trace_rpc_clnt_replace_xprt_err)(void *, const struct rpc_clnt *);
89526 
89527 typedef void (*btf_trace_rpc_clnt_new)(void *, const struct rpc_clnt *, const struct rpc_xprt *, const char *, const char *);
89528 
89529 typedef void (*btf_trace_rpc_clnt_new_err)(void *, const char *, const char *, int);
89530 
89531 typedef void (*btf_trace_rpc_clnt_clone_err)(void *, const struct rpc_clnt *, int);
89532 
89533 typedef void (*btf_trace_rpc_call_status)(void *, const struct rpc_task *);
89534 
89535 typedef void (*btf_trace_rpc_connect_status)(void *, const struct rpc_task *);
89536 
89537 typedef void (*btf_trace_rpc_timeout_status)(void *, const struct rpc_task *);
89538 
89539 typedef void (*btf_trace_rpc_retry_refresh_status)(void *, const struct rpc_task *);
89540 
89541 typedef void (*btf_trace_rpc_refresh_status)(void *, const struct rpc_task *);
89542 
89543 typedef void (*btf_trace_rpc_request)(void *, const struct rpc_task *);
89544 
89545 typedef void (*btf_trace_rpc_task_begin)(void *, const struct rpc_task *, const void *);
89546 
89547 typedef void (*btf_trace_rpc_task_run_action)(void *, const struct rpc_task *, const void *);
89548 
89549 typedef void (*btf_trace_rpc_task_sync_sleep)(void *, const struct rpc_task *, const void *);
89550 
89551 typedef void (*btf_trace_rpc_task_sync_wake)(void *, const struct rpc_task *, const void *);
89552 
89553 typedef void (*btf_trace_rpc_task_complete)(void *, const struct rpc_task *, const void *);
89554 
89555 typedef void (*btf_trace_rpc_task_timeout)(void *, const struct rpc_task *, const void *);
89556 
89557 typedef void (*btf_trace_rpc_task_signalled)(void *, const struct rpc_task *, const void *);
89558 
89559 typedef void (*btf_trace_rpc_task_end)(void *, const struct rpc_task *, const void *);
89560 
89561 typedef void (*btf_trace_rpc_task_call_done)(void *, const struct rpc_task *, const void *);
89562 
89563 typedef void (*btf_trace_rpc_task_sleep)(void *, const struct rpc_task *, const struct rpc_wait_queue *);
89564 
89565 typedef void (*btf_trace_rpc_task_wakeup)(void *, const struct rpc_task *, const struct rpc_wait_queue *);
89566 
89567 typedef void (*btf_trace_rpc_bad_callhdr)(void *, const struct rpc_task *);
89568 
89569 typedef void (*btf_trace_rpc_bad_verifier)(void *, const struct rpc_task *);
89570 
89571 typedef void (*btf_trace_rpc__prog_unavail)(void *, const struct rpc_task *);
89572 
89573 typedef void (*btf_trace_rpc__prog_mismatch)(void *, const struct rpc_task *);
89574 
89575 typedef void (*btf_trace_rpc__proc_unavail)(void *, const struct rpc_task *);
89576 
89577 typedef void (*btf_trace_rpc__garbage_args)(void *, const struct rpc_task *);
89578 
89579 typedef void (*btf_trace_rpc__unparsable)(void *, const struct rpc_task *);
89580 
89581 typedef void (*btf_trace_rpc__mismatch)(void *, const struct rpc_task *);
89582 
89583 typedef void (*btf_trace_rpc__stale_creds)(void *, const struct rpc_task *);
89584 
89585 typedef void (*btf_trace_rpc__bad_creds)(void *, const struct rpc_task *);
89586 
89587 typedef void (*btf_trace_rpc__auth_tooweak)(void *, const struct rpc_task *);
89588 
89589 typedef void (*btf_trace_rpcb_prog_unavail_err)(void *, const struct rpc_task *);
89590 
89591 typedef void (*btf_trace_rpcb_timeout_err)(void *, const struct rpc_task *);
89592 
89593 typedef void (*btf_trace_rpcb_bind_version_err)(void *, const struct rpc_task *);
89594 
89595 typedef void (*btf_trace_rpcb_unreachable_err)(void *, const struct rpc_task *);
89596 
89597 typedef void (*btf_trace_rpcb_unrecognized_err)(void *, const struct rpc_task *);
89598 
89599 typedef void (*btf_trace_rpc_buf_alloc)(void *, const struct rpc_task *, int);
89600 
89601 typedef void (*btf_trace_rpc_call_rpcerror)(void *, const struct rpc_task *, int, int);
89602 
89603 typedef void (*btf_trace_rpc_stats_latency)(void *, const struct rpc_task *, ktime_t, ktime_t, ktime_t);
89604 
89605 typedef void (*btf_trace_rpc_xdr_overflow)(void *, const struct xdr_stream *, size_t);
89606 
89607 typedef void (*btf_trace_rpc_xdr_alignment)(void *, const struct xdr_stream *, size_t, unsigned int);
89608 
89609 typedef void (*btf_trace_rpc_socket_state_change)(void *, struct rpc_xprt *, struct socket *);
89610 
89611 typedef void (*btf_trace_rpc_socket_connect)(void *, struct rpc_xprt *, struct socket *, int);
89612 
89613 typedef void (*btf_trace_rpc_socket_error)(void *, struct rpc_xprt *, struct socket *, int);
89614 
89615 typedef void (*btf_trace_rpc_socket_reset_connection)(void *, struct rpc_xprt *, struct socket *, int);
89616 
89617 typedef void (*btf_trace_rpc_socket_close)(void *, struct rpc_xprt *, struct socket *);
89618 
89619 typedef void (*btf_trace_rpc_socket_shutdown)(void *, struct rpc_xprt *, struct socket *);
89620 
89621 typedef void (*btf_trace_rpc_socket_nospace)(void *, const struct rpc_rqst *, const struct sock_xprt *);
89622 
89623 typedef void (*btf_trace_xprt_create)(void *, const struct rpc_xprt *);
89624 
89625 typedef void (*btf_trace_xprt_connect)(void *, const struct rpc_xprt *);
89626 
89627 typedef void (*btf_trace_xprt_disconnect_auto)(void *, const struct rpc_xprt *);
89628 
89629 typedef void (*btf_trace_xprt_disconnect_done)(void *, const struct rpc_xprt *);
89630 
89631 typedef void (*btf_trace_xprt_disconnect_force)(void *, const struct rpc_xprt *);
89632 
89633 typedef void (*btf_trace_xprt_destroy)(void *, const struct rpc_xprt *);
89634 
89635 typedef void (*btf_trace_xprt_timer)(void *, const struct rpc_xprt *, __be32, int);
89636 
89637 typedef void (*btf_trace_xprt_lookup_rqst)(void *, const struct rpc_xprt *, __be32, int);
89638 
89639 typedef void (*btf_trace_xprt_transmit)(void *, const struct rpc_rqst *, int);
89640 
89641 typedef void (*btf_trace_xprt_retransmit)(void *, const struct rpc_rqst *);
89642 
89643 typedef void (*btf_trace_xprt_ping)(void *, const struct rpc_xprt *, int);
89644 
89645 typedef void (*btf_trace_xprt_reserve_xprt)(void *, const struct rpc_xprt *, const struct rpc_task *);
89646 
89647 typedef void (*btf_trace_xprt_release_xprt)(void *, const struct rpc_xprt *, const struct rpc_task *);
89648 
89649 typedef void (*btf_trace_xprt_reserve_cong)(void *, const struct rpc_xprt *, const struct rpc_task *);
89650 
89651 typedef void (*btf_trace_xprt_release_cong)(void *, const struct rpc_xprt *, const struct rpc_task *);
89652 
89653 typedef void (*btf_trace_xprt_get_cong)(void *, const struct rpc_xprt *, const struct rpc_task *);
89654 
89655 typedef void (*btf_trace_xprt_put_cong)(void *, const struct rpc_xprt *, const struct rpc_task *);
89656 
89657 typedef void (*btf_trace_xprt_reserve)(void *, const struct rpc_rqst *);
89658 
89659 typedef void (*btf_trace_xs_data_ready)(void *, const struct rpc_xprt *);
89660 
89661 typedef void (*btf_trace_xs_stream_read_data)(void *, struct rpc_xprt *, ssize_t, size_t);
89662 
89663 typedef void (*btf_trace_xs_stream_read_request)(void *, struct sock_xprt *);
89664 
89665 typedef void (*btf_trace_rpcb_getport)(void *, const struct rpc_clnt *, const struct rpc_task *, unsigned int);
89666 
89667 typedef void (*btf_trace_rpcb_setport)(void *, const struct rpc_task *, int, short unsigned int);
89668 
89669 typedef void (*btf_trace_pmap_register)(void *, u32, u32, int, short unsigned int);
89670 
89671 typedef void (*btf_trace_rpcb_register)(void *, u32, u32, const char *, const char *);
89672 
89673 typedef void (*btf_trace_rpcb_unregister)(void *, u32, u32, const char *);
89674 
89675 typedef void (*btf_trace_svc_xdr_recvfrom)(void *, const struct xdr_buf *);
89676 
89677 typedef void (*btf_trace_svc_xdr_sendto)(void *, __be32, const struct xdr_buf *);
89678 
89679 typedef void (*btf_trace_svc_authenticate)(void *, const struct svc_rqst *, int);
89680 
89681 typedef void (*btf_trace_svc_process)(void *, const struct svc_rqst *, const char *);
89682 
89683 typedef void (*btf_trace_svc_defer)(void *, const struct svc_rqst *);
89684 
89685 typedef void (*btf_trace_svc_drop)(void *, const struct svc_rqst *);
89686 
89687 typedef void (*btf_trace_svc_send)(void *, const struct svc_rqst *, int);
89688 
89689 typedef void (*btf_trace_svc_stats_latency)(void *, const struct svc_rqst *);
89690 
89691 typedef void (*btf_trace_svc_xprt_create_err)(void *, const char *, const char *, struct sockaddr *, size_t, const struct svc_xprt *);
89692 
89693 typedef void (*btf_trace_svc_xprt_enqueue)(void *, const struct svc_xprt *, const struct svc_rqst *);
89694 
89695 typedef void (*btf_trace_svc_xprt_dequeue)(void *, const struct svc_rqst *);
89696 
89697 typedef void (*btf_trace_svc_xprt_no_write_space)(void *, const struct svc_xprt *);
89698 
89699 typedef void (*btf_trace_svc_xprt_close)(void *, const struct svc_xprt *);
89700 
89701 typedef void (*btf_trace_svc_xprt_detach)(void *, const struct svc_xprt *);
89702 
89703 typedef void (*btf_trace_svc_xprt_free)(void *, const struct svc_xprt *);
89704 
89705 typedef void (*btf_trace_svc_xprt_accept)(void *, const struct svc_xprt *, const char *);
89706 
89707 typedef void (*btf_trace_svc_wake_up)(void *, int);
89708 
89709 typedef void (*btf_trace_svc_alloc_arg_err)(void *, unsigned int, unsigned int);
89710 
89711 typedef void (*btf_trace_svc_defer_drop)(void *, const struct svc_deferred_req *);
89712 
89713 typedef void (*btf_trace_svc_defer_queue)(void *, const struct svc_deferred_req *);
89714 
89715 typedef void (*btf_trace_svc_defer_recv)(void *, const struct svc_deferred_req *);
89716 
89717 typedef void (*btf_trace_svcsock_new_socket)(void *, const struct socket *);
89718 
89719 typedef void (*btf_trace_svcsock_marker)(void *, const struct svc_xprt *, __be32);
89720 
89721 typedef void (*btf_trace_svcsock_udp_send)(void *, const struct svc_xprt *, ssize_t);
89722 
89723 typedef void (*btf_trace_svcsock_udp_recv)(void *, const struct svc_xprt *, ssize_t);
89724 
89725 typedef void (*btf_trace_svcsock_udp_recv_err)(void *, const struct svc_xprt *, ssize_t);
89726 
89727 typedef void (*btf_trace_svcsock_tcp_send)(void *, const struct svc_xprt *, ssize_t);
89728 
89729 typedef void (*btf_trace_svcsock_tcp_recv)(void *, const struct svc_xprt *, ssize_t);
89730 
89731 typedef void (*btf_trace_svcsock_tcp_recv_eagain)(void *, const struct svc_xprt *, ssize_t);
89732 
89733 typedef void (*btf_trace_svcsock_tcp_recv_err)(void *, const struct svc_xprt *, ssize_t);
89734 
89735 typedef void (*btf_trace_svcsock_data_ready)(void *, const struct svc_xprt *, ssize_t);
89736 
89737 typedef void (*btf_trace_svcsock_write_space)(void *, const struct svc_xprt *, ssize_t);
89738 
89739 typedef void (*btf_trace_svcsock_tcp_recv_short)(void *, const struct svc_xprt *, u32, u32);
89740 
89741 typedef void (*btf_trace_svcsock_tcp_state)(void *, const struct svc_xprt *, const struct socket *);
89742 
89743 typedef void (*btf_trace_svcsock_accept_err)(void *, const struct svc_xprt *, const char *, long int);
89744 
89745 typedef void (*btf_trace_svcsock_getpeername_err)(void *, const struct svc_xprt *, const char *, long int);
89746 
89747 typedef void (*btf_trace_cache_entry_expired)(void *, const struct cache_detail *, const struct cache_head *);
89748 
89749 typedef void (*btf_trace_cache_entry_upcall)(void *, const struct cache_detail *, const struct cache_head *);
89750 
89751 typedef void (*btf_trace_cache_entry_update)(void *, const struct cache_detail *, const struct cache_head *);
89752 
89753 typedef void (*btf_trace_cache_entry_make_negative)(void *, const struct cache_detail *, const struct cache_head *);
89754 
89755 typedef void (*btf_trace_cache_entry_no_listener)(void *, const struct cache_detail *, const struct cache_head *);
89756 
89757 typedef void (*btf_trace_svc_register)(void *, const char *, const u32, const int, const short unsigned int, const short unsigned int, int);
89758 
89759 typedef void (*btf_trace_svc_noregister)(void *, const char *, const u32, const int, const short unsigned int, const short unsigned int, int);
89760 
89761 typedef void (*btf_trace_svc_unregister)(void *, const char *, const u32, int);
89762 
89763 struct trace_event_raw_ppc64_interrupt_class {
89764 	struct trace_entry ent;
89765 	struct pt_regs *regs;
89766 	char __data[0];
89767 };
89768 
89769 struct trace_event_raw_hcall_entry {
89770 	struct trace_entry ent;
89771 	long unsigned int opcode;
89772 	char __data[0];
89773 };
89774 
89775 struct trace_event_raw_hcall_exit {
89776 	struct trace_entry ent;
89777 	long unsigned int opcode;
89778 	long int retval;
89779 	char __data[0];
89780 };
89781 
89782 struct trace_event_raw_opal_entry {
89783 	struct trace_entry ent;
89784 	long unsigned int opcode;
89785 	char __data[0];
89786 };
89787 
89788 struct trace_event_raw_opal_exit {
89789 	struct trace_entry ent;
89790 	long unsigned int opcode;
89791 	long unsigned int retval;
89792 	char __data[0];
89793 };
89794 
89795 struct trace_event_raw_hash_fault {
89796 	struct trace_entry ent;
89797 	long unsigned int addr;
89798 	long unsigned int access;
89799 	long unsigned int trap;
89800 	char __data[0];
89801 };
89802 
89803 struct trace_event_raw_tlbie {
89804 	struct trace_entry ent;
89805 	long unsigned int lpid;
89806 	long unsigned int local;
89807 	long unsigned int rb;
89808 	long unsigned int rs;
89809 	long unsigned int ric;
89810 	long unsigned int prs;
89811 	long unsigned int r;
89812 	char __data[0];
89813 };
89814 
89815 struct trace_event_raw_tlbia {
89816 	struct trace_entry ent;
89817 	long unsigned int id;
89818 	char __data[0];
89819 };
89820 
89821 struct trace_event_data_offsets_ppc64_interrupt_class {};
89822 
89823 struct trace_event_data_offsets_hcall_entry {};
89824 
89825 struct trace_event_data_offsets_hcall_exit {};
89826 
89827 struct trace_event_data_offsets_opal_entry {};
89828 
89829 struct trace_event_data_offsets_opal_exit {};
89830 
89831 struct trace_event_data_offsets_hash_fault {};
89832 
89833 struct trace_event_data_offsets_tlbie {};
89834 
89835 struct trace_event_data_offsets_tlbia {};
89836 
89837 typedef void (*btf_trace_irq_entry)(void *, struct pt_regs *);
89838 
89839 typedef void (*btf_trace_irq_exit)(void *, struct pt_regs *);
89840 
89841 typedef void (*btf_trace_timer_interrupt_entry)(void *, struct pt_regs *);
89842 
89843 typedef void (*btf_trace_timer_interrupt_exit)(void *, struct pt_regs *);
89844 
89845 typedef void (*btf_trace_doorbell_entry)(void *, struct pt_regs *);
89846 
89847 typedef void (*btf_trace_doorbell_exit)(void *, struct pt_regs *);
89848 
89849 typedef void (*btf_trace_hcall_entry)(void *, long unsigned int, long unsigned int *);
89850 
89851 typedef void (*btf_trace_hcall_exit)(void *, long unsigned int, long int, long unsigned int *);
89852 
89853 typedef void (*btf_trace_opal_entry)(void *, long unsigned int, long unsigned int *);
89854 
89855 typedef void (*btf_trace_opal_exit)(void *, long unsigned int, long unsigned int);
89856 
89857 typedef void (*btf_trace_hash_fault)(void *, long unsigned int, long unsigned int, long unsigned int);
89858 
89859 typedef void (*btf_trace_tlbie)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
89860 
89861 typedef void (*btf_trace_tlbia)(void *, long unsigned int);
89862 
89863 struct ppc_debug_info {
89864 	__u32 version;
89865 	__u32 num_instruction_bps;
89866 	__u32 num_data_bps;
89867 	__u32 num_condition_regs;
89868 	__u32 data_bp_alignment;
89869 	__u32 sizeof_condition;
89870 	__u64 features;
89871 };
89872 
89873 struct ppc_hw_breakpoint {
89874 	__u32 version;
89875 	__u32 trigger_type;
89876 	__u32 addr_mode;
89877 	__u32 condition_mode;
89878 	__u64 addr;
89879 	__u64 addr2;
89880 	__u64 condition_value;
89881 };
89882 
89883 struct dt_cpu_feature {
89884 	const char *name;
89885 	uint32_t isa;
89886 	uint32_t usable_privilege;
89887 	uint32_t hv_support;
89888 	uint32_t os_support;
89889 	uint32_t hfscr_bit_nr;
89890 	uint32_t fscr_bit_nr;
89891 	uint32_t hwcap_bit_nr;
89892 	long unsigned int node;
89893 	int enabled;
89894 	int disabled;
89895 };
89896 
89897 struct dt_cpu_feature_match {
89898 	const char *name;
89899 	int (*enable)(struct dt_cpu_feature *);
89900 	u64 cpu_ftr_bit_mask;
89901 };
89902 
89903 enum jump_label_type {
89904 	JUMP_LABEL_NOP = 0,
89905 	JUMP_LABEL_JMP = 1,
89906 };
89907 
89908 struct copro_slb {
89909 	u64 esid;
89910 	u64 vsid;
89911 };
89912 
89913 enum spu_utilization_state {
89914 	SPU_UTIL_USER = 0,
89915 	SPU_UTIL_SYSTEM = 1,
89916 	SPU_UTIL_IOWAIT = 2,
89917 	SPU_UTIL_IDLE_LOADED = 3,
89918 	SPU_UTIL_MAX = 4,
89919 };
89920 
89921 struct ppc_pci_io {
89922 	u8 (*readb)(const volatile void *);
89923 	u16 (*readw)(const volatile void *);
89924 	u32 (*readl)(const volatile void *);
89925 	u16 (*readw_be)(const volatile void *);
89926 	u32 (*readl_be)(const volatile void *);
89927 	void (*writeb)(u8, volatile void *);
89928 	void (*writew)(u16, volatile void *);
89929 	void (*writel)(u32, volatile void *);
89930 	void (*writew_be)(u16, volatile void *);
89931 	void (*writel_be)(u32, volatile void *);
89932 	u64 (*readq)(const volatile void *);
89933 	u64 (*readq_be)(const volatile void *);
89934 	void (*writeq)(u64, volatile void *);
89935 	void (*writeq_be)(u64, volatile void *);
89936 	u8 (*inb)(long unsigned int);
89937 	u16 (*inw)(long unsigned int);
89938 	u32 (*inl)(long unsigned int);
89939 	void (*outb)(u8, long unsigned int);
89940 	void (*outw)(u16, long unsigned int);
89941 	void (*outl)(u32, long unsigned int);
89942 	void (*readsb)(const volatile void *, void *, long unsigned int);
89943 	void (*readsw)(const volatile void *, void *, long unsigned int);
89944 	void (*readsl)(const volatile void *, void *, long unsigned int);
89945 	void (*writesb)(volatile void *, const void *, long unsigned int);
89946 	void (*writesw)(volatile void *, const void *, long unsigned int);
89947 	void (*writesl)(volatile void *, const void *, long unsigned int);
89948 	void (*insb)(long unsigned int, void *, long unsigned int);
89949 	void (*insw)(long unsigned int, void *, long unsigned int);
89950 	void (*insl)(long unsigned int, void *, long unsigned int);
89951 	void (*outsb)(long unsigned int, const void *, long unsigned int);
89952 	void (*outsw)(long unsigned int, const void *, long unsigned int);
89953 	void (*outsl)(long unsigned int, const void *, long unsigned int);
89954 	void (*memset_io)(volatile void *, int, long unsigned int);
89955 	void (*memcpy_fromio)(void *, const volatile void *, long unsigned int);
89956 	void (*memcpy_toio)(volatile void *, const void *, long unsigned int);
89957 };
89958 
89959 enum kmsg_dump_reason {
89960 	KMSG_DUMP_UNDEF = 0,
89961 	KMSG_DUMP_PANIC = 1,
89962 	KMSG_DUMP_OOPS = 2,
89963 	KMSG_DUMP_EMERG = 3,
89964 	KMSG_DUMP_SHUTDOWN = 4,
89965 	KMSG_DUMP_MAX = 5,
89966 };
89967 
89968 struct kmsg_dumper {
89969 	struct list_head list;
89970 	void (*dump)(struct kmsg_dumper *, enum kmsg_dump_reason);
89971 	enum kmsg_dump_reason max_reason;
89972 	bool registered;
89973 };
89974 
89975 struct split_state {
89976 	u8 step;
89977 	u8 master;
89978 };
89979 
89980 struct hvcall_mpp_x_data {
89981 	long unsigned int coalesced_bytes;
89982 	long unsigned int pool_coalesced_bytes;
89983 	long unsigned int pool_purr_cycles;
89984 	long unsigned int pool_spurr_cycles;
89985 	long unsigned int reserved[3];
89986 };
89987 
89988 struct h_cpu_char_result {
89989 	u64 character;
89990 	u64 behaviour;
89991 };
89992 
89993 enum l1d_flush_type {
89994 	L1D_FLUSH_NONE = 1,
89995 	L1D_FLUSH_FALLBACK = 2,
89996 	L1D_FLUSH_ORI = 4,
89997 	L1D_FLUSH_MTTRIG = 8,
89998 };
89999 
90000 struct vio_pfo_op {
90001 	u64 flags;
90002 	s64 in;
90003 	s64 inlen;
90004 	s64 out;
90005 	s64 outlen;
90006 	u64 csbcpb;
90007 	void *done;
90008 	long unsigned int handle;
90009 	unsigned int timeout;
90010 	long int hcall_err;
90011 };
90012 
90013 struct vio_cmo_pool {
90014 	size_t size;
90015 	size_t free;
90016 };
90017 
90018 struct vio_cmo_dev_entry {
90019 	struct vio_dev *viodev;
90020 	struct list_head list;
90021 };
90022 
90023 struct vio_cmo {
90024 	spinlock_t lock;
90025 	struct delayed_work balance_q;
90026 	struct list_head device_list;
90027 	size_t entitled;
90028 	struct vio_cmo_pool reserve;
90029 	struct vio_cmo_pool excess;
90030 	size_t spare;
90031 	size_t min;
90032 	size_t desired;
90033 	size_t curr;
90034 	size_t high;
90035 };
90036 
90037 enum perf_event_powerpc_regs {
90038 	PERF_REG_POWERPC_R0 = 0,
90039 	PERF_REG_POWERPC_R1 = 1,
90040 	PERF_REG_POWERPC_R2 = 2,
90041 	PERF_REG_POWERPC_R3 = 3,
90042 	PERF_REG_POWERPC_R4 = 4,
90043 	PERF_REG_POWERPC_R5 = 5,
90044 	PERF_REG_POWERPC_R6 = 6,
90045 	PERF_REG_POWERPC_R7 = 7,
90046 	PERF_REG_POWERPC_R8 = 8,
90047 	PERF_REG_POWERPC_R9 = 9,
90048 	PERF_REG_POWERPC_R10 = 10,
90049 	PERF_REG_POWERPC_R11 = 11,
90050 	PERF_REG_POWERPC_R12 = 12,
90051 	PERF_REG_POWERPC_R13 = 13,
90052 	PERF_REG_POWERPC_R14 = 14,
90053 	PERF_REG_POWERPC_R15 = 15,
90054 	PERF_REG_POWERPC_R16 = 16,
90055 	PERF_REG_POWERPC_R17 = 17,
90056 	PERF_REG_POWERPC_R18 = 18,
90057 	PERF_REG_POWERPC_R19 = 19,
90058 	PERF_REG_POWERPC_R20 = 20,
90059 	PERF_REG_POWERPC_R21 = 21,
90060 	PERF_REG_POWERPC_R22 = 22,
90061 	PERF_REG_POWERPC_R23 = 23,
90062 	PERF_REG_POWERPC_R24 = 24,
90063 	PERF_REG_POWERPC_R25 = 25,
90064 	PERF_REG_POWERPC_R26 = 26,
90065 	PERF_REG_POWERPC_R27 = 27,
90066 	PERF_REG_POWERPC_R28 = 28,
90067 	PERF_REG_POWERPC_R29 = 29,
90068 	PERF_REG_POWERPC_R30 = 30,
90069 	PERF_REG_POWERPC_R31 = 31,
90070 	PERF_REG_POWERPC_NIP = 32,
90071 	PERF_REG_POWERPC_MSR = 33,
90072 	PERF_REG_POWERPC_ORIG_R3 = 34,
90073 	PERF_REG_POWERPC_CTR = 35,
90074 	PERF_REG_POWERPC_LINK = 36,
90075 	PERF_REG_POWERPC_XER = 37,
90076 	PERF_REG_POWERPC_CCR = 38,
90077 	PERF_REG_POWERPC_SOFTE = 39,
90078 	PERF_REG_POWERPC_TRAP = 40,
90079 	PERF_REG_POWERPC_DAR = 41,
90080 	PERF_REG_POWERPC_DSISR = 42,
90081 	PERF_REG_POWERPC_SIER = 43,
90082 	PERF_REG_POWERPC_MMCRA = 44,
90083 	PERF_REG_POWERPC_MMCR0 = 45,
90084 	PERF_REG_POWERPC_MMCR1 = 46,
90085 	PERF_REG_POWERPC_MMCR2 = 47,
90086 	PERF_REG_POWERPC_MMCR3 = 48,
90087 	PERF_REG_POWERPC_SIER2 = 49,
90088 	PERF_REG_POWERPC_SIER3 = 50,
90089 	PERF_REG_POWERPC_PMC1 = 51,
90090 	PERF_REG_POWERPC_PMC2 = 52,
90091 	PERF_REG_POWERPC_PMC3 = 53,
90092 	PERF_REG_POWERPC_PMC4 = 54,
90093 	PERF_REG_POWERPC_PMC5 = 55,
90094 	PERF_REG_POWERPC_PMC6 = 56,
90095 	PERF_REG_POWERPC_SDAR = 57,
90096 	PERF_REG_POWERPC_SIAR = 58,
90097 	PERF_REG_POWERPC_MAX = 45,
90098 	PERF_REG_EXTENDED_MAX = 59,
90099 };
90100 
90101 enum {
90102 	PM_CYC___3 = 30ULL,
90103 	PM_ICT_NOSLOT_CYC = 65784ULL,
90104 	PM_CMPLU_STALL___2 = 122964ULL,
90105 	PM_INST_CMPL___3 = 2ULL,
90106 	PM_BR_CMPL = 315486ULL,
90107 	PM_BR_MPRED_CMPL___3 = 262390ULL,
90108 	PM_LD_REF_L1___2 = 65788ULL,
90109 	PM_LD_MISS_L1_FIN = 180302ULL,
90110 	PM_LD_MISS_L1___3 = 254036ULL,
90111 	PM_LD_MISS_L1_ALT___2 = 262384ULL,
90112 	PM_ST_MISS_L1___3 = 196848ULL,
90113 	PM_L1_PREF___2 = 131156ULL,
90114 	PM_INST_FROM_L1___2 = 16512ULL,
90115 	PM_L1_ICACHE_MISS___3 = 131325ULL,
90116 	PM_L1_DEMAND_WRITE___2 = 16524ULL,
90117 	PM_IC_PREF_WRITE___2 = 18572ULL,
90118 	PM_DATA_FROM_L3___2 = 311362ULL,
90119 	PM_DATA_FROM_L3MISS___3 = 196862ULL,
90120 	PM_L2_ST___2 = 92288ULL,
90121 	PM_L2_ST_MISS___2 = 157824ULL,
90122 	PM_L3_PREF_ALL___2 = 319570ULL,
90123 	PM_DTLB_MISS___3 = 196860ULL,
90124 	PM_ITLB_MISS___3 = 262396ULL,
90125 	PM_RUN_INST_CMPL___3 = 327930ULL,
90126 	PM_RUN_INST_CMPL_ALT___2 = 262394ULL,
90127 	PM_RUN_CYC___3 = 393460ULL,
90128 	PM_RUN_CYC_ALT___2 = 131316ULL,
90129 	PM_INST_DISP___3 = 131314ULL,
90130 	PM_INST_DISP_ALT___3 = 196850ULL,
90131 	PM_BR_2PATH___2 = 131126ULL,
90132 	PM_BR_2PATH_ALT___2 = 262198ULL,
90133 	PM_MRK_ST_DONE_L2 = 65844ULL,
90134 	PM_RADIX_PWC_L1_HIT = 127062ULL,
90135 	PM_FLOP_CMPL___2 = 65780ULL,
90136 	PM_MRK_NTF_FIN = 131346ULL,
90137 	PM_RADIX_PWC_L2_HIT = 184356ULL,
90138 	PM_IFETCH_THROTTLE = 213086ULL,
90139 	PM_MRK_L2_TM_ST_ABORT_SISTER = 254300ULL,
90140 	PM_RADIX_PWC_L3_HIT = 258134ULL,
90141 	PM_RUN_CYC_SMT2_MODE = 196716ULL,
90142 	PM_TM_TX_PASS_RUN_INST = 319508ULL,
90143 	PM_DISP_HELD_SYNC_HOLD = 262204ULL,
90144 	PM_DTLB_MISS_16G = 114776ULL,
90145 	PM_DERAT_MISS_2M = 114778ULL,
90146 	PM_DTLB_MISS_2M = 114780ULL,
90147 	PM_MRK_DTLB_MISS_1G = 119132ULL,
90148 	PM_DTLB_MISS_4K = 180310ULL,
90149 	PM_DERAT_MISS_1G = 180314ULL,
90150 	PM_MRK_DERAT_MISS_2M = 184658ULL,
90151 	PM_MRK_DTLB_MISS_4K = 184662ULL,
90152 	PM_MRK_DTLB_MISS_16G = 184670ULL,
90153 	PM_DTLB_MISS_64K = 245846ULL,
90154 	PM_MRK_DERAT_MISS_1G = 250194ULL,
90155 	PM_MRK_DTLB_MISS_64K = 250198ULL,
90156 	PM_DTLB_MISS_16M = 311382ULL,
90157 	PM_DTLB_MISS_1G = 311386ULL,
90158 	PM_MRK_DTLB_MISS_16M = 311646ULL,
90159 	MEM_LOADS = 224210977248ULL,
90160 	MEM_STORES = 224345194976ULL,
90161 };
90162 
90163 struct trace_event_raw_irq_handler_entry {
90164 	struct trace_entry ent;
90165 	int irq;
90166 	u32 __data_loc_name;
90167 	char __data[0];
90168 };
90169 
90170 struct trace_event_raw_irq_handler_exit {
90171 	struct trace_entry ent;
90172 	int irq;
90173 	int ret;
90174 	char __data[0];
90175 };
90176 
90177 struct trace_event_raw_softirq {
90178 	struct trace_entry ent;
90179 	unsigned int vec;
90180 	char __data[0];
90181 };
90182 
90183 struct trace_event_data_offsets_irq_handler_entry {
90184 	u32 name;
90185 };
90186 
90187 struct trace_event_data_offsets_irq_handler_exit {};
90188 
90189 struct trace_event_data_offsets_softirq {};
90190 
90191 typedef void (*btf_trace_irq_handler_entry)(void *, int, struct irqaction *);
90192 
90193 typedef void (*btf_trace_irq_handler_exit)(void *, int, struct irqaction *, int);
90194 
90195 typedef void (*btf_trace_softirq_entry)(void *, unsigned int);
90196 
90197 typedef void (*btf_trace_softirq_exit)(void *, unsigned int);
90198 
90199 typedef void (*btf_trace_softirq_raise)(void *, unsigned int);
90200 
90201 struct tasklet_head {
90202 	struct tasklet_struct *head;
90203 	struct tasklet_struct **tail;
90204 };
90205 
90206 enum what {
90207 	PROC_EVENT_NONE = 0,
90208 	PROC_EVENT_FORK = 1,
90209 	PROC_EVENT_EXEC = 2,
90210 	PROC_EVENT_UID = 4,
90211 	PROC_EVENT_GID = 64,
90212 	PROC_EVENT_SID = 128,
90213 	PROC_EVENT_PTRACE = 256,
90214 	PROC_EVENT_COMM = 512,
90215 	PROC_EVENT_COREDUMP = 1073741824,
90216 	PROC_EVENT_EXIT = 2147483648,
90217 };
90218 
90219 struct ww_class {
90220 	atomic_long_t stamp;
90221 	struct lock_class_key acquire_key;
90222 	struct lock_class_key mutex_key;
90223 	const char *acquire_name;
90224 	const char *mutex_name;
90225 	unsigned int is_wait_die;
90226 };
90227 
90228 struct ww_mutex {
90229 	struct mutex base;
90230 	struct ww_acquire_ctx *ctx;
90231 	struct ww_class *ww_class;
90232 };
90233 
90234 struct ww_acquire_ctx {
90235 	struct task_struct *task;
90236 	long unsigned int stamp;
90237 	unsigned int acquired;
90238 	short unsigned int wounded;
90239 	short unsigned int is_wait_die;
90240 	unsigned int done_acquire;
90241 	struct ww_class *ww_class;
90242 	void *contending_lock;
90243 };
90244 
90245 struct rt_wake_q_head {
90246 	struct wake_q_head head;
90247 	struct task_struct *rtlock_task;
90248 };
90249 
90250 enum rtmutex_chainwalk {
90251 	RT_MUTEX_MIN_CHAINWALK = 0,
90252 	RT_MUTEX_FULL_CHAINWALK = 1,
90253 };
90254 
90255 enum {
90256 	IRQC_IS_HARDIRQ = 0,
90257 	IRQC_IS_NESTED = 1,
90258 };
90259 
90260 enum tick_broadcast_state {
90261 	TICK_BROADCAST_EXIT = 0,
90262 	TICK_BROADCAST_ENTER = 1,
90263 };
90264 
90265 struct kexec_elf_info {
90266 	const char *buffer;
90267 	const struct elf64_hdr *ehdr;
90268 	const struct elf64_phdr *proghdrs;
90269 };
90270 
90271 struct cpu_stop_done {
90272 	atomic_t nr_todo;
90273 	int ret;
90274 	struct completion completion;
90275 };
90276 
90277 struct cpu_stopper {
90278 	struct task_struct *thread;
90279 	raw_spinlock_t lock;
90280 	bool enabled;
90281 	struct list_head works;
90282 	struct cpu_stop_work stop_work;
90283 	long unsigned int caller;
90284 	cpu_stop_fn_t fn;
90285 };
90286 
90287 enum multi_stop_state {
90288 	MULTI_STOP_NONE = 0,
90289 	MULTI_STOP_PREPARE = 1,
90290 	MULTI_STOP_DISABLE_IRQ = 2,
90291 	MULTI_STOP_RUN = 3,
90292 	MULTI_STOP_EXIT = 4,
90293 };
90294 
90295 struct multi_stop_data {
90296 	cpu_stop_fn_t fn;
90297 	void *data;
90298 	unsigned int num_threads;
90299 	const struct cpumask *active_cpus;
90300 	enum multi_stop_state state;
90301 	atomic_t thread_ack;
90302 };
90303 
90304 typedef struct vfsmount * (*debugfs_automount_t)(struct dentry *, void *);
90305 
90306 struct trace_export {
90307 	struct trace_export *next;
90308 	void (*write)(struct trace_export *, const void *, unsigned int);
90309 	int flags;
90310 };
90311 
90312 enum event_trigger_type {
90313 	ETT_NONE = 0,
90314 	ETT_TRACE_ONOFF = 1,
90315 	ETT_SNAPSHOT = 2,
90316 	ETT_STACKTRACE = 4,
90317 	ETT_EVENT_ENABLE = 8,
90318 	ETT_EVENT_HIST = 16,
90319 	ETT_HIST_ENABLE = 32,
90320 	ETT_EVENT_EPROBE = 64,
90321 };
90322 
90323 struct trace_min_max_param {
90324 	struct mutex *lock;
90325 	u64 *val;
90326 	u64 *min;
90327 	u64 *max;
90328 };
90329 
90330 struct saved_cmdlines_buffer {
90331 	unsigned int map_pid_to_cmdline[32769];
90332 	unsigned int *map_cmdline_to_pid;
90333 	unsigned int cmdline_num;
90334 	int cmdline_idx;
90335 	char *saved_cmdlines;
90336 };
90337 
90338 struct ftrace_stack {
90339 	long unsigned int calls[16384];
90340 };
90341 
90342 struct ftrace_stacks {
90343 	struct ftrace_stack stacks[4];
90344 };
90345 
90346 struct trace_buffer_struct {
90347 	int nesting;
90348 	char buffer[4096];
90349 };
90350 
90351 struct ftrace_buffer_info {
90352 	struct trace_iterator iter;
90353 	void *spare;
90354 	unsigned int spare_cpu;
90355 	unsigned int read;
90356 };
90357 
90358 struct err_info {
90359 	const char **errs;
90360 	u8 type;
90361 	u16 pos;
90362 	u64 ts;
90363 };
90364 
90365 struct tracing_log_err {
90366 	struct list_head list;
90367 	struct err_info info;
90368 	char loc[128];
90369 	char *cmd;
90370 };
90371 
90372 struct buffer_ref {
90373 	struct trace_buffer *buffer;
90374 	void *page;
90375 	int cpu;
90376 	refcount_t refcount;
90377 };
90378 
90379 enum bpf_jit_poke_reason {
90380 	BPF_POKE_REASON_TAIL_CALL = 0,
90381 };
90382 
90383 struct xdp_cpumap_stats {
90384 	unsigned int redirect;
90385 	unsigned int pass;
90386 	unsigned int drop;
90387 };
90388 
90389 struct bpf_binary_header {
90390 	u32 size;
90391 	long: 0;
90392 	u8 image[0];
90393 };
90394 
90395 typedef void (*bpf_jit_fill_hole_t)(void *, unsigned int);
90396 
90397 struct bpf_prog_pack {
90398 	struct list_head list;
90399 	void *ptr;
90400 	long unsigned int bitmap[0];
90401 };
90402 
90403 struct bpf_prog_dummy {
90404 	struct bpf_prog prog;
90405 };
90406 
90407 typedef u64 (*btf_bpf_user_rnd_u32)();
90408 
90409 typedef u64 (*btf_bpf_get_raw_cpu_id)();
90410 
90411 struct _bpf_dtab_netdev {
90412 	struct net_device *dev;
90413 };
90414 
90415 struct trace_event_raw_xdp_exception {
90416 	struct trace_entry ent;
90417 	int prog_id;
90418 	u32 act;
90419 	int ifindex;
90420 	char __data[0];
90421 };
90422 
90423 struct trace_event_raw_xdp_bulk_tx {
90424 	struct trace_entry ent;
90425 	int ifindex;
90426 	u32 act;
90427 	int drops;
90428 	int sent;
90429 	int err;
90430 	char __data[0];
90431 };
90432 
90433 struct trace_event_raw_xdp_redirect_template {
90434 	struct trace_entry ent;
90435 	int prog_id;
90436 	u32 act;
90437 	int ifindex;
90438 	int err;
90439 	int to_ifindex;
90440 	u32 map_id;
90441 	int map_index;
90442 	char __data[0];
90443 };
90444 
90445 struct trace_event_raw_xdp_cpumap_kthread {
90446 	struct trace_entry ent;
90447 	int map_id;
90448 	u32 act;
90449 	int cpu;
90450 	unsigned int drops;
90451 	unsigned int processed;
90452 	int sched;
90453 	unsigned int xdp_pass;
90454 	unsigned int xdp_drop;
90455 	unsigned int xdp_redirect;
90456 	char __data[0];
90457 };
90458 
90459 struct trace_event_raw_xdp_cpumap_enqueue {
90460 	struct trace_entry ent;
90461 	int map_id;
90462 	u32 act;
90463 	int cpu;
90464 	unsigned int drops;
90465 	unsigned int processed;
90466 	int to_cpu;
90467 	char __data[0];
90468 };
90469 
90470 struct trace_event_raw_xdp_devmap_xmit {
90471 	struct trace_entry ent;
90472 	int from_ifindex;
90473 	u32 act;
90474 	int to_ifindex;
90475 	int drops;
90476 	int sent;
90477 	int err;
90478 	char __data[0];
90479 };
90480 
90481 struct trace_event_raw_mem_disconnect {
90482 	struct trace_entry ent;
90483 	const struct xdp_mem_allocator *xa;
90484 	u32 mem_id;
90485 	u32 mem_type;
90486 	const void *allocator;
90487 	char __data[0];
90488 };
90489 
90490 struct trace_event_raw_mem_connect {
90491 	struct trace_entry ent;
90492 	const struct xdp_mem_allocator *xa;
90493 	u32 mem_id;
90494 	u32 mem_type;
90495 	const void *allocator;
90496 	const struct xdp_rxq_info *rxq;
90497 	int ifindex;
90498 	char __data[0];
90499 };
90500 
90501 struct trace_event_raw_mem_return_failed {
90502 	struct trace_entry ent;
90503 	const struct page *page;
90504 	u32 mem_id;
90505 	u32 mem_type;
90506 	char __data[0];
90507 };
90508 
90509 struct trace_event_data_offsets_xdp_exception {};
90510 
90511 struct trace_event_data_offsets_xdp_bulk_tx {};
90512 
90513 struct trace_event_data_offsets_xdp_redirect_template {};
90514 
90515 struct trace_event_data_offsets_xdp_cpumap_kthread {};
90516 
90517 struct trace_event_data_offsets_xdp_cpumap_enqueue {};
90518 
90519 struct trace_event_data_offsets_xdp_devmap_xmit {};
90520 
90521 struct trace_event_data_offsets_mem_disconnect {};
90522 
90523 struct trace_event_data_offsets_mem_connect {};
90524 
90525 struct trace_event_data_offsets_mem_return_failed {};
90526 
90527 typedef void (*btf_trace_xdp_exception)(void *, const struct net_device *, const struct bpf_prog *, u32);
90528 
90529 typedef void (*btf_trace_xdp_bulk_tx)(void *, const struct net_device *, int, int, int);
90530 
90531 typedef void (*btf_trace_xdp_redirect)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
90532 
90533 typedef void (*btf_trace_xdp_redirect_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
90534 
90535 typedef void (*btf_trace_xdp_redirect_map)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
90536 
90537 typedef void (*btf_trace_xdp_redirect_map_err)(void *, const struct net_device *, const struct bpf_prog *, const void *, int, enum bpf_map_type, u32, u32);
90538 
90539 typedef void (*btf_trace_xdp_cpumap_kthread)(void *, int, unsigned int, unsigned int, int, struct xdp_cpumap_stats *);
90540 
90541 typedef void (*btf_trace_xdp_cpumap_enqueue)(void *, int, unsigned int, unsigned int, int);
90542 
90543 typedef void (*btf_trace_xdp_devmap_xmit)(void *, const struct net_device *, const struct net_device *, int, int, int);
90544 
90545 typedef void (*btf_trace_mem_disconnect)(void *, const struct xdp_mem_allocator *);
90546 
90547 typedef void (*btf_trace_mem_connect)(void *, const struct xdp_mem_allocator *, const struct xdp_rxq_info *);
90548 
90549 typedef void (*btf_trace_mem_return_failed)(void *, const struct xdp_mem_info *, const struct page *);
90550 
90551 struct bpf_cpumap_val {
90552 	__u32 qsize;
90553 	union {
90554 		int fd;
90555 		__u32 id;
90556 	} bpf_prog;
90557 };
90558 
90559 struct bpf_cpu_map_entry;
90560 
90561 struct xdp_bulk_queue {
90562 	void *q[8];
90563 	struct list_head flush_node;
90564 	struct bpf_cpu_map_entry *obj;
90565 	unsigned int count;
90566 };
90567 
90568 struct bpf_cpu_map;
90569 
90570 struct bpf_cpu_map_entry {
90571 	u32 cpu;
90572 	int map_id;
90573 	struct xdp_bulk_queue *bulkq;
90574 	struct bpf_cpu_map *cmap;
90575 	struct ptr_ring *queue;
90576 	struct task_struct *kthread;
90577 	struct bpf_cpumap_val value;
90578 	struct bpf_prog *prog;
90579 	atomic_t refcnt;
90580 	struct callback_head rcu;
90581 	struct work_struct kthread_stop_wq;
90582 };
90583 
90584 struct bpf_cpu_map {
90585 	struct bpf_map map;
90586 	struct bpf_cpu_map_entry **cpu_map;
90587 	long: 64;
90588 	long: 64;
90589 	long: 64;
90590 	long: 64;
90591 	long: 64;
90592 	long: 64;
90593 	long: 64;
90594 	long: 64;
90595 	long: 64;
90596 	long: 64;
90597 	long: 64;
90598 	long: 64;
90599 	long: 64;
90600 	long: 64;
90601 	long: 64;
90602 };
90603 
90604 enum {
90605 	IORES_DESC_NONE = 0,
90606 	IORES_DESC_CRASH_KERNEL = 1,
90607 	IORES_DESC_ACPI_TABLES = 2,
90608 	IORES_DESC_ACPI_NV_STORAGE = 3,
90609 	IORES_DESC_PERSISTENT_MEMORY = 4,
90610 	IORES_DESC_PERSISTENT_MEMORY_LEGACY = 5,
90611 	IORES_DESC_DEVICE_PRIVATE_MEMORY = 6,
90612 	IORES_DESC_RESERVED = 7,
90613 	IORES_DESC_SOFT_RESERVED = 8,
90614 	IORES_DESC_CXL = 9,
90615 };
90616 
90617 enum {
90618 	REGION_INTERSECTS = 0,
90619 	REGION_DISJOINT = 1,
90620 	REGION_MIXED = 2,
90621 };
90622 
90623 struct trace_event_raw_mm_lru_insertion {
90624 	struct trace_entry ent;
90625 	struct folio *folio;
90626 	long unsigned int pfn;
90627 	enum lru_list lru;
90628 	long unsigned int flags;
90629 	char __data[0];
90630 };
90631 
90632 struct trace_event_raw_mm_lru_activate {
90633 	struct trace_entry ent;
90634 	struct folio *folio;
90635 	long unsigned int pfn;
90636 	char __data[0];
90637 };
90638 
90639 struct trace_event_data_offsets_mm_lru_insertion {};
90640 
90641 struct trace_event_data_offsets_mm_lru_activate {};
90642 
90643 typedef void (*btf_trace_mm_lru_insertion)(void *, struct folio *);
90644 
90645 typedef void (*btf_trace_mm_lru_activate)(void *, struct folio *);
90646 
90647 struct lru_rotate {
90648 	local_lock_t lock;
90649 	struct folio_batch fbatch;
90650 };
90651 
90652 struct cpu_fbatches {
90653 	local_lock_t lock;
90654 	struct folio_batch lru_add;
90655 	struct folio_batch lru_deactivate_file;
90656 	struct folio_batch lru_deactivate;
90657 	struct folio_batch lru_lazyfree;
90658 	struct folio_batch activate;
90659 };
90660 
90661 typedef void (*move_fn_t)(struct lruvec *, struct folio *);
90662 
90663 struct trace_event_raw_mmap_lock {
90664 	struct trace_entry ent;
90665 	struct mm_struct *mm;
90666 	u32 __data_loc_memcg_path;
90667 	bool write;
90668 	char __data[0];
90669 };
90670 
90671 struct trace_event_raw_mmap_lock_acquire_returned {
90672 	struct trace_entry ent;
90673 	struct mm_struct *mm;
90674 	u32 __data_loc_memcg_path;
90675 	bool write;
90676 	bool success;
90677 	char __data[0];
90678 };
90679 
90680 struct trace_event_data_offsets_mmap_lock {
90681 	u32 memcg_path;
90682 };
90683 
90684 struct trace_event_data_offsets_mmap_lock_acquire_returned {
90685 	u32 memcg_path;
90686 };
90687 
90688 typedef void (*btf_trace_mmap_lock_start_locking)(void *, struct mm_struct *, const char *, bool);
90689 
90690 typedef void (*btf_trace_mmap_lock_released)(void *, struct mm_struct *, const char *, bool);
90691 
90692 typedef void (*btf_trace_mmap_lock_acquire_returned)(void *, struct mm_struct *, const char *, bool, bool);
90693 
90694 struct memcg_path {
90695 	local_lock_t lock;
90696 	char *buf;
90697 	local_t buf_idx;
90698 };
90699 
90700 struct nodemask_scratch {
90701 	nodemask_t mask1;
90702 	nodemask_t mask2;
90703 };
90704 
90705 struct sp_node {
90706 	struct rb_node nd;
90707 	long unsigned int start;
90708 	long unsigned int end;
90709 	struct mempolicy *policy;
90710 };
90711 
90712 typedef struct page *new_page_t(struct page *, long unsigned int);
90713 
90714 typedef void free_page_t(struct page *, long unsigned int);
90715 
90716 struct migration_target_control {
90717 	int nid;
90718 	nodemask_t *nmask;
90719 	gfp_t gfp_mask;
90720 };
90721 
90722 struct mempolicy_operations {
90723 	int (*create)(struct mempolicy *, const nodemask_t *);
90724 	void (*rebind)(struct mempolicy *, const nodemask_t *);
90725 };
90726 
90727 struct queue_pages {
90728 	struct list_head *pagelist;
90729 	long unsigned int flags;
90730 	nodemask_t *nmask;
90731 	long unsigned int start;
90732 	long unsigned int end;
90733 	struct vm_area_struct *first;
90734 };
90735 
90736 struct page_reporting_dev_info {
90737 	int (*report)(struct page_reporting_dev_info *, struct scatterlist *, unsigned int);
90738 	struct delayed_work work;
90739 	atomic_t state;
90740 	unsigned int order;
90741 };
90742 
90743 enum {
90744 	PAGE_REPORTING_IDLE = 0,
90745 	PAGE_REPORTING_REQUESTED = 1,
90746 	PAGE_REPORTING_ACTIVE = 2,
90747 };
90748 
90749 struct linux_dirent64 {
90750 	u64 d_ino;
90751 	s64 d_off;
90752 	short unsigned int d_reclen;
90753 	unsigned char d_type;
90754 	char d_name[0];
90755 };
90756 
90757 struct old_linux_dirent {
90758 	long unsigned int d_ino;
90759 	long unsigned int d_offset;
90760 	short unsigned int d_namlen;
90761 	char d_name[1];
90762 };
90763 
90764 struct readdir_callback {
90765 	struct dir_context ctx;
90766 	struct old_linux_dirent *dirent;
90767 	int result;
90768 };
90769 
90770 struct linux_dirent {
90771 	long unsigned int d_ino;
90772 	long unsigned int d_off;
90773 	short unsigned int d_reclen;
90774 	char d_name[1];
90775 };
90776 
90777 struct getdents_callback___2 {
90778 	struct dir_context ctx;
90779 	struct linux_dirent *current_dir;
90780 	int prev_reclen;
90781 	int count;
90782 	int error;
90783 };
90784 
90785 struct getdents_callback64 {
90786 	struct dir_context ctx;
90787 	struct linux_dirent64 *current_dir;
90788 	int prev_reclen;
90789 	int count;
90790 	int error;
90791 };
90792 
90793 struct fs_pin {
90794 	wait_queue_head_t wait;
90795 	int done;
90796 	struct hlist_node s_list;
90797 	struct hlist_node m_list;
90798 	void (*kill)(struct fs_pin *);
90799 };
90800 
90801 struct pde_opener {
90802 	struct list_head lh;
90803 	struct file *file;
90804 	bool closing;
90805 	struct completion *c;
90806 };
90807 
90808 enum {
90809 	BIAS = 2147483648,
90810 };
90811 
90812 struct pending_reservation {
90813 	struct rb_node rb_node;
90814 	ext4_lblk_t lclu;
90815 };
90816 
90817 struct rsvd_count {
90818 	int ndelonly;
90819 	bool first_do_lblk_found;
90820 	ext4_lblk_t first_do_lblk;
90821 	ext4_lblk_t last_do_lblk;
90822 	struct extent_status *left_es;
90823 	bool partial;
90824 	ext4_lblk_t lclu;
90825 };
90826 
90827 struct ext4_new_group_data {
90828 	__u32 group;
90829 	__u64 block_bitmap;
90830 	__u64 inode_bitmap;
90831 	__u64 inode_table;
90832 	__u32 blocks_count;
90833 	__u16 reserved_blocks;
90834 	__u16 mdata_blocks;
90835 	__u32 free_clusters_count;
90836 };
90837 
90838 enum {
90839 	BLOCK_BITMAP = 0,
90840 	INODE_BITMAP = 1,
90841 	INODE_TABLE = 2,
90842 	GROUP_TABLE_COUNT = 3,
90843 };
90844 
90845 struct ext4_iloc {
90846 	struct buffer_head *bh;
90847 	long unsigned int offset;
90848 	ext4_group_t block_group;
90849 };
90850 
90851 struct ext4_rcu_ptr {
90852 	struct callback_head rcu;
90853 	void *ptr;
90854 };
90855 
90856 struct ext4_new_flex_group_data {
90857 	struct ext4_new_group_data *groups;
90858 	__u16 *bg_flags;
90859 	ext4_group_t count;
90860 };
90861 
90862 typedef short unsigned int __kernel_uid16_t;
90863 
90864 typedef short unsigned int __kernel_gid16_t;
90865 
90866 typedef __kernel_uid16_t uid16_t;
90867 
90868 typedef __kernel_gid16_t gid16_t;
90869 
90870 typedef int dio_iodone_t(struct kiocb *, loff_t, ssize_t, void *);
90871 
90872 typedef void dio_submit_t(struct bio *, struct inode *, loff_t);
90873 
90874 enum {
90875 	DIO_LOCKING = 1,
90876 	DIO_SKIP_HOLES = 2,
90877 };
90878 
90879 struct ext2_inode {
90880 	__le16 i_mode;
90881 	__le16 i_uid;
90882 	__le32 i_size;
90883 	__le32 i_atime;
90884 	__le32 i_ctime;
90885 	__le32 i_mtime;
90886 	__le32 i_dtime;
90887 	__le16 i_gid;
90888 	__le16 i_links_count;
90889 	__le32 i_blocks;
90890 	__le32 i_flags;
90891 	union {
90892 		struct {
90893 			__le32 l_i_reserved1;
90894 		} linux1;
90895 		struct {
90896 			__le32 h_i_translator;
90897 		} hurd1;
90898 		struct {
90899 			__le32 m_i_reserved1;
90900 		} masix1;
90901 	} osd1;
90902 	__le32 i_block[15];
90903 	__le32 i_generation;
90904 	__le32 i_file_acl;
90905 	__le32 i_dir_acl;
90906 	__le32 i_faddr;
90907 	union {
90908 		struct {
90909 			__u8 l_i_frag;
90910 			__u8 l_i_fsize;
90911 			__u16 i_pad1;
90912 			__le16 l_i_uid_high;
90913 			__le16 l_i_gid_high;
90914 			__u32 l_i_reserved2;
90915 		} linux2;
90916 		struct {
90917 			__u8 h_i_frag;
90918 			__u8 h_i_fsize;
90919 			__le16 h_i_mode_high;
90920 			__le16 h_i_uid_high;
90921 			__le16 h_i_gid_high;
90922 			__le32 h_i_author;
90923 		} hurd2;
90924 		struct {
90925 			__u8 m_i_frag;
90926 			__u8 m_i_fsize;
90927 			__u16 m_pad1;
90928 			__u32 m_i_reserved2[2];
90929 		} masix2;
90930 	} osd2;
90931 };
90932 
90933 struct hugetlbfs_inode_info {
90934 	struct shared_policy policy;
90935 	struct inode vfs_inode;
90936 	unsigned int seals;
90937 };
90938 
90939 enum hugetlbfs_size_type {
90940 	NO_SIZE = 0,
90941 	SIZE_STD = 1,
90942 	SIZE_PERCENT = 2,
90943 };
90944 
90945 struct hugetlbfs_fs_context {
90946 	struct hstate *hstate;
90947 	long long unsigned int max_size_opt;
90948 	long long unsigned int min_size_opt;
90949 	long int max_hpages;
90950 	long int nr_inodes;
90951 	long int min_hpages;
90952 	enum hugetlbfs_size_type max_val_type;
90953 	enum hugetlbfs_size_type min_val_type;
90954 	kuid_t uid;
90955 	kgid_t gid;
90956 	umode_t mode;
90957 };
90958 
90959 enum hugetlb_param {
90960 	Opt_gid___4 = 0,
90961 	Opt_min_size = 1,
90962 	Opt_mode___3 = 2,
90963 	Opt_nr_inodes___2 = 3,
90964 	Opt_pagesize = 4,
90965 	Opt_size___2 = 5,
90966 	Opt_uid___3 = 6,
90967 };
90968 
90969 enum {
90970 	FILEID_HIGH_OFF = 0,
90971 	FILEID_LOW_OFF = 1,
90972 	FILE_I_TYPE_OFF = 2,
90973 	EMBED_FH_OFF = 3,
90974 };
90975 
90976 enum nfs4_client_state {
90977 	NFS4CLNT_MANAGER_RUNNING = 0,
90978 	NFS4CLNT_CHECK_LEASE = 1,
90979 	NFS4CLNT_LEASE_EXPIRED = 2,
90980 	NFS4CLNT_RECLAIM_REBOOT = 3,
90981 	NFS4CLNT_RECLAIM_NOGRACE = 4,
90982 	NFS4CLNT_DELEGRETURN = 5,
90983 	NFS4CLNT_SESSION_RESET = 6,
90984 	NFS4CLNT_LEASE_CONFIRM = 7,
90985 	NFS4CLNT_SERVER_SCOPE_MISMATCH = 8,
90986 	NFS4CLNT_PURGE_STATE = 9,
90987 	NFS4CLNT_BIND_CONN_TO_SESSION = 10,
90988 	NFS4CLNT_MOVED = 11,
90989 	NFS4CLNT_LEASE_MOVED = 12,
90990 	NFS4CLNT_DELEGATION_EXPIRED = 13,
90991 	NFS4CLNT_RUN_MANAGER = 14,
90992 	NFS4CLNT_MANAGER_AVAILABLE = 15,
90993 	NFS4CLNT_RECALL_RUNNING = 16,
90994 	NFS4CLNT_RECALL_ANY_LAYOUT_READ = 17,
90995 	NFS4CLNT_RECALL_ANY_LAYOUT_RW = 18,
90996 	NFS4CLNT_DELEGRETURN_DELAYED = 19,
90997 };
90998 
90999 enum {
91000 	NFS_OWNER_RECLAIM_REBOOT = 0,
91001 	NFS_OWNER_RECLAIM_NOGRACE = 1,
91002 };
91003 
91004 enum {
91005 	LK_STATE_IN_USE = 0,
91006 	NFS_DELEGATED_STATE = 1,
91007 	NFS_OPEN_STATE = 2,
91008 	NFS_O_RDONLY_STATE = 3,
91009 	NFS_O_WRONLY_STATE = 4,
91010 	NFS_O_RDWR_STATE = 5,
91011 	NFS_STATE_RECLAIM_REBOOT = 6,
91012 	NFS_STATE_RECLAIM_NOGRACE = 7,
91013 	NFS_STATE_POSIX_LOCKS = 8,
91014 	NFS_STATE_RECOVERY_FAILED = 9,
91015 	NFS_STATE_MAY_NOTIFY_LOCK = 10,
91016 	NFS_STATE_CHANGE_WAIT = 11,
91017 	NFS_CLNT_DST_SSC_COPY_STATE = 12,
91018 	NFS_CLNT_SRC_SSC_COPY_STATE = 13,
91019 	NFS_SRV_SSC_COPY_STATE = 14,
91020 };
91021 
91022 enum nfs4_slot_tbl_state {
91023 	NFS4_SLOT_TBL_DRAINING = 0,
91024 };
91025 
91026 struct xfs_dir3_leaf_hdr {
91027 	struct xfs_da3_blkinfo info;
91028 	__be16 count;
91029 	__be16 stale;
91030 	__be32 pad;
91031 };
91032 
91033 struct xfs_dir3_leaf {
91034 	struct xfs_dir3_leaf_hdr hdr;
91035 	struct xfs_dir2_leaf_entry __ents[0];
91036 };
91037 
91038 struct xfs_dir2_block_tail {
91039 	__be32 count;
91040 	__be32 stale;
91041 };
91042 
91043 typedef struct xfs_dir2_block_tail xfs_dir2_block_tail_t;
91044 
91045 struct xfs_bmalloca {
91046 	struct xfs_trans *tp;
91047 	struct xfs_inode *ip;
91048 	struct xfs_bmbt_irec prev;
91049 	struct xfs_bmbt_irec got;
91050 	xfs_fileoff_t offset;
91051 	xfs_extlen_t length;
91052 	xfs_fsblock_t blkno;
91053 	struct xfs_btree_cur *cur;
91054 	struct xfs_iext_cursor icur;
91055 	int nallocs;
91056 	int logflags;
91057 	xfs_extlen_t total;
91058 	xfs_extlen_t minlen;
91059 	xfs_extlen_t minleft;
91060 	bool eof;
91061 	bool wasdel;
91062 	bool aeof;
91063 	bool conv;
91064 	int datatype;
91065 	uint32_t flags;
91066 };
91067 
91068 struct xfs_mru_cache_elem {
91069 	struct list_head list_node;
91070 	long unsigned int key;
91071 };
91072 
91073 typedef void (*xfs_mru_cache_free_func_t)(void *, struct xfs_mru_cache_elem *);
91074 
91075 struct xfs_fstrm_item {
91076 	struct xfs_mru_cache_elem mru;
91077 	xfs_agnumber_t ag;
91078 };
91079 
91080 enum xfs_fstrm_alloc {
91081 	XFS_PICK_USERDATA = 1,
91082 	XFS_PICK_LOWSPACE = 2,
91083 };
91084 
91085 typedef struct xfs_log_iovec xfs_log_iovec_t;
91086 
91087 struct xfs_extent {
91088 	xfs_fsblock_t ext_start;
91089 	xfs_extlen_t ext_len;
91090 };
91091 
91092 typedef struct xfs_extent xfs_extent_t;
91093 
91094 struct xfs_extent_32 {
91095 	uint64_t ext_start;
91096 	uint32_t ext_len;
91097 } __attribute__((packed));
91098 
91099 typedef struct xfs_extent_32 xfs_extent_32_t;
91100 
91101 struct xfs_extent_64 {
91102 	uint64_t ext_start;
91103 	uint32_t ext_len;
91104 	uint32_t ext_pad;
91105 };
91106 
91107 typedef struct xfs_extent_64 xfs_extent_64_t;
91108 
91109 struct xfs_efi_log_format {
91110 	uint16_t efi_type;
91111 	uint16_t efi_size;
91112 	uint32_t efi_nextents;
91113 	uint64_t efi_id;
91114 	xfs_extent_t efi_extents[1];
91115 };
91116 
91117 typedef struct xfs_efi_log_format xfs_efi_log_format_t;
91118 
91119 struct xfs_efi_log_format_32 {
91120 	uint16_t efi_type;
91121 	uint16_t efi_size;
91122 	uint32_t efi_nextents;
91123 	uint64_t efi_id;
91124 	xfs_extent_32_t efi_extents[1];
91125 } __attribute__((packed));
91126 
91127 typedef struct xfs_efi_log_format_32 xfs_efi_log_format_32_t;
91128 
91129 struct xfs_efi_log_format_64 {
91130 	uint16_t efi_type;
91131 	uint16_t efi_size;
91132 	uint32_t efi_nextents;
91133 	uint64_t efi_id;
91134 	xfs_extent_64_t efi_extents[1];
91135 };
91136 
91137 typedef struct xfs_efi_log_format_64 xfs_efi_log_format_64_t;
91138 
91139 struct xfs_efd_log_format {
91140 	uint16_t efd_type;
91141 	uint16_t efd_size;
91142 	uint32_t efd_nextents;
91143 	uint64_t efd_efi_id;
91144 	xfs_extent_t efd_extents[1];
91145 };
91146 
91147 typedef struct xfs_efd_log_format xfs_efd_log_format_t;
91148 
91149 struct xfs_efi_log_item {
91150 	struct xfs_log_item efi_item;
91151 	atomic_t efi_refcount;
91152 	atomic_t efi_next_extent;
91153 	xfs_efi_log_format_t efi_format;
91154 };
91155 
91156 struct xfs_efd_log_item {
91157 	struct xfs_log_item efd_item;
91158 	struct xfs_efi_log_item *efd_efip;
91159 	uint efd_next_extent;
91160 	xfs_efd_log_format_t efd_format;
91161 };
91162 
91163 struct xfs_extent_free_item {
91164 	struct list_head xefi_list;
91165 	uint64_t xefi_owner;
91166 	xfs_fsblock_t xefi_startblock;
91167 	xfs_extlen_t xefi_blockcount;
91168 	unsigned int xefi_flags;
91169 };
91170 
91171 struct msg_msgseg {
91172 	struct msg_msgseg *next;
91173 };
91174 
91175 struct aead_request {
91176 	struct crypto_async_request base;
91177 	unsigned int assoclen;
91178 	unsigned int cryptlen;
91179 	u8 *iv;
91180 	struct scatterlist *src;
91181 	struct scatterlist *dst;
91182 	void *__ctx[0];
91183 };
91184 
91185 struct aead_alg {
91186 	int (*setkey)(struct crypto_aead *, const u8 *, unsigned int);
91187 	int (*setauthsize)(struct crypto_aead *, unsigned int);
91188 	int (*encrypt)(struct aead_request *);
91189 	int (*decrypt)(struct aead_request *);
91190 	int (*init)(struct crypto_aead *);
91191 	void (*exit)(struct crypto_aead *);
91192 	unsigned int ivsize;
91193 	unsigned int maxauthsize;
91194 	unsigned int chunksize;
91195 	struct crypto_alg base;
91196 };
91197 
91198 struct aead_instance {
91199 	void (*free)(struct aead_instance *);
91200 	union {
91201 		struct {
91202 			char head[64];
91203 			struct crypto_instance base;
91204 		} s;
91205 		struct aead_alg alg;
91206 	};
91207 };
91208 
91209 struct crypto_aead_spawn {
91210 	struct crypto_spawn base;
91211 };
91212 
91213 struct crypto_report_aead {
91214 	char type[64];
91215 	char geniv[64];
91216 	unsigned int blocksize;
91217 	unsigned int maxauthsize;
91218 	unsigned int ivsize;
91219 };
91220 
91221 struct chksum_ctx {
91222 	u32 key;
91223 };
91224 
91225 struct chksum_desc_ctx {
91226 	u32 crc;
91227 };
91228 
91229 struct rq_map_data {
91230 	struct page **pages;
91231 	int page_order;
91232 	int nr_entries;
91233 	long unsigned int offset;
91234 	int null_mapped;
91235 	int from_user;
91236 };
91237 
91238 struct bio_map_data {
91239 	bool is_our_pages: 1;
91240 	bool is_null_mapped: 1;
91241 	struct iov_iter iter;
91242 	struct iovec iov[0];
91243 };
91244 
91245 struct fat_boot_sector {
91246 	__u8 ignored[3];
91247 	__u8 system_id[8];
91248 	__u8 sector_size[2];
91249 	__u8 sec_per_clus;
91250 	__le16 reserved;
91251 	__u8 fats;
91252 	__u8 dir_entries[2];
91253 	__u8 sectors[2];
91254 	__u8 media;
91255 	__le16 fat_length;
91256 	__le16 secs_track;
91257 	__le16 heads;
91258 	__le32 hidden;
91259 	__le32 total_sect;
91260 	union {
91261 		struct {
91262 			__u8 drive_number;
91263 			__u8 state;
91264 			__u8 signature;
91265 			__u8 vol_id[4];
91266 			__u8 vol_label[11];
91267 			__u8 fs_type[8];
91268 		} fat16;
91269 		struct {
91270 			__le32 length;
91271 			__le16 flags;
91272 			__u8 version[2];
91273 			__le32 root_cluster;
91274 			__le16 info_sector;
91275 			__le16 backup_boot;
91276 			__le16 reserved2[6];
91277 			__u8 drive_number;
91278 			__u8 state;
91279 			__u8 signature;
91280 			__u8 vol_id[4];
91281 			__u8 vol_label[11];
91282 			__u8 fs_type[8];
91283 		} fat32;
91284 	};
91285 };
91286 
91287 enum msdos_sys_ind {
91288 	DOS_EXTENDED_PARTITION = 5,
91289 	LINUX_EXTENDED_PARTITION = 133,
91290 	WIN98_EXTENDED_PARTITION = 15,
91291 	LINUX_DATA_PARTITION = 131,
91292 	LINUX_LVM_PARTITION = 142,
91293 	LINUX_RAID_PARTITION = 253,
91294 	SOLARIS_X86_PARTITION = 130,
91295 	NEW_SOLARIS_X86_PARTITION = 191,
91296 	DM6_AUX1PARTITION = 81,
91297 	DM6_AUX3PARTITION = 83,
91298 	DM6_PARTITION = 84,
91299 	EZD_PARTITION = 85,
91300 	FREEBSD_PARTITION = 165,
91301 	OPENBSD_PARTITION = 166,
91302 	NETBSD_PARTITION = 169,
91303 	BSDI_PARTITION = 183,
91304 	MINIX_PARTITION = 129,
91305 	UNIXWARE_PARTITION = 99,
91306 };
91307 
91308 struct parsed_partitions {
91309 	struct gendisk *disk;
91310 	char name[32];
91311 	struct {
91312 		sector_t from;
91313 		sector_t size;
91314 		int flags;
91315 		bool has_info;
91316 		struct partition_meta_info info;
91317 	} *parts;
91318 	int next;
91319 	int limit;
91320 	bool access_beyond_eod;
91321 	char *pp_buf;
91322 };
91323 
91324 typedef struct {
91325 	struct folio *v;
91326 } Sector;
91327 
91328 struct show_busy_params {
91329 	struct seq_file *m;
91330 	struct blk_mq_hw_ctx *hctx;
91331 };
91332 
91333 struct io_sqring_offsets {
91334 	__u32 head;
91335 	__u32 tail;
91336 	__u32 ring_mask;
91337 	__u32 ring_entries;
91338 	__u32 flags;
91339 	__u32 dropped;
91340 	__u32 array;
91341 	__u32 resv1;
91342 	__u64 resv2;
91343 };
91344 
91345 struct io_cqring_offsets {
91346 	__u32 head;
91347 	__u32 tail;
91348 	__u32 ring_mask;
91349 	__u32 ring_entries;
91350 	__u32 overflow;
91351 	__u32 cqes;
91352 	__u32 flags;
91353 	__u32 resv1;
91354 	__u64 resv2;
91355 };
91356 
91357 struct io_uring_params {
91358 	__u32 sq_entries;
91359 	__u32 cq_entries;
91360 	__u32 flags;
91361 	__u32 sq_thread_cpu;
91362 	__u32 sq_thread_idle;
91363 	__u32 features;
91364 	__u32 wq_fd;
91365 	__u32 resv[3];
91366 	struct io_sqring_offsets sq_off;
91367 	struct io_cqring_offsets cq_off;
91368 };
91369 
91370 struct io_sq_data {
91371 	refcount_t refs;
91372 	atomic_t park_pending;
91373 	struct mutex lock;
91374 	struct list_head ctx_list;
91375 	struct task_struct *thread;
91376 	struct wait_queue_head wait;
91377 	unsigned int sq_thread_idle;
91378 	int sq_cpu;
91379 	pid_t task_pid;
91380 	pid_t task_tgid;
91381 	long unsigned int state;
91382 	struct completion exited;
91383 };
91384 
91385 enum {
91386 	IO_SQ_THREAD_SHOULD_STOP = 0,
91387 	IO_SQ_THREAD_SHOULD_PARK = 1,
91388 };
91389 
91390 union uu {
91391 	short unsigned int us;
91392 	unsigned char b[2];
91393 };
91394 
91395 typedef struct tree_desc_s tree_desc;
91396 
91397 struct xz_dec_bcj {
91398 	enum {
91399 		BCJ_X86 = 4,
91400 		BCJ_POWERPC = 5,
91401 		BCJ_IA64 = 6,
91402 		BCJ_ARM = 7,
91403 		BCJ_ARMTHUMB = 8,
91404 		BCJ_SPARC = 9,
91405 	} type;
91406 	enum xz_ret ret;
91407 	bool single_call;
91408 	uint32_t pos;
91409 	uint32_t x86_prev_mask;
91410 	uint8_t *out;
91411 	size_t out_pos;
91412 	size_t out_size;
91413 	struct {
91414 		size_t filtered;
91415 		size_t size;
91416 		uint8_t buf[16];
91417 	} temp;
91418 };
91419 
91420 struct xz_dec_lzma2;
91421 
91422 struct font_data {
91423 	unsigned int extra[4];
91424 	const unsigned char data[0];
91425 };
91426 
91427 typedef int (*decompress_fn)(unsigned char *, long int, long int (*)(void *, long unsigned int), long int (*)(void *, long unsigned int), unsigned char *, long int *, void (*)(char *));
91428 
91429 struct compress_format {
91430 	unsigned char magic[2];
91431 	const char *name;
91432 	decompress_fn decompressor;
91433 };
91434 
91435 struct group_data {
91436 	int limit[21];
91437 	int base[20];
91438 	int permute[258];
91439 	int minLen;
91440 	int maxLen;
91441 };
91442 
91443 struct bunzip_data {
91444 	int writeCopies;
91445 	int writePos;
91446 	int writeRunCountdown;
91447 	int writeCount;
91448 	int writeCurrent;
91449 	long int (*fill)(void *, long unsigned int);
91450 	long int inbufCount;
91451 	long int inbufPos;
91452 	unsigned char *inbuf;
91453 	unsigned int inbufBitCount;
91454 	unsigned int inbufBits;
91455 	unsigned int crc32Table[256];
91456 	unsigned int headerCRC;
91457 	unsigned int totalCRC;
91458 	unsigned int writeCRC;
91459 	unsigned int *dbuf;
91460 	unsigned int dbufSize;
91461 	unsigned char selectors[32768];
91462 	struct group_data groups[6];
91463 	int io_error;
91464 	int byteCount[256];
91465 	unsigned char symToByte[256];
91466 	unsigned char mtfSymbol[256];
91467 };
91468 
91469 struct uevent_sock {
91470 	struct list_head list;
91471 	struct sock *sk;
91472 };
91473 
91474 enum msi_desc_filter {
91475 	MSI_DESC_ALL = 0,
91476 	MSI_DESC_NOTASSOCIATED = 1,
91477 	MSI_DESC_ASSOCIATED = 2,
91478 };
91479 
91480 struct fb_vblank {
91481 	__u32 flags;
91482 	__u32 count;
91483 	__u32 vcount;
91484 	__u32 hcount;
91485 	__u32 reserved[4];
91486 };
91487 
91488 struct matroxfb_dh_fb_info {
91489 	struct fb_info fbcon;
91490 	int fbcon_registered;
91491 	int initialized;
91492 	struct matrox_fb_info *primary_dev;
91493 	struct {
91494 		long unsigned int base;
91495 		vaddr_t vbase;
91496 		unsigned int len;
91497 		unsigned int len_usable;
91498 		unsigned int len_maximum;
91499 		unsigned int offbase;
91500 		unsigned int borrowed;
91501 	} video;
91502 	struct {
91503 		long unsigned int base;
91504 		vaddr_t vbase;
91505 		unsigned int len;
91506 	} mmio;
91507 	unsigned int interlaced: 1;
91508 	u_int32_t cmap[16];
91509 };
91510 
91511 struct v4l2_capability {
91512 	__u8 driver[16];
91513 	__u8 card[32];
91514 	__u8 bus_info[32];
91515 	__u32 version;
91516 	__u32 capabilities;
91517 	__u32 device_caps;
91518 	__u32 reserved[3];
91519 };
91520 
91521 struct matroxioc_output_mode {
91522 	__u32 output;
91523 	__u32 mode;
91524 };
91525 
91526 struct video_board {
91527 	int maxvram;
91528 	int maxdisplayable;
91529 	int accelID;
91530 	struct matrox_switch *lowlevel;
91531 };
91532 
91533 struct board {
91534 	short unsigned int vendor;
91535 	short unsigned int device;
91536 	short unsigned int rev;
91537 	short unsigned int svid;
91538 	short unsigned int sid;
91539 	unsigned int flags;
91540 	unsigned int maxclk;
91541 	enum mga_chip chip;
91542 	struct video_board *base;
91543 	const char *name;
91544 };
91545 
91546 struct RGBT {
91547 	unsigned char bpp;
91548 	struct {
91549 		unsigned char offset;
91550 		unsigned char length;
91551 	} red;
91552 	struct {
91553 		unsigned char offset;
91554 		unsigned char length;
91555 	} green;
91556 	struct {
91557 		unsigned char offset;
91558 		unsigned char length;
91559 	} blue;
91560 	struct {
91561 		unsigned char offset;
91562 		unsigned char length;
91563 	} transp;
91564 	signed char visual;
91565 };
91566 
91567 struct n_tty_data {
91568 	size_t read_head;
91569 	size_t commit_head;
91570 	size_t canon_head;
91571 	size_t echo_head;
91572 	size_t echo_commit;
91573 	size_t echo_mark;
91574 	long unsigned int char_map[4];
91575 	long unsigned int overrun_time;
91576 	int num_overrun;
91577 	bool no_room;
91578 	unsigned char lnext: 1;
91579 	unsigned char erasing: 1;
91580 	unsigned char raw: 1;
91581 	unsigned char real_raw: 1;
91582 	unsigned char icanon: 1;
91583 	unsigned char push: 1;
91584 	char read_buf[4096];
91585 	long unsigned int read_flags[64];
91586 	unsigned char echo_buf[4096];
91587 	size_t read_tail;
91588 	size_t line_start;
91589 	size_t lookahead_count;
91590 	unsigned int column;
91591 	unsigned int canon_column;
91592 	size_t echo_tail;
91593 	struct mutex atomic_read_lock;
91594 	struct mutex output_lock;
91595 };
91596 
91597 enum {
91598 	ERASE = 0,
91599 	WERASE = 1,
91600 	KILL = 2,
91601 };
91602 
91603 enum hv_protocol {
91604 	HV_PROTOCOL_RAW = 0,
91605 	HV_PROTOCOL_HVSI = 1,
91606 };
91607 
91608 typedef enum hv_protocol hv_protocol_t;
91609 
91610 struct hvterm_priv {
91611 	u32 termno;
91612 	hv_protocol_t proto;
91613 	struct hvsi_priv hvsi;
91614 	spinlock_t buf_lock;
91615 	char buf[16];
91616 	int left;
91617 	int offset;
91618 };
91619 
91620 struct subsys_dev_iter {
91621 	struct klist_iter ki;
91622 	const struct device_type *type;
91623 };
91624 
91625 struct container_dev {
91626 	struct device dev;
91627 	int (*offline)(struct container_dev *);
91628 };
91629 
91630 enum device_link_state {
91631 	DL_STATE_NONE = -1,
91632 	DL_STATE_DORMANT = 0,
91633 	DL_STATE_AVAILABLE = 1,
91634 	DL_STATE_CONSUMER_PROBE = 2,
91635 	DL_STATE_ACTIVE = 3,
91636 	DL_STATE_SUPPLIER_UNBIND = 4,
91637 };
91638 
91639 struct device_link {
91640 	struct device *supplier;
91641 	struct list_head s_node;
91642 	struct device *consumer;
91643 	struct list_head c_node;
91644 	struct device link_dev;
91645 	enum device_link_state status;
91646 	u32 flags;
91647 	refcount_t rpm_active;
91648 	struct kref kref;
91649 	struct work_struct rm_work;
91650 	bool supplier_preactivated;
91651 };
91652 
91653 typedef int (*pm_callback_t)(struct device *);
91654 
91655 struct floppy_struct {
91656 	unsigned int size;
91657 	unsigned int sect;
91658 	unsigned int head;
91659 	unsigned int track;
91660 	unsigned int stretch;
91661 	unsigned char gap;
91662 	unsigned char rate;
91663 	unsigned char spec1;
91664 	unsigned char fmt_gap;
91665 	const char *name;
91666 };
91667 
91668 struct format_descr {
91669 	unsigned int device;
91670 	unsigned int head;
91671 	unsigned int track;
91672 };
91673 
91674 struct floppy_max_errors {
91675 	unsigned int abort;
91676 	unsigned int read_track;
91677 	unsigned int reset;
91678 	unsigned int recal;
91679 	unsigned int reporting;
91680 };
91681 
91682 struct floppy_drive_params {
91683 	signed char cmos;
91684 	long unsigned int max_dtr;
91685 	long unsigned int hlt;
91686 	long unsigned int hut;
91687 	long unsigned int srt;
91688 	long unsigned int spinup;
91689 	long unsigned int spindown;
91690 	unsigned char spindown_offset;
91691 	unsigned char select_delay;
91692 	unsigned char rps;
91693 	unsigned char tracks;
91694 	long unsigned int timeout;
91695 	unsigned char interleave_sect;
91696 	struct floppy_max_errors max_errors;
91697 	char flags;
91698 	char read_track;
91699 	short int autodetect[8];
91700 	int checkfreq;
91701 	int native_format;
91702 };
91703 
91704 enum {
91705 	FD_NEED_TWADDLE_BIT = 0,
91706 	FD_VERIFY_BIT = 1,
91707 	FD_DISK_NEWCHANGE_BIT = 2,
91708 	FD_UNUSED_BIT = 3,
91709 	FD_DISK_CHANGED_BIT = 4,
91710 	FD_DISK_WRITABLE_BIT = 5,
91711 	FD_OPEN_SHOULD_FAIL_BIT = 6,
91712 };
91713 
91714 struct floppy_drive_struct {
91715 	long unsigned int flags;
91716 	long unsigned int spinup_date;
91717 	long unsigned int select_date;
91718 	long unsigned int first_read_date;
91719 	short int probed_format;
91720 	short int track;
91721 	short int maxblock;
91722 	short int maxtrack;
91723 	int generation;
91724 	int keep_data;
91725 	int fd_ref;
91726 	int fd_device;
91727 	long unsigned int last_checked;
91728 	char *dmabuf;
91729 	int bufblocks;
91730 };
91731 
91732 enum reset_mode {
91733 	FD_RESET_IF_NEEDED = 0,
91734 	FD_RESET_IF_RAWCMD = 1,
91735 	FD_RESET_ALWAYS = 2,
91736 };
91737 
91738 struct floppy_fdc_state {
91739 	int spec1;
91740 	int spec2;
91741 	int dtr;
91742 	unsigned char version;
91743 	unsigned char dor;
91744 	long unsigned int address;
91745 	unsigned int rawcmd: 2;
91746 	unsigned int reset: 1;
91747 	unsigned int need_configure: 1;
91748 	unsigned int perp_mode: 2;
91749 	unsigned int has_fifo: 1;
91750 	unsigned int driver_version;
91751 	unsigned char track[4];
91752 };
91753 
91754 struct floppy_write_errors {
91755 	unsigned int write_errors;
91756 	long unsigned int first_error_sector;
91757 	int first_error_generation;
91758 	long unsigned int last_error_sector;
91759 	int last_error_generation;
91760 	unsigned int badness;
91761 };
91762 
91763 struct floppy_raw_cmd {
91764 	unsigned int flags;
91765 	void *data;
91766 	char *kernel_data;
91767 	struct floppy_raw_cmd *next;
91768 	long int length;
91769 	long int phys_length;
91770 	int buffer_length;
91771 	unsigned char rate;
91772 	unsigned char cmd_count;
91773 	union {
91774 		struct {
91775 			unsigned char cmd[16];
91776 			unsigned char reply_count;
91777 			unsigned char reply[16];
91778 		};
91779 		unsigned char fullcmd[33];
91780 	};
91781 	int track;
91782 	int resultcode;
91783 	int reserved1;
91784 	int reserved2;
91785 };
91786 
91787 struct fd_dma_ops {
91788 	void (*_disable_dma)(unsigned int);
91789 	void (*_free_dma)(unsigned int);
91790 	int (*_get_dma_residue)(unsigned int);
91791 	int (*_dma_setup)(char *, long unsigned int, int, int);
91792 };
91793 
91794 typedef void (*done_f)(int);
91795 
91796 struct cont_t {
91797 	void (*interrupt)();
91798 	void (*redo)();
91799 	void (*error)();
91800 	done_f done;
91801 };
91802 
91803 struct output_log {
91804 	unsigned char data;
91805 	unsigned char status;
91806 	long unsigned int jiffies;
91807 };
91808 
91809 struct rb0_cbdata {
91810 	int drive;
91811 	struct completion complete;
91812 };
91813 
91814 struct param_table {
91815 	const char *name;
91816 	void (*fn)(int *, int, int);
91817 	int *var;
91818 	int def_param;
91819 	int param2;
91820 };
91821 
91822 struct io_region {
91823 	int offset;
91824 	int size;
91825 };
91826 
91827 union inparam {
91828 	struct floppy_struct g;
91829 	struct format_descr f;
91830 	struct floppy_max_errors max_errors;
91831 	struct floppy_drive_params dp;
91832 };
91833 
91834 struct fparm {
91835 	unsigned char track;
91836 	unsigned char head;
91837 	unsigned char sect;
91838 	unsigned char size;
91839 };
91840 
91841 struct iosys_map {
91842 	union {
91843 		void *vaddr_iomem;
91844 		void *vaddr;
91845 	};
91846 	bool is_iomem;
91847 };
91848 
91849 struct dma_buf;
91850 
91851 struct dma_buf_attachment;
91852 
91853 struct dma_buf_ops {
91854 	bool cache_sgt_mapping;
91855 	int (*attach)(struct dma_buf *, struct dma_buf_attachment *);
91856 	void (*detach)(struct dma_buf *, struct dma_buf_attachment *);
91857 	int (*pin)(struct dma_buf_attachment *);
91858 	void (*unpin)(struct dma_buf_attachment *);
91859 	struct sg_table * (*map_dma_buf)(struct dma_buf_attachment *, enum dma_data_direction);
91860 	void (*unmap_dma_buf)(struct dma_buf_attachment *, struct sg_table *, enum dma_data_direction);
91861 	void (*release)(struct dma_buf *);
91862 	int (*begin_cpu_access)(struct dma_buf *, enum dma_data_direction);
91863 	int (*end_cpu_access)(struct dma_buf *, enum dma_data_direction);
91864 	int (*mmap)(struct dma_buf *, struct vm_area_struct *);
91865 	int (*vmap)(struct dma_buf *, struct iosys_map *);
91866 	void (*vunmap)(struct dma_buf *, struct iosys_map *);
91867 };
91868 
91869 struct dma_buf_poll_cb_t {
91870 	struct dma_fence_cb cb;
91871 	wait_queue_head_t *poll;
91872 	__poll_t active;
91873 };
91874 
91875 struct dma_resv;
91876 
91877 struct dma_buf {
91878 	size_t size;
91879 	struct file *file;
91880 	struct list_head attachments;
91881 	const struct dma_buf_ops *ops;
91882 	struct mutex lock;
91883 	unsigned int vmapping_counter;
91884 	struct iosys_map vmap_ptr;
91885 	const char *exp_name;
91886 	const char *name;
91887 	spinlock_t name_lock;
91888 	struct module *owner;
91889 	struct list_head list_node;
91890 	void *priv;
91891 	struct dma_resv *resv;
91892 	wait_queue_head_t poll;
91893 	struct dma_buf_poll_cb_t cb_in;
91894 	struct dma_buf_poll_cb_t cb_out;
91895 };
91896 
91897 struct dma_buf_attach_ops;
91898 
91899 struct dma_buf_attachment {
91900 	struct dma_buf *dmabuf;
91901 	struct device *dev;
91902 	struct list_head node;
91903 	struct sg_table *sgt;
91904 	enum dma_data_direction dir;
91905 	bool peer2peer;
91906 	const struct dma_buf_attach_ops *importer_ops;
91907 	void *importer_priv;
91908 	void *priv;
91909 };
91910 
91911 struct dma_resv_list;
91912 
91913 struct dma_resv {
91914 	struct ww_mutex lock;
91915 	struct dma_resv_list *fences;
91916 };
91917 
91918 struct dma_buf_attach_ops {
91919 	bool allow_peer2peer;
91920 	void (*move_notify)(struct dma_buf_attachment *);
91921 };
91922 
91923 struct dma_buf_export_info {
91924 	const char *exp_name;
91925 	struct module *owner;
91926 	const struct dma_buf_ops *ops;
91927 	size_t size;
91928 	int flags;
91929 	struct dma_resv *resv;
91930 	void *priv;
91931 };
91932 
91933 enum dma_resv_usage {
91934 	DMA_RESV_USAGE_KERNEL = 0,
91935 	DMA_RESV_USAGE_WRITE = 1,
91936 	DMA_RESV_USAGE_READ = 2,
91937 	DMA_RESV_USAGE_BOOKKEEP = 3,
91938 };
91939 
91940 struct dma_resv_iter {
91941 	struct dma_resv *obj;
91942 	enum dma_resv_usage usage;
91943 	struct dma_fence *fence;
91944 	enum dma_resv_usage fence_usage;
91945 	unsigned int index;
91946 	struct dma_resv_list *fences;
91947 	unsigned int num_fences;
91948 	bool is_restarted;
91949 };
91950 
91951 struct dma_buf_sync {
91952 	__u64 flags;
91953 };
91954 
91955 struct dma_buf_list {
91956 	struct list_head head;
91957 	struct mutex lock;
91958 };
91959 
91960 struct scsi_nl_hdr {
91961 	__u8 version;
91962 	__u8 transport;
91963 	__u16 magic;
91964 	__u16 msgtype;
91965 	__u16 msglen;
91966 };
91967 
91968 enum {
91969 	e1000_10_half = 0,
91970 	e1000_10_full = 1,
91971 	e1000_100_half = 2,
91972 	e1000_100_full = 3,
91973 };
91974 
91975 struct e1000_context_desc {
91976 	union {
91977 		__le32 ip_config;
91978 		struct {
91979 			u8 ipcss;
91980 			u8 ipcso;
91981 			__le16 ipcse;
91982 		} ip_fields;
91983 	} lower_setup;
91984 	union {
91985 		__le32 tcp_config;
91986 		struct {
91987 			u8 tucss;
91988 			u8 tucso;
91989 			__le16 tucse;
91990 		} tcp_fields;
91991 	} upper_setup;
91992 	__le32 cmd_and_length;
91993 	union {
91994 		__le32 data;
91995 		struct {
91996 			u8 status;
91997 			u8 hdr_len;
91998 			__le16 mss;
91999 		} fields;
92000 	} tcp_seg_setup;
92001 };
92002 
92003 enum latency_range {
92004 	lowest_latency = 0,
92005 	low_latency = 1,
92006 	bulk_latency = 2,
92007 	latency_invalid = 255,
92008 };
92009 
92010 struct my_u {
92011 	__le64 a;
92012 	__le64 b;
92013 };
92014 
92015 typedef __u32 __hc32;
92016 
92017 typedef __u16 __hc16;
92018 
92019 struct td;
92020 
92021 struct ed {
92022 	__hc32 hwINFO;
92023 	__hc32 hwTailP;
92024 	__hc32 hwHeadP;
92025 	__hc32 hwNextED;
92026 	dma_addr_t dma;
92027 	struct td *dummy;
92028 	struct ed *ed_next;
92029 	struct ed *ed_prev;
92030 	struct list_head td_list;
92031 	struct list_head in_use_list;
92032 	u8 state;
92033 	u8 type;
92034 	u8 branch;
92035 	u16 interval;
92036 	u16 load;
92037 	u16 last_iso;
92038 	u16 tick;
92039 	unsigned int takeback_wdh_cnt;
92040 	struct td *pending_td;
92041 	long: 64;
92042 };
92043 
92044 struct td {
92045 	__hc32 hwINFO;
92046 	__hc32 hwCBP;
92047 	__hc32 hwNextTD;
92048 	__hc32 hwBE;
92049 	__hc16 hwPSW[2];
92050 	__u8 index;
92051 	struct ed *ed;
92052 	struct td *td_hash;
92053 	struct td *next_dl_td;
92054 	struct urb *urb;
92055 	dma_addr_t td_dma;
92056 	dma_addr_t data_dma;
92057 	struct list_head td_list;
92058 	long: 64;
92059 };
92060 
92061 struct ohci_hcca {
92062 	__hc32 int_table[32];
92063 	__hc32 frame_no;
92064 	__hc32 done_head;
92065 	u8 reserved_for_hc[116];
92066 	u8 what[4];
92067 };
92068 
92069 struct ohci_roothub_regs {
92070 	__hc32 a;
92071 	__hc32 b;
92072 	__hc32 status;
92073 	__hc32 portstatus[15];
92074 };
92075 
92076 struct ohci_regs {
92077 	__hc32 revision;
92078 	__hc32 control;
92079 	__hc32 cmdstatus;
92080 	__hc32 intrstatus;
92081 	__hc32 intrenable;
92082 	__hc32 intrdisable;
92083 	__hc32 hcca;
92084 	__hc32 ed_periodcurrent;
92085 	__hc32 ed_controlhead;
92086 	__hc32 ed_controlcurrent;
92087 	__hc32 ed_bulkhead;
92088 	__hc32 ed_bulkcurrent;
92089 	__hc32 donehead;
92090 	__hc32 fminterval;
92091 	__hc32 fmremaining;
92092 	__hc32 fmnumber;
92093 	__hc32 periodicstart;
92094 	__hc32 lsthresh;
92095 	struct ohci_roothub_regs roothub;
92096 	long: 64;
92097 	long: 64;
92098 };
92099 
92100 enum ohci_rh_state {
92101 	OHCI_RH_HALTED = 0,
92102 	OHCI_RH_SUSPENDED = 1,
92103 	OHCI_RH_RUNNING = 2,
92104 };
92105 
92106 struct ohci_hcd {
92107 	spinlock_t lock;
92108 	struct ohci_regs *regs;
92109 	struct ohci_hcca *hcca;
92110 	dma_addr_t hcca_dma;
92111 	struct ed *ed_rm_list;
92112 	struct ed *ed_bulktail;
92113 	struct ed *ed_controltail;
92114 	struct ed *periodic[32];
92115 	void (*start_hnp)(struct ohci_hcd *);
92116 	struct dma_pool *td_cache;
92117 	struct dma_pool *ed_cache;
92118 	struct td *td_hash[64];
92119 	struct td *dl_start;
92120 	struct td *dl_end;
92121 	struct list_head pending;
92122 	struct list_head eds_in_use;
92123 	enum ohci_rh_state rh_state;
92124 	int num_ports;
92125 	int load[32];
92126 	u32 hc_control;
92127 	long unsigned int next_statechange;
92128 	u32 fminterval;
92129 	unsigned int autostop: 1;
92130 	unsigned int working: 1;
92131 	unsigned int restart_work: 1;
92132 	long unsigned int flags;
92133 	unsigned int prev_frame_no;
92134 	unsigned int wdh_cnt;
92135 	unsigned int prev_wdh_cnt;
92136 	u32 prev_donehead;
92137 	struct timer_list io_watchdog;
92138 	struct work_struct nec_work;
92139 	struct dentry *debug_dir;
92140 	long unsigned int priv[0];
92141 };
92142 
92143 struct ohci_driver_overrides {
92144 	const char *product_desc;
92145 	size_t extra_priv_size;
92146 	int (*reset)(struct usb_hcd *);
92147 };
92148 
92149 enum dmi_field {
92150 	DMI_NONE = 0,
92151 	DMI_BIOS_VENDOR = 1,
92152 	DMI_BIOS_VERSION = 2,
92153 	DMI_BIOS_DATE = 3,
92154 	DMI_BIOS_RELEASE = 4,
92155 	DMI_EC_FIRMWARE_RELEASE = 5,
92156 	DMI_SYS_VENDOR = 6,
92157 	DMI_PRODUCT_NAME = 7,
92158 	DMI_PRODUCT_VERSION = 8,
92159 	DMI_PRODUCT_SERIAL = 9,
92160 	DMI_PRODUCT_UUID = 10,
92161 	DMI_PRODUCT_SKU = 11,
92162 	DMI_PRODUCT_FAMILY = 12,
92163 	DMI_BOARD_VENDOR = 13,
92164 	DMI_BOARD_NAME = 14,
92165 	DMI_BOARD_VERSION = 15,
92166 	DMI_BOARD_SERIAL = 16,
92167 	DMI_BOARD_ASSET_TAG = 17,
92168 	DMI_CHASSIS_VENDOR = 18,
92169 	DMI_CHASSIS_TYPE = 19,
92170 	DMI_CHASSIS_VERSION = 20,
92171 	DMI_CHASSIS_SERIAL = 21,
92172 	DMI_CHASSIS_ASSET_TAG = 22,
92173 	DMI_STRING_MAX = 23,
92174 	DMI_OEM_STRING = 24,
92175 };
92176 
92177 struct input_mt_pos {
92178 	s16 x;
92179 	s16 y;
92180 };
92181 
92182 struct rmi_2d_axis_alignment {
92183 	bool swap_axes;
92184 	bool flip_x;
92185 	bool flip_y;
92186 	u16 clip_x_low;
92187 	u16 clip_y_low;
92188 	u16 clip_x_high;
92189 	u16 clip_y_high;
92190 	u16 offset_x;
92191 	u16 offset_y;
92192 	u8 delta_x_threshold;
92193 	u8 delta_y_threshold;
92194 };
92195 
92196 enum rmi_sensor_type {
92197 	rmi_sensor_default = 0,
92198 	rmi_sensor_touchscreen = 1,
92199 	rmi_sensor_touchpad = 2,
92200 };
92201 
92202 struct rmi_2d_sensor_platform_data {
92203 	struct rmi_2d_axis_alignment axis_align;
92204 	enum rmi_sensor_type sensor_type;
92205 	int x_mm;
92206 	int y_mm;
92207 	int disable_report_mask;
92208 	u16 rezero_wait;
92209 	bool topbuttonpad;
92210 	bool kernel_tracking;
92211 	int dmax;
92212 	int dribble;
92213 	int palm_detect;
92214 };
92215 
92216 struct rmi_gpio_data {
92217 	bool buttonpad;
92218 	bool trackstick_buttons;
92219 	bool disable;
92220 };
92221 
92222 enum rmi_reg_state {
92223 	RMI_REG_STATE_DEFAULT = 0,
92224 	RMI_REG_STATE_OFF = 1,
92225 	RMI_REG_STATE_ON = 2,
92226 };
92227 
92228 struct rmi_f01_power_management {
92229 	enum rmi_reg_state nosleep;
92230 	u8 wakeup_threshold;
92231 	u8 doze_holdoff;
92232 	u8 doze_interval;
92233 };
92234 
92235 struct rmi_device_platform_data_spi {
92236 	u32 block_delay_us;
92237 	u32 split_read_block_delay_us;
92238 	u32 read_delay_us;
92239 	u32 write_delay_us;
92240 	u32 split_read_byte_delay_us;
92241 	u32 pre_delay_us;
92242 	u32 post_delay_us;
92243 	u8 bits_per_word;
92244 	u16 mode;
92245 	void *cs_assert_data;
92246 	int (*cs_assert)(const void *, const bool);
92247 };
92248 
92249 struct rmi_device_platform_data {
92250 	int reset_delay_ms;
92251 	int irq;
92252 	struct rmi_device_platform_data_spi spi_data;
92253 	struct rmi_2d_sensor_platform_data sensor_pdata;
92254 	struct rmi_f01_power_management power_management;
92255 	struct rmi_gpio_data gpio_data;
92256 };
92257 
92258 enum synaptics_pkt_type {
92259 	SYN_NEWABS = 0,
92260 	SYN_NEWABS_STRICT = 1,
92261 	SYN_NEWABS_RELAXED = 2,
92262 	SYN_OLDABS = 3,
92263 };
92264 
92265 struct synaptics_hw_state {
92266 	int x;
92267 	int y;
92268 	int z;
92269 	int w;
92270 	unsigned int left: 1;
92271 	unsigned int right: 1;
92272 	unsigned int middle: 1;
92273 	unsigned int up: 1;
92274 	unsigned int down: 1;
92275 	u8 ext_buttons;
92276 	s8 scroll;
92277 };
92278 
92279 struct synaptics_device_info {
92280 	u32 model_id;
92281 	u32 firmware_id;
92282 	u32 board_id;
92283 	u32 capabilities;
92284 	u32 ext_cap;
92285 	u32 ext_cap_0c;
92286 	u32 ext_cap_10;
92287 	u32 identity;
92288 	u32 x_res;
92289 	u32 y_res;
92290 	u32 x_max;
92291 	u32 y_max;
92292 	u32 x_min;
92293 	u32 y_min;
92294 };
92295 
92296 struct synaptics_data {
92297 	struct synaptics_device_info info;
92298 	enum synaptics_pkt_type pkt_type;
92299 	u8 mode;
92300 	int scroll;
92301 	bool absolute_mode;
92302 	bool disable_gesture;
92303 	struct serio *pt_port;
92304 	struct synaptics_hw_state agm;
92305 	unsigned int agm_count;
92306 	long unsigned int press_start;
92307 	bool press;
92308 	bool report_press;
92309 	bool is_forcepad;
92310 };
92311 
92312 struct min_max_quirk {
92313 	const char * const *pnp_ids;
92314 	struct {
92315 		u32 min;
92316 		u32 max;
92317 	} board_id;
92318 	u32 x_min;
92319 	u32 x_max;
92320 	u32 y_min;
92321 	u32 y_max;
92322 };
92323 
92324 enum {
92325 	SYNAPTICS_INTERTOUCH_NOT_SET = -1,
92326 	SYNAPTICS_INTERTOUCH_OFF = 0,
92327 	SYNAPTICS_INTERTOUCH_ON = 1,
92328 };
92329 
92330 struct md_cluster_operations {
92331 	int (*join)(struct mddev *, int);
92332 	int (*leave)(struct mddev *);
92333 	int (*slot_number)(struct mddev *);
92334 	int (*resync_info_update)(struct mddev *, sector_t, sector_t);
92335 	void (*resync_info_get)(struct mddev *, sector_t *, sector_t *);
92336 	int (*metadata_update_start)(struct mddev *);
92337 	int (*metadata_update_finish)(struct mddev *);
92338 	void (*metadata_update_cancel)(struct mddev *);
92339 	int (*resync_start)(struct mddev *);
92340 	int (*resync_finish)(struct mddev *);
92341 	int (*area_resyncing)(struct mddev *, int, sector_t, sector_t);
92342 	int (*add_new_disk)(struct mddev *, struct md_rdev *);
92343 	void (*add_new_disk_cancel)(struct mddev *);
92344 	int (*new_disk_ack)(struct mddev *, bool);
92345 	int (*remove_disk)(struct mddev *, struct md_rdev *);
92346 	void (*load_bitmaps)(struct mddev *, int);
92347 	int (*gather_bitmaps)(struct md_rdev *);
92348 	int (*resize_bitmaps)(struct mddev *, sector_t, sector_t);
92349 	int (*lock_all_bitmaps)(struct mddev *);
92350 	void (*unlock_all_bitmaps)(struct mddev *);
92351 	void (*update_size)(struct mddev *, sector_t);
92352 };
92353 
92354 enum flag_bits {
92355 	Faulty = 0,
92356 	In_sync = 1,
92357 	Bitmap_sync = 2,
92358 	WriteMostly = 3,
92359 	AutoDetected = 4,
92360 	Blocked = 5,
92361 	WriteErrorSeen = 6,
92362 	FaultRecorded = 7,
92363 	BlockedBadBlocks = 8,
92364 	WantReplacement = 9,
92365 	Replacement = 10,
92366 	Candidate = 11,
92367 	Journal = 12,
92368 	ClusterRemove = 13,
92369 	RemoveSynchronized = 14,
92370 	ExternalBbl = 15,
92371 	FailFast = 16,
92372 	LastDev = 17,
92373 	CollisionCheck = 18,
92374 };
92375 
92376 enum mddev_sb_flags {
92377 	MD_SB_CHANGE_DEVS = 0,
92378 	MD_SB_CHANGE_CLEAN = 1,
92379 	MD_SB_CHANGE_PENDING = 2,
92380 	MD_SB_NEED_REWRITE = 3,
92381 };
92382 
92383 struct bitmap_page;
92384 
92385 struct bitmap_counts {
92386 	spinlock_t lock;
92387 	struct bitmap_page *bp;
92388 	long unsigned int pages;
92389 	long unsigned int missing_pages;
92390 	long unsigned int chunkshift;
92391 	long unsigned int chunks;
92392 };
92393 
92394 struct bitmap_storage {
92395 	struct file *file;
92396 	struct page *sb_page;
92397 	struct page **filemap;
92398 	long unsigned int *filemap_attr;
92399 	long unsigned int file_pages;
92400 	long unsigned int bytes;
92401 };
92402 
92403 struct bitmap {
92404 	struct bitmap_counts counts;
92405 	struct mddev *mddev;
92406 	__u64 events_cleared;
92407 	int need_sync;
92408 	struct bitmap_storage storage;
92409 	long unsigned int flags;
92410 	int allclean;
92411 	atomic_t behind_writes;
92412 	long unsigned int behind_writes_used;
92413 	long unsigned int daemon_lastrun;
92414 	long unsigned int last_end_sync;
92415 	atomic_t pending_writes;
92416 	wait_queue_head_t write_wait;
92417 	wait_queue_head_t overflow_wait;
92418 	wait_queue_head_t behind_wait;
92419 	struct kernfs_node *sysfs_can_clear;
92420 	int cluster_slot;
92421 };
92422 
92423 enum recovery_flags {
92424 	MD_RECOVERY_RUNNING = 0,
92425 	MD_RECOVERY_SYNC = 1,
92426 	MD_RECOVERY_RECOVER = 2,
92427 	MD_RECOVERY_INTR = 3,
92428 	MD_RECOVERY_DONE = 4,
92429 	MD_RECOVERY_NEEDED = 5,
92430 	MD_RECOVERY_REQUESTED = 6,
92431 	MD_RECOVERY_CHECK = 7,
92432 	MD_RECOVERY_RESHAPE = 8,
92433 	MD_RECOVERY_FROZEN = 9,
92434 	MD_RECOVERY_ERROR = 10,
92435 	MD_RECOVERY_WAIT = 11,
92436 	MD_RESYNCING_REMOTE = 12,
92437 };
92438 
92439 struct md_sysfs_entry {
92440 	struct attribute attr;
92441 	ssize_t (*show)(struct mddev *, char *);
92442 	ssize_t (*store)(struct mddev *, const char *, size_t);
92443 };
92444 
92445 typedef __u16 bitmap_counter_t;
92446 
92447 enum bitmap_state {
92448 	BITMAP_STALE = 1,
92449 	BITMAP_WRITE_ERROR = 2,
92450 	BITMAP_HOSTENDIAN = 15,
92451 };
92452 
92453 struct bitmap_super_s {
92454 	__le32 magic;
92455 	__le32 version;
92456 	__u8 uuid[16];
92457 	__le64 events;
92458 	__le64 events_cleared;
92459 	__le64 sync_size;
92460 	__le32 state;
92461 	__le32 chunksize;
92462 	__le32 daemon_sleep;
92463 	__le32 write_behind;
92464 	__le32 sectors_reserved;
92465 	__le32 nodes;
92466 	__u8 cluster_name[64];
92467 	__u8 pad[120];
92468 };
92469 
92470 typedef struct bitmap_super_s bitmap_super_t;
92471 
92472 struct bitmap_page {
92473 	char *map;
92474 	unsigned int hijacked: 1;
92475 	unsigned int pending: 1;
92476 	unsigned int count: 30;
92477 };
92478 
92479 enum bitmap_page_attr {
92480 	BITMAP_PAGE_DIRTY = 0,
92481 	BITMAP_PAGE_PENDING = 1,
92482 	BITMAP_PAGE_NEEDWRITE = 2,
92483 };
92484 
92485 struct cgroup_subsys_state;
92486 
92487 struct dev_ch_attribute {
92488 	struct device_attribute attr;
92489 	unsigned int channel;
92490 };
92491 
92492 struct pnv_idle_states_t {
92493 	char name[16];
92494 	u32 latency_ns;
92495 	u32 residency_ns;
92496 	u64 psscr_val;
92497 	u64 psscr_mask;
92498 	u32 flags;
92499 	bool valid;
92500 };
92501 
92502 enum idle_boot_override {
92503 	IDLE_NO_OVERRIDE = 0,
92504 	IDLE_POWERSAVE_OFF = 1,
92505 };
92506 
92507 struct stop_psscr_table {
92508 	u64 val;
92509 	u64 mask;
92510 };
92511 
92512 struct amba_cs_uci_id {
92513 	unsigned int devarch;
92514 	unsigned int devarch_mask;
92515 	unsigned int devtype;
92516 	void *data;
92517 };
92518 
92519 struct amba_device {
92520 	struct device dev;
92521 	struct resource res;
92522 	struct clk *pclk;
92523 	struct device_dma_parameters dma_parms;
92524 	unsigned int periphid;
92525 	struct mutex periphid_lock;
92526 	unsigned int cid;
92527 	struct amba_cs_uci_id uci;
92528 	unsigned int irq[9];
92529 	const char *driver_override;
92530 };
92531 
92532 enum of_reconfig_change {
92533 	OF_RECONFIG_NO_CHANGE = 0,
92534 	OF_RECONFIG_CHANGE_ADD = 1,
92535 	OF_RECONFIG_CHANGE_REMOVE = 2,
92536 };
92537 
92538 struct cmsghdr {
92539 	__kernel_size_t cmsg_len;
92540 	int cmsg_level;
92541 	int cmsg_type;
92542 };
92543 
92544 struct scm_timestamping {
92545 	struct __kernel_old_timespec ts[3];
92546 };
92547 
92548 struct scm_timestamping64 {
92549 	struct __kernel_timespec ts[3];
92550 };
92551 
92552 enum {
92553 	IF_OPER_UNKNOWN = 0,
92554 	IF_OPER_NOTPRESENT = 1,
92555 	IF_OPER_DOWN = 2,
92556 	IF_OPER_LOWERLAYERDOWN = 3,
92557 	IF_OPER_TESTING = 4,
92558 	IF_OPER_DORMANT = 5,
92559 	IF_OPER_UP = 6,
92560 };
92561 
92562 enum {
92563 	IF_LINK_MODE_DEFAULT = 0,
92564 	IF_LINK_MODE_DORMANT = 1,
92565 	IF_LINK_MODE_TESTING = 2,
92566 };
92567 
92568 enum lw_bits {
92569 	LW_URGENT = 0,
92570 };
92571 
92572 struct inet6_ifaddr {
92573 	struct in6_addr addr;
92574 	__u32 prefix_len;
92575 	__u32 rt_priority;
92576 	__u32 valid_lft;
92577 	__u32 prefered_lft;
92578 	refcount_t refcnt;
92579 	spinlock_t lock;
92580 	int state;
92581 	__u32 flags;
92582 	__u8 dad_probes;
92583 	__u8 stable_privacy_retry;
92584 	__u16 scope;
92585 	__u64 dad_nonce;
92586 	long unsigned int cstamp;
92587 	long unsigned int tstamp;
92588 	struct delayed_work dad_work;
92589 	struct inet6_dev *idev;
92590 	struct fib6_info *rt;
92591 	struct hlist_node addr_lst;
92592 	struct list_head if_list;
92593 	struct list_head if_list_aux;
92594 	struct list_head tmp_list;
92595 	struct inet6_ifaddr *ifpub;
92596 	int regen_count;
92597 	bool tokenized;
92598 	u8 ifa_proto;
92599 	struct callback_head rcu;
92600 	struct in6_addr peer_addr;
92601 };
92602 
92603 enum net_xmit_qdisc_t {
92604 	__NET_XMIT_STOLEN = 65536,
92605 	__NET_XMIT_BYPASS = 131072,
92606 };
92607 
92608 enum {
92609 	ETHTOOL_UDP_TUNNEL_TYPE_VXLAN = 0,
92610 	ETHTOOL_UDP_TUNNEL_TYPE_GENEVE = 1,
92611 	ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE = 2,
92612 	__ETHTOOL_UDP_TUNNEL_TYPE_CNT = 3,
92613 };
92614 
92615 enum hwtstamp_tx_types {
92616 	HWTSTAMP_TX_OFF = 0,
92617 	HWTSTAMP_TX_ON = 1,
92618 	HWTSTAMP_TX_ONESTEP_SYNC = 2,
92619 	HWTSTAMP_TX_ONESTEP_P2P = 3,
92620 	__HWTSTAMP_TX_CNT = 4,
92621 };
92622 
92623 enum hwtstamp_rx_filters {
92624 	HWTSTAMP_FILTER_NONE = 0,
92625 	HWTSTAMP_FILTER_ALL = 1,
92626 	HWTSTAMP_FILTER_SOME = 2,
92627 	HWTSTAMP_FILTER_PTP_V1_L4_EVENT = 3,
92628 	HWTSTAMP_FILTER_PTP_V1_L4_SYNC = 4,
92629 	HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ = 5,
92630 	HWTSTAMP_FILTER_PTP_V2_L4_EVENT = 6,
92631 	HWTSTAMP_FILTER_PTP_V2_L4_SYNC = 7,
92632 	HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ = 8,
92633 	HWTSTAMP_FILTER_PTP_V2_L2_EVENT = 9,
92634 	HWTSTAMP_FILTER_PTP_V2_L2_SYNC = 10,
92635 	HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ = 11,
92636 	HWTSTAMP_FILTER_PTP_V2_EVENT = 12,
92637 	HWTSTAMP_FILTER_PTP_V2_SYNC = 13,
92638 	HWTSTAMP_FILTER_PTP_V2_DELAY_REQ = 14,
92639 	HWTSTAMP_FILTER_NTP_ALL = 15,
92640 	__HWTSTAMP_FILTER_CNT = 16,
92641 };
92642 
92643 struct link_mode_info {
92644 	int speed;
92645 	u8 lanes;
92646 	u8 duplex;
92647 };
92648 
92649 struct privflags_reply_data {
92650 	struct ethnl_reply_data base;
92651 	const char (*priv_flag_names)[32];
92652 	unsigned int n_priv_flags;
92653 	u32 priv_flags;
92654 };
92655 
92656 struct nf_queue_handler {
92657 	int (*outfn)(struct nf_queue_entry *, unsigned int);
92658 	void (*nf_hook_drop)(struct net *);
92659 };
92660 
92661 enum {
92662 	TCP_FLAG_CWR = 32768,
92663 	TCP_FLAG_ECE = 16384,
92664 	TCP_FLAG_URG = 8192,
92665 	TCP_FLAG_ACK = 4096,
92666 	TCP_FLAG_PSH = 2048,
92667 	TCP_FLAG_RST = 1024,
92668 	TCP_FLAG_SYN = 512,
92669 	TCP_FLAG_FIN = 256,
92670 	TCP_RESERVED_BITS = 15,
92671 	TCP_DATA_OFFSET = 240,
92672 };
92673 
92674 enum tcp_tw_status {
92675 	TCP_TW_SUCCESS = 0,
92676 	TCP_TW_RST = 1,
92677 	TCP_TW_ACK = 2,
92678 	TCP_TW_SYN = 3,
92679 };
92680 
92681 enum {
92682 	INET_FRAG_FIRST_IN = 1,
92683 	INET_FRAG_LAST_IN = 2,
92684 	INET_FRAG_COMPLETE = 4,
92685 	INET_FRAG_HASH_DEAD = 8,
92686 };
92687 
92688 struct ipfrag_skb_cb {
92689 	union {
92690 		struct inet_skb_parm h4;
92691 		struct inet6_skb_parm h6;
92692 	};
92693 	struct sk_buff *next_frag;
92694 	int frag_run_len;
92695 };
92696 
92697 struct ip_beet_phdr {
92698 	__u8 nexthdr;
92699 	__u8 hdrlen;
92700 	__u8 padlen;
92701 	__u8 reserved;
92702 };
92703 
92704 enum {
92705 	XFRM_MODE_FLAG_TUNNEL = 1,
92706 };
92707 
92708 enum {
92709 	XFRM_STATE_VOID = 0,
92710 	XFRM_STATE_ACQ = 1,
92711 	XFRM_STATE_VALID = 2,
92712 	XFRM_STATE_ERROR = 3,
92713 	XFRM_STATE_EXPIRED = 4,
92714 	XFRM_STATE_DEAD = 5,
92715 };
92716 
92717 struct xfrm_state_afinfo {
92718 	u8 family;
92719 	u8 proto;
92720 	const struct xfrm_type_offload *type_offload_esp;
92721 	const struct xfrm_type *type_esp;
92722 	const struct xfrm_type *type_ipip;
92723 	const struct xfrm_type *type_ipip6;
92724 	const struct xfrm_type *type_comp;
92725 	const struct xfrm_type *type_ah;
92726 	const struct xfrm_type *type_routing;
92727 	const struct xfrm_type *type_dstopts;
92728 	int (*output)(struct net *, struct sock *, struct sk_buff *);
92729 	int (*transport_finish)(struct sk_buff *, int);
92730 	void (*local_error)(struct sk_buff *, u32);
92731 };
92732 
92733 struct ip_tunnel;
92734 
92735 struct ip6_tnl;
92736 
92737 struct xfrm_tunnel_skb_cb {
92738 	union {
92739 		struct inet_skb_parm h4;
92740 		struct inet6_skb_parm h6;
92741 	} header;
92742 	union {
92743 		struct ip_tunnel *ip4;
92744 		struct ip6_tnl *ip6;
92745 	} tunnel;
92746 };
92747 
92748 struct xfrm_mode_skb_cb {
92749 	struct xfrm_tunnel_skb_cb header;
92750 	__be16 id;
92751 	__be16 frag_off;
92752 	u8 ihl;
92753 	u8 tos;
92754 	u8 ttl;
92755 	u8 protocol;
92756 	u8 optlen;
92757 	u8 flow_lbl[3];
92758 };
92759 
92760 enum ip_conntrack_status {
92761 	IPS_EXPECTED_BIT = 0,
92762 	IPS_EXPECTED = 1,
92763 	IPS_SEEN_REPLY_BIT = 1,
92764 	IPS_SEEN_REPLY = 2,
92765 	IPS_ASSURED_BIT = 2,
92766 	IPS_ASSURED = 4,
92767 	IPS_CONFIRMED_BIT = 3,
92768 	IPS_CONFIRMED = 8,
92769 	IPS_SRC_NAT_BIT = 4,
92770 	IPS_SRC_NAT = 16,
92771 	IPS_DST_NAT_BIT = 5,
92772 	IPS_DST_NAT = 32,
92773 	IPS_NAT_MASK = 48,
92774 	IPS_SEQ_ADJUST_BIT = 6,
92775 	IPS_SEQ_ADJUST = 64,
92776 	IPS_SRC_NAT_DONE_BIT = 7,
92777 	IPS_SRC_NAT_DONE = 128,
92778 	IPS_DST_NAT_DONE_BIT = 8,
92779 	IPS_DST_NAT_DONE = 256,
92780 	IPS_NAT_DONE_MASK = 384,
92781 	IPS_DYING_BIT = 9,
92782 	IPS_DYING = 512,
92783 	IPS_FIXED_TIMEOUT_BIT = 10,
92784 	IPS_FIXED_TIMEOUT = 1024,
92785 	IPS_TEMPLATE_BIT = 11,
92786 	IPS_TEMPLATE = 2048,
92787 	IPS_UNTRACKED_BIT = 12,
92788 	IPS_UNTRACKED = 4096,
92789 	IPS_NAT_CLASH_BIT = 12,
92790 	IPS_NAT_CLASH = 4096,
92791 	IPS_HELPER_BIT = 13,
92792 	IPS_HELPER = 8192,
92793 	IPS_OFFLOAD_BIT = 14,
92794 	IPS_OFFLOAD = 16384,
92795 	IPS_HW_OFFLOAD_BIT = 15,
92796 	IPS_HW_OFFLOAD = 32768,
92797 	IPS_UNCHANGEABLE_MASK = 56313,
92798 	__IPS_MAX_BIT = 16,
92799 };
92800 
92801 typedef __s64 Elf64_Sxword;
92802 
92803 struct elf64_rela {
92804 	Elf64_Addr r_offset;
92805 	Elf64_Xword r_info;
92806 	Elf64_Sxword r_addend;
92807 };
92808 
92809 typedef struct elf64_rela Elf64_Rela;
92810 
92811 struct modversion_info {
92812 	long unsigned int crc;
92813 	char name[56];
92814 };
92815 
92816 typedef struct {
92817 	long unsigned int addr;
92818 } func_desc_t;
92819 
92820 struct ppc64_stub_entry {
92821 	u32 jump[7];
92822 	u32 magic;
92823 	func_desc_t funcdata;
92824 };
92825 
92826 struct memcons;
92827 
92828 struct nvram_os_partition {
92829 	const char *name;
92830 	int req_size;
92831 	int min_size;
92832 	long int size;
92833 	long int index;
92834 	bool os_partition;
92835 };
92836 
92837 struct vas_caps_entry {
92838 	struct kobject kobj;
92839 	struct vas_cop_feat_caps *caps;
92840 };
92841 
92842 struct vas_sysfs_entry {
92843 	struct attribute attr;
92844 	ssize_t (*show)(struct vas_cop_feat_caps *, char *);
92845 	ssize_t (*store)(struct vas_cop_feat_caps *, const char *, size_t);
92846 };
92847 
92848 struct p9_host_os_sprs {
92849 	long unsigned int iamr;
92850 	long unsigned int amr;
92851 	unsigned int pmc1;
92852 	unsigned int pmc2;
92853 	unsigned int pmc3;
92854 	unsigned int pmc4;
92855 	unsigned int pmc5;
92856 	unsigned int pmc6;
92857 	long unsigned int mmcr0;
92858 	long unsigned int mmcr1;
92859 	long unsigned int mmcr2;
92860 	long unsigned int mmcr3;
92861 	long unsigned int mmcra;
92862 	long unsigned int siar;
92863 	long unsigned int sier1;
92864 	long unsigned int sier2;
92865 	long unsigned int sier3;
92866 	long unsigned int sdar;
92867 };
92868 
92869 enum {
92870 	PM_IC_DEMAND_L2_BR_ALL = 18584,
92871 	PM_GCT_UTIL_7_TO_10_SLOTS = 8352,
92872 	PM_PMC2_SAVED = 65570,
92873 	PM_CMPLU_STALL_DFU = 131132,
92874 	PM_VSU0_16FLOP = 41124,
92875 	PM_MRK_LSU_DERAT_MISS = 249946,
92876 	PM_MRK_ST_CMPL___2 = 65588,
92877 	PM_NEST_PAIR3_ADD = 264321,
92878 	PM_L2_ST_DISP = 287104,
92879 	PM_L2_CASTOUT_MOD = 90496,
92880 	PM_ISEG = 8356,
92881 	PM_MRK_INST_TIMEO = 262196,
92882 	PM_L2_RCST_DISP_FAIL_ADDR = 221826,
92883 	PM_LSU1_DC_PREF_STREAM_CONFIRM = 53430,
92884 	PM_IERAT_WR_64K = 16574,
92885 	PM_MRK_DTLB_MISS_16M___2 = 315486,
92886 	PM_IERAT_MISS = 65782,
92887 	PM_MRK_PTEG_FROM_LMEM = 315474,
92888 	PM_FLOP = 65780,
92889 	PM_THRD_PRIO_4_5_CYC = 16564,
92890 	PM_BR_PRED_TA = 16554,
92891 	PM_CMPLU_STALL_FXU = 131092,
92892 	PM_EXT_INT = 131320,
92893 	PM_VSU_FSQRT_FDIV = 43144,
92894 	PM_MRK_LD_MISS_EXPOSED_CYC = 65598,
92895 	PM_LSU1_LDF = 49286,
92896 	PM_IC_WRITE_ALL = 18572,
92897 	PM_LSU0_SRQ_STFWD = 49312,
92898 	PM_PTEG_FROM_RL2L3_MOD = 114770,
92899 	PM_MRK_DATA_FROM_L31_SHR = 118862,
92900 	PM_DATA_FROM_L21_MOD = 245830,
92901 	PM_VSU1_SCAL_DOUBLE_ISSUED = 45194,
92902 	PM_VSU0_8FLOP = 41120,
92903 	PM_POWER_EVENT1 = 65646,
92904 	PM_DISP_CLB_HELD_BAL = 8338,
92905 	PM_VSU1_2FLOP = 41114,
92906 	PM_LWSYNC_HELD = 8346,
92907 	PM_PTEG_FROM_DL2L3_SHR = 245844,
92908 	PM_INST_FROM_L21_MOD = 213062,
92909 	PM_IERAT_XLATE_WR_16MPLUS = 16572,
92910 	PM_IC_REQ_ALL = 18568,
92911 	PM_DSLB_MISS = 53392,
92912 	PM_L3_MISS = 127106,
92913 	PM_LSU0_L1_PREF = 53432,
92914 	PM_VSU_SCALAR_SINGLE_ISSUED = 47236,
92915 	PM_LSU1_DC_PREF_STREAM_CONFIRM_STRIDE = 53438,
92916 	PM_L2_INST = 221312,
92917 	PM_VSU0_FRSP = 41140,
92918 	PM_FLUSH_DISP = 8322,
92919 	PM_PTEG_FROM_L2MISS = 311384,
92920 	PM_VSU1_DQ_ISSUED = 45210,
92921 	PM_CMPLU_STALL_LSU = 131090,
92922 	PM_MRK_DATA_FROM_DMEM = 118858,
92923 	PM_LSU_FLUSH_ULD = 51376,
92924 	PM_PTEG_FROM_LMEM = 311378,
92925 	PM_MRK_DERAT_MISS_16M = 249948,
92926 	PM_THRD_ALL_RUN_CYC = 131084,
92927 	PM_MEM0_PREFETCH_DISP = 131203,
92928 	PM_MRK_STALL_CMPLU_CYC_COUNT = 196671,
92929 	PM_DATA_FROM_DL2L3_MOD = 245836,
92930 	PM_VSU_FRSP = 43188,
92931 	PM_MRK_DATA_FROM_L21_MOD = 249926,
92932 	PM_PMC1_OVERFLOW = 131088,
92933 	PM_VSU0_SINGLE = 41128,
92934 	PM_MRK_PTEG_FROM_L3MISS = 184408,
92935 	PM_MRK_PTEG_FROM_L31_SHR = 184406,
92936 	PM_VSU0_VECTOR_SP_ISSUED = 45200,
92937 	PM_VSU1_FEST = 41146,
92938 	PM_MRK_INST_DISP = 131120,
92939 	PM_VSU0_COMPLEX_ISSUED = 45206,
92940 	PM_LSU1_FLUSH_UST = 49334,
92941 	PM_INST_CMPL___4 = 2,
92942 	PM_FXU_IDLE = 65550,
92943 	PM_LSU0_FLUSH_ULD = 49328,
92944 	PM_MRK_DATA_FROM_DL2L3_MOD = 249932,
92945 	PM_LSU_LMQ_SRQ_EMPTY_ALL_CYC = 196636,
92946 	PM_LSU1_REJECT_LMQ_FULL = 49318,
92947 	PM_INST_PTEG_FROM_L21_MOD = 254038,
92948 	PM_INST_FROM_RL2L3_MOD = 81986,
92949 	PM_SHL_CREATED = 20610,
92950 	PM_L2_ST_HIT = 287106,
92951 	PM_DATA_FROM_DMEM = 114762,
92952 	PM_L3_LD_MISS = 192642,
92953 	PM_FXU1_BUSY_FXU0_IDLE = 262158,
92954 	PM_DISP_CLB_HELD_RES = 8340,
92955 	PM_L2_SN_SX_I_DONE = 222082,
92956 	PM_GRP_CMPL = 196612,
92957 	PM_STCX_CMPL = 49304,
92958 	PM_VSU0_2FLOP = 41112,
92959 	PM_L3_PREF_MISS = 258178,
92960 	PM_LSU_SRQ_SYNC_CYC = 53398,
92961 	PM_LSU_REJECT_ERAT_MISS = 131172,
92962 	PM_L1_ICACHE_MISS___4 = 131324,
92963 	PM_LSU1_FLUSH_SRQ = 49342,
92964 	PM_LD_REF_L1_LSU0 = 49280,
92965 	PM_VSU0_FEST = 41144,
92966 	PM_VSU_VECTOR_SINGLE_ISSUED = 47248,
92967 	PM_FREQ_UP = 262156,
92968 	PM_DATA_FROM_LMEM = 245834,
92969 	PM_LSU1_LDX = 49290,
92970 	PM_PMC3_OVERFLOW = 262160,
92971 	PM_MRK_BR_MPRED = 196662,
92972 	PM_SHL_MATCH = 20614,
92973 	PM_MRK_BR_TAKEN = 65590,
92974 	PM_CMPLU_STALL_BRU = 262222,
92975 	PM_ISLB_MISS = 53394,
92976 	PM_CYC___4 = 30,
92977 	PM_DISP_HELD_THERMAL = 196614,
92978 	PM_INST_PTEG_FROM_RL2L3_SHR = 188500,
92979 	PM_LSU1_SRQ_STFWD = 49314,
92980 	PM_GCT_NOSLOT_BR_MPRED = 262170,
92981 	PM_1PLUS_PPC_CMPL = 65778,
92982 	PM_PTEG_FROM_DMEM = 180306,
92983 	PM_VSU_2FLOP = 43160,
92984 	PM_GCT_FULL_CYC = 16518,
92985 	PM_MRK_DATA_FROM_L3_CYC = 262176,
92986 	PM_LSU_SRQ_S0_ALLOC = 53405,
92987 	PM_MRK_DERAT_MISS_4K = 118876,
92988 	PM_BR_MPRED_TA = 16558,
92989 	PM_INST_PTEG_FROM_L2MISS = 319576,
92990 	PM_DPU_HELD_POWER = 131078,
92991 	PM_RUN_INST_CMPL___4 = 262394,
92992 	PM_MRK_VSU_FIN = 196658,
92993 	PM_LSU_SRQ_S0_VALID = 53404,
92994 	PM_GCT_EMPTY_CYC = 131080,
92995 	PM_IOPS_DISP = 196628,
92996 	PM_RUN_SPURR = 65544,
92997 	PM_PTEG_FROM_L21_MOD = 245846,
92998 	PM_VSU0_1FLOP = 41088,
92999 	PM_SNOOP_TLBIE = 53426,
93000 	PM_DATA_FROM_L3MISS___4 = 180296,
93001 	PM_VSU_SINGLE = 43176,
93002 	PM_DTLB_MISS_16G___2 = 114782,
93003 	PM_CMPLU_STALL_VECTOR = 131100,
93004 	PM_FLUSH = 262392,
93005 	PM_L2_LD_HIT = 221570,
93006 	PM_NEST_PAIR2_AND = 198787,
93007 	PM_VSU1_1FLOP = 41090,
93008 	PM_IC_PREF_REQ = 16522,
93009 	PM_L3_LD_HIT = 192640,
93010 	PM_GCT_NOSLOT_IC_MISS = 131098,
93011 	PM_DISP_HELD = 65542,
93012 	PM_L2_LD = 90240,
93013 	PM_LSU_FLUSH_SRQ = 51388,
93014 	PM_BC_PLUS_8_CONV = 16568,
93015 	PM_MRK_DATA_FROM_L31_MOD_CYC = 262182,
93016 	PM_CMPLU_STALL_VECTOR_LONG = 262218,
93017 	PM_L2_RCST_BUSY_RC_FULL = 156290,
93018 	PM_TB_BIT_TRANS = 196856,
93019 	PM_THERMAL_MAX = 262150,
93020 	PM_LSU1_FLUSH_ULD = 49330,
93021 	PM_LSU1_REJECT_LHS = 49326,
93022 	PM_LSU_LRQ_S0_ALLOC = 53407,
93023 	PM_L3_CO_L31 = 323712,
93024 	PM_POWER_EVENT4 = 262254,
93025 	PM_DATA_FROM_L31_SHR = 114766,
93026 	PM_BR_UNCOND = 16542,
93027 	PM_LSU1_DC_PREF_STREAM_ALLOC = 53418,
93028 	PM_PMC4_REWIND = 65568,
93029 	PM_L2_RCLD_DISP = 90752,
93030 	PM_THRD_PRIO_2_3_CYC = 16562,
93031 	PM_MRK_PTEG_FROM_L2MISS = 315480,
93032 	PM_IC_DEMAND_L2_BHT_REDIRECT = 16536,
93033 	PM_LSU_DERAT_MISS = 131318,
93034 	PM_IC_PREF_CANCEL_L2 = 16532,
93035 	PM_MRK_FIN_STALL_CYC_COUNT = 65597,
93036 	PM_BR_PRED_CCACHE = 16544,
93037 	PM_GCT_UTIL_1_TO_2_SLOTS = 8348,
93038 	PM_MRK_ST_CMPL_INT = 196660,
93039 	PM_LSU_TWO_TABLEWALK_CYC = 53414,
93040 	PM_MRK_DATA_FROM_L3MISS = 184392,
93041 	PM_GCT_NOSLOT_CYC___2 = 65784,
93042 	PM_LSU_SET_MPRED = 49320,
93043 	PM_FLUSH_DISP_TLBIE = 8330,
93044 	PM_VSU1_FCONV = 41138,
93045 	PM_DERAT_MISS_16G = 311388,
93046 	PM_INST_FROM_LMEM = 213066,
93047 	PM_IC_DEMAND_L2_BR_REDIRECT = 16538,
93048 	PM_CMPLU_STALL_SCALAR_LONG = 131096,
93049 	PM_INST_PTEG_FROM_L2 = 122960,
93050 	PM_PTEG_FROM_L2 = 114768,
93051 	PM_MRK_DATA_FROM_L21_SHR_CYC = 131108,
93052 	PM_MRK_DTLB_MISS_4K___2 = 184410,
93053 	PM_VSU0_FPSCR = 45212,
93054 	PM_VSU1_VECT_DOUBLE_ISSUED = 45186,
93055 	PM_MRK_PTEG_FROM_RL2L3_MOD = 118866,
93056 	PM_MEM0_RQ_DISP = 65667,
93057 	PM_L2_LD_MISS = 155776,
93058 	PM_VMX_RESULT_SAT_1 = 45216,
93059 	PM_L1_PREF___3 = 55480,
93060 	PM_MRK_DATA_FROM_LMEM_CYC = 131116,
93061 	PM_GRP_IC_MISS_NONSPEC = 65548,
93062 	PM_PB_NODE_PUMP = 65665,
93063 	PM_SHL_MERGED = 20612,
93064 	PM_NEST_PAIR1_ADD = 133249,
93065 	PM_DATA_FROM_L3___3 = 114760,
93066 	PM_LSU_FLUSH = 8334,
93067 	PM_LSU_SRQ_SYNC_COUNT = 53399,
93068 	PM_PMC2_OVERFLOW = 196624,
93069 	PM_LSU_LDF = 51332,
93070 	PM_POWER_EVENT3 = 196718,
93071 	PM_DISP_WT = 196616,
93072 	PM_CMPLU_STALL_REJECT = 262166,
93073 	PM_IC_BANK_CONFLICT = 16514,
93074 	PM_BR_MPRED_CR_TA = 18606,
93075 	PM_L2_INST_MISS = 221314,
93076 	PM_CMPLU_STALL_ERAT_MISS = 262168,
93077 	PM_NEST_PAIR2_ADD = 198785,
93078 	PM_MRK_LSU_FLUSH = 53388,
93079 	PM_L2_LDST = 92288,
93080 	PM_INST_FROM_L31_SHR = 81998,
93081 	PM_VSU0_FIN = 41148,
93082 	PM_LARX_LSU = 51348,
93083 	PM_INST_FROM_RMEM = 213058,
93084 	PM_DISP_CLB_HELD_TLBIE = 8342,
93085 	PM_MRK_DATA_FROM_DMEM_CYC = 131118,
93086 	PM_BR_PRED_CR = 16552,
93087 	PM_LSU_REJECT = 65636,
93088 	PM_GCT_UTIL_3_TO_6_SLOTS = 8350,
93089 	PM_CMPLU_STALL_END_GCT_NOSLOT = 65576,
93090 	PM_LSU0_REJECT_LMQ_FULL = 49316,
93091 	PM_VSU_FEST = 43192,
93092 	PM_NEST_PAIR0_AND = 67715,
93093 	PM_PTEG_FROM_L3 = 180304,
93094 	PM_POWER_EVENT2 = 131182,
93095 	PM_IC_PREF_CANCEL_PAGE = 16528,
93096 	PM_VSU0_FSQRT_FDIV = 41096,
93097 	PM_MRK_GRP_CMPL = 262192,
93098 	PM_VSU0_SCAL_DOUBLE_ISSUED = 45192,
93099 	PM_GRP_DISP = 196618,
93100 	PM_LSU0_LDX = 49288,
93101 	PM_DATA_FROM_L2 = 114752,
93102 	PM_MRK_DATA_FROM_RL2L3_MOD = 118850,
93103 	PM_LD_REF_L1___3 = 51328,
93104 	PM_VSU0_VECT_DOUBLE_ISSUED = 45184,
93105 	PM_VSU1_2FLOP_DOUBLE = 41102,
93106 	PM_THRD_PRIO_6_7_CYC = 16566,
93107 	PM_BC_PLUS_8_RSLV_TAKEN = 16570,
93108 	PM_BR_MPRED_CR = 16556,
93109 	PM_L3_CO_MEM = 323714,
93110 	PM_LD_MISS_L1___4 = 262384,
93111 	PM_DATA_FROM_RL2L3_MOD = 114754,
93112 	PM_LSU_SRQ_FULL_CYC = 65562,
93113 	PM_TABLEWALK_CYC = 65574,
93114 	PM_MRK_PTEG_FROM_RMEM = 249938,
93115 	PM_LSU_SRQ_STFWD = 51360,
93116 	PM_INST_PTEG_FROM_RMEM = 254034,
93117 	PM_FXU0_FIN = 65540,
93118 	PM_LSU1_L1_SW_PREF = 49310,
93119 	PM_PTEG_FROM_L31_MOD = 114772,
93120 	PM_PMC5_OVERFLOW = 65572,
93121 	PM_LD_REF_L1_LSU1 = 49282,
93122 	PM_INST_PTEG_FROM_L21_SHR = 319574,
93123 	PM_CMPLU_STALL_THRD = 65564,
93124 	PM_DATA_FROM_RMEM = 245826,
93125 	PM_VSU0_SCAL_SINGLE_ISSUED = 45188,
93126 	PM_BR_MPRED_LSTACK = 16550,
93127 	PM_MRK_DATA_FROM_RL2L3_MOD_CYC = 262184,
93128 	PM_LSU0_FLUSH_UST = 49332,
93129 	PM_LSU_NCST = 49296,
93130 	PM_BR_TAKEN = 131076,
93131 	PM_INST_PTEG_FROM_LMEM = 319570,
93132 	PM_GCT_NOSLOT_BR_MPRED_IC_MISS = 262172,
93133 	PM_DTLB_MISS_4K___2 = 180314,
93134 	PM_PMC4_SAVED = 196642,
93135 	PM_VSU1_PERMUTE_ISSUED = 45202,
93136 	PM_SLB_MISS = 55440,
93137 	PM_LSU1_FLUSH_LRQ = 49338,
93138 	PM_DTLB_MISS___4 = 196860,
93139 	PM_VSU1_FRSP = 41142,
93140 	PM_VSU_VECTOR_DOUBLE_ISSUED = 47232,
93141 	PM_L2_CASTOUT_SHR = 90498,
93142 	PM_DATA_FROM_DL2L3_SHR = 245828,
93143 	PM_VSU1_STF = 45198,
93144 	PM_ST_FIN = 131312,
93145 	PM_PTEG_FROM_L21_SHR = 311382,
93146 	PM_L2_LOC_GUESS_WRONG = 156800,
93147 	PM_MRK_STCX_FAIL = 53390,
93148 	PM_LSU0_REJECT_LHS = 49324,
93149 	PM_IC_PREF_CANCEL_HIT = 16530,
93150 	PM_L3_PREF_BUSY = 323712,
93151 	PM_MRK_BRU_FIN = 131130,
93152 	PM_LSU1_NCLD = 49294,
93153 	PM_INST_PTEG_FROM_L31_MOD = 122964,
93154 	PM_LSU_NCLD = 51340,
93155 	PM_LSU_LDX = 51336,
93156 	PM_L2_LOC_GUESS_CORRECT = 91264,
93157 	PM_THRESH_TIMEO = 65592,
93158 	PM_L3_PREF_ST = 53422,
93159 	PM_DISP_CLB_HELD_SYNC = 8344,
93160 	PM_VSU_SIMPLE_ISSUED = 47252,
93161 	PM_VSU1_SINGLE = 41130,
93162 	PM_DATA_TABLEWALK_CYC = 196634,
93163 	PM_L2_RC_ST_DONE = 222080,
93164 	PM_MRK_PTEG_FROM_L21_MOD = 249942,
93165 	PM_LARX_LSU1 = 49302,
93166 	PM_MRK_DATA_FROM_RMEM = 249922,
93167 	PM_DISP_CLB_HELD = 8336,
93168 	PM_DERAT_MISS_4K = 114780,
93169 	PM_L2_RCLD_DISP_FAIL_ADDR = 90754,
93170 	PM_SEG_EXCEPTION = 10404,
93171 	PM_FLUSH_DISP_SB = 8332,
93172 	PM_L2_DC_INV = 156034,
93173 	PM_PTEG_FROM_DL2L3_MOD = 311380,
93174 	PM_DSEG = 8358,
93175 	PM_BR_PRED_LSTACK = 16546,
93176 	PM_VSU0_STF = 45196,
93177 	PM_LSU_FX_FIN = 65638,
93178 	PM_DERAT_MISS_16M = 245852,
93179 	PM_MRK_PTEG_FROM_DL2L3_MOD = 315476,
93180 	PM_GCT_UTIL_11_PLUS_SLOTS = 8354,
93181 	PM_INST_FROM_L3 = 81992,
93182 	PM_MRK_IFU_FIN = 196666,
93183 	PM_ITLB_MISS___4 = 262396,
93184 	PM_VSU_STF = 47244,
93185 	PM_LSU_FLUSH_UST = 51380,
93186 	PM_L2_LDST_MISS = 157824,
93187 	PM_FXU1_FIN = 262148,
93188 	PM_SHL_DEALLOCATED = 20608,
93189 	PM_L2_SN_M_WR_DONE = 287618,
93190 	PM_LSU_REJECT_SET_MPRED = 51368,
93191 	PM_L3_PREF_LD = 53420,
93192 	PM_L2_SN_M_RD_DONE = 287616,
93193 	PM_MRK_DERAT_MISS_16G = 315484,
93194 	PM_VSU_FCONV = 43184,
93195 	PM_ANY_THRD_RUN_CYC = 65786,
93196 	PM_LSU_LMQ_FULL_CYC = 53412,
93197 	PM_MRK_LSU_REJECT_LHS = 53378,
93198 	PM_MRK_LD_MISS_L1_CYC = 262206,
93199 	PM_MRK_DATA_FROM_L2_CYC = 131104,
93200 	PM_INST_IMC_MATCH_DISP = 196630,
93201 	PM_MRK_DATA_FROM_RMEM_CYC = 262188,
93202 	PM_VSU0_SIMPLE_ISSUED = 45204,
93203 	PM_CMPLU_STALL_DIV = 262164,
93204 	PM_MRK_PTEG_FROM_RL2L3_SHR = 184404,
93205 	PM_VSU_FMA_DOUBLE = 43152,
93206 	PM_VSU_4FLOP = 43164,
93207 	PM_VSU1_FIN = 41150,
93208 	PM_NEST_PAIR1_AND = 133251,
93209 	PM_INST_PTEG_FROM_RL2L3_MOD = 122962,
93210 	PM_RUN_CYC___4 = 131316,
93211 	PM_PTEG_FROM_RMEM = 245842,
93212 	PM_LSU_LRQ_S0_VALID = 53406,
93213 	PM_LSU0_LDF = 49284,
93214 	PM_FLUSH_COMPLETION = 196626,
93215 	PM_ST_MISS_L1___4 = 196848,
93216 	PM_L2_NODE_PUMP = 222336,
93217 	PM_INST_FROM_DL2L3_SHR = 213060,
93218 	PM_MRK_STALL_CMPLU_CYC = 196670,
93219 	PM_VSU1_DENORM = 41134,
93220 	PM_MRK_DATA_FROM_L31_SHR_CYC = 131110,
93221 	PM_NEST_PAIR0_ADD = 67713,
93222 	PM_INST_FROM_L3MISS = 147528,
93223 	PM_EE_OFF_EXT_INT = 8320,
93224 	PM_INST_PTEG_FROM_DMEM = 188498,
93225 	PM_INST_FROM_DL2L3_MOD = 213068,
93226 	PM_PMC6_OVERFLOW = 196644,
93227 	PM_VSU_2FLOP_DOUBLE = 43148,
93228 	PM_TLB_MISS = 131174,
93229 	PM_FXU_BUSY = 131086,
93230 	PM_L2_RCLD_DISP_FAIL_OTHER = 156288,
93231 	PM_LSU_REJECT_LMQ_FULL = 51364,
93232 	PM_IC_RELOAD_SHR = 16534,
93233 	PM_GRP_MRK = 65585,
93234 	PM_MRK_ST_NEST = 131124,
93235 	PM_VSU1_FSQRT_FDIV = 41098,
93236 	PM_LSU0_FLUSH_LRQ = 49336,
93237 	PM_LARX_LSU0 = 49300,
93238 	PM_IBUF_FULL_CYC = 16516,
93239 	PM_MRK_DATA_FROM_DL2L3_SHR_CYC = 131114,
93240 	PM_LSU_DC_PREF_STREAM_ALLOC = 55464,
93241 	PM_GRP_MRK_CYC = 65584,
93242 	PM_MRK_DATA_FROM_RL2L3_SHR_CYC = 131112,
93243 	PM_L2_GLOB_GUESS_CORRECT = 91266,
93244 	PM_LSU_REJECT_LHS = 51372,
93245 	PM_MRK_DATA_FROM_LMEM = 249930,
93246 	PM_INST_PTEG_FROM_L3 = 188496,
93247 	PM_FREQ_DOWN = 196620,
93248 	PM_PB_RETRY_NODE_PUMP = 196737,
93249 	PM_INST_FROM_RL2L3_SHR = 81996,
93250 	PM_MRK_INST_ISSUED = 65586,
93251 	PM_PTEG_FROM_L3MISS = 180312,
93252 	PM_RUN_PURR = 262388,
93253 	PM_MRK_GRP_IC_MISS = 262200,
93254 	PM_MRK_DATA_FROM_L3 = 118856,
93255 	PM_CMPLU_STALL_DCACHE_MISS = 131094,
93256 	PM_PTEG_FROM_RL2L3_SHR = 180308,
93257 	PM_LSU_FLUSH_LRQ = 51384,
93258 	PM_MRK_DERAT_MISS_64K = 184412,
93259 	PM_INST_PTEG_FROM_DL2L3_MOD = 319572,
93260 	PM_L2_ST_MISS___3 = 155778,
93261 	PM_MRK_PTEG_FROM_L21_SHR = 315478,
93262 	PM_LWSYNC = 53396,
93263 	PM_LSU0_DC_PREF_STREAM_CONFIRM_STRIDE = 53436,
93264 	PM_MRK_LSU_FLUSH_LRQ = 53384,
93265 	PM_INST_IMC_MATCH_CMPL = 65776,
93266 	PM_NEST_PAIR3_AND = 264323,
93267 	PM_PB_RETRY_SYS_PUMP = 262273,
93268 	PM_MRK_INST_FIN = 196656,
93269 	PM_MRK_PTEG_FROM_DL2L3_SHR = 249940,
93270 	PM_INST_FROM_L31_MOD = 81988,
93271 	PM_MRK_DTLB_MISS_64K___2 = 249950,
93272 	PM_LSU_FIN = 196710,
93273 	PM_MRK_LSU_REJECT = 262244,
93274 	PM_L2_CO_FAIL_BUSY = 91010,
93275 	PM_MEM0_WQ_DISP = 262275,
93276 	PM_DATA_FROM_L31_MOD = 114756,
93277 	PM_THERMAL_WARN = 65558,
93278 	PM_VSU0_4FLOP = 41116,
93279 	PM_BR_MPRED_CCACHE = 16548,
93280 	PM_CMPLU_STALL_IFU = 262220,
93281 	PM_L1_DEMAND_WRITE___3 = 16524,
93282 	PM_FLUSH_BR_MPRED = 8324,
93283 	PM_MRK_DTLB_MISS_16G___2 = 118878,
93284 	PM_MRK_PTEG_FROM_DMEM = 184402,
93285 	PM_L2_RCST_DISP = 221824,
93286 	PM_CMPLU_STALL___3 = 262154,
93287 	PM_LSU_PARTIAL_CDF = 49322,
93288 	PM_DISP_CLB_HELD_SB = 8360,
93289 	PM_VSU0_FMA_DOUBLE = 41104,
93290 	PM_FXU0_BUSY_FXU1_IDLE = 196622,
93291 	PM_IC_DEMAND_CYC = 65560,
93292 	PM_MRK_DATA_FROM_L21_SHR = 249934,
93293 	PM_MRK_LSU_FLUSH_UST = 53382,
93294 	PM_INST_PTEG_FROM_L3MISS = 188504,
93295 	PM_VSU_DENORM = 43180,
93296 	PM_MRK_LSU_PARTIAL_CDF = 53376,
93297 	PM_INST_FROM_L21_SHR = 213070,
93298 	PM_IC_PREF_WRITE___3 = 16526,
93299 	PM_BR_PRED = 16540,
93300 	PM_INST_FROM_DMEM = 81994,
93301 	PM_IC_PREF_CANCEL_ALL = 18576,
93302 	PM_LSU_DC_PREF_STREAM_CONFIRM = 55476,
93303 	PM_MRK_LSU_FLUSH_SRQ = 53386,
93304 	PM_MRK_FIN_STALL_CYC = 65596,
93305 	PM_L2_RCST_DISP_FAIL_OTHER = 287360,
93306 	PM_VSU1_DD_ISSUED = 45208,
93307 	PM_PTEG_FROM_L31_SHR = 180310,
93308 	PM_DATA_FROM_L21_SHR = 245838,
93309 	PM_LSU0_NCLD = 49292,
93310 	PM_VSU1_4FLOP = 41118,
93311 	PM_VSU1_8FLOP = 41122,
93312 	PM_VSU_8FLOP = 43168,
93313 	PM_LSU_LMQ_SRQ_EMPTY_CYC = 131134,
93314 	PM_DTLB_MISS_64K___2 = 245854,
93315 	PM_THRD_CONC_RUN_INST = 196852,
93316 	PM_MRK_PTEG_FROM_L2 = 118864,
93317 	PM_PB_SYS_PUMP = 131201,
93318 	PM_VSU_FIN = 43196,
93319 	PM_MRK_DATA_FROM_L31_MOD = 118852,
93320 	PM_THRD_PRIO_0_1_CYC = 16560,
93321 	PM_DERAT_MISS_64K = 180316,
93322 	PM_PMC2_REWIND = 196640,
93323 	PM_INST_FROM_L2 = 81984,
93324 	PM_GRP_BR_MPRED_NONSPEC = 65546,
93325 	PM_INST_DISP___4 = 131314,
93326 	PM_MEM0_RD_CANCEL_TOTAL = 196739,
93327 	PM_LSU0_DC_PREF_STREAM_CONFIRM = 53428,
93328 	PM_L1_DCACHE_RELOAD_VALID = 196854,
93329 	PM_VSU_SCALAR_DOUBLE_ISSUED = 47240,
93330 	PM_L3_PREF_HIT = 258176,
93331 	PM_MRK_PTEG_FROM_L31_MOD = 118868,
93332 	PM_CMPLU_STALL_STORE = 131146,
93333 	PM_MRK_FXU_FIN = 131128,
93334 	PM_PMC4_OVERFLOW = 65552,
93335 	PM_MRK_PTEG_FROM_L3 = 184400,
93336 	PM_LSU0_LMQ_LHR_MERGE = 53400,
93337 	PM_BTAC_HIT = 20618,
93338 	PM_L3_RD_BUSY = 323714,
93339 	PM_LSU0_L1_SW_PREF = 49308,
93340 	PM_INST_FROM_L2MISS = 278600,
93341 	PM_LSU0_DC_PREF_STREAM_ALLOC = 53416,
93342 	PM_L2_ST___3 = 90242,
93343 	PM_VSU0_DENORM = 41132,
93344 	PM_MRK_DATA_FROM_DL2L3_SHR = 249924,
93345 	PM_BR_PRED_CR_TA = 18602,
93346 	PM_VSU0_FCONV = 41136,
93347 	PM_MRK_LSU_FLUSH_ULD = 53380,
93348 	PM_BTAC_MISS = 20616,
93349 	PM_MRK_LD_MISS_EXPOSED_CYC_COUNT = 65599,
93350 	PM_MRK_DATA_FROM_L2 = 118848,
93351 	PM_LSU_DCACHE_RELOAD_VALID = 53410,
93352 	PM_VSU_FMA = 43140,
93353 	PM_LSU0_FLUSH_SRQ = 49340,
93354 	PM_LSU1_L1_PREF = 53434,
93355 	PM_IOPS_CMPL = 65556,
93356 	PM_L2_SYS_PUMP = 222338,
93357 	PM_L2_RCLD_BUSY_RC_FULL = 287362,
93358 	PM_LSU_LMQ_S0_ALLOC = 53409,
93359 	PM_FLUSH_DISP_SYNC = 8328,
93360 	PM_MRK_DATA_FROM_DL2L3_MOD_CYC = 262186,
93361 	PM_L2_IC_INV = 156032,
93362 	PM_MRK_DATA_FROM_L21_MOD_CYC = 262180,
93363 	PM_L3_PREF_LDST = 55468,
93364 	PM_LSU_SRQ_EMPTY_CYC = 262152,
93365 	PM_LSU_LMQ_S0_VALID = 53408,
93366 	PM_FLUSH_PARTIAL = 8326,
93367 	PM_VSU1_FMA_DOUBLE = 41106,
93368 	PM_1PLUS_PPC_DISP = 262386,
93369 	PM_DATA_FROM_L2MISS = 131326,
93370 	PM_SUSPENDED = 0,
93371 	PM_VSU0_FMA = 41092,
93372 	PM_CMPLU_STALL_SCALAR = 262162,
93373 	PM_STCX_FAIL = 49306,
93374 	PM_VSU0_FSQRT_FDIV_DOUBLE = 41108,
93375 	PM_DC_PREF_DST = 53424,
93376 	PM_VSU1_SCAL_SINGLE_ISSUED = 45190,
93377 	PM_L3_HIT = 127104,
93378 	PM_L2_GLOB_GUESS_WRONG = 156802,
93379 	PM_MRK_DFU_FIN = 131122,
93380 	PM_INST_FROM_L1___3 = 16512,
93381 	PM_BRU_FIN___2 = 65640,
93382 	PM_IC_DEMAND_REQ = 16520,
93383 	PM_VSU1_FSQRT_FDIV_DOUBLE = 41110,
93384 	PM_VSU1_FMA = 41094,
93385 	PM_MRK_LD_MISS_L1 = 131126,
93386 	PM_VSU0_2FLOP_DOUBLE = 41100,
93387 	PM_LSU_DC_PREF_STRIDED_STREAM_CONFIRM = 55484,
93388 	PM_INST_PTEG_FROM_L31_SHR = 188502,
93389 	PM_MRK_LSU_REJECT_ERAT_MISS = 196708,
93390 	PM_MRK_DATA_FROM_L2MISS___2 = 315464,
93391 	PM_DATA_FROM_RL2L3_SHR = 114764,
93392 	PM_INST_FROM_PREF = 81990,
93393 	PM_VSU1_SQ = 45214,
93394 	PM_L2_LD_DISP = 221568,
93395 	PM_L2_DISP_ALL = 286848,
93396 	PM_THRD_GRP_CMPL_BOTH_CYC = 65554,
93397 	PM_VSU_FSQRT_FDIV_DOUBLE = 43156,
93398 	PM_BR_MPRED = 262390,
93399 	PM_INST_PTEG_FROM_DL2L3_SHR = 254036,
93400 	PM_VSU_1FLOP = 43136,
93401 	PM_HV_CYC = 131082,
93402 	PM_MRK_LSU_FIN = 262194,
93403 	PM_MRK_DATA_FROM_RL2L3_SHR = 118860,
93404 	PM_DTLB_MISS_16M___2 = 311390,
93405 	PM_LSU1_LMQ_LHR_MERGE = 53402,
93406 	PM_IFU_FIN = 262246,
93407 	PM_1THRD_CON_RUN_INSTR = 196706,
93408 	PM_CMPLU_STALL_COUNT = 262155,
93409 	PM_MEM0_PB_RD_CL = 196739,
93410 	PM_THRD_1_RUN_CYC = 65632,
93411 	PM_THRD_2_CONC_RUN_INSTR = 262242,
93412 	PM_THRD_2_RUN_CYC = 131168,
93413 	PM_THRD_3_CONC_RUN_INST = 65634,
93414 	PM_THRD_3_RUN_CYC = 196704,
93415 	PM_THRD_4_CONC_RUN_INST = 131170,
93416 	PM_THRD_4_RUN_CYC = 262240,
93417 };
93418 
93419 enum sysctl_writes_mode {
93420 	SYSCTL_WRITES_LEGACY = -1,
93421 	SYSCTL_WRITES_WARN = 0,
93422 	SYSCTL_WRITES_STRICT = 1,
93423 };
93424 
93425 struct do_proc_dointvec_minmax_conv_param {
93426 	int *min;
93427 	int *max;
93428 };
93429 
93430 struct do_proc_douintvec_minmax_conv_param {
93431 	unsigned int *min;
93432 	unsigned int *max;
93433 };
93434 
93435 struct semaphore_waiter {
93436 	struct list_head list;
93437 	struct task_struct *task;
93438 	bool up;
93439 };
93440 
93441 enum umh_disable_depth {
93442 	UMH_ENABLED = 0,
93443 	UMH_FREEZING = 1,
93444 	UMH_DISABLED = 2,
93445 };
93446 
93447 enum {
93448 	AFFINITY = 0,
93449 	AFFINITY_LIST = 1,
93450 	EFFECTIVE = 2,
93451 	EFFECTIVE_LIST = 3,
93452 };
93453 
93454 typedef bool (*stack_trace_consume_fn)(void *, long unsigned int);
93455 
93456 struct stacktrace_cookie {
93457 	long unsigned int *store;
93458 	unsigned int size;
93459 	unsigned int skip;
93460 	unsigned int len;
93461 };
93462 
93463 struct kernfs_fs_context {
93464 	struct kernfs_root *root;
93465 	void *ns_tag;
93466 	long unsigned int magic;
93467 	bool new_sb_created;
93468 };
93469 
93470 enum {
93471 	CGRP_NOTIFY_ON_RELEASE = 0,
93472 	CGRP_CPUSET_CLONE_CHILDREN = 1,
93473 	CGRP_FREEZE = 2,
93474 	CGRP_FROZEN = 3,
93475 	CGRP_KILL = 4,
93476 };
93477 
93478 struct cgroup_fs_context {
93479 	struct kernfs_fs_context kfc;
93480 	struct cgroup_root *root;
93481 	struct cgroup_namespace *ns;
93482 	unsigned int flags;
93483 	bool cpuset_clone_children;
93484 	bool none;
93485 	bool all_ss;
93486 	u16 subsys_mask;
93487 	char *name;
93488 	char *release_agent;
93489 };
93490 
93491 struct cgroup_pidlist;
93492 
93493 struct cgroup_file_ctx {
93494 	struct cgroup_namespace *ns;
93495 	struct {
93496 		void *trigger;
93497 	} psi;
93498 	struct {
93499 		bool started;
93500 		struct css_task_iter iter;
93501 	} procs;
93502 	struct {
93503 		struct cgroup_pidlist *pidlist;
93504 	} procs1;
93505 };
93506 
93507 struct cgrp_cset_link {
93508 	struct cgroup *cgrp;
93509 	struct css_set *cset;
93510 	struct list_head cset_link;
93511 	struct list_head cgrp_link;
93512 };
93513 
93514 struct cgroup_mgctx {
93515 	struct list_head preloaded_src_csets;
93516 	struct list_head preloaded_dst_csets;
93517 	struct cgroup_taskset tset;
93518 	u16 ss_mask;
93519 };
93520 
93521 struct trace_event_raw_cgroup_root {
93522 	struct trace_entry ent;
93523 	int root;
93524 	u16 ss_mask;
93525 	u32 __data_loc_name;
93526 	char __data[0];
93527 };
93528 
93529 struct trace_event_raw_cgroup {
93530 	struct trace_entry ent;
93531 	int root;
93532 	int level;
93533 	u64 id;
93534 	u32 __data_loc_path;
93535 	char __data[0];
93536 };
93537 
93538 struct trace_event_raw_cgroup_migrate {
93539 	struct trace_entry ent;
93540 	int dst_root;
93541 	int dst_level;
93542 	u64 dst_id;
93543 	int pid;
93544 	u32 __data_loc_dst_path;
93545 	u32 __data_loc_comm;
93546 	char __data[0];
93547 };
93548 
93549 struct trace_event_raw_cgroup_event {
93550 	struct trace_entry ent;
93551 	int root;
93552 	int level;
93553 	u64 id;
93554 	u32 __data_loc_path;
93555 	int val;
93556 	char __data[0];
93557 };
93558 
93559 struct trace_event_data_offsets_cgroup_root {
93560 	u32 name;
93561 };
93562 
93563 struct trace_event_data_offsets_cgroup {
93564 	u32 path;
93565 };
93566 
93567 struct trace_event_data_offsets_cgroup_migrate {
93568 	u32 dst_path;
93569 	u32 comm;
93570 };
93571 
93572 struct trace_event_data_offsets_cgroup_event {
93573 	u32 path;
93574 };
93575 
93576 typedef void (*btf_trace_cgroup_setup_root)(void *, struct cgroup_root *);
93577 
93578 typedef void (*btf_trace_cgroup_destroy_root)(void *, struct cgroup_root *);
93579 
93580 typedef void (*btf_trace_cgroup_remount)(void *, struct cgroup_root *);
93581 
93582 typedef void (*btf_trace_cgroup_mkdir)(void *, struct cgroup *, const char *);
93583 
93584 typedef void (*btf_trace_cgroup_rmdir)(void *, struct cgroup *, const char *);
93585 
93586 typedef void (*btf_trace_cgroup_release)(void *, struct cgroup *, const char *);
93587 
93588 typedef void (*btf_trace_cgroup_rename)(void *, struct cgroup *, const char *);
93589 
93590 typedef void (*btf_trace_cgroup_freeze)(void *, struct cgroup *, const char *);
93591 
93592 typedef void (*btf_trace_cgroup_unfreeze)(void *, struct cgroup *, const char *);
93593 
93594 typedef void (*btf_trace_cgroup_attach_task)(void *, struct cgroup *, const char *, struct task_struct *, bool);
93595 
93596 typedef void (*btf_trace_cgroup_transfer_tasks)(void *, struct cgroup *, const char *, struct task_struct *, bool);
93597 
93598 typedef void (*btf_trace_cgroup_notify_populated)(void *, struct cgroup *, const char *, int);
93599 
93600 typedef void (*btf_trace_cgroup_notify_frozen)(void *, struct cgroup *, const char *, int);
93601 
93602 enum cgroup_opt_features {
93603 	OPT_FEATURE_COUNT = 0,
93604 };
93605 
93606 enum cgroup2_param {
93607 	Opt_nsdelegate = 0,
93608 	Opt_favordynmods = 1,
93609 	Opt_memory_localevents = 2,
93610 	Opt_memory_recursiveprot = 3,
93611 	nr__cgroup2_params = 4,
93612 };
93613 
93614 struct dynevent_arg_pair {
93615 	const char *lhs;
93616 	const char *rhs;
93617 	char operator;
93618 	char separator;
93619 };
93620 
93621 struct bpf_iter__bpf_map_elem {
93622 	union {
93623 		struct bpf_iter_meta *meta;
93624 	};
93625 	union {
93626 		struct bpf_map *map;
93627 	};
93628 	union {
93629 		void *key;
93630 	};
93631 	union {
93632 		void *value;
93633 	};
93634 };
93635 
93636 struct bucket {
93637 	struct hlist_nulls_head head;
93638 	union {
93639 		raw_spinlock_t raw_lock;
93640 		spinlock_t lock;
93641 	};
93642 };
93643 
93644 struct htab_elem;
93645 
93646 struct bpf_htab {
93647 	struct bpf_map map;
93648 	struct bucket *buckets;
93649 	void *elems;
93650 	long: 64;
93651 	long: 64;
93652 	long: 64;
93653 	long: 64;
93654 	long: 64;
93655 	long: 64;
93656 	long: 64;
93657 	long: 64;
93658 	long: 64;
93659 	long: 64;
93660 	long: 64;
93661 	long: 64;
93662 	long: 64;
93663 	long: 64;
93664 	union {
93665 		struct pcpu_freelist freelist;
93666 		struct bpf_lru lru;
93667 	};
93668 	struct htab_elem **extra_elems;
93669 	atomic_t count;
93670 	u32 n_buckets;
93671 	u32 elem_size;
93672 	u32 hashrnd;
93673 	struct lock_class_key lockdep_key;
93674 	int *map_locked[8];
93675 	long: 64;
93676 	long: 64;
93677 	long: 64;
93678 	long: 64;
93679 	long: 64;
93680 };
93681 
93682 struct htab_elem {
93683 	union {
93684 		struct hlist_nulls_node hash_node;
93685 		struct {
93686 			void *padding;
93687 			union {
93688 				struct bpf_htab *htab;
93689 				struct pcpu_freelist_node fnode;
93690 				struct htab_elem *batch_flink;
93691 			};
93692 		};
93693 	};
93694 	union {
93695 		struct callback_head rcu;
93696 		struct bpf_lru_node lru_node;
93697 	};
93698 	u32 hash;
93699 	long: 0;
93700 	char key[0];
93701 };
93702 
93703 struct bpf_iter_seq_hash_map_info {
93704 	struct bpf_map *map;
93705 	struct bpf_htab *htab;
93706 	void *percpu_value_buf;
93707 	u32 bucket_id;
93708 	u32 skip_elems;
93709 };
93710 
93711 struct bpf_prog_info {
93712 	__u32 type;
93713 	__u32 id;
93714 	__u8 tag[8];
93715 	__u32 jited_prog_len;
93716 	__u32 xlated_prog_len;
93717 	__u64 jited_prog_insns;
93718 	__u64 xlated_prog_insns;
93719 	__u64 load_time;
93720 	__u32 created_by_uid;
93721 	__u32 nr_map_ids;
93722 	__u64 map_ids;
93723 	char name[16];
93724 	__u32 ifindex;
93725 	__u32 gpl_compatible: 1;
93726 	__u64 netns_dev;
93727 	__u64 netns_ino;
93728 	__u32 nr_jited_ksyms;
93729 	__u32 nr_jited_func_lens;
93730 	__u64 jited_ksyms;
93731 	__u64 jited_func_lens;
93732 	__u32 btf_id;
93733 	__u32 func_info_rec_size;
93734 	__u64 func_info;
93735 	__u32 nr_func_info;
93736 	__u32 nr_line_info;
93737 	__u64 line_info;
93738 	__u64 jited_line_info;
93739 	__u32 nr_jited_line_info;
93740 	__u32 line_info_rec_size;
93741 	__u32 jited_line_info_rec_size;
93742 	__u32 nr_prog_tags;
93743 	__u64 prog_tags;
93744 	__u64 run_time_ns;
93745 	__u64 run_cnt;
93746 	__u64 recursion_misses;
93747 	__u32 verified_insns;
93748 	__u32 attach_btf_obj_id;
93749 	__u32 attach_btf_id;
93750 };
93751 
93752 struct bpf_map_info {
93753 	__u32 type;
93754 	__u32 id;
93755 	__u32 key_size;
93756 	__u32 value_size;
93757 	__u32 max_entries;
93758 	__u32 map_flags;
93759 	char name[16];
93760 	__u32 ifindex;
93761 	__u32 btf_vmlinux_value_type_id;
93762 	__u64 netns_dev;
93763 	__u64 netns_ino;
93764 	__u32 btf_id;
93765 	__u32 btf_key_type_id;
93766 	__u32 btf_value_type_id;
93767 	__u64 map_extra;
93768 };
93769 
93770 struct bpf_prog_offload_ops {
93771 	int (*insn_hook)(struct bpf_verifier_env *, int, int);
93772 	int (*finalize)(struct bpf_verifier_env *);
93773 	int (*replace_insn)(struct bpf_verifier_env *, u32, struct bpf_insn *);
93774 	int (*remove_insns)(struct bpf_verifier_env *, u32, u32);
93775 	int (*prepare)(struct bpf_prog *);
93776 	int (*translate)(struct bpf_prog *);
93777 	void (*destroy)(struct bpf_prog *);
93778 };
93779 
93780 struct bpf_offload_dev {
93781 	const struct bpf_prog_offload_ops *ops;
93782 	struct list_head netdevs;
93783 	void *priv;
93784 };
93785 
93786 typedef struct ns_common *ns_get_path_helper_t(void *);
93787 
93788 struct bpf_offload_netdev {
93789 	struct rhash_head l;
93790 	struct net_device *netdev;
93791 	struct bpf_offload_dev *offdev;
93792 	struct list_head progs;
93793 	struct list_head maps;
93794 	struct list_head offdev_netdevs;
93795 };
93796 
93797 struct ns_get_path_bpf_prog_args {
93798 	struct bpf_prog *prog;
93799 	struct bpf_prog_info *info;
93800 };
93801 
93802 struct ns_get_path_bpf_map_args {
93803 	struct bpf_offloaded_map *offmap;
93804 	struct bpf_map_info *info;
93805 };
93806 
93807 enum rseq_cpu_id_state {
93808 	RSEQ_CPU_ID_UNINITIALIZED = -1,
93809 	RSEQ_CPU_ID_REGISTRATION_FAILED = -2,
93810 };
93811 
93812 enum rseq_flags {
93813 	RSEQ_FLAG_UNREGISTER = 1,
93814 };
93815 
93816 enum rseq_cs_flags {
93817 	RSEQ_CS_FLAG_NO_RESTART_ON_PREEMPT = 1,
93818 	RSEQ_CS_FLAG_NO_RESTART_ON_SIGNAL = 2,
93819 	RSEQ_CS_FLAG_NO_RESTART_ON_MIGRATE = 4,
93820 };
93821 
93822 struct rseq_cs {
93823 	__u32 version;
93824 	__u32 flags;
93825 	__u64 start_ip;
93826 	__u64 post_commit_offset;
93827 	__u64 abort_ip;
93828 };
93829 
93830 struct trace_event_raw_rseq_update {
93831 	struct trace_entry ent;
93832 	s32 cpu_id;
93833 	char __data[0];
93834 };
93835 
93836 struct trace_event_raw_rseq_ip_fixup {
93837 	struct trace_entry ent;
93838 	long unsigned int regs_ip;
93839 	long unsigned int start_ip;
93840 	long unsigned int post_commit_offset;
93841 	long unsigned int abort_ip;
93842 	char __data[0];
93843 };
93844 
93845 struct trace_event_data_offsets_rseq_update {};
93846 
93847 struct trace_event_data_offsets_rseq_ip_fixup {};
93848 
93849 typedef void (*btf_trace_rseq_update)(void *, struct task_struct *);
93850 
93851 typedef void (*btf_trace_rseq_ip_fixup)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
93852 
93853 struct follow_page_context {
93854 	struct dev_pagemap *pgmap;
93855 	unsigned int page_mask;
93856 };
93857 
93858 struct mmu_notifier_subscriptions {
93859 	struct hlist_head list;
93860 	bool has_itree;
93861 	spinlock_t lock;
93862 	long unsigned int invalidate_seq;
93863 	long unsigned int active_invalidate_ranges;
93864 	struct rb_root_cached itree;
93865 	wait_queue_head_t wq;
93866 	struct hlist_head deferred_list;
93867 };
93868 
93869 struct mmu_interval_notifier;
93870 
93871 struct mmu_interval_notifier_ops {
93872 	bool (*invalidate)(struct mmu_interval_notifier *, const struct mmu_notifier_range *, long unsigned int);
93873 };
93874 
93875 struct mmu_interval_notifier {
93876 	struct interval_tree_node interval_tree;
93877 	const struct mmu_interval_notifier_ops *ops;
93878 	struct mm_struct *mm;
93879 	struct hlist_node deferred_item;
93880 	long unsigned int invalidate_seq;
93881 };
93882 
93883 typedef __kernel_ulong_t __kernel_ino_t;
93884 
93885 struct stat {
93886 	long unsigned int st_dev;
93887 	__kernel_ino_t st_ino;
93888 	long unsigned int st_nlink;
93889 	__kernel_mode_t st_mode;
93890 	__kernel_uid32_t st_uid;
93891 	__kernel_gid32_t st_gid;
93892 	long unsigned int st_rdev;
93893 	long int st_size;
93894 	long unsigned int st_blksize;
93895 	long unsigned int st_blocks;
93896 	long unsigned int st_atime;
93897 	long unsigned int st_atime_nsec;
93898 	long unsigned int st_mtime;
93899 	long unsigned int st_mtime_nsec;
93900 	long unsigned int st_ctime;
93901 	long unsigned int st_ctime_nsec;
93902 	long unsigned int __unused4;
93903 	long unsigned int __unused5;
93904 	long unsigned int __unused6;
93905 };
93906 
93907 struct stat64 {
93908 	long long unsigned int st_dev;
93909 	long long unsigned int st_ino;
93910 	unsigned int st_mode;
93911 	unsigned int st_nlink;
93912 	unsigned int st_uid;
93913 	unsigned int st_gid;
93914 	long long unsigned int st_rdev;
93915 	short unsigned int __pad2;
93916 	long long int st_size;
93917 	int st_blksize;
93918 	long long int st_blocks;
93919 	int st_atime;
93920 	unsigned int st_atime_nsec;
93921 	int st_mtime;
93922 	unsigned int st_mtime_nsec;
93923 	int st_ctime;
93924 	unsigned int st_ctime_nsec;
93925 	unsigned int __unused4;
93926 	unsigned int __unused5;
93927 };
93928 
93929 struct statx_timestamp {
93930 	__s64 tv_sec;
93931 	__u32 tv_nsec;
93932 	__s32 __reserved;
93933 };
93934 
93935 struct statx {
93936 	__u32 stx_mask;
93937 	__u32 stx_blksize;
93938 	__u64 stx_attributes;
93939 	__u32 stx_nlink;
93940 	__u32 stx_uid;
93941 	__u32 stx_gid;
93942 	__u16 stx_mode;
93943 	__u16 __spare0[1];
93944 	__u64 stx_ino;
93945 	__u64 stx_size;
93946 	__u64 stx_blocks;
93947 	__u64 stx_attributes_mask;
93948 	struct statx_timestamp stx_atime;
93949 	struct statx_timestamp stx_btime;
93950 	struct statx_timestamp stx_ctime;
93951 	struct statx_timestamp stx_mtime;
93952 	__u32 stx_rdev_major;
93953 	__u32 stx_rdev_minor;
93954 	__u32 stx_dev_major;
93955 	__u32 stx_dev_minor;
93956 	__u64 stx_mnt_id;
93957 	__u64 __spare2;
93958 	__u64 __spare3[12];
93959 };
93960 
93961 struct prepend_buffer {
93962 	char *buf;
93963 	int len;
93964 };
93965 
93966 struct dio_submit {
93967 	struct bio *bio;
93968 	unsigned int blkbits;
93969 	unsigned int blkfactor;
93970 	unsigned int start_zero_done;
93971 	int pages_in_io;
93972 	sector_t block_in_file;
93973 	unsigned int blocks_available;
93974 	int reap_counter;
93975 	sector_t final_block_in_request;
93976 	int boundary;
93977 	get_block_t *get_block;
93978 	dio_submit_t *submit_io;
93979 	loff_t logical_offset_in_bio;
93980 	sector_t final_block_in_bio;
93981 	sector_t next_block_for_io;
93982 	struct page *cur_page;
93983 	unsigned int cur_page_offset;
93984 	unsigned int cur_page_len;
93985 	sector_t cur_page_block;
93986 	loff_t cur_page_fs_offset;
93987 	struct iov_iter *iter;
93988 	unsigned int head;
93989 	unsigned int tail;
93990 	size_t from;
93991 	size_t to;
93992 };
93993 
93994 struct dio {
93995 	int flags;
93996 	blk_opf_t opf;
93997 	struct gendisk *bio_disk;
93998 	struct inode *inode;
93999 	loff_t i_size;
94000 	dio_iodone_t *end_io;
94001 	void *private;
94002 	spinlock_t bio_lock;
94003 	int page_errors;
94004 	int is_async;
94005 	bool defer_completion;
94006 	bool should_dirty;
94007 	int io_error;
94008 	long unsigned int refcount;
94009 	struct bio *bio_list;
94010 	struct task_struct *waiter;
94011 	struct kiocb *iocb;
94012 	ssize_t result;
94013 	union {
94014 		struct page *pages[64];
94015 		struct work_struct complete_work;
94016 	};
94017 	long: 64;
94018 	long: 64;
94019 };
94020 
94021 struct kioctx;
94022 
94023 struct kioctx_table {
94024 	struct callback_head rcu;
94025 	unsigned int nr;
94026 	struct kioctx *table[0];
94027 };
94028 
94029 typedef __kernel_ulong_t aio_context_t;
94030 
94031 enum {
94032 	IOCB_CMD_PREAD = 0,
94033 	IOCB_CMD_PWRITE = 1,
94034 	IOCB_CMD_FSYNC = 2,
94035 	IOCB_CMD_FDSYNC = 3,
94036 	IOCB_CMD_POLL = 5,
94037 	IOCB_CMD_NOOP = 6,
94038 	IOCB_CMD_PREADV = 7,
94039 	IOCB_CMD_PWRITEV = 8,
94040 };
94041 
94042 struct io_event {
94043 	__u64 data;
94044 	__u64 obj;
94045 	__s64 res;
94046 	__s64 res2;
94047 };
94048 
94049 struct iocb {
94050 	__u64 aio_data;
94051 	__u32 aio_key;
94052 	__kernel_rwf_t aio_rw_flags;
94053 	__u16 aio_lio_opcode;
94054 	__s16 aio_reqprio;
94055 	__u32 aio_fildes;
94056 	__u64 aio_buf;
94057 	__u64 aio_nbytes;
94058 	__s64 aio_offset;
94059 	__u64 aio_reserved2;
94060 	__u32 aio_flags;
94061 	__u32 aio_resfd;
94062 };
94063 
94064 typedef int kiocb_cancel_fn(struct kiocb *);
94065 
94066 struct aio_ring {
94067 	unsigned int id;
94068 	unsigned int nr;
94069 	unsigned int head;
94070 	unsigned int tail;
94071 	unsigned int magic;
94072 	unsigned int compat_features;
94073 	unsigned int incompat_features;
94074 	unsigned int header_length;
94075 	struct io_event io_events[0];
94076 };
94077 
94078 struct kioctx_cpu;
94079 
94080 struct ctx_rq_wait;
94081 
94082 struct kioctx {
94083 	struct percpu_ref users;
94084 	atomic_t dead;
94085 	struct percpu_ref reqs;
94086 	long unsigned int user_id;
94087 	struct kioctx_cpu *cpu;
94088 	unsigned int req_batch;
94089 	unsigned int max_reqs;
94090 	unsigned int nr_events;
94091 	long unsigned int mmap_base;
94092 	long unsigned int mmap_size;
94093 	struct page **ring_pages;
94094 	long int nr_pages;
94095 	struct rcu_work free_rwork;
94096 	struct ctx_rq_wait *rq_wait;
94097 	long: 64;
94098 	long: 64;
94099 	long: 64;
94100 	long: 64;
94101 	long: 64;
94102 	long: 64;
94103 	long: 64;
94104 	long: 64;
94105 	long: 64;
94106 	long: 64;
94107 	long: 64;
94108 	struct {
94109 		atomic_t reqs_available;
94110 		long: 64;
94111 		long: 64;
94112 		long: 64;
94113 		long: 64;
94114 		long: 64;
94115 		long: 64;
94116 		long: 64;
94117 		long: 64;
94118 		long: 64;
94119 		long: 64;
94120 		long: 64;
94121 		long: 64;
94122 		long: 64;
94123 		long: 64;
94124 		long: 64;
94125 	};
94126 	struct {
94127 		spinlock_t ctx_lock;
94128 		struct list_head active_reqs;
94129 		long: 64;
94130 		long: 64;
94131 		long: 64;
94132 		long: 64;
94133 		long: 64;
94134 		long: 64;
94135 		long: 64;
94136 		long: 64;
94137 		long: 64;
94138 		long: 64;
94139 		long: 64;
94140 		long: 64;
94141 		long: 64;
94142 	};
94143 	struct {
94144 		struct mutex ring_lock;
94145 		wait_queue_head_t wait;
94146 		long: 64;
94147 		long: 64;
94148 		long: 64;
94149 		long: 64;
94150 		long: 64;
94151 		long: 64;
94152 		long: 64;
94153 		long: 64;
94154 	};
94155 	struct {
94156 		unsigned int tail;
94157 		unsigned int completed_events;
94158 		spinlock_t completion_lock;
94159 		long: 64;
94160 		long: 64;
94161 		long: 64;
94162 		long: 64;
94163 		long: 64;
94164 		long: 64;
94165 		long: 64;
94166 		long: 64;
94167 		long: 64;
94168 		long: 64;
94169 		long: 64;
94170 		long: 64;
94171 		long: 64;
94172 		long: 64;
94173 	};
94174 	struct page *internal_pages[8];
94175 	struct file *aio_ring_file;
94176 	unsigned int id;
94177 	long: 64;
94178 	long: 64;
94179 	long: 64;
94180 	long: 64;
94181 	long: 64;
94182 	long: 64;
94183 };
94184 
94185 struct kioctx_cpu {
94186 	unsigned int reqs_available;
94187 };
94188 
94189 struct ctx_rq_wait {
94190 	struct completion comp;
94191 	atomic_t count;
94192 };
94193 
94194 struct fsync_iocb {
94195 	struct file *file;
94196 	struct work_struct work;
94197 	bool datasync;
94198 	struct cred *creds;
94199 };
94200 
94201 struct poll_iocb {
94202 	struct file *file;
94203 	struct wait_queue_head *head;
94204 	__poll_t events;
94205 	bool cancelled;
94206 	bool work_scheduled;
94207 	bool work_need_resched;
94208 	struct wait_queue_entry wait;
94209 	struct work_struct work;
94210 };
94211 
94212 struct aio_kiocb {
94213 	union {
94214 		struct file *ki_filp;
94215 		struct kiocb rw;
94216 		struct fsync_iocb fsync;
94217 		struct poll_iocb poll;
94218 	};
94219 	struct kioctx *ki_ctx;
94220 	kiocb_cancel_fn *ki_cancel;
94221 	struct io_event ki_res;
94222 	struct list_head ki_list;
94223 	refcount_t ki_refcnt;
94224 	struct eventfd_ctx *ki_eventfd;
94225 };
94226 
94227 struct aio_poll_table {
94228 	struct poll_table_struct pt;
94229 	struct aio_kiocb *iocb;
94230 	bool queued;
94231 	int error;
94232 };
94233 
94234 struct __aio_sigset {
94235 	const sigset_t *sigmask;
94236 	size_t sigsetsize;
94237 };
94238 
94239 struct vmcore {
94240 	struct list_head list;
94241 	long long unsigned int paddr;
94242 	long long unsigned int size;
94243 	loff_t offset;
94244 };
94245 
94246 typedef __u32 Elf32_Addr;
94247 
94248 typedef __u16 Elf32_Half;
94249 
94250 typedef __u32 Elf32_Off;
94251 
94252 struct elf32_hdr {
94253 	unsigned char e_ident[16];
94254 	Elf32_Half e_type;
94255 	Elf32_Half e_machine;
94256 	Elf32_Word e_version;
94257 	Elf32_Addr e_entry;
94258 	Elf32_Off e_phoff;
94259 	Elf32_Off e_shoff;
94260 	Elf32_Word e_flags;
94261 	Elf32_Half e_ehsize;
94262 	Elf32_Half e_phentsize;
94263 	Elf32_Half e_phnum;
94264 	Elf32_Half e_shentsize;
94265 	Elf32_Half e_shnum;
94266 	Elf32_Half e_shstrndx;
94267 };
94268 
94269 typedef struct elf32_hdr Elf32_Ehdr;
94270 
94271 struct elf32_phdr {
94272 	Elf32_Word p_type;
94273 	Elf32_Off p_offset;
94274 	Elf32_Addr p_vaddr;
94275 	Elf32_Addr p_paddr;
94276 	Elf32_Word p_filesz;
94277 	Elf32_Word p_memsz;
94278 	Elf32_Word p_flags;
94279 	Elf32_Word p_align;
94280 };
94281 
94282 typedef struct elf32_phdr Elf32_Phdr;
94283 
94284 typedef struct elf32_note Elf32_Nhdr;
94285 
94286 typedef struct elf64_note Elf64_Nhdr;
94287 
94288 struct vmcore_cb {
94289 	bool (*pfn_is_ram)(struct vmcore_cb *, long unsigned int);
94290 	struct list_head next;
94291 };
94292 
94293 struct fstrim_range {
94294 	__u64 start;
94295 	__u64 len;
94296 	__u64 minlen;
94297 };
94298 
94299 struct ext4_free_data {
94300 	struct list_head efd_list;
94301 	struct rb_node efd_node;
94302 	ext4_group_t efd_group;
94303 	ext4_grpblk_t efd_start_cluster;
94304 	ext4_grpblk_t efd_count;
94305 	tid_t efd_tid;
94306 };
94307 
94308 enum {
94309 	MB_INODE_PA = 0,
94310 	MB_GROUP_PA = 1,
94311 };
94312 
94313 struct ext4_buddy {
94314 	struct page *bd_buddy_page;
94315 	void *bd_buddy;
94316 	struct page *bd_bitmap_page;
94317 	void *bd_bitmap;
94318 	struct ext4_group_info *bd_info;
94319 	struct super_block *bd_sb;
94320 	__u16 bd_blkbits;
94321 	ext4_group_t bd_group;
94322 };
94323 
94324 typedef int (*ext4_mballoc_query_range_fn)(struct super_block *, ext4_group_t, ext4_grpblk_t, ext4_grpblk_t, void *);
94325 
94326 struct sg {
94327 	struct ext4_group_info info;
94328 	ext4_grpblk_t counters[18];
94329 };
94330 
94331 struct nfs_callback_data {
94332 	unsigned int users;
94333 	struct svc_serv *serv;
94334 };
94335 
94336 struct xfs_trans_header {
94337 	uint th_magic;
94338 	uint th_type;
94339 	int32_t th_tid;
94340 	uint th_num_items;
94341 };
94342 
94343 typedef struct xfs_trans_header xfs_trans_header_t;
94344 
94345 struct xfs_attrlist_cursor_kern {
94346 	__u32 hashval;
94347 	__u32 blkno;
94348 	__u32 offset;
94349 	__u16 pad1;
94350 	__u8 pad2;
94351 	__u8 initted;
94352 };
94353 
94354 struct xfs_attr_list_context;
94355 
94356 typedef void (*put_listent_func_t)(struct xfs_attr_list_context *, int, unsigned char *, int, int);
94357 
94358 struct xfs_attr_list_context {
94359 	struct xfs_trans *tp;
94360 	struct xfs_inode *dp;
94361 	struct xfs_attrlist_cursor_kern cursor;
94362 	void *buffer;
94363 	int seen_enough;
94364 	bool allow_incomplete;
94365 	ssize_t count;
94366 	int dupcnt;
94367 	int bufsize;
94368 	int firstu;
94369 	unsigned int attr_filter;
94370 	int resynch;
94371 	put_listent_func_t put_listent;
94372 	int index;
94373 };
94374 
94375 enum xfs_delattr_state {
94376 	XFS_DAS_UNINIT = 0,
94377 	XFS_DAS_SF_ADD = 1,
94378 	XFS_DAS_SF_REMOVE = 2,
94379 	XFS_DAS_LEAF_ADD = 3,
94380 	XFS_DAS_LEAF_REMOVE = 4,
94381 	XFS_DAS_NODE_ADD = 5,
94382 	XFS_DAS_NODE_REMOVE = 6,
94383 	XFS_DAS_LEAF_SET_RMT = 7,
94384 	XFS_DAS_LEAF_ALLOC_RMT = 8,
94385 	XFS_DAS_LEAF_REPLACE = 9,
94386 	XFS_DAS_LEAF_REMOVE_OLD = 10,
94387 	XFS_DAS_LEAF_REMOVE_RMT = 11,
94388 	XFS_DAS_LEAF_REMOVE_ATTR = 12,
94389 	XFS_DAS_NODE_SET_RMT = 13,
94390 	XFS_DAS_NODE_ALLOC_RMT = 14,
94391 	XFS_DAS_NODE_REPLACE = 15,
94392 	XFS_DAS_NODE_REMOVE_OLD = 16,
94393 	XFS_DAS_NODE_REMOVE_RMT = 17,
94394 	XFS_DAS_NODE_REMOVE_ATTR = 18,
94395 	XFS_DAS_DONE = 19,
94396 };
94397 
94398 struct xlog_recover {
94399 	struct hlist_node r_list;
94400 	xlog_tid_t r_log_tid;
94401 	xfs_trans_header_t r_theader;
94402 	int r_state;
94403 	xfs_lsn_t r_lsn;
94404 	struct list_head r_itemq;
94405 };
94406 
94407 struct trace_event_raw_xfs_attr_list_class {
94408 	struct trace_entry ent;
94409 	dev_t dev;
94410 	xfs_ino_t ino;
94411 	u32 hashval;
94412 	u32 blkno;
94413 	u32 offset;
94414 	void *buffer;
94415 	int bufsize;
94416 	int count;
94417 	int firstu;
94418 	int dupcnt;
94419 	unsigned int attr_filter;
94420 	char __data[0];
94421 };
94422 
94423 struct trace_event_raw_xlog_intent_recovery_failed {
94424 	struct trace_entry ent;
94425 	dev_t dev;
94426 	int error;
94427 	void *function;
94428 	char __data[0];
94429 };
94430 
94431 struct trace_event_raw_xfs_perag_class {
94432 	struct trace_entry ent;
94433 	dev_t dev;
94434 	xfs_agnumber_t agno;
94435 	int refcount;
94436 	long unsigned int caller_ip;
94437 	char __data[0];
94438 };
94439 
94440 struct trace_event_raw_xfs_inodegc_worker {
94441 	struct trace_entry ent;
94442 	dev_t dev;
94443 	unsigned int shrinker_hits;
94444 	char __data[0];
94445 };
94446 
94447 struct trace_event_raw_xfs_fs_class {
94448 	struct trace_entry ent;
94449 	dev_t dev;
94450 	long long unsigned int mflags;
94451 	long unsigned int opstate;
94452 	long unsigned int sbflags;
94453 	void *caller_ip;
94454 	char __data[0];
94455 };
94456 
94457 struct trace_event_raw_xfs_inodegc_shrinker_scan {
94458 	struct trace_entry ent;
94459 	dev_t dev;
94460 	long unsigned int nr_to_scan;
94461 	void *caller_ip;
94462 	char __data[0];
94463 };
94464 
94465 struct trace_event_raw_xfs_ag_class {
94466 	struct trace_entry ent;
94467 	dev_t dev;
94468 	xfs_agnumber_t agno;
94469 	char __data[0];
94470 };
94471 
94472 struct trace_event_raw_xfs_attr_list_node_descend {
94473 	struct trace_entry ent;
94474 	dev_t dev;
94475 	xfs_ino_t ino;
94476 	u32 hashval;
94477 	u32 blkno;
94478 	u32 offset;
94479 	void *buffer;
94480 	int bufsize;
94481 	int count;
94482 	int firstu;
94483 	int dupcnt;
94484 	unsigned int attr_filter;
94485 	u32 bt_hashval;
94486 	u32 bt_before;
94487 	char __data[0];
94488 };
94489 
94490 struct trace_event_raw_xfs_bmap_class {
94491 	struct trace_entry ent;
94492 	dev_t dev;
94493 	xfs_ino_t ino;
94494 	void *leaf;
94495 	int pos;
94496 	xfs_fileoff_t startoff;
94497 	xfs_fsblock_t startblock;
94498 	xfs_filblks_t blockcount;
94499 	xfs_exntst_t state;
94500 	int bmap_state;
94501 	long unsigned int caller_ip;
94502 	char __data[0];
94503 };
94504 
94505 struct trace_event_raw_xfs_buf_class {
94506 	struct trace_entry ent;
94507 	dev_t dev;
94508 	xfs_daddr_t bno;
94509 	int nblks;
94510 	int hold;
94511 	int pincount;
94512 	unsigned int lockval;
94513 	unsigned int flags;
94514 	long unsigned int caller_ip;
94515 	const void *buf_ops;
94516 	char __data[0];
94517 };
94518 
94519 struct trace_event_raw_xfs_buf_flags_class {
94520 	struct trace_entry ent;
94521 	dev_t dev;
94522 	xfs_daddr_t bno;
94523 	unsigned int length;
94524 	int hold;
94525 	int pincount;
94526 	unsigned int lockval;
94527 	unsigned int flags;
94528 	long unsigned int caller_ip;
94529 	char __data[0];
94530 };
94531 
94532 struct trace_event_raw_xfs_buf_ioerror {
94533 	struct trace_entry ent;
94534 	dev_t dev;
94535 	xfs_daddr_t bno;
94536 	unsigned int length;
94537 	unsigned int flags;
94538 	int hold;
94539 	int pincount;
94540 	unsigned int lockval;
94541 	int error;
94542 	xfs_failaddr_t caller_ip;
94543 	char __data[0];
94544 };
94545 
94546 struct trace_event_raw_xfs_buf_item_class {
94547 	struct trace_entry ent;
94548 	dev_t dev;
94549 	xfs_daddr_t buf_bno;
94550 	unsigned int buf_len;
94551 	int buf_hold;
94552 	int buf_pincount;
94553 	int buf_lockval;
94554 	unsigned int buf_flags;
94555 	unsigned int bli_recur;
94556 	int bli_refcount;
94557 	unsigned int bli_flags;
94558 	long unsigned int li_flags;
94559 	char __data[0];
94560 };
94561 
94562 struct trace_event_raw_xfs_filestream_class {
94563 	struct trace_entry ent;
94564 	dev_t dev;
94565 	xfs_ino_t ino;
94566 	xfs_agnumber_t agno;
94567 	int streams;
94568 	char __data[0];
94569 };
94570 
94571 struct trace_event_raw_xfs_filestream_pick {
94572 	struct trace_entry ent;
94573 	dev_t dev;
94574 	xfs_ino_t ino;
94575 	xfs_agnumber_t agno;
94576 	int streams;
94577 	xfs_extlen_t free;
94578 	int nscan;
94579 	char __data[0];
94580 };
94581 
94582 struct trace_event_raw_xfs_lock_class {
94583 	struct trace_entry ent;
94584 	dev_t dev;
94585 	xfs_ino_t ino;
94586 	int lock_flags;
94587 	long unsigned int caller_ip;
94588 	char __data[0];
94589 };
94590 
94591 struct trace_event_raw_xfs_inode_class {
94592 	struct trace_entry ent;
94593 	dev_t dev;
94594 	xfs_ino_t ino;
94595 	long unsigned int iflags;
94596 	char __data[0];
94597 };
94598 
94599 struct trace_event_raw_xfs_filemap_fault {
94600 	struct trace_entry ent;
94601 	dev_t dev;
94602 	xfs_ino_t ino;
94603 	enum page_entry_size pe_size;
94604 	bool write_fault;
94605 	char __data[0];
94606 };
94607 
94608 struct trace_event_raw_xfs_iref_class {
94609 	struct trace_entry ent;
94610 	dev_t dev;
94611 	xfs_ino_t ino;
94612 	int count;
94613 	int pincount;
94614 	long unsigned int caller_ip;
94615 	char __data[0];
94616 };
94617 
94618 struct trace_event_raw_xfs_iomap_prealloc_size {
94619 	struct trace_entry ent;
94620 	dev_t dev;
94621 	xfs_ino_t ino;
94622 	xfs_fsblock_t blocks;
94623 	int shift;
94624 	unsigned int writeio_blocks;
94625 	char __data[0];
94626 };
94627 
94628 struct trace_event_raw_xfs_irec_merge_pre {
94629 	struct trace_entry ent;
94630 	dev_t dev;
94631 	xfs_agnumber_t agno;
94632 	xfs_agino_t agino;
94633 	uint16_t holemask;
94634 	xfs_agino_t nagino;
94635 	uint16_t nholemask;
94636 	char __data[0];
94637 };
94638 
94639 struct trace_event_raw_xfs_irec_merge_post {
94640 	struct trace_entry ent;
94641 	dev_t dev;
94642 	xfs_agnumber_t agno;
94643 	xfs_agino_t agino;
94644 	uint16_t holemask;
94645 	char __data[0];
94646 };
94647 
94648 struct trace_event_raw_xfs_namespace_class {
94649 	struct trace_entry ent;
94650 	dev_t dev;
94651 	xfs_ino_t dp_ino;
94652 	int namelen;
94653 	u32 __data_loc_name;
94654 	char __data[0];
94655 };
94656 
94657 struct trace_event_raw_xfs_rename {
94658 	struct trace_entry ent;
94659 	dev_t dev;
94660 	xfs_ino_t src_dp_ino;
94661 	xfs_ino_t target_dp_ino;
94662 	int src_namelen;
94663 	int target_namelen;
94664 	u32 __data_loc_src_name;
94665 	u32 __data_loc_target_name;
94666 	char __data[0];
94667 };
94668 
94669 struct trace_event_raw_xfs_dquot_class {
94670 	struct trace_entry ent;
94671 	dev_t dev;
94672 	u32 id;
94673 	xfs_dqtype_t type;
94674 	unsigned int flags;
94675 	unsigned int nrefs;
94676 	long long unsigned int res_bcount;
94677 	long long unsigned int res_rtbcount;
94678 	long long unsigned int res_icount;
94679 	long long unsigned int bcount;
94680 	long long unsigned int rtbcount;
94681 	long long unsigned int icount;
94682 	long long unsigned int blk_hardlimit;
94683 	long long unsigned int blk_softlimit;
94684 	long long unsigned int rtb_hardlimit;
94685 	long long unsigned int rtb_softlimit;
94686 	long long unsigned int ino_hardlimit;
94687 	long long unsigned int ino_softlimit;
94688 	char __data[0];
94689 };
94690 
94691 struct trace_event_raw_xfs_trans_mod_dquot {
94692 	struct trace_entry ent;
94693 	dev_t dev;
94694 	xfs_dqtype_t type;
94695 	unsigned int flags;
94696 	unsigned int dqid;
94697 	unsigned int field;
94698 	int64_t delta;
94699 	char __data[0];
94700 };
94701 
94702 struct trace_event_raw_xfs_dqtrx_class {
94703 	struct trace_entry ent;
94704 	dev_t dev;
94705 	xfs_dqtype_t type;
94706 	unsigned int flags;
94707 	u32 dqid;
94708 	uint64_t blk_res;
94709 	int64_t bcount_delta;
94710 	int64_t delbcnt_delta;
94711 	uint64_t rtblk_res;
94712 	uint64_t rtblk_res_used;
94713 	int64_t rtbcount_delta;
94714 	int64_t delrtb_delta;
94715 	uint64_t ino_res;
94716 	uint64_t ino_res_used;
94717 	int64_t icount_delta;
94718 	char __data[0];
94719 };
94720 
94721 struct trace_event_raw_xfs_loggrant_class {
94722 	struct trace_entry ent;
94723 	dev_t dev;
94724 	char ocnt;
94725 	char cnt;
94726 	int curr_res;
94727 	int unit_res;
94728 	unsigned int flags;
94729 	int reserveq;
94730 	int writeq;
94731 	int grant_reserve_cycle;
94732 	int grant_reserve_bytes;
94733 	int grant_write_cycle;
94734 	int grant_write_bytes;
94735 	int curr_cycle;
94736 	int curr_block;
94737 	xfs_lsn_t tail_lsn;
94738 	char __data[0];
94739 };
94740 
94741 struct trace_event_raw_xfs_log_item_class {
94742 	struct trace_entry ent;
94743 	dev_t dev;
94744 	void *lip;
94745 	uint type;
94746 	long unsigned int flags;
94747 	xfs_lsn_t lsn;
94748 	char __data[0];
94749 };
94750 
94751 struct trace_event_raw_xfs_log_force {
94752 	struct trace_entry ent;
94753 	dev_t dev;
94754 	xfs_lsn_t lsn;
94755 	long unsigned int caller_ip;
94756 	char __data[0];
94757 };
94758 
94759 struct trace_event_raw_xfs_ail_class {
94760 	struct trace_entry ent;
94761 	dev_t dev;
94762 	void *lip;
94763 	uint type;
94764 	long unsigned int flags;
94765 	xfs_lsn_t old_lsn;
94766 	xfs_lsn_t new_lsn;
94767 	char __data[0];
94768 };
94769 
94770 struct trace_event_raw_xfs_log_assign_tail_lsn {
94771 	struct trace_entry ent;
94772 	dev_t dev;
94773 	xfs_lsn_t new_lsn;
94774 	xfs_lsn_t old_lsn;
94775 	xfs_lsn_t last_sync_lsn;
94776 	char __data[0];
94777 };
94778 
94779 struct trace_event_raw_xfs_file_class {
94780 	struct trace_entry ent;
94781 	dev_t dev;
94782 	xfs_ino_t ino;
94783 	xfs_fsize_t size;
94784 	loff_t offset;
94785 	size_t count;
94786 	char __data[0];
94787 };
94788 
94789 struct trace_event_raw_xfs_imap_class {
94790 	struct trace_entry ent;
94791 	dev_t dev;
94792 	xfs_ino_t ino;
94793 	loff_t size;
94794 	loff_t offset;
94795 	size_t count;
94796 	int whichfork;
94797 	xfs_fileoff_t startoff;
94798 	xfs_fsblock_t startblock;
94799 	xfs_filblks_t blockcount;
94800 	char __data[0];
94801 };
94802 
94803 struct trace_event_raw_xfs_simple_io_class {
94804 	struct trace_entry ent;
94805 	dev_t dev;
94806 	xfs_ino_t ino;
94807 	loff_t isize;
94808 	loff_t disize;
94809 	loff_t offset;
94810 	size_t count;
94811 	char __data[0];
94812 };
94813 
94814 struct trace_event_raw_xfs_itrunc_class {
94815 	struct trace_entry ent;
94816 	dev_t dev;
94817 	xfs_ino_t ino;
94818 	xfs_fsize_t size;
94819 	xfs_fsize_t new_size;
94820 	char __data[0];
94821 };
94822 
94823 struct trace_event_raw_xfs_pagecache_inval {
94824 	struct trace_entry ent;
94825 	dev_t dev;
94826 	xfs_ino_t ino;
94827 	xfs_fsize_t size;
94828 	xfs_off_t start;
94829 	xfs_off_t finish;
94830 	char __data[0];
94831 };
94832 
94833 struct trace_event_raw_xfs_bunmap {
94834 	struct trace_entry ent;
94835 	dev_t dev;
94836 	xfs_ino_t ino;
94837 	xfs_fsize_t size;
94838 	xfs_fileoff_t fileoff;
94839 	xfs_filblks_t len;
94840 	long unsigned int caller_ip;
94841 	int flags;
94842 	char __data[0];
94843 };
94844 
94845 struct trace_event_raw_xfs_extent_busy_class {
94846 	struct trace_entry ent;
94847 	dev_t dev;
94848 	xfs_agnumber_t agno;
94849 	xfs_agblock_t agbno;
94850 	xfs_extlen_t len;
94851 	char __data[0];
94852 };
94853 
94854 struct trace_event_raw_xfs_extent_busy_trim {
94855 	struct trace_entry ent;
94856 	dev_t dev;
94857 	xfs_agnumber_t agno;
94858 	xfs_agblock_t agbno;
94859 	xfs_extlen_t len;
94860 	xfs_agblock_t tbno;
94861 	xfs_extlen_t tlen;
94862 	char __data[0];
94863 };
94864 
94865 struct trace_event_raw_xfs_agf_class {
94866 	struct trace_entry ent;
94867 	dev_t dev;
94868 	xfs_agnumber_t agno;
94869 	int flags;
94870 	__u32 length;
94871 	__u32 bno_root;
94872 	__u32 cnt_root;
94873 	__u32 bno_level;
94874 	__u32 cnt_level;
94875 	__u32 flfirst;
94876 	__u32 fllast;
94877 	__u32 flcount;
94878 	__u32 freeblks;
94879 	__u32 longest;
94880 	long unsigned int caller_ip;
94881 	char __data[0];
94882 };
94883 
94884 struct trace_event_raw_xfs_free_extent {
94885 	struct trace_entry ent;
94886 	dev_t dev;
94887 	xfs_agnumber_t agno;
94888 	xfs_agblock_t agbno;
94889 	xfs_extlen_t len;
94890 	int resv;
94891 	int haveleft;
94892 	int haveright;
94893 	char __data[0];
94894 };
94895 
94896 struct trace_event_raw_xfs_alloc_class {
94897 	struct trace_entry ent;
94898 	dev_t dev;
94899 	xfs_agnumber_t agno;
94900 	xfs_agblock_t agbno;
94901 	xfs_extlen_t minlen;
94902 	xfs_extlen_t maxlen;
94903 	xfs_extlen_t mod;
94904 	xfs_extlen_t prod;
94905 	xfs_extlen_t minleft;
94906 	xfs_extlen_t total;
94907 	xfs_extlen_t alignment;
94908 	xfs_extlen_t minalignslop;
94909 	xfs_extlen_t len;
94910 	short int type;
94911 	short int otype;
94912 	char wasdel;
94913 	char wasfromfl;
94914 	int resv;
94915 	int datatype;
94916 	xfs_fsblock_t firstblock;
94917 	char __data[0];
94918 };
94919 
94920 struct trace_event_raw_xfs_alloc_cur_check {
94921 	struct trace_entry ent;
94922 	dev_t dev;
94923 	xfs_btnum_t btnum;
94924 	xfs_agblock_t bno;
94925 	xfs_extlen_t len;
94926 	xfs_extlen_t diff;
94927 	bool new;
94928 	char __data[0];
94929 };
94930 
94931 struct trace_event_raw_xfs_da_class {
94932 	struct trace_entry ent;
94933 	dev_t dev;
94934 	xfs_ino_t ino;
94935 	u32 __data_loc_name;
94936 	int namelen;
94937 	xfs_dahash_t hashval;
94938 	xfs_ino_t inumber;
94939 	uint32_t op_flags;
94940 	char __data[0];
94941 };
94942 
94943 struct trace_event_raw_xfs_attr_class {
94944 	struct trace_entry ent;
94945 	dev_t dev;
94946 	xfs_ino_t ino;
94947 	u32 __data_loc_name;
94948 	int namelen;
94949 	int valuelen;
94950 	xfs_dahash_t hashval;
94951 	unsigned int attr_filter;
94952 	unsigned int attr_flags;
94953 	uint32_t op_flags;
94954 	char __data[0];
94955 };
94956 
94957 struct trace_event_raw_xfs_dir2_space_class {
94958 	struct trace_entry ent;
94959 	dev_t dev;
94960 	xfs_ino_t ino;
94961 	uint32_t op_flags;
94962 	int idx;
94963 	char __data[0];
94964 };
94965 
94966 struct trace_event_raw_xfs_dir2_leafn_moveents {
94967 	struct trace_entry ent;
94968 	dev_t dev;
94969 	xfs_ino_t ino;
94970 	uint32_t op_flags;
94971 	int src_idx;
94972 	int dst_idx;
94973 	int count;
94974 	char __data[0];
94975 };
94976 
94977 struct trace_event_raw_xfs_swap_extent_class {
94978 	struct trace_entry ent;
94979 	dev_t dev;
94980 	int which;
94981 	xfs_ino_t ino;
94982 	int format;
94983 	xfs_extnum_t nex;
94984 	int broot_size;
94985 	int fork_off;
94986 	char __data[0];
94987 };
94988 
94989 struct trace_event_raw_xfs_log_recover {
94990 	struct trace_entry ent;
94991 	dev_t dev;
94992 	xfs_daddr_t headblk;
94993 	xfs_daddr_t tailblk;
94994 	char __data[0];
94995 };
94996 
94997 struct trace_event_raw_xfs_log_recover_record {
94998 	struct trace_entry ent;
94999 	dev_t dev;
95000 	xfs_lsn_t lsn;
95001 	int len;
95002 	int num_logops;
95003 	int pass;
95004 	char __data[0];
95005 };
95006 
95007 struct trace_event_raw_xfs_log_recover_item_class {
95008 	struct trace_entry ent;
95009 	dev_t dev;
95010 	long unsigned int item;
95011 	xlog_tid_t tid;
95012 	xfs_lsn_t lsn;
95013 	int type;
95014 	int pass;
95015 	int count;
95016 	int total;
95017 	char __data[0];
95018 };
95019 
95020 struct trace_event_raw_xfs_log_recover_buf_item_class {
95021 	struct trace_entry ent;
95022 	dev_t dev;
95023 	int64_t blkno;
95024 	short unsigned int len;
95025 	short unsigned int flags;
95026 	short unsigned int size;
95027 	unsigned int map_size;
95028 	char __data[0];
95029 };
95030 
95031 struct trace_event_raw_xfs_log_recover_ino_item_class {
95032 	struct trace_entry ent;
95033 	dev_t dev;
95034 	xfs_ino_t ino;
95035 	short unsigned int size;
95036 	int fields;
95037 	short unsigned int asize;
95038 	short unsigned int dsize;
95039 	int64_t blkno;
95040 	int len;
95041 	int boffset;
95042 	char __data[0];
95043 };
95044 
95045 struct trace_event_raw_xfs_log_recover_icreate_item_class {
95046 	struct trace_entry ent;
95047 	dev_t dev;
95048 	xfs_agnumber_t agno;
95049 	xfs_agblock_t agbno;
95050 	unsigned int count;
95051 	unsigned int isize;
95052 	xfs_agblock_t length;
95053 	unsigned int gen;
95054 	char __data[0];
95055 };
95056 
95057 struct trace_event_raw_xfs_discard_class {
95058 	struct trace_entry ent;
95059 	dev_t dev;
95060 	xfs_agnumber_t agno;
95061 	xfs_agblock_t agbno;
95062 	xfs_extlen_t len;
95063 	char __data[0];
95064 };
95065 
95066 struct trace_event_raw_xfs_btree_cur_class {
95067 	struct trace_entry ent;
95068 	dev_t dev;
95069 	xfs_btnum_t btnum;
95070 	int level;
95071 	int nlevels;
95072 	int ptr;
95073 	xfs_daddr_t daddr;
95074 	char __data[0];
95075 };
95076 
95077 struct trace_event_raw_xfs_defer_class {
95078 	struct trace_entry ent;
95079 	dev_t dev;
95080 	struct xfs_trans *tp;
95081 	char committed;
95082 	long unsigned int caller_ip;
95083 	char __data[0];
95084 };
95085 
95086 struct trace_event_raw_xfs_defer_error_class {
95087 	struct trace_entry ent;
95088 	dev_t dev;
95089 	struct xfs_trans *tp;
95090 	char committed;
95091 	int error;
95092 	char __data[0];
95093 };
95094 
95095 struct trace_event_raw_xfs_defer_pending_class {
95096 	struct trace_entry ent;
95097 	dev_t dev;
95098 	int type;
95099 	void *intent;
95100 	char committed;
95101 	int nr;
95102 	char __data[0];
95103 };
95104 
95105 struct trace_event_raw_xfs_phys_extent_deferred_class {
95106 	struct trace_entry ent;
95107 	dev_t dev;
95108 	xfs_agnumber_t agno;
95109 	int type;
95110 	xfs_agblock_t agbno;
95111 	xfs_extlen_t len;
95112 	char __data[0];
95113 };
95114 
95115 struct trace_event_raw_xfs_map_extent_deferred_class {
95116 	struct trace_entry ent;
95117 	dev_t dev;
95118 	xfs_agnumber_t agno;
95119 	xfs_ino_t ino;
95120 	xfs_agblock_t agbno;
95121 	int whichfork;
95122 	xfs_fileoff_t l_loff;
95123 	xfs_filblks_t l_len;
95124 	xfs_exntst_t l_state;
95125 	int op;
95126 	char __data[0];
95127 };
95128 
95129 struct trace_event_raw_xfs_rmap_class {
95130 	struct trace_entry ent;
95131 	dev_t dev;
95132 	xfs_agnumber_t agno;
95133 	xfs_agblock_t agbno;
95134 	xfs_extlen_t len;
95135 	uint64_t owner;
95136 	uint64_t offset;
95137 	long unsigned int flags;
95138 	char __data[0];
95139 };
95140 
95141 struct trace_event_raw_xfs_ag_error_class {
95142 	struct trace_entry ent;
95143 	dev_t dev;
95144 	xfs_agnumber_t agno;
95145 	int error;
95146 	long unsigned int caller_ip;
95147 	char __data[0];
95148 };
95149 
95150 struct trace_event_raw_xfs_rmapbt_class {
95151 	struct trace_entry ent;
95152 	dev_t dev;
95153 	xfs_agnumber_t agno;
95154 	xfs_agblock_t agbno;
95155 	xfs_extlen_t len;
95156 	uint64_t owner;
95157 	uint64_t offset;
95158 	unsigned int flags;
95159 	char __data[0];
95160 };
95161 
95162 struct trace_event_raw_xfs_ag_resv_class {
95163 	struct trace_entry ent;
95164 	dev_t dev;
95165 	xfs_agnumber_t agno;
95166 	int resv;
95167 	xfs_extlen_t freeblks;
95168 	xfs_extlen_t flcount;
95169 	xfs_extlen_t reserved;
95170 	xfs_extlen_t asked;
95171 	xfs_extlen_t len;
95172 	char __data[0];
95173 };
95174 
95175 struct trace_event_raw_xfs_ag_btree_lookup_class {
95176 	struct trace_entry ent;
95177 	dev_t dev;
95178 	xfs_agnumber_t agno;
95179 	xfs_agblock_t agbno;
95180 	xfs_lookup_t dir;
95181 	char __data[0];
95182 };
95183 
95184 struct trace_event_raw_xfs_refcount_extent_class {
95185 	struct trace_entry ent;
95186 	dev_t dev;
95187 	xfs_agnumber_t agno;
95188 	xfs_agblock_t startblock;
95189 	xfs_extlen_t blockcount;
95190 	xfs_nlink_t refcount;
95191 	char __data[0];
95192 };
95193 
95194 struct trace_event_raw_xfs_refcount_extent_at_class {
95195 	struct trace_entry ent;
95196 	dev_t dev;
95197 	xfs_agnumber_t agno;
95198 	xfs_agblock_t startblock;
95199 	xfs_extlen_t blockcount;
95200 	xfs_nlink_t refcount;
95201 	xfs_agblock_t agbno;
95202 	char __data[0];
95203 };
95204 
95205 struct trace_event_raw_xfs_refcount_double_extent_class {
95206 	struct trace_entry ent;
95207 	dev_t dev;
95208 	xfs_agnumber_t agno;
95209 	xfs_agblock_t i1_startblock;
95210 	xfs_extlen_t i1_blockcount;
95211 	xfs_nlink_t i1_refcount;
95212 	xfs_agblock_t i2_startblock;
95213 	xfs_extlen_t i2_blockcount;
95214 	xfs_nlink_t i2_refcount;
95215 	char __data[0];
95216 };
95217 
95218 struct trace_event_raw_xfs_refcount_double_extent_at_class {
95219 	struct trace_entry ent;
95220 	dev_t dev;
95221 	xfs_agnumber_t agno;
95222 	xfs_agblock_t i1_startblock;
95223 	xfs_extlen_t i1_blockcount;
95224 	xfs_nlink_t i1_refcount;
95225 	xfs_agblock_t i2_startblock;
95226 	xfs_extlen_t i2_blockcount;
95227 	xfs_nlink_t i2_refcount;
95228 	xfs_agblock_t agbno;
95229 	char __data[0];
95230 };
95231 
95232 struct trace_event_raw_xfs_refcount_triple_extent_class {
95233 	struct trace_entry ent;
95234 	dev_t dev;
95235 	xfs_agnumber_t agno;
95236 	xfs_agblock_t i1_startblock;
95237 	xfs_extlen_t i1_blockcount;
95238 	xfs_nlink_t i1_refcount;
95239 	xfs_agblock_t i2_startblock;
95240 	xfs_extlen_t i2_blockcount;
95241 	xfs_nlink_t i2_refcount;
95242 	xfs_agblock_t i3_startblock;
95243 	xfs_extlen_t i3_blockcount;
95244 	xfs_nlink_t i3_refcount;
95245 	char __data[0];
95246 };
95247 
95248 struct trace_event_raw_xfs_refcount_finish_one_leftover {
95249 	struct trace_entry ent;
95250 	dev_t dev;
95251 	xfs_agnumber_t agno;
95252 	int type;
95253 	xfs_agblock_t agbno;
95254 	xfs_extlen_t len;
95255 	xfs_agblock_t new_agbno;
95256 	xfs_extlen_t new_len;
95257 	char __data[0];
95258 };
95259 
95260 struct trace_event_raw_xfs_inode_error_class {
95261 	struct trace_entry ent;
95262 	dev_t dev;
95263 	xfs_ino_t ino;
95264 	int error;
95265 	long unsigned int caller_ip;
95266 	char __data[0];
95267 };
95268 
95269 struct trace_event_raw_xfs_double_io_class {
95270 	struct trace_entry ent;
95271 	dev_t dev;
95272 	xfs_ino_t src_ino;
95273 	loff_t src_isize;
95274 	loff_t src_disize;
95275 	loff_t src_offset;
95276 	long long int len;
95277 	xfs_ino_t dest_ino;
95278 	loff_t dest_isize;
95279 	loff_t dest_disize;
95280 	loff_t dest_offset;
95281 	char __data[0];
95282 };
95283 
95284 struct trace_event_raw_xfs_inode_irec_class {
95285 	struct trace_entry ent;
95286 	dev_t dev;
95287 	xfs_ino_t ino;
95288 	xfs_fileoff_t lblk;
95289 	xfs_extlen_t len;
95290 	xfs_fsblock_t pblk;
95291 	int state;
95292 	char __data[0];
95293 };
95294 
95295 struct trace_event_raw_xfs_reflink_remap_blocks {
95296 	struct trace_entry ent;
95297 	dev_t dev;
95298 	xfs_ino_t src_ino;
95299 	xfs_fileoff_t src_lblk;
95300 	xfs_filblks_t len;
95301 	xfs_ino_t dest_ino;
95302 	xfs_fileoff_t dest_lblk;
95303 	char __data[0];
95304 };
95305 
95306 struct trace_event_raw_xfs_ioctl_clone {
95307 	struct trace_entry ent;
95308 	dev_t dev;
95309 	long unsigned int src_ino;
95310 	loff_t src_isize;
95311 	long unsigned int dest_ino;
95312 	loff_t dest_isize;
95313 	char __data[0];
95314 };
95315 
95316 struct trace_event_raw_xfs_fsmap_class {
95317 	struct trace_entry ent;
95318 	dev_t dev;
95319 	dev_t keydev;
95320 	xfs_agnumber_t agno;
95321 	xfs_fsblock_t bno;
95322 	xfs_filblks_t len;
95323 	uint64_t owner;
95324 	uint64_t offset;
95325 	unsigned int flags;
95326 	char __data[0];
95327 };
95328 
95329 struct trace_event_raw_xfs_getfsmap_class {
95330 	struct trace_entry ent;
95331 	dev_t dev;
95332 	dev_t keydev;
95333 	xfs_daddr_t block;
95334 	xfs_daddr_t len;
95335 	uint64_t owner;
95336 	uint64_t offset;
95337 	uint64_t flags;
95338 	char __data[0];
95339 };
95340 
95341 struct trace_event_raw_xfs_trans_resv_class {
95342 	struct trace_entry ent;
95343 	dev_t dev;
95344 	int type;
95345 	uint logres;
95346 	int logcount;
95347 	int logflags;
95348 	char __data[0];
95349 };
95350 
95351 struct trace_event_raw_xfs_log_get_max_trans_res {
95352 	struct trace_entry ent;
95353 	dev_t dev;
95354 	uint logres;
95355 	int logcount;
95356 	char __data[0];
95357 };
95358 
95359 struct trace_event_raw_xfs_trans_class {
95360 	struct trace_entry ent;
95361 	dev_t dev;
95362 	uint32_t tid;
95363 	uint32_t flags;
95364 	long unsigned int caller_ip;
95365 	char __data[0];
95366 };
95367 
95368 struct trace_event_raw_xfs_iunlink_update_bucket {
95369 	struct trace_entry ent;
95370 	dev_t dev;
95371 	xfs_agnumber_t agno;
95372 	unsigned int bucket;
95373 	xfs_agino_t old_ptr;
95374 	xfs_agino_t new_ptr;
95375 	char __data[0];
95376 };
95377 
95378 struct trace_event_raw_xfs_iunlink_update_dinode {
95379 	struct trace_entry ent;
95380 	dev_t dev;
95381 	xfs_agnumber_t agno;
95382 	xfs_agino_t agino;
95383 	xfs_agino_t old_ptr;
95384 	xfs_agino_t new_ptr;
95385 	char __data[0];
95386 };
95387 
95388 struct trace_event_raw_xfs_ag_inode_class {
95389 	struct trace_entry ent;
95390 	dev_t dev;
95391 	xfs_agnumber_t agno;
95392 	xfs_agino_t agino;
95393 	char __data[0];
95394 };
95395 
95396 struct trace_event_raw_xfs_fs_corrupt_class {
95397 	struct trace_entry ent;
95398 	dev_t dev;
95399 	unsigned int flags;
95400 	char __data[0];
95401 };
95402 
95403 struct trace_event_raw_xfs_ag_corrupt_class {
95404 	struct trace_entry ent;
95405 	dev_t dev;
95406 	xfs_agnumber_t agno;
95407 	unsigned int flags;
95408 	char __data[0];
95409 };
95410 
95411 struct trace_event_raw_xfs_inode_corrupt_class {
95412 	struct trace_entry ent;
95413 	dev_t dev;
95414 	xfs_ino_t ino;
95415 	unsigned int flags;
95416 	char __data[0];
95417 };
95418 
95419 struct trace_event_raw_xfs_iwalk_ag {
95420 	struct trace_entry ent;
95421 	dev_t dev;
95422 	xfs_agnumber_t agno;
95423 	xfs_agino_t startino;
95424 	char __data[0];
95425 };
95426 
95427 struct trace_event_raw_xfs_iwalk_ag_rec {
95428 	struct trace_entry ent;
95429 	dev_t dev;
95430 	xfs_agnumber_t agno;
95431 	xfs_agino_t startino;
95432 	uint64_t freemask;
95433 	char __data[0];
95434 };
95435 
95436 struct trace_event_raw_xfs_pwork_init {
95437 	struct trace_entry ent;
95438 	dev_t dev;
95439 	unsigned int nr_threads;
95440 	pid_t pid;
95441 	char __data[0];
95442 };
95443 
95444 struct trace_event_raw_xfs_kmem_class {
95445 	struct trace_entry ent;
95446 	ssize_t size;
95447 	int flags;
95448 	long unsigned int caller_ip;
95449 	char __data[0];
95450 };
95451 
95452 struct trace_event_raw_xfs_check_new_dalign {
95453 	struct trace_entry ent;
95454 	dev_t dev;
95455 	int new_dalign;
95456 	xfs_ino_t sb_rootino;
95457 	xfs_ino_t calc_rootino;
95458 	char __data[0];
95459 };
95460 
95461 struct trace_event_raw_xfs_btree_commit_afakeroot {
95462 	struct trace_entry ent;
95463 	dev_t dev;
95464 	xfs_btnum_t btnum;
95465 	xfs_agnumber_t agno;
95466 	xfs_agblock_t agbno;
95467 	unsigned int levels;
95468 	unsigned int blocks;
95469 	char __data[0];
95470 };
95471 
95472 struct trace_event_raw_xfs_btree_commit_ifakeroot {
95473 	struct trace_entry ent;
95474 	dev_t dev;
95475 	xfs_btnum_t btnum;
95476 	xfs_agnumber_t agno;
95477 	xfs_agino_t agino;
95478 	unsigned int levels;
95479 	unsigned int blocks;
95480 	int whichfork;
95481 	char __data[0];
95482 };
95483 
95484 struct trace_event_raw_xfs_btree_bload_level_geometry {
95485 	struct trace_entry ent;
95486 	dev_t dev;
95487 	xfs_btnum_t btnum;
95488 	unsigned int level;
95489 	unsigned int nlevels;
95490 	uint64_t nr_this_level;
95491 	unsigned int nr_per_block;
95492 	unsigned int desired_npb;
95493 	long long unsigned int blocks;
95494 	long long unsigned int blocks_with_extra;
95495 	char __data[0];
95496 };
95497 
95498 struct trace_event_raw_xfs_btree_bload_block {
95499 	struct trace_entry ent;
95500 	dev_t dev;
95501 	xfs_btnum_t btnum;
95502 	unsigned int level;
95503 	long long unsigned int block_idx;
95504 	long long unsigned int nr_blocks;
95505 	xfs_agnumber_t agno;
95506 	xfs_agblock_t agbno;
95507 	unsigned int nr_records;
95508 	char __data[0];
95509 };
95510 
95511 struct trace_event_raw_xfs_timestamp_range_class {
95512 	struct trace_entry ent;
95513 	dev_t dev;
95514 	long long int min;
95515 	long long int max;
95516 	char __data[0];
95517 };
95518 
95519 struct trace_event_raw_xfs_icwalk_class {
95520 	struct trace_entry ent;
95521 	dev_t dev;
95522 	__u32 flags;
95523 	uint32_t uid;
95524 	uint32_t gid;
95525 	prid_t prid;
95526 	__u64 min_file_size;
95527 	long int scan_limit;
95528 	long unsigned int caller_ip;
95529 	char __data[0];
95530 };
95531 
95532 struct trace_event_raw_xlog_iclog_class {
95533 	struct trace_entry ent;
95534 	dev_t dev;
95535 	uint32_t state;
95536 	int32_t refcount;
95537 	uint32_t offset;
95538 	uint32_t flags;
95539 	long long unsigned int lsn;
95540 	long unsigned int caller_ip;
95541 	char __data[0];
95542 };
95543 
95544 struct trace_event_raw_xfs_das_state_class {
95545 	struct trace_entry ent;
95546 	int das;
95547 	xfs_ino_t ino;
95548 	char __data[0];
95549 };
95550 
95551 struct trace_event_raw_xfs_force_shutdown {
95552 	struct trace_entry ent;
95553 	dev_t dev;
95554 	int ptag;
95555 	int flags;
95556 	u32 __data_loc_fname;
95557 	int line_num;
95558 	char __data[0];
95559 };
95560 
95561 struct trace_event_data_offsets_xfs_attr_list_class {};
95562 
95563 struct trace_event_data_offsets_xlog_intent_recovery_failed {};
95564 
95565 struct trace_event_data_offsets_xfs_perag_class {};
95566 
95567 struct trace_event_data_offsets_xfs_inodegc_worker {};
95568 
95569 struct trace_event_data_offsets_xfs_fs_class {};
95570 
95571 struct trace_event_data_offsets_xfs_inodegc_shrinker_scan {};
95572 
95573 struct trace_event_data_offsets_xfs_ag_class {};
95574 
95575 struct trace_event_data_offsets_xfs_attr_list_node_descend {};
95576 
95577 struct trace_event_data_offsets_xfs_bmap_class {};
95578 
95579 struct trace_event_data_offsets_xfs_buf_class {};
95580 
95581 struct trace_event_data_offsets_xfs_buf_flags_class {};
95582 
95583 struct trace_event_data_offsets_xfs_buf_ioerror {};
95584 
95585 struct trace_event_data_offsets_xfs_buf_item_class {};
95586 
95587 struct trace_event_data_offsets_xfs_filestream_class {};
95588 
95589 struct trace_event_data_offsets_xfs_filestream_pick {};
95590 
95591 struct trace_event_data_offsets_xfs_lock_class {};
95592 
95593 struct trace_event_data_offsets_xfs_inode_class {};
95594 
95595 struct trace_event_data_offsets_xfs_filemap_fault {};
95596 
95597 struct trace_event_data_offsets_xfs_iref_class {};
95598 
95599 struct trace_event_data_offsets_xfs_iomap_prealloc_size {};
95600 
95601 struct trace_event_data_offsets_xfs_irec_merge_pre {};
95602 
95603 struct trace_event_data_offsets_xfs_irec_merge_post {};
95604 
95605 struct trace_event_data_offsets_xfs_namespace_class {
95606 	u32 name;
95607 };
95608 
95609 struct trace_event_data_offsets_xfs_rename {
95610 	u32 src_name;
95611 	u32 target_name;
95612 };
95613 
95614 struct trace_event_data_offsets_xfs_dquot_class {};
95615 
95616 struct trace_event_data_offsets_xfs_trans_mod_dquot {};
95617 
95618 struct trace_event_data_offsets_xfs_dqtrx_class {};
95619 
95620 struct trace_event_data_offsets_xfs_loggrant_class {};
95621 
95622 struct trace_event_data_offsets_xfs_log_item_class {};
95623 
95624 struct trace_event_data_offsets_xfs_log_force {};
95625 
95626 struct trace_event_data_offsets_xfs_ail_class {};
95627 
95628 struct trace_event_data_offsets_xfs_log_assign_tail_lsn {};
95629 
95630 struct trace_event_data_offsets_xfs_file_class {};
95631 
95632 struct trace_event_data_offsets_xfs_imap_class {};
95633 
95634 struct trace_event_data_offsets_xfs_simple_io_class {};
95635 
95636 struct trace_event_data_offsets_xfs_itrunc_class {};
95637 
95638 struct trace_event_data_offsets_xfs_pagecache_inval {};
95639 
95640 struct trace_event_data_offsets_xfs_bunmap {};
95641 
95642 struct trace_event_data_offsets_xfs_extent_busy_class {};
95643 
95644 struct trace_event_data_offsets_xfs_extent_busy_trim {};
95645 
95646 struct trace_event_data_offsets_xfs_agf_class {};
95647 
95648 struct trace_event_data_offsets_xfs_free_extent {};
95649 
95650 struct trace_event_data_offsets_xfs_alloc_class {};
95651 
95652 struct trace_event_data_offsets_xfs_alloc_cur_check {};
95653 
95654 struct trace_event_data_offsets_xfs_da_class {
95655 	u32 name;
95656 };
95657 
95658 struct trace_event_data_offsets_xfs_attr_class {
95659 	u32 name;
95660 };
95661 
95662 struct trace_event_data_offsets_xfs_dir2_space_class {};
95663 
95664 struct trace_event_data_offsets_xfs_dir2_leafn_moveents {};
95665 
95666 struct trace_event_data_offsets_xfs_swap_extent_class {};
95667 
95668 struct trace_event_data_offsets_xfs_log_recover {};
95669 
95670 struct trace_event_data_offsets_xfs_log_recover_record {};
95671 
95672 struct trace_event_data_offsets_xfs_log_recover_item_class {};
95673 
95674 struct trace_event_data_offsets_xfs_log_recover_buf_item_class {};
95675 
95676 struct trace_event_data_offsets_xfs_log_recover_ino_item_class {};
95677 
95678 struct trace_event_data_offsets_xfs_log_recover_icreate_item_class {};
95679 
95680 struct trace_event_data_offsets_xfs_discard_class {};
95681 
95682 struct trace_event_data_offsets_xfs_btree_cur_class {};
95683 
95684 struct trace_event_data_offsets_xfs_defer_class {};
95685 
95686 struct trace_event_data_offsets_xfs_defer_error_class {};
95687 
95688 struct trace_event_data_offsets_xfs_defer_pending_class {};
95689 
95690 struct trace_event_data_offsets_xfs_phys_extent_deferred_class {};
95691 
95692 struct trace_event_data_offsets_xfs_map_extent_deferred_class {};
95693 
95694 struct trace_event_data_offsets_xfs_rmap_class {};
95695 
95696 struct trace_event_data_offsets_xfs_ag_error_class {};
95697 
95698 struct trace_event_data_offsets_xfs_rmapbt_class {};
95699 
95700 struct trace_event_data_offsets_xfs_ag_resv_class {};
95701 
95702 struct trace_event_data_offsets_xfs_ag_btree_lookup_class {};
95703 
95704 struct trace_event_data_offsets_xfs_refcount_extent_class {};
95705 
95706 struct trace_event_data_offsets_xfs_refcount_extent_at_class {};
95707 
95708 struct trace_event_data_offsets_xfs_refcount_double_extent_class {};
95709 
95710 struct trace_event_data_offsets_xfs_refcount_double_extent_at_class {};
95711 
95712 struct trace_event_data_offsets_xfs_refcount_triple_extent_class {};
95713 
95714 struct trace_event_data_offsets_xfs_refcount_finish_one_leftover {};
95715 
95716 struct trace_event_data_offsets_xfs_inode_error_class {};
95717 
95718 struct trace_event_data_offsets_xfs_double_io_class {};
95719 
95720 struct trace_event_data_offsets_xfs_inode_irec_class {};
95721 
95722 struct trace_event_data_offsets_xfs_reflink_remap_blocks {};
95723 
95724 struct trace_event_data_offsets_xfs_ioctl_clone {};
95725 
95726 struct trace_event_data_offsets_xfs_fsmap_class {};
95727 
95728 struct trace_event_data_offsets_xfs_getfsmap_class {};
95729 
95730 struct trace_event_data_offsets_xfs_trans_resv_class {};
95731 
95732 struct trace_event_data_offsets_xfs_log_get_max_trans_res {};
95733 
95734 struct trace_event_data_offsets_xfs_trans_class {};
95735 
95736 struct trace_event_data_offsets_xfs_iunlink_update_bucket {};
95737 
95738 struct trace_event_data_offsets_xfs_iunlink_update_dinode {};
95739 
95740 struct trace_event_data_offsets_xfs_ag_inode_class {};
95741 
95742 struct trace_event_data_offsets_xfs_fs_corrupt_class {};
95743 
95744 struct trace_event_data_offsets_xfs_ag_corrupt_class {};
95745 
95746 struct trace_event_data_offsets_xfs_inode_corrupt_class {};
95747 
95748 struct trace_event_data_offsets_xfs_iwalk_ag {};
95749 
95750 struct trace_event_data_offsets_xfs_iwalk_ag_rec {};
95751 
95752 struct trace_event_data_offsets_xfs_pwork_init {};
95753 
95754 struct trace_event_data_offsets_xfs_kmem_class {};
95755 
95756 struct trace_event_data_offsets_xfs_check_new_dalign {};
95757 
95758 struct trace_event_data_offsets_xfs_btree_commit_afakeroot {};
95759 
95760 struct trace_event_data_offsets_xfs_btree_commit_ifakeroot {};
95761 
95762 struct trace_event_data_offsets_xfs_btree_bload_level_geometry {};
95763 
95764 struct trace_event_data_offsets_xfs_btree_bload_block {};
95765 
95766 struct trace_event_data_offsets_xfs_timestamp_range_class {};
95767 
95768 struct trace_event_data_offsets_xfs_icwalk_class {};
95769 
95770 struct trace_event_data_offsets_xlog_iclog_class {};
95771 
95772 struct trace_event_data_offsets_xfs_das_state_class {};
95773 
95774 struct trace_event_data_offsets_xfs_force_shutdown {
95775 	u32 fname;
95776 };
95777 
95778 typedef void (*btf_trace_xfs_attr_list_sf)(void *, struct xfs_attr_list_context *);
95779 
95780 typedef void (*btf_trace_xfs_attr_list_sf_all)(void *, struct xfs_attr_list_context *);
95781 
95782 typedef void (*btf_trace_xfs_attr_list_leaf)(void *, struct xfs_attr_list_context *);
95783 
95784 typedef void (*btf_trace_xfs_attr_list_leaf_end)(void *, struct xfs_attr_list_context *);
95785 
95786 typedef void (*btf_trace_xfs_attr_list_full)(void *, struct xfs_attr_list_context *);
95787 
95788 typedef void (*btf_trace_xfs_attr_list_add)(void *, struct xfs_attr_list_context *);
95789 
95790 typedef void (*btf_trace_xfs_attr_list_wrong_blk)(void *, struct xfs_attr_list_context *);
95791 
95792 typedef void (*btf_trace_xfs_attr_list_notfound)(void *, struct xfs_attr_list_context *);
95793 
95794 typedef void (*btf_trace_xfs_attr_leaf_list)(void *, struct xfs_attr_list_context *);
95795 
95796 typedef void (*btf_trace_xfs_attr_node_list)(void *, struct xfs_attr_list_context *);
95797 
95798 typedef void (*btf_trace_xlog_intent_recovery_failed)(void *, struct xfs_mount *, int, void *);
95799 
95800 typedef void (*btf_trace_xfs_perag_get)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
95801 
95802 typedef void (*btf_trace_xfs_perag_get_tag)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
95803 
95804 typedef void (*btf_trace_xfs_perag_put)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
95805 
95806 typedef void (*btf_trace_xfs_perag_set_inode_tag)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
95807 
95808 typedef void (*btf_trace_xfs_perag_clear_inode_tag)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
95809 
95810 typedef void (*btf_trace_xfs_inodegc_worker)(void *, struct xfs_mount *, unsigned int);
95811 
95812 typedef void (*btf_trace_xfs_inodegc_flush)(void *, struct xfs_mount *, void *);
95813 
95814 typedef void (*btf_trace_xfs_inodegc_push)(void *, struct xfs_mount *, void *);
95815 
95816 typedef void (*btf_trace_xfs_inodegc_start)(void *, struct xfs_mount *, void *);
95817 
95818 typedef void (*btf_trace_xfs_inodegc_stop)(void *, struct xfs_mount *, void *);
95819 
95820 typedef void (*btf_trace_xfs_inodegc_queue)(void *, struct xfs_mount *, void *);
95821 
95822 typedef void (*btf_trace_xfs_inodegc_throttle)(void *, struct xfs_mount *, void *);
95823 
95824 typedef void (*btf_trace_xfs_fs_sync_fs)(void *, struct xfs_mount *, void *);
95825 
95826 typedef void (*btf_trace_xfs_blockgc_start)(void *, struct xfs_mount *, void *);
95827 
95828 typedef void (*btf_trace_xfs_blockgc_stop)(void *, struct xfs_mount *, void *);
95829 
95830 typedef void (*btf_trace_xfs_blockgc_worker)(void *, struct xfs_mount *, void *);
95831 
95832 typedef void (*btf_trace_xfs_blockgc_flush_all)(void *, struct xfs_mount *, void *);
95833 
95834 typedef void (*btf_trace_xfs_inodegc_shrinker_scan)(void *, struct xfs_mount *, struct shrink_control *, void *);
95835 
95836 typedef void (*btf_trace_xfs_read_agf)(void *, struct xfs_mount *, xfs_agnumber_t);
95837 
95838 typedef void (*btf_trace_xfs_alloc_read_agf)(void *, struct xfs_mount *, xfs_agnumber_t);
95839 
95840 typedef void (*btf_trace_xfs_read_agi)(void *, struct xfs_mount *, xfs_agnumber_t);
95841 
95842 typedef void (*btf_trace_xfs_ialloc_read_agi)(void *, struct xfs_mount *, xfs_agnumber_t);
95843 
95844 typedef void (*btf_trace_xfs_attr_list_node_descend)(void *, struct xfs_attr_list_context *, struct xfs_da_node_entry *);
95845 
95846 typedef void (*btf_trace_xfs_iext_insert)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95847 
95848 typedef void (*btf_trace_xfs_iext_remove)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95849 
95850 typedef void (*btf_trace_xfs_bmap_pre_update)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95851 
95852 typedef void (*btf_trace_xfs_bmap_post_update)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95853 
95854 typedef void (*btf_trace_xfs_read_extent)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95855 
95856 typedef void (*btf_trace_xfs_write_extent)(void *, struct xfs_inode *, struct xfs_iext_cursor *, int, long unsigned int);
95857 
95858 typedef void (*btf_trace_xfs_buf_init)(void *, struct xfs_buf *, long unsigned int);
95859 
95860 typedef void (*btf_trace_xfs_buf_free)(void *, struct xfs_buf *, long unsigned int);
95861 
95862 typedef void (*btf_trace_xfs_buf_hold)(void *, struct xfs_buf *, long unsigned int);
95863 
95864 typedef void (*btf_trace_xfs_buf_rele)(void *, struct xfs_buf *, long unsigned int);
95865 
95866 typedef void (*btf_trace_xfs_buf_iodone)(void *, struct xfs_buf *, long unsigned int);
95867 
95868 typedef void (*btf_trace_xfs_buf_submit)(void *, struct xfs_buf *, long unsigned int);
95869 
95870 typedef void (*btf_trace_xfs_buf_lock)(void *, struct xfs_buf *, long unsigned int);
95871 
95872 typedef void (*btf_trace_xfs_buf_lock_done)(void *, struct xfs_buf *, long unsigned int);
95873 
95874 typedef void (*btf_trace_xfs_buf_trylock_fail)(void *, struct xfs_buf *, long unsigned int);
95875 
95876 typedef void (*btf_trace_xfs_buf_trylock)(void *, struct xfs_buf *, long unsigned int);
95877 
95878 typedef void (*btf_trace_xfs_buf_unlock)(void *, struct xfs_buf *, long unsigned int);
95879 
95880 typedef void (*btf_trace_xfs_buf_iowait)(void *, struct xfs_buf *, long unsigned int);
95881 
95882 typedef void (*btf_trace_xfs_buf_iowait_done)(void *, struct xfs_buf *, long unsigned int);
95883 
95884 typedef void (*btf_trace_xfs_buf_delwri_queue)(void *, struct xfs_buf *, long unsigned int);
95885 
95886 typedef void (*btf_trace_xfs_buf_delwri_queued)(void *, struct xfs_buf *, long unsigned int);
95887 
95888 typedef void (*btf_trace_xfs_buf_delwri_split)(void *, struct xfs_buf *, long unsigned int);
95889 
95890 typedef void (*btf_trace_xfs_buf_delwri_pushbuf)(void *, struct xfs_buf *, long unsigned int);
95891 
95892 typedef void (*btf_trace_xfs_buf_get_uncached)(void *, struct xfs_buf *, long unsigned int);
95893 
95894 typedef void (*btf_trace_xfs_buf_item_relse)(void *, struct xfs_buf *, long unsigned int);
95895 
95896 typedef void (*btf_trace_xfs_buf_iodone_async)(void *, struct xfs_buf *, long unsigned int);
95897 
95898 typedef void (*btf_trace_xfs_buf_error_relse)(void *, struct xfs_buf *, long unsigned int);
95899 
95900 typedef void (*btf_trace_xfs_buf_drain_buftarg)(void *, struct xfs_buf *, long unsigned int);
95901 
95902 typedef void (*btf_trace_xfs_trans_read_buf_shut)(void *, struct xfs_buf *, long unsigned int);
95903 
95904 typedef void (*btf_trace_xfs_btree_corrupt)(void *, struct xfs_buf *, long unsigned int);
95905 
95906 typedef void (*btf_trace_xfs_reset_dqcounts)(void *, struct xfs_buf *, long unsigned int);
95907 
95908 typedef void (*btf_trace_xfs_buf_find)(void *, struct xfs_buf *, unsigned int, long unsigned int);
95909 
95910 typedef void (*btf_trace_xfs_buf_get)(void *, struct xfs_buf *, unsigned int, long unsigned int);
95911 
95912 typedef void (*btf_trace_xfs_buf_read)(void *, struct xfs_buf *, unsigned int, long unsigned int);
95913 
95914 typedef void (*btf_trace_xfs_buf_ioerror)(void *, struct xfs_buf *, int, xfs_failaddr_t);
95915 
95916 typedef void (*btf_trace_xfs_buf_item_size)(void *, struct xfs_buf_log_item *);
95917 
95918 typedef void (*btf_trace_xfs_buf_item_size_ordered)(void *, struct xfs_buf_log_item *);
95919 
95920 typedef void (*btf_trace_xfs_buf_item_size_stale)(void *, struct xfs_buf_log_item *);
95921 
95922 typedef void (*btf_trace_xfs_buf_item_format)(void *, struct xfs_buf_log_item *);
95923 
95924 typedef void (*btf_trace_xfs_buf_item_format_stale)(void *, struct xfs_buf_log_item *);
95925 
95926 typedef void (*btf_trace_xfs_buf_item_ordered)(void *, struct xfs_buf_log_item *);
95927 
95928 typedef void (*btf_trace_xfs_buf_item_pin)(void *, struct xfs_buf_log_item *);
95929 
95930 typedef void (*btf_trace_xfs_buf_item_unpin)(void *, struct xfs_buf_log_item *);
95931 
95932 typedef void (*btf_trace_xfs_buf_item_unpin_stale)(void *, struct xfs_buf_log_item *);
95933 
95934 typedef void (*btf_trace_xfs_buf_item_release)(void *, struct xfs_buf_log_item *);
95935 
95936 typedef void (*btf_trace_xfs_buf_item_committed)(void *, struct xfs_buf_log_item *);
95937 
95938 typedef void (*btf_trace_xfs_buf_item_push)(void *, struct xfs_buf_log_item *);
95939 
95940 typedef void (*btf_trace_xfs_trans_get_buf)(void *, struct xfs_buf_log_item *);
95941 
95942 typedef void (*btf_trace_xfs_trans_get_buf_recur)(void *, struct xfs_buf_log_item *);
95943 
95944 typedef void (*btf_trace_xfs_trans_getsb)(void *, struct xfs_buf_log_item *);
95945 
95946 typedef void (*btf_trace_xfs_trans_getsb_recur)(void *, struct xfs_buf_log_item *);
95947 
95948 typedef void (*btf_trace_xfs_trans_read_buf)(void *, struct xfs_buf_log_item *);
95949 
95950 typedef void (*btf_trace_xfs_trans_read_buf_recur)(void *, struct xfs_buf_log_item *);
95951 
95952 typedef void (*btf_trace_xfs_trans_log_buf)(void *, struct xfs_buf_log_item *);
95953 
95954 typedef void (*btf_trace_xfs_trans_brelse)(void *, struct xfs_buf_log_item *);
95955 
95956 typedef void (*btf_trace_xfs_trans_bjoin)(void *, struct xfs_buf_log_item *);
95957 
95958 typedef void (*btf_trace_xfs_trans_bhold)(void *, struct xfs_buf_log_item *);
95959 
95960 typedef void (*btf_trace_xfs_trans_bhold_release)(void *, struct xfs_buf_log_item *);
95961 
95962 typedef void (*btf_trace_xfs_trans_binval)(void *, struct xfs_buf_log_item *);
95963 
95964 typedef void (*btf_trace_xfs_filestream_free)(void *, struct xfs_mount *, xfs_ino_t, xfs_agnumber_t);
95965 
95966 typedef void (*btf_trace_xfs_filestream_lookup)(void *, struct xfs_mount *, xfs_ino_t, xfs_agnumber_t);
95967 
95968 typedef void (*btf_trace_xfs_filestream_scan)(void *, struct xfs_mount *, xfs_ino_t, xfs_agnumber_t);
95969 
95970 typedef void (*btf_trace_xfs_filestream_pick)(void *, struct xfs_inode *, xfs_agnumber_t, xfs_extlen_t, int);
95971 
95972 typedef void (*btf_trace_xfs_ilock)(void *, struct xfs_inode *, unsigned int, long unsigned int);
95973 
95974 typedef void (*btf_trace_xfs_ilock_nowait)(void *, struct xfs_inode *, unsigned int, long unsigned int);
95975 
95976 typedef void (*btf_trace_xfs_ilock_demote)(void *, struct xfs_inode *, unsigned int, long unsigned int);
95977 
95978 typedef void (*btf_trace_xfs_iunlock)(void *, struct xfs_inode *, unsigned int, long unsigned int);
95979 
95980 typedef void (*btf_trace_xfs_iget_skip)(void *, struct xfs_inode *);
95981 
95982 typedef void (*btf_trace_xfs_iget_recycle)(void *, struct xfs_inode *);
95983 
95984 typedef void (*btf_trace_xfs_iget_recycle_fail)(void *, struct xfs_inode *);
95985 
95986 typedef void (*btf_trace_xfs_iget_hit)(void *, struct xfs_inode *);
95987 
95988 typedef void (*btf_trace_xfs_iget_miss)(void *, struct xfs_inode *);
95989 
95990 typedef void (*btf_trace_xfs_getattr)(void *, struct xfs_inode *);
95991 
95992 typedef void (*btf_trace_xfs_setattr)(void *, struct xfs_inode *);
95993 
95994 typedef void (*btf_trace_xfs_readlink)(void *, struct xfs_inode *);
95995 
95996 typedef void (*btf_trace_xfs_inactive_symlink)(void *, struct xfs_inode *);
95997 
95998 typedef void (*btf_trace_xfs_alloc_file_space)(void *, struct xfs_inode *);
95999 
96000 typedef void (*btf_trace_xfs_free_file_space)(void *, struct xfs_inode *);
96001 
96002 typedef void (*btf_trace_xfs_zero_file_space)(void *, struct xfs_inode *);
96003 
96004 typedef void (*btf_trace_xfs_collapse_file_space)(void *, struct xfs_inode *);
96005 
96006 typedef void (*btf_trace_xfs_insert_file_space)(void *, struct xfs_inode *);
96007 
96008 typedef void (*btf_trace_xfs_readdir)(void *, struct xfs_inode *);
96009 
96010 typedef void (*btf_trace_xfs_get_acl)(void *, struct xfs_inode *);
96011 
96012 typedef void (*btf_trace_xfs_vm_bmap)(void *, struct xfs_inode *);
96013 
96014 typedef void (*btf_trace_xfs_file_ioctl)(void *, struct xfs_inode *);
96015 
96016 typedef void (*btf_trace_xfs_file_compat_ioctl)(void *, struct xfs_inode *);
96017 
96018 typedef void (*btf_trace_xfs_ioctl_setattr)(void *, struct xfs_inode *);
96019 
96020 typedef void (*btf_trace_xfs_dir_fsync)(void *, struct xfs_inode *);
96021 
96022 typedef void (*btf_trace_xfs_file_fsync)(void *, struct xfs_inode *);
96023 
96024 typedef void (*btf_trace_xfs_destroy_inode)(void *, struct xfs_inode *);
96025 
96026 typedef void (*btf_trace_xfs_update_time)(void *, struct xfs_inode *);
96027 
96028 typedef void (*btf_trace_xfs_dquot_dqalloc)(void *, struct xfs_inode *);
96029 
96030 typedef void (*btf_trace_xfs_dquot_dqdetach)(void *, struct xfs_inode *);
96031 
96032 typedef void (*btf_trace_xfs_inode_set_eofblocks_tag)(void *, struct xfs_inode *);
96033 
96034 typedef void (*btf_trace_xfs_inode_clear_eofblocks_tag)(void *, struct xfs_inode *);
96035 
96036 typedef void (*btf_trace_xfs_inode_free_eofblocks_invalid)(void *, struct xfs_inode *);
96037 
96038 typedef void (*btf_trace_xfs_inode_set_cowblocks_tag)(void *, struct xfs_inode *);
96039 
96040 typedef void (*btf_trace_xfs_inode_clear_cowblocks_tag)(void *, struct xfs_inode *);
96041 
96042 typedef void (*btf_trace_xfs_inode_free_cowblocks_invalid)(void *, struct xfs_inode *);
96043 
96044 typedef void (*btf_trace_xfs_inode_set_reclaimable)(void *, struct xfs_inode *);
96045 
96046 typedef void (*btf_trace_xfs_inode_reclaiming)(void *, struct xfs_inode *);
96047 
96048 typedef void (*btf_trace_xfs_inode_set_need_inactive)(void *, struct xfs_inode *);
96049 
96050 typedef void (*btf_trace_xfs_inode_inactivating)(void *, struct xfs_inode *);
96051 
96052 typedef void (*btf_trace_xfs_filemap_fault)(void *, struct xfs_inode *, enum page_entry_size, bool);
96053 
96054 typedef void (*btf_trace_xfs_iomap_prealloc_size)(void *, struct xfs_inode *, xfs_fsblock_t, int, unsigned int);
96055 
96056 typedef void (*btf_trace_xfs_irec_merge_pre)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agino_t, uint16_t, xfs_agino_t, uint16_t);
96057 
96058 typedef void (*btf_trace_xfs_irec_merge_post)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agino_t, uint16_t);
96059 
96060 typedef void (*btf_trace_xfs_irele)(void *, struct xfs_inode *, long unsigned int);
96061 
96062 typedef void (*btf_trace_xfs_inode_pin)(void *, struct xfs_inode *, long unsigned int);
96063 
96064 typedef void (*btf_trace_xfs_inode_unpin)(void *, struct xfs_inode *, long unsigned int);
96065 
96066 typedef void (*btf_trace_xfs_inode_unpin_nowait)(void *, struct xfs_inode *, long unsigned int);
96067 
96068 typedef void (*btf_trace_xfs_remove)(void *, struct xfs_inode *, const struct xfs_name *);
96069 
96070 typedef void (*btf_trace_xfs_link)(void *, struct xfs_inode *, const struct xfs_name *);
96071 
96072 typedef void (*btf_trace_xfs_lookup)(void *, struct xfs_inode *, const struct xfs_name *);
96073 
96074 typedef void (*btf_trace_xfs_create)(void *, struct xfs_inode *, const struct xfs_name *);
96075 
96076 typedef void (*btf_trace_xfs_symlink)(void *, struct xfs_inode *, const struct xfs_name *);
96077 
96078 typedef void (*btf_trace_xfs_rename)(void *, struct xfs_inode *, struct xfs_inode *, struct xfs_name *, struct xfs_name *);
96079 
96080 typedef void (*btf_trace_xfs_dqadjust)(void *, struct xfs_dquot *);
96081 
96082 typedef void (*btf_trace_xfs_dqreclaim_want)(void *, struct xfs_dquot *);
96083 
96084 typedef void (*btf_trace_xfs_dqreclaim_dirty)(void *, struct xfs_dquot *);
96085 
96086 typedef void (*btf_trace_xfs_dqreclaim_busy)(void *, struct xfs_dquot *);
96087 
96088 typedef void (*btf_trace_xfs_dqreclaim_done)(void *, struct xfs_dquot *);
96089 
96090 typedef void (*btf_trace_xfs_dqattach_found)(void *, struct xfs_dquot *);
96091 
96092 typedef void (*btf_trace_xfs_dqattach_get)(void *, struct xfs_dquot *);
96093 
96094 typedef void (*btf_trace_xfs_dqalloc)(void *, struct xfs_dquot *);
96095 
96096 typedef void (*btf_trace_xfs_dqtobp_read)(void *, struct xfs_dquot *);
96097 
96098 typedef void (*btf_trace_xfs_dqread)(void *, struct xfs_dquot *);
96099 
96100 typedef void (*btf_trace_xfs_dqread_fail)(void *, struct xfs_dquot *);
96101 
96102 typedef void (*btf_trace_xfs_dqget_hit)(void *, struct xfs_dquot *);
96103 
96104 typedef void (*btf_trace_xfs_dqget_miss)(void *, struct xfs_dquot *);
96105 
96106 typedef void (*btf_trace_xfs_dqget_freeing)(void *, struct xfs_dquot *);
96107 
96108 typedef void (*btf_trace_xfs_dqget_dup)(void *, struct xfs_dquot *);
96109 
96110 typedef void (*btf_trace_xfs_dqput)(void *, struct xfs_dquot *);
96111 
96112 typedef void (*btf_trace_xfs_dqput_free)(void *, struct xfs_dquot *);
96113 
96114 typedef void (*btf_trace_xfs_dqrele)(void *, struct xfs_dquot *);
96115 
96116 typedef void (*btf_trace_xfs_dqflush)(void *, struct xfs_dquot *);
96117 
96118 typedef void (*btf_trace_xfs_dqflush_force)(void *, struct xfs_dquot *);
96119 
96120 typedef void (*btf_trace_xfs_dqflush_done)(void *, struct xfs_dquot *);
96121 
96122 typedef void (*btf_trace_xfs_trans_apply_dquot_deltas_before)(void *, struct xfs_dquot *);
96123 
96124 typedef void (*btf_trace_xfs_trans_apply_dquot_deltas_after)(void *, struct xfs_dquot *);
96125 
96126 typedef void (*btf_trace_xfs_trans_mod_dquot)(void *, struct xfs_trans *, struct xfs_dquot *, unsigned int, int64_t);
96127 
96128 typedef void (*btf_trace_xfs_trans_apply_dquot_deltas)(void *, struct xfs_dqtrx *);
96129 
96130 typedef void (*btf_trace_xfs_trans_mod_dquot_before)(void *, struct xfs_dqtrx *);
96131 
96132 typedef void (*btf_trace_xfs_trans_mod_dquot_after)(void *, struct xfs_dqtrx *);
96133 
96134 typedef void (*btf_trace_xfs_log_umount_write)(void *, struct xlog *, struct xlog_ticket *);
96135 
96136 typedef void (*btf_trace_xfs_log_grant_sleep)(void *, struct xlog *, struct xlog_ticket *);
96137 
96138 typedef void (*btf_trace_xfs_log_grant_wake)(void *, struct xlog *, struct xlog_ticket *);
96139 
96140 typedef void (*btf_trace_xfs_log_grant_wake_up)(void *, struct xlog *, struct xlog_ticket *);
96141 
96142 typedef void (*btf_trace_xfs_log_reserve)(void *, struct xlog *, struct xlog_ticket *);
96143 
96144 typedef void (*btf_trace_xfs_log_reserve_exit)(void *, struct xlog *, struct xlog_ticket *);
96145 
96146 typedef void (*btf_trace_xfs_log_regrant)(void *, struct xlog *, struct xlog_ticket *);
96147 
96148 typedef void (*btf_trace_xfs_log_regrant_exit)(void *, struct xlog *, struct xlog_ticket *);
96149 
96150 typedef void (*btf_trace_xfs_log_ticket_regrant)(void *, struct xlog *, struct xlog_ticket *);
96151 
96152 typedef void (*btf_trace_xfs_log_ticket_regrant_exit)(void *, struct xlog *, struct xlog_ticket *);
96153 
96154 typedef void (*btf_trace_xfs_log_ticket_regrant_sub)(void *, struct xlog *, struct xlog_ticket *);
96155 
96156 typedef void (*btf_trace_xfs_log_ticket_ungrant)(void *, struct xlog *, struct xlog_ticket *);
96157 
96158 typedef void (*btf_trace_xfs_log_ticket_ungrant_sub)(void *, struct xlog *, struct xlog_ticket *);
96159 
96160 typedef void (*btf_trace_xfs_log_ticket_ungrant_exit)(void *, struct xlog *, struct xlog_ticket *);
96161 
96162 typedef void (*btf_trace_xfs_log_cil_wait)(void *, struct xlog *, struct xlog_ticket *);
96163 
96164 typedef void (*btf_trace_xfs_log_force)(void *, struct xfs_mount *, xfs_lsn_t, long unsigned int);
96165 
96166 typedef void (*btf_trace_xfs_ail_push)(void *, struct xfs_log_item *);
96167 
96168 typedef void (*btf_trace_xfs_ail_pinned)(void *, struct xfs_log_item *);
96169 
96170 typedef void (*btf_trace_xfs_ail_locked)(void *, struct xfs_log_item *);
96171 
96172 typedef void (*btf_trace_xfs_ail_flushing)(void *, struct xfs_log_item *);
96173 
96174 typedef void (*btf_trace_xfs_cil_whiteout_mark)(void *, struct xfs_log_item *);
96175 
96176 typedef void (*btf_trace_xfs_cil_whiteout_skip)(void *, struct xfs_log_item *);
96177 
96178 typedef void (*btf_trace_xfs_cil_whiteout_unpin)(void *, struct xfs_log_item *);
96179 
96180 typedef void (*btf_trace_xfs_ail_insert)(void *, struct xfs_log_item *, xfs_lsn_t, xfs_lsn_t);
96181 
96182 typedef void (*btf_trace_xfs_ail_move)(void *, struct xfs_log_item *, xfs_lsn_t, xfs_lsn_t);
96183 
96184 typedef void (*btf_trace_xfs_ail_delete)(void *, struct xfs_log_item *, xfs_lsn_t, xfs_lsn_t);
96185 
96186 typedef void (*btf_trace_xfs_log_assign_tail_lsn)(void *, struct xlog *, xfs_lsn_t);
96187 
96188 typedef void (*btf_trace_xfs_file_buffered_read)(void *, struct kiocb *, struct iov_iter *);
96189 
96190 typedef void (*btf_trace_xfs_file_direct_read)(void *, struct kiocb *, struct iov_iter *);
96191 
96192 typedef void (*btf_trace_xfs_file_dax_read)(void *, struct kiocb *, struct iov_iter *);
96193 
96194 typedef void (*btf_trace_xfs_file_buffered_write)(void *, struct kiocb *, struct iov_iter *);
96195 
96196 typedef void (*btf_trace_xfs_file_direct_write)(void *, struct kiocb *, struct iov_iter *);
96197 
96198 typedef void (*btf_trace_xfs_file_dax_write)(void *, struct kiocb *, struct iov_iter *);
96199 
96200 typedef void (*btf_trace_xfs_reflink_bounce_dio_write)(void *, struct kiocb *, struct iov_iter *);
96201 
96202 typedef void (*btf_trace_xfs_map_blocks_found)(void *, struct xfs_inode *, xfs_off_t, ssize_t, int, struct xfs_bmbt_irec *);
96203 
96204 typedef void (*btf_trace_xfs_map_blocks_alloc)(void *, struct xfs_inode *, xfs_off_t, ssize_t, int, struct xfs_bmbt_irec *);
96205 
96206 typedef void (*btf_trace_xfs_iomap_alloc)(void *, struct xfs_inode *, xfs_off_t, ssize_t, int, struct xfs_bmbt_irec *);
96207 
96208 typedef void (*btf_trace_xfs_iomap_found)(void *, struct xfs_inode *, xfs_off_t, ssize_t, int, struct xfs_bmbt_irec *);
96209 
96210 typedef void (*btf_trace_xfs_delalloc_enospc)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96211 
96212 typedef void (*btf_trace_xfs_unwritten_convert)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96213 
96214 typedef void (*btf_trace_xfs_setfilesize)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96215 
96216 typedef void (*btf_trace_xfs_zero_eof)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96217 
96218 typedef void (*btf_trace_xfs_end_io_direct_write)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96219 
96220 typedef void (*btf_trace_xfs_end_io_direct_write_unwritten)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96221 
96222 typedef void (*btf_trace_xfs_end_io_direct_write_append)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96223 
96224 typedef void (*btf_trace_xfs_itruncate_extents_start)(void *, struct xfs_inode *, xfs_fsize_t);
96225 
96226 typedef void (*btf_trace_xfs_itruncate_extents_end)(void *, struct xfs_inode *, xfs_fsize_t);
96227 
96228 typedef void (*btf_trace_xfs_pagecache_inval)(void *, struct xfs_inode *, xfs_off_t, xfs_off_t);
96229 
96230 typedef void (*btf_trace_xfs_bunmap)(void *, struct xfs_inode *, xfs_fileoff_t, xfs_filblks_t, int, long unsigned int);
96231 
96232 typedef void (*btf_trace_xfs_extent_busy)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96233 
96234 typedef void (*btf_trace_xfs_extent_busy_enomem)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96235 
96236 typedef void (*btf_trace_xfs_extent_busy_force)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96237 
96238 typedef void (*btf_trace_xfs_extent_busy_reuse)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96239 
96240 typedef void (*btf_trace_xfs_extent_busy_clear)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96241 
96242 typedef void (*btf_trace_xfs_extent_busy_trim)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, xfs_agblock_t, xfs_extlen_t);
96243 
96244 typedef void (*btf_trace_xfs_agf)(void *, struct xfs_mount *, struct xfs_agf *, int, long unsigned int);
96245 
96246 typedef void (*btf_trace_xfs_agfl_reset)(void *, struct xfs_mount *, struct xfs_agf *, int, long unsigned int);
96247 
96248 typedef void (*btf_trace_xfs_free_extent)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, enum xfs_ag_resv_type, int, int);
96249 
96250 typedef void (*btf_trace_xfs_alloc_exact_done)(void *, struct xfs_alloc_arg *);
96251 
96252 typedef void (*btf_trace_xfs_alloc_exact_notfound)(void *, struct xfs_alloc_arg *);
96253 
96254 typedef void (*btf_trace_xfs_alloc_exact_error)(void *, struct xfs_alloc_arg *);
96255 
96256 typedef void (*btf_trace_xfs_alloc_near_nominleft)(void *, struct xfs_alloc_arg *);
96257 
96258 typedef void (*btf_trace_xfs_alloc_near_first)(void *, struct xfs_alloc_arg *);
96259 
96260 typedef void (*btf_trace_xfs_alloc_cur)(void *, struct xfs_alloc_arg *);
96261 
96262 typedef void (*btf_trace_xfs_alloc_cur_right)(void *, struct xfs_alloc_arg *);
96263 
96264 typedef void (*btf_trace_xfs_alloc_cur_left)(void *, struct xfs_alloc_arg *);
96265 
96266 typedef void (*btf_trace_xfs_alloc_cur_lookup)(void *, struct xfs_alloc_arg *);
96267 
96268 typedef void (*btf_trace_xfs_alloc_cur_lookup_done)(void *, struct xfs_alloc_arg *);
96269 
96270 typedef void (*btf_trace_xfs_alloc_near_error)(void *, struct xfs_alloc_arg *);
96271 
96272 typedef void (*btf_trace_xfs_alloc_near_noentry)(void *, struct xfs_alloc_arg *);
96273 
96274 typedef void (*btf_trace_xfs_alloc_near_busy)(void *, struct xfs_alloc_arg *);
96275 
96276 typedef void (*btf_trace_xfs_alloc_size_neither)(void *, struct xfs_alloc_arg *);
96277 
96278 typedef void (*btf_trace_xfs_alloc_size_noentry)(void *, struct xfs_alloc_arg *);
96279 
96280 typedef void (*btf_trace_xfs_alloc_size_nominleft)(void *, struct xfs_alloc_arg *);
96281 
96282 typedef void (*btf_trace_xfs_alloc_size_done)(void *, struct xfs_alloc_arg *);
96283 
96284 typedef void (*btf_trace_xfs_alloc_size_error)(void *, struct xfs_alloc_arg *);
96285 
96286 typedef void (*btf_trace_xfs_alloc_size_busy)(void *, struct xfs_alloc_arg *);
96287 
96288 typedef void (*btf_trace_xfs_alloc_small_freelist)(void *, struct xfs_alloc_arg *);
96289 
96290 typedef void (*btf_trace_xfs_alloc_small_notenough)(void *, struct xfs_alloc_arg *);
96291 
96292 typedef void (*btf_trace_xfs_alloc_small_done)(void *, struct xfs_alloc_arg *);
96293 
96294 typedef void (*btf_trace_xfs_alloc_small_error)(void *, struct xfs_alloc_arg *);
96295 
96296 typedef void (*btf_trace_xfs_alloc_vextent_badargs)(void *, struct xfs_alloc_arg *);
96297 
96298 typedef void (*btf_trace_xfs_alloc_vextent_nofix)(void *, struct xfs_alloc_arg *);
96299 
96300 typedef void (*btf_trace_xfs_alloc_vextent_noagbp)(void *, struct xfs_alloc_arg *);
96301 
96302 typedef void (*btf_trace_xfs_alloc_vextent_loopfailed)(void *, struct xfs_alloc_arg *);
96303 
96304 typedef void (*btf_trace_xfs_alloc_vextent_allfailed)(void *, struct xfs_alloc_arg *);
96305 
96306 typedef void (*btf_trace_xfs_alloc_cur_check)(void *, struct xfs_mount *, xfs_btnum_t, xfs_agblock_t, xfs_extlen_t, xfs_extlen_t, bool);
96307 
96308 typedef void (*btf_trace_xfs_dir2_sf_addname)(void *, struct xfs_da_args *);
96309 
96310 typedef void (*btf_trace_xfs_dir2_sf_create)(void *, struct xfs_da_args *);
96311 
96312 typedef void (*btf_trace_xfs_dir2_sf_lookup)(void *, struct xfs_da_args *);
96313 
96314 typedef void (*btf_trace_xfs_dir2_sf_replace)(void *, struct xfs_da_args *);
96315 
96316 typedef void (*btf_trace_xfs_dir2_sf_removename)(void *, struct xfs_da_args *);
96317 
96318 typedef void (*btf_trace_xfs_dir2_sf_toino4)(void *, struct xfs_da_args *);
96319 
96320 typedef void (*btf_trace_xfs_dir2_sf_toino8)(void *, struct xfs_da_args *);
96321 
96322 typedef void (*btf_trace_xfs_dir2_sf_to_block)(void *, struct xfs_da_args *);
96323 
96324 typedef void (*btf_trace_xfs_dir2_block_addname)(void *, struct xfs_da_args *);
96325 
96326 typedef void (*btf_trace_xfs_dir2_block_lookup)(void *, struct xfs_da_args *);
96327 
96328 typedef void (*btf_trace_xfs_dir2_block_replace)(void *, struct xfs_da_args *);
96329 
96330 typedef void (*btf_trace_xfs_dir2_block_removename)(void *, struct xfs_da_args *);
96331 
96332 typedef void (*btf_trace_xfs_dir2_block_to_sf)(void *, struct xfs_da_args *);
96333 
96334 typedef void (*btf_trace_xfs_dir2_block_to_leaf)(void *, struct xfs_da_args *);
96335 
96336 typedef void (*btf_trace_xfs_dir2_leaf_addname)(void *, struct xfs_da_args *);
96337 
96338 typedef void (*btf_trace_xfs_dir2_leaf_lookup)(void *, struct xfs_da_args *);
96339 
96340 typedef void (*btf_trace_xfs_dir2_leaf_replace)(void *, struct xfs_da_args *);
96341 
96342 typedef void (*btf_trace_xfs_dir2_leaf_removename)(void *, struct xfs_da_args *);
96343 
96344 typedef void (*btf_trace_xfs_dir2_leaf_to_block)(void *, struct xfs_da_args *);
96345 
96346 typedef void (*btf_trace_xfs_dir2_leaf_to_node)(void *, struct xfs_da_args *);
96347 
96348 typedef void (*btf_trace_xfs_dir2_node_addname)(void *, struct xfs_da_args *);
96349 
96350 typedef void (*btf_trace_xfs_dir2_node_lookup)(void *, struct xfs_da_args *);
96351 
96352 typedef void (*btf_trace_xfs_dir2_node_replace)(void *, struct xfs_da_args *);
96353 
96354 typedef void (*btf_trace_xfs_dir2_node_removename)(void *, struct xfs_da_args *);
96355 
96356 typedef void (*btf_trace_xfs_dir2_node_to_leaf)(void *, struct xfs_da_args *);
96357 
96358 typedef void (*btf_trace_xfs_attr_sf_add)(void *, struct xfs_da_args *);
96359 
96360 typedef void (*btf_trace_xfs_attr_sf_addname)(void *, struct xfs_da_args *);
96361 
96362 typedef void (*btf_trace_xfs_attr_sf_create)(void *, struct xfs_da_args *);
96363 
96364 typedef void (*btf_trace_xfs_attr_sf_lookup)(void *, struct xfs_da_args *);
96365 
96366 typedef void (*btf_trace_xfs_attr_sf_remove)(void *, struct xfs_da_args *);
96367 
96368 typedef void (*btf_trace_xfs_attr_sf_to_leaf)(void *, struct xfs_da_args *);
96369 
96370 typedef void (*btf_trace_xfs_attr_leaf_add)(void *, struct xfs_da_args *);
96371 
96372 typedef void (*btf_trace_xfs_attr_leaf_add_old)(void *, struct xfs_da_args *);
96373 
96374 typedef void (*btf_trace_xfs_attr_leaf_add_new)(void *, struct xfs_da_args *);
96375 
96376 typedef void (*btf_trace_xfs_attr_leaf_add_work)(void *, struct xfs_da_args *);
96377 
96378 typedef void (*btf_trace_xfs_attr_leaf_create)(void *, struct xfs_da_args *);
96379 
96380 typedef void (*btf_trace_xfs_attr_leaf_compact)(void *, struct xfs_da_args *);
96381 
96382 typedef void (*btf_trace_xfs_attr_leaf_get)(void *, struct xfs_da_args *);
96383 
96384 typedef void (*btf_trace_xfs_attr_leaf_lookup)(void *, struct xfs_da_args *);
96385 
96386 typedef void (*btf_trace_xfs_attr_leaf_replace)(void *, struct xfs_da_args *);
96387 
96388 typedef void (*btf_trace_xfs_attr_leaf_remove)(void *, struct xfs_da_args *);
96389 
96390 typedef void (*btf_trace_xfs_attr_leaf_removename)(void *, struct xfs_da_args *);
96391 
96392 typedef void (*btf_trace_xfs_attr_leaf_split)(void *, struct xfs_da_args *);
96393 
96394 typedef void (*btf_trace_xfs_attr_leaf_split_before)(void *, struct xfs_da_args *);
96395 
96396 typedef void (*btf_trace_xfs_attr_leaf_split_after)(void *, struct xfs_da_args *);
96397 
96398 typedef void (*btf_trace_xfs_attr_leaf_clearflag)(void *, struct xfs_da_args *);
96399 
96400 typedef void (*btf_trace_xfs_attr_leaf_setflag)(void *, struct xfs_da_args *);
96401 
96402 typedef void (*btf_trace_xfs_attr_leaf_flipflags)(void *, struct xfs_da_args *);
96403 
96404 typedef void (*btf_trace_xfs_attr_leaf_to_sf)(void *, struct xfs_da_args *);
96405 
96406 typedef void (*btf_trace_xfs_attr_leaf_to_node)(void *, struct xfs_da_args *);
96407 
96408 typedef void (*btf_trace_xfs_attr_leaf_rebalance)(void *, struct xfs_da_args *);
96409 
96410 typedef void (*btf_trace_xfs_attr_leaf_unbalance)(void *, struct xfs_da_args *);
96411 
96412 typedef void (*btf_trace_xfs_attr_leaf_toosmall)(void *, struct xfs_da_args *);
96413 
96414 typedef void (*btf_trace_xfs_attr_node_addname)(void *, struct xfs_da_args *);
96415 
96416 typedef void (*btf_trace_xfs_attr_node_get)(void *, struct xfs_da_args *);
96417 
96418 typedef void (*btf_trace_xfs_attr_node_replace)(void *, struct xfs_da_args *);
96419 
96420 typedef void (*btf_trace_xfs_attr_node_removename)(void *, struct xfs_da_args *);
96421 
96422 typedef void (*btf_trace_xfs_attr_fillstate)(void *, struct xfs_da_args *);
96423 
96424 typedef void (*btf_trace_xfs_attr_refillstate)(void *, struct xfs_da_args *);
96425 
96426 typedef void (*btf_trace_xfs_attr_rmtval_get)(void *, struct xfs_da_args *);
96427 
96428 typedef void (*btf_trace_xfs_attr_rmtval_set)(void *, struct xfs_da_args *);
96429 
96430 typedef void (*btf_trace_xfs_da_split)(void *, struct xfs_da_args *);
96431 
96432 typedef void (*btf_trace_xfs_da_join)(void *, struct xfs_da_args *);
96433 
96434 typedef void (*btf_trace_xfs_da_link_before)(void *, struct xfs_da_args *);
96435 
96436 typedef void (*btf_trace_xfs_da_link_after)(void *, struct xfs_da_args *);
96437 
96438 typedef void (*btf_trace_xfs_da_unlink_back)(void *, struct xfs_da_args *);
96439 
96440 typedef void (*btf_trace_xfs_da_unlink_forward)(void *, struct xfs_da_args *);
96441 
96442 typedef void (*btf_trace_xfs_da_root_split)(void *, struct xfs_da_args *);
96443 
96444 typedef void (*btf_trace_xfs_da_root_join)(void *, struct xfs_da_args *);
96445 
96446 typedef void (*btf_trace_xfs_da_node_add)(void *, struct xfs_da_args *);
96447 
96448 typedef void (*btf_trace_xfs_da_node_create)(void *, struct xfs_da_args *);
96449 
96450 typedef void (*btf_trace_xfs_da_node_split)(void *, struct xfs_da_args *);
96451 
96452 typedef void (*btf_trace_xfs_da_node_remove)(void *, struct xfs_da_args *);
96453 
96454 typedef void (*btf_trace_xfs_da_node_rebalance)(void *, struct xfs_da_args *);
96455 
96456 typedef void (*btf_trace_xfs_da_node_unbalance)(void *, struct xfs_da_args *);
96457 
96458 typedef void (*btf_trace_xfs_da_node_toosmall)(void *, struct xfs_da_args *);
96459 
96460 typedef void (*btf_trace_xfs_da_swap_lastblock)(void *, struct xfs_da_args *);
96461 
96462 typedef void (*btf_trace_xfs_da_grow_inode)(void *, struct xfs_da_args *);
96463 
96464 typedef void (*btf_trace_xfs_da_shrink_inode)(void *, struct xfs_da_args *);
96465 
96466 typedef void (*btf_trace_xfs_da_fixhashpath)(void *, struct xfs_da_args *);
96467 
96468 typedef void (*btf_trace_xfs_da_path_shift)(void *, struct xfs_da_args *);
96469 
96470 typedef void (*btf_trace_xfs_dir2_leafn_add)(void *, struct xfs_da_args *, int);
96471 
96472 typedef void (*btf_trace_xfs_dir2_leafn_remove)(void *, struct xfs_da_args *, int);
96473 
96474 typedef void (*btf_trace_xfs_dir2_grow_inode)(void *, struct xfs_da_args *, int);
96475 
96476 typedef void (*btf_trace_xfs_dir2_shrink_inode)(void *, struct xfs_da_args *, int);
96477 
96478 typedef void (*btf_trace_xfs_dir2_leafn_moveents)(void *, struct xfs_da_args *, int, int, int);
96479 
96480 typedef void (*btf_trace_xfs_swap_extent_before)(void *, struct xfs_inode *, int);
96481 
96482 typedef void (*btf_trace_xfs_swap_extent_after)(void *, struct xfs_inode *, int);
96483 
96484 typedef void (*btf_trace_xfs_log_recover)(void *, struct xlog *, xfs_daddr_t, xfs_daddr_t);
96485 
96486 typedef void (*btf_trace_xfs_log_recover_record)(void *, struct xlog *, struct xlog_rec_header *, int);
96487 
96488 typedef void (*btf_trace_xfs_log_recover_item_add)(void *, struct xlog *, struct xlog_recover *, struct xlog_recover_item *, int);
96489 
96490 typedef void (*btf_trace_xfs_log_recover_item_add_cont)(void *, struct xlog *, struct xlog_recover *, struct xlog_recover_item *, int);
96491 
96492 typedef void (*btf_trace_xfs_log_recover_item_reorder_head)(void *, struct xlog *, struct xlog_recover *, struct xlog_recover_item *, int);
96493 
96494 typedef void (*btf_trace_xfs_log_recover_item_reorder_tail)(void *, struct xlog *, struct xlog_recover *, struct xlog_recover_item *, int);
96495 
96496 typedef void (*btf_trace_xfs_log_recover_item_recover)(void *, struct xlog *, struct xlog_recover *, struct xlog_recover_item *, int);
96497 
96498 typedef void (*btf_trace_xfs_log_recover_buf_not_cancel)(void *, struct xlog *, struct xfs_buf_log_format *);
96499 
96500 typedef void (*btf_trace_xfs_log_recover_buf_cancel)(void *, struct xlog *, struct xfs_buf_log_format *);
96501 
96502 typedef void (*btf_trace_xfs_log_recover_buf_cancel_add)(void *, struct xlog *, struct xfs_buf_log_format *);
96503 
96504 typedef void (*btf_trace_xfs_log_recover_buf_cancel_ref_inc)(void *, struct xlog *, struct xfs_buf_log_format *);
96505 
96506 typedef void (*btf_trace_xfs_log_recover_buf_recover)(void *, struct xlog *, struct xfs_buf_log_format *);
96507 
96508 typedef void (*btf_trace_xfs_log_recover_buf_skip)(void *, struct xlog *, struct xfs_buf_log_format *);
96509 
96510 typedef void (*btf_trace_xfs_log_recover_buf_inode_buf)(void *, struct xlog *, struct xfs_buf_log_format *);
96511 
96512 typedef void (*btf_trace_xfs_log_recover_buf_reg_buf)(void *, struct xlog *, struct xfs_buf_log_format *);
96513 
96514 typedef void (*btf_trace_xfs_log_recover_buf_dquot_buf)(void *, struct xlog *, struct xfs_buf_log_format *);
96515 
96516 typedef void (*btf_trace_xfs_log_recover_inode_recover)(void *, struct xlog *, struct xfs_inode_log_format *);
96517 
96518 typedef void (*btf_trace_xfs_log_recover_inode_cancel)(void *, struct xlog *, struct xfs_inode_log_format *);
96519 
96520 typedef void (*btf_trace_xfs_log_recover_inode_skip)(void *, struct xlog *, struct xfs_inode_log_format *);
96521 
96522 typedef void (*btf_trace_xfs_log_recover_icreate_cancel)(void *, struct xlog *, struct xfs_icreate_log *);
96523 
96524 typedef void (*btf_trace_xfs_log_recover_icreate_recover)(void *, struct xlog *, struct xfs_icreate_log *);
96525 
96526 typedef void (*btf_trace_xfs_discard_extent)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96527 
96528 typedef void (*btf_trace_xfs_discard_toosmall)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96529 
96530 typedef void (*btf_trace_xfs_discard_exclude)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96531 
96532 typedef void (*btf_trace_xfs_discard_busy)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96533 
96534 typedef void (*btf_trace_xfs_btree_updkeys)(void *, struct xfs_btree_cur *, int, struct xfs_buf *);
96535 
96536 typedef void (*btf_trace_xfs_btree_overlapped_query_range)(void *, struct xfs_btree_cur *, int, struct xfs_buf *);
96537 
96538 typedef void (*btf_trace_xfs_defer_cancel)(void *, struct xfs_trans *, long unsigned int);
96539 
96540 typedef void (*btf_trace_xfs_defer_trans_roll)(void *, struct xfs_trans *, long unsigned int);
96541 
96542 typedef void (*btf_trace_xfs_defer_trans_abort)(void *, struct xfs_trans *, long unsigned int);
96543 
96544 typedef void (*btf_trace_xfs_defer_finish)(void *, struct xfs_trans *, long unsigned int);
96545 
96546 typedef void (*btf_trace_xfs_defer_finish_done)(void *, struct xfs_trans *, long unsigned int);
96547 
96548 typedef void (*btf_trace_xfs_defer_trans_roll_error)(void *, struct xfs_trans *, int);
96549 
96550 typedef void (*btf_trace_xfs_defer_finish_error)(void *, struct xfs_trans *, int);
96551 
96552 typedef void (*btf_trace_xfs_defer_create_intent)(void *, struct xfs_mount *, struct xfs_defer_pending *);
96553 
96554 typedef void (*btf_trace_xfs_defer_cancel_list)(void *, struct xfs_mount *, struct xfs_defer_pending *);
96555 
96556 typedef void (*btf_trace_xfs_defer_pending_finish)(void *, struct xfs_mount *, struct xfs_defer_pending *);
96557 
96558 typedef void (*btf_trace_xfs_defer_pending_abort)(void *, struct xfs_mount *, struct xfs_defer_pending *);
96559 
96560 typedef void (*btf_trace_xfs_defer_relog_intent)(void *, struct xfs_mount *, struct xfs_defer_pending *);
96561 
96562 typedef void (*btf_trace_xfs_bmap_free_defer)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96563 
96564 typedef void (*btf_trace_xfs_bmap_free_deferred)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96565 
96566 typedef void (*btf_trace_xfs_agfl_free_defer)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96567 
96568 typedef void (*btf_trace_xfs_agfl_free_deferred)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96569 
96570 typedef void (*btf_trace_xfs_rmap_unmap)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96571 
96572 typedef void (*btf_trace_xfs_rmap_unmap_done)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96573 
96574 typedef void (*btf_trace_xfs_rmap_unmap_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96575 
96576 typedef void (*btf_trace_xfs_rmap_map)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96577 
96578 typedef void (*btf_trace_xfs_rmap_map_done)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96579 
96580 typedef void (*btf_trace_xfs_rmap_map_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96581 
96582 typedef void (*btf_trace_xfs_rmap_convert)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96583 
96584 typedef void (*btf_trace_xfs_rmap_convert_done)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, bool, const struct xfs_owner_info *);
96585 
96586 typedef void (*btf_trace_xfs_rmap_convert_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96587 
96588 typedef void (*btf_trace_xfs_rmap_convert_state)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96589 
96590 typedef void (*btf_trace_xfs_rmap_defer)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_ino_t, int, xfs_fileoff_t, xfs_filblks_t, xfs_exntst_t);
96591 
96592 typedef void (*btf_trace_xfs_rmap_deferred)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_ino_t, int, xfs_fileoff_t, xfs_filblks_t, xfs_exntst_t);
96593 
96594 typedef void (*btf_trace_xfs_rmapbt_alloc_block)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96595 
96596 typedef void (*btf_trace_xfs_rmapbt_free_block)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96597 
96598 typedef void (*btf_trace_xfs_rmap_update)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96599 
96600 typedef void (*btf_trace_xfs_rmap_insert)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96601 
96602 typedef void (*btf_trace_xfs_rmap_delete)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96603 
96604 typedef void (*btf_trace_xfs_rmap_insert_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96605 
96606 typedef void (*btf_trace_xfs_rmap_delete_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96607 
96608 typedef void (*btf_trace_xfs_rmap_update_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96609 
96610 typedef void (*btf_trace_xfs_rmap_find_left_neighbor_candidate)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96611 
96612 typedef void (*btf_trace_xfs_rmap_find_left_neighbor_query)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96613 
96614 typedef void (*btf_trace_xfs_rmap_lookup_le_range_candidate)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96615 
96616 typedef void (*btf_trace_xfs_rmap_lookup_le_range)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96617 
96618 typedef void (*btf_trace_xfs_rmap_lookup_le_range_result)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96619 
96620 typedef void (*btf_trace_xfs_rmap_find_right_neighbor_result)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96621 
96622 typedef void (*btf_trace_xfs_rmap_find_left_neighbor_result)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t, uint64_t, uint64_t, unsigned int);
96623 
96624 typedef void (*btf_trace_xfs_bmap_defer)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_ino_t, int, xfs_fileoff_t, xfs_filblks_t, xfs_exntst_t);
96625 
96626 typedef void (*btf_trace_xfs_bmap_deferred)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_ino_t, int, xfs_fileoff_t, xfs_filblks_t, xfs_exntst_t);
96627 
96628 typedef void (*btf_trace_xfs_ag_resv_init)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96629 
96630 typedef void (*btf_trace_xfs_ag_resv_free)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96631 
96632 typedef void (*btf_trace_xfs_ag_resv_alloc_extent)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96633 
96634 typedef void (*btf_trace_xfs_ag_resv_free_extent)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96635 
96636 typedef void (*btf_trace_xfs_ag_resv_critical)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96637 
96638 typedef void (*btf_trace_xfs_ag_resv_needed)(void *, struct xfs_perag *, enum xfs_ag_resv_type, xfs_extlen_t);
96639 
96640 typedef void (*btf_trace_xfs_ag_resv_free_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96641 
96642 typedef void (*btf_trace_xfs_ag_resv_init_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96643 
96644 typedef void (*btf_trace_xfs_refcountbt_alloc_block)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96645 
96646 typedef void (*btf_trace_xfs_refcountbt_free_block)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96647 
96648 typedef void (*btf_trace_xfs_refcount_lookup)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_lookup_t);
96649 
96650 typedef void (*btf_trace_xfs_refcount_get)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96651 
96652 typedef void (*btf_trace_xfs_refcount_update)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96653 
96654 typedef void (*btf_trace_xfs_refcount_insert)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96655 
96656 typedef void (*btf_trace_xfs_refcount_delete)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96657 
96658 typedef void (*btf_trace_xfs_refcount_insert_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96659 
96660 typedef void (*btf_trace_xfs_refcount_delete_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96661 
96662 typedef void (*btf_trace_xfs_refcount_update_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96663 
96664 typedef void (*btf_trace_xfs_refcount_increase)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96665 
96666 typedef void (*btf_trace_xfs_refcount_decrease)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96667 
96668 typedef void (*btf_trace_xfs_refcount_cow_increase)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96669 
96670 typedef void (*btf_trace_xfs_refcount_cow_decrease)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96671 
96672 typedef void (*btf_trace_xfs_refcount_merge_center_extents)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, struct xfs_refcount_irec *, struct xfs_refcount_irec *);
96673 
96674 typedef void (*btf_trace_xfs_refcount_modify_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96675 
96676 typedef void (*btf_trace_xfs_refcount_recover_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *);
96677 
96678 typedef void (*btf_trace_xfs_refcount_split_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, xfs_agblock_t);
96679 
96680 typedef void (*btf_trace_xfs_refcount_merge_left_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, struct xfs_refcount_irec *);
96681 
96682 typedef void (*btf_trace_xfs_refcount_merge_right_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, struct xfs_refcount_irec *);
96683 
96684 typedef void (*btf_trace_xfs_refcount_find_left_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, struct xfs_refcount_irec *, xfs_agblock_t);
96685 
96686 typedef void (*btf_trace_xfs_refcount_find_right_extent)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_refcount_irec *, struct xfs_refcount_irec *, xfs_agblock_t);
96687 
96688 typedef void (*btf_trace_xfs_refcount_adjust_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96689 
96690 typedef void (*btf_trace_xfs_refcount_adjust_cow_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96691 
96692 typedef void (*btf_trace_xfs_refcount_merge_center_extents_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96693 
96694 typedef void (*btf_trace_xfs_refcount_modify_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96695 
96696 typedef void (*btf_trace_xfs_refcount_split_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96697 
96698 typedef void (*btf_trace_xfs_refcount_merge_left_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96699 
96700 typedef void (*btf_trace_xfs_refcount_merge_right_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96701 
96702 typedef void (*btf_trace_xfs_refcount_find_left_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96703 
96704 typedef void (*btf_trace_xfs_refcount_find_right_extent_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96705 
96706 typedef void (*btf_trace_xfs_refcount_find_shared)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96707 
96708 typedef void (*btf_trace_xfs_refcount_find_shared_result)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agblock_t, xfs_extlen_t);
96709 
96710 typedef void (*btf_trace_xfs_refcount_find_shared_error)(void *, struct xfs_mount *, xfs_agnumber_t, int, long unsigned int);
96711 
96712 typedef void (*btf_trace_xfs_refcount_defer)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96713 
96714 typedef void (*btf_trace_xfs_refcount_deferred)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t);
96715 
96716 typedef void (*btf_trace_xfs_refcount_finish_one_leftover)(void *, struct xfs_mount *, xfs_agnumber_t, int, xfs_agblock_t, xfs_extlen_t, xfs_agblock_t, xfs_extlen_t);
96717 
96718 typedef void (*btf_trace_xfs_reflink_set_inode_flag)(void *, struct xfs_inode *);
96719 
96720 typedef void (*btf_trace_xfs_reflink_unset_inode_flag)(void *, struct xfs_inode *);
96721 
96722 typedef void (*btf_trace_xfs_reflink_update_inode_size)(void *, struct xfs_inode *, xfs_fsize_t);
96723 
96724 typedef void (*btf_trace_xfs_reflink_remap_blocks)(void *, struct xfs_inode *, xfs_fileoff_t, xfs_filblks_t, struct xfs_inode *, xfs_fileoff_t);
96725 
96726 typedef void (*btf_trace_xfs_reflink_remap_range)(void *, struct xfs_inode *, xfs_off_t, xfs_off_t, struct xfs_inode *, xfs_off_t);
96727 
96728 typedef void (*btf_trace_xfs_reflink_remap_range_error)(void *, struct xfs_inode *, int, long unsigned int);
96729 
96730 typedef void (*btf_trace_xfs_reflink_set_inode_flag_error)(void *, struct xfs_inode *, int, long unsigned int);
96731 
96732 typedef void (*btf_trace_xfs_reflink_update_inode_size_error)(void *, struct xfs_inode *, int, long unsigned int);
96733 
96734 typedef void (*btf_trace_xfs_reflink_remap_blocks_error)(void *, struct xfs_inode *, int, long unsigned int);
96735 
96736 typedef void (*btf_trace_xfs_reflink_remap_extent_error)(void *, struct xfs_inode *, int, long unsigned int);
96737 
96738 typedef void (*btf_trace_xfs_reflink_remap_extent_src)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96739 
96740 typedef void (*btf_trace_xfs_reflink_remap_extent_dest)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96741 
96742 typedef void (*btf_trace_xfs_reflink_compare_extents)(void *, struct xfs_inode *, xfs_off_t, xfs_off_t, struct xfs_inode *, xfs_off_t);
96743 
96744 typedef void (*btf_trace_xfs_reflink_compare_extents_error)(void *, struct xfs_inode *, int, long unsigned int);
96745 
96746 typedef void (*btf_trace_xfs_ioctl_clone)(void *, struct inode *, struct inode *);
96747 
96748 typedef void (*btf_trace_xfs_reflink_unshare)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96749 
96750 typedef void (*btf_trace_xfs_reflink_unshare_error)(void *, struct xfs_inode *, int, long unsigned int);
96751 
96752 typedef void (*btf_trace_xfs_reflink_trim_around_shared)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96753 
96754 typedef void (*btf_trace_xfs_reflink_cow_found)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96755 
96756 typedef void (*btf_trace_xfs_reflink_cow_enospc)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96757 
96758 typedef void (*btf_trace_xfs_reflink_convert_cow)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96759 
96760 typedef void (*btf_trace_xfs_reflink_cancel_cow_range)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96761 
96762 typedef void (*btf_trace_xfs_reflink_end_cow)(void *, struct xfs_inode *, xfs_off_t, ssize_t);
96763 
96764 typedef void (*btf_trace_xfs_reflink_cow_remap_from)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96765 
96766 typedef void (*btf_trace_xfs_reflink_cow_remap_to)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96767 
96768 typedef void (*btf_trace_xfs_reflink_cancel_cow_range_error)(void *, struct xfs_inode *, int, long unsigned int);
96769 
96770 typedef void (*btf_trace_xfs_reflink_end_cow_error)(void *, struct xfs_inode *, int, long unsigned int);
96771 
96772 typedef void (*btf_trace_xfs_reflink_cancel_cow)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96773 
96774 typedef void (*btf_trace_xfs_swap_extent_rmap_remap)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96775 
96776 typedef void (*btf_trace_xfs_swap_extent_rmap_remap_piece)(void *, struct xfs_inode *, struct xfs_bmbt_irec *);
96777 
96778 typedef void (*btf_trace_xfs_swap_extent_rmap_error)(void *, struct xfs_inode *, int, long unsigned int);
96779 
96780 typedef void (*btf_trace_xfs_fsmap_low_key)(void *, struct xfs_mount *, u32, xfs_agnumber_t, const struct xfs_rmap_irec *);
96781 
96782 typedef void (*btf_trace_xfs_fsmap_high_key)(void *, struct xfs_mount *, u32, xfs_agnumber_t, const struct xfs_rmap_irec *);
96783 
96784 typedef void (*btf_trace_xfs_fsmap_mapping)(void *, struct xfs_mount *, u32, xfs_agnumber_t, const struct xfs_rmap_irec *);
96785 
96786 typedef void (*btf_trace_xfs_getfsmap_low_key)(void *, struct xfs_mount *, struct xfs_fsmap *);
96787 
96788 typedef void (*btf_trace_xfs_getfsmap_high_key)(void *, struct xfs_mount *, struct xfs_fsmap *);
96789 
96790 typedef void (*btf_trace_xfs_getfsmap_mapping)(void *, struct xfs_mount *, struct xfs_fsmap *);
96791 
96792 typedef void (*btf_trace_xfs_trans_resv_calc)(void *, struct xfs_mount *, unsigned int, struct xfs_trans_res *);
96793 
96794 typedef void (*btf_trace_xfs_trans_resv_calc_minlogsize)(void *, struct xfs_mount *, unsigned int, struct xfs_trans_res *);
96795 
96796 typedef void (*btf_trace_xfs_log_get_max_trans_res)(void *, struct xfs_mount *, const struct xfs_trans_res *);
96797 
96798 typedef void (*btf_trace_xfs_trans_alloc)(void *, struct xfs_trans *, long unsigned int);
96799 
96800 typedef void (*btf_trace_xfs_trans_cancel)(void *, struct xfs_trans *, long unsigned int);
96801 
96802 typedef void (*btf_trace_xfs_trans_commit)(void *, struct xfs_trans *, long unsigned int);
96803 
96804 typedef void (*btf_trace_xfs_trans_dup)(void *, struct xfs_trans *, long unsigned int);
96805 
96806 typedef void (*btf_trace_xfs_trans_free)(void *, struct xfs_trans *, long unsigned int);
96807 
96808 typedef void (*btf_trace_xfs_trans_roll)(void *, struct xfs_trans *, long unsigned int);
96809 
96810 typedef void (*btf_trace_xfs_trans_add_item)(void *, struct xfs_trans *, long unsigned int);
96811 
96812 typedef void (*btf_trace_xfs_trans_commit_items)(void *, struct xfs_trans *, long unsigned int);
96813 
96814 typedef void (*btf_trace_xfs_trans_free_items)(void *, struct xfs_trans *, long unsigned int);
96815 
96816 typedef void (*btf_trace_xfs_iunlink_update_bucket)(void *, struct xfs_mount *, xfs_agnumber_t, unsigned int, xfs_agino_t, xfs_agino_t);
96817 
96818 typedef void (*btf_trace_xfs_iunlink_update_dinode)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agino_t, xfs_agino_t, xfs_agino_t);
96819 
96820 typedef void (*btf_trace_xfs_iunlink)(void *, struct xfs_inode *);
96821 
96822 typedef void (*btf_trace_xfs_iunlink_remove)(void *, struct xfs_inode *);
96823 
96824 typedef void (*btf_trace_xfs_fs_mark_sick)(void *, struct xfs_mount *, unsigned int);
96825 
96826 typedef void (*btf_trace_xfs_fs_mark_healthy)(void *, struct xfs_mount *, unsigned int);
96827 
96828 typedef void (*btf_trace_xfs_fs_unfixed_corruption)(void *, struct xfs_mount *, unsigned int);
96829 
96830 typedef void (*btf_trace_xfs_rt_mark_sick)(void *, struct xfs_mount *, unsigned int);
96831 
96832 typedef void (*btf_trace_xfs_rt_mark_healthy)(void *, struct xfs_mount *, unsigned int);
96833 
96834 typedef void (*btf_trace_xfs_rt_unfixed_corruption)(void *, struct xfs_mount *, unsigned int);
96835 
96836 typedef void (*btf_trace_xfs_ag_mark_sick)(void *, struct xfs_mount *, xfs_agnumber_t, unsigned int);
96837 
96838 typedef void (*btf_trace_xfs_ag_mark_healthy)(void *, struct xfs_mount *, xfs_agnumber_t, unsigned int);
96839 
96840 typedef void (*btf_trace_xfs_ag_unfixed_corruption)(void *, struct xfs_mount *, xfs_agnumber_t, unsigned int);
96841 
96842 typedef void (*btf_trace_xfs_inode_mark_sick)(void *, struct xfs_inode *, unsigned int);
96843 
96844 typedef void (*btf_trace_xfs_inode_mark_healthy)(void *, struct xfs_inode *, unsigned int);
96845 
96846 typedef void (*btf_trace_xfs_iwalk_ag)(void *, struct xfs_mount *, xfs_agnumber_t, xfs_agino_t);
96847 
96848 typedef void (*btf_trace_xfs_iwalk_ag_rec)(void *, struct xfs_mount *, xfs_agnumber_t, struct xfs_inobt_rec_incore *);
96849 
96850 typedef void (*btf_trace_xfs_pwork_init)(void *, struct xfs_mount *, unsigned int, pid_t);
96851 
96852 typedef void (*btf_trace_kmem_alloc)(void *, ssize_t, int, long unsigned int);
96853 
96854 typedef void (*btf_trace_xfs_check_new_dalign)(void *, struct xfs_mount *, int, xfs_ino_t);
96855 
96856 typedef void (*btf_trace_xfs_btree_commit_afakeroot)(void *, struct xfs_btree_cur *);
96857 
96858 typedef void (*btf_trace_xfs_btree_commit_ifakeroot)(void *, struct xfs_btree_cur *);
96859 
96860 typedef void (*btf_trace_xfs_btree_bload_level_geometry)(void *, struct xfs_btree_cur *, unsigned int, uint64_t, unsigned int, unsigned int, uint64_t, uint64_t);
96861 
96862 typedef void (*btf_trace_xfs_btree_bload_block)(void *, struct xfs_btree_cur *, unsigned int, uint64_t, uint64_t, union xfs_btree_ptr *, unsigned int);
96863 
96864 typedef void (*btf_trace_xfs_inode_timestamp_range)(void *, struct xfs_mount *, long long int, long long int);
96865 
96866 typedef void (*btf_trace_xfs_quota_expiry_range)(void *, struct xfs_mount *, long long int, long long int);
96867 
96868 typedef void (*btf_trace_xfs_ioc_free_eofblocks)(void *, struct xfs_mount *, struct xfs_icwalk *, long unsigned int);
96869 
96870 typedef void (*btf_trace_xfs_blockgc_free_space)(void *, struct xfs_mount *, struct xfs_icwalk *, long unsigned int);
96871 
96872 typedef void (*btf_trace_xlog_iclog_activate)(void *, struct xlog_in_core *, long unsigned int);
96873 
96874 typedef void (*btf_trace_xlog_iclog_clean)(void *, struct xlog_in_core *, long unsigned int);
96875 
96876 typedef void (*btf_trace_xlog_iclog_callback)(void *, struct xlog_in_core *, long unsigned int);
96877 
96878 typedef void (*btf_trace_xlog_iclog_callbacks_start)(void *, struct xlog_in_core *, long unsigned int);
96879 
96880 typedef void (*btf_trace_xlog_iclog_callbacks_done)(void *, struct xlog_in_core *, long unsigned int);
96881 
96882 typedef void (*btf_trace_xlog_iclog_force)(void *, struct xlog_in_core *, long unsigned int);
96883 
96884 typedef void (*btf_trace_xlog_iclog_force_lsn)(void *, struct xlog_in_core *, long unsigned int);
96885 
96886 typedef void (*btf_trace_xlog_iclog_get_space)(void *, struct xlog_in_core *, long unsigned int);
96887 
96888 typedef void (*btf_trace_xlog_iclog_release)(void *, struct xlog_in_core *, long unsigned int);
96889 
96890 typedef void (*btf_trace_xlog_iclog_switch)(void *, struct xlog_in_core *, long unsigned int);
96891 
96892 typedef void (*btf_trace_xlog_iclog_sync)(void *, struct xlog_in_core *, long unsigned int);
96893 
96894 typedef void (*btf_trace_xlog_iclog_syncing)(void *, struct xlog_in_core *, long unsigned int);
96895 
96896 typedef void (*btf_trace_xlog_iclog_sync_done)(void *, struct xlog_in_core *, long unsigned int);
96897 
96898 typedef void (*btf_trace_xlog_iclog_want_sync)(void *, struct xlog_in_core *, long unsigned int);
96899 
96900 typedef void (*btf_trace_xlog_iclog_wait_on)(void *, struct xlog_in_core *, long unsigned int);
96901 
96902 typedef void (*btf_trace_xlog_iclog_write)(void *, struct xlog_in_core *, long unsigned int);
96903 
96904 typedef void (*btf_trace_xfs_attr_sf_addname_return)(void *, int, struct xfs_inode *);
96905 
96906 typedef void (*btf_trace_xfs_attr_set_iter_return)(void *, int, struct xfs_inode *);
96907 
96908 typedef void (*btf_trace_xfs_attr_leaf_addname_return)(void *, int, struct xfs_inode *);
96909 
96910 typedef void (*btf_trace_xfs_attr_node_addname_return)(void *, int, struct xfs_inode *);
96911 
96912 typedef void (*btf_trace_xfs_attr_remove_iter_return)(void *, int, struct xfs_inode *);
96913 
96914 typedef void (*btf_trace_xfs_attr_rmtval_alloc)(void *, int, struct xfs_inode *);
96915 
96916 typedef void (*btf_trace_xfs_attr_rmtval_remove_return)(void *, int, struct xfs_inode *);
96917 
96918 typedef void (*btf_trace_xfs_attr_defer_add)(void *, int, struct xfs_inode *);
96919 
96920 typedef void (*btf_trace_xfs_attr_defer_replace)(void *, int, struct xfs_inode *);
96921 
96922 typedef void (*btf_trace_xfs_attr_defer_remove)(void *, int, struct xfs_inode *);
96923 
96924 typedef void (*btf_trace_xfs_force_shutdown)(void *, struct xfs_mount *, int, int, const char *, int);
96925 
96926 struct crypto_report_akcipher {
96927 	char type[64];
96928 };
96929 
96930 struct akcipher_request {
96931 	struct crypto_async_request base;
96932 	struct scatterlist *src;
96933 	struct scatterlist *dst;
96934 	unsigned int src_len;
96935 	unsigned int dst_len;
96936 	void *__ctx[0];
96937 };
96938 
96939 struct crypto_akcipher {
96940 	struct crypto_tfm base;
96941 };
96942 
96943 struct akcipher_alg {
96944 	int (*sign)(struct akcipher_request *);
96945 	int (*verify)(struct akcipher_request *);
96946 	int (*encrypt)(struct akcipher_request *);
96947 	int (*decrypt)(struct akcipher_request *);
96948 	int (*set_pub_key)(struct crypto_akcipher *, const void *, unsigned int);
96949 	int (*set_priv_key)(struct crypto_akcipher *, const void *, unsigned int);
96950 	unsigned int (*max_size)(struct crypto_akcipher *);
96951 	int (*init)(struct crypto_akcipher *);
96952 	void (*exit)(struct crypto_akcipher *);
96953 	unsigned int reqsize;
96954 	struct crypto_alg base;
96955 };
96956 
96957 struct akcipher_instance {
96958 	void (*free)(struct akcipher_instance *);
96959 	union {
96960 		struct {
96961 			char head[80];
96962 			struct crypto_instance base;
96963 		} s;
96964 		struct akcipher_alg alg;
96965 	};
96966 };
96967 
96968 struct crypto_akcipher_spawn {
96969 	struct crypto_spawn base;
96970 };
96971 
96972 struct crypto_rng;
96973 
96974 struct rng_alg {
96975 	int (*generate)(struct crypto_rng *, const u8 *, unsigned int, u8 *, unsigned int);
96976 	int (*seed)(struct crypto_rng *, const u8 *, unsigned int);
96977 	void (*set_ent)(struct crypto_rng *, const u8 *, unsigned int);
96978 	unsigned int seedsize;
96979 	struct crypto_alg base;
96980 };
96981 
96982 struct crypto_rng {
96983 	struct crypto_tfm base;
96984 };
96985 
96986 struct crypto_report_rng {
96987 	char type[64];
96988 	unsigned int seedsize;
96989 };
96990 
96991 struct blk_queue_stats {
96992 	struct list_head callbacks;
96993 	spinlock_t lock;
96994 	int accounting;
96995 };
96996 
96997 struct sg_io_v4 {
96998 	__s32 guard;
96999 	__u32 protocol;
97000 	__u32 subprotocol;
97001 	__u32 request_len;
97002 	__u64 request;
97003 	__u64 request_tag;
97004 	__u32 request_attr;
97005 	__u32 request_priority;
97006 	__u32 request_extra;
97007 	__u32 max_response_len;
97008 	__u64 response;
97009 	__u32 dout_iovec_count;
97010 	__u32 dout_xfer_len;
97011 	__u32 din_iovec_count;
97012 	__u32 din_xfer_len;
97013 	__u64 dout_xferp;
97014 	__u64 din_xferp;
97015 	__u32 timeout;
97016 	__u32 flags;
97017 	__u64 usr_ptr;
97018 	__u32 spare_in;
97019 	__u32 driver_status;
97020 	__u32 transport_status;
97021 	__u32 device_status;
97022 	__u32 retry_delay;
97023 	__u32 info;
97024 	__u32 duration;
97025 	__u32 response_len;
97026 	__s32 din_resid;
97027 	__s32 dout_resid;
97028 	__u64 generated_tag;
97029 	__u32 spare_out;
97030 	__u32 padding;
97031 };
97032 
97033 typedef int bsg_sg_io_fn(struct request_queue *, struct sg_io_v4 *, fmode_t, unsigned int);
97034 
97035 struct bsg_device {
97036 	struct request_queue *queue;
97037 	struct device device;
97038 	struct cdev cdev;
97039 	int max_queue;
97040 	unsigned int timeout;
97041 	unsigned int reserved_size;
97042 	bsg_sg_io_fn *sg_io_fn;
97043 };
97044 
97045 struct io_uring_file_index_range {
97046 	__u32 off;
97047 	__u32 len;
97048 	__u64 resv;
97049 };
97050 
97051 enum {
97052 	IO_WQ_BOUND = 0,
97053 	IO_WQ_UNBOUND = 1,
97054 };
97055 
97056 struct io_wqe;
97057 
97058 struct io_wq {
97059 	long unsigned int state;
97060 	free_work_fn *free_work;
97061 	io_wq_work_fn *do_work;
97062 	struct io_wq_hash *hash;
97063 	atomic_t worker_refs;
97064 	struct completion worker_done;
97065 	struct hlist_node cpuhp_node;
97066 	struct task_struct *task;
97067 	struct io_wqe *wqes[0];
97068 };
97069 
97070 enum {
97071 	IO_WQ_WORK_CANCEL = 1,
97072 	IO_WQ_WORK_HASHED = 2,
97073 	IO_WQ_WORK_UNBOUND = 4,
97074 	IO_WQ_WORK_CONCURRENT = 16,
97075 	IO_WQ_HASH_SHIFT = 24,
97076 };
97077 
97078 enum io_wq_cancel {
97079 	IO_WQ_CANCEL_OK = 0,
97080 	IO_WQ_CANCEL_RUNNING = 1,
97081 	IO_WQ_CANCEL_NOTFOUND = 2,
97082 };
97083 
97084 typedef bool work_cancel_fn(struct io_wq_work *, void *);
97085 
97086 enum {
97087 	IO_WORKER_F_UP = 1,
97088 	IO_WORKER_F_RUNNING = 2,
97089 	IO_WORKER_F_FREE = 4,
97090 	IO_WORKER_F_BOUND = 8,
97091 };
97092 
97093 enum {
97094 	IO_WQ_BIT_EXIT = 0,
97095 };
97096 
97097 enum {
97098 	IO_ACCT_STALLED_BIT = 0,
97099 };
97100 
97101 struct io_worker {
97102 	refcount_t ref;
97103 	unsigned int flags;
97104 	struct hlist_nulls_node nulls_node;
97105 	struct list_head all_list;
97106 	struct task_struct *task;
97107 	struct io_wqe *wqe;
97108 	struct io_wq_work *cur_work;
97109 	struct io_wq_work *next_work;
97110 	raw_spinlock_t lock;
97111 	struct completion ref_done;
97112 	long unsigned int create_state;
97113 	struct callback_head create_work;
97114 	int create_index;
97115 	union {
97116 		struct callback_head rcu;
97117 		struct work_struct work;
97118 	};
97119 };
97120 
97121 struct io_wqe_acct {
97122 	unsigned int nr_workers;
97123 	unsigned int max_workers;
97124 	int index;
97125 	atomic_t nr_running;
97126 	raw_spinlock_t lock;
97127 	struct io_wq_work_list work_list;
97128 	long unsigned int flags;
97129 };
97130 
97131 struct io_wqe {
97132 	raw_spinlock_t lock;
97133 	struct io_wqe_acct acct[2];
97134 	int node;
97135 	struct hlist_nulls_head free_list;
97136 	struct list_head all_list;
97137 	struct wait_queue_entry wait;
97138 	struct io_wq *wq;
97139 	struct io_wq_work *hash_tail[64];
97140 	cpumask_var_t cpu_mask;
97141 };
97142 
97143 enum {
97144 	IO_WQ_ACCT_BOUND = 0,
97145 	IO_WQ_ACCT_UNBOUND = 1,
97146 	IO_WQ_ACCT_NR = 2,
97147 };
97148 
97149 struct io_cb_cancel_data {
97150 	work_cancel_fn *fn;
97151 	void *data;
97152 	int nr_running;
97153 	int nr_pending;
97154 	bool cancel_all;
97155 };
97156 
97157 struct online_data {
97158 	unsigned int cpu;
97159 	bool online;
97160 };
97161 
97162 struct btree_head {
97163 	long unsigned int *node;
97164 	mempool_t *mempool;
97165 	int height;
97166 };
97167 
97168 struct btree_geo {
97169 	int keylen;
97170 	int no_pairs;
97171 	int no_longs;
97172 };
97173 
97174 typedef void (*visitor128_t)(void *, long unsigned int, u64, u64, size_t);
97175 
97176 typedef void (*visitorl_t)(void *, long unsigned int, long unsigned int, size_t);
97177 
97178 typedef void (*visitor32_t)(void *, long unsigned int, u32, size_t);
97179 
97180 typedef void (*visitor64_t)(void *, long unsigned int, u64, size_t);
97181 
97182 typedef unsigned int FSE_DTable;
97183 
97184 typedef struct {
97185 	size_t state;
97186 	const void *table;
97187 } FSE_DState_t;
97188 
97189 typedef struct {
97190 	U16 tableLog;
97191 	U16 fastMode;
97192 } FSE_DTableHeader;
97193 
97194 typedef struct {
97195 	short unsigned int newState;
97196 	unsigned char symbol;
97197 	unsigned char nbBits;
97198 } FSE_decode_t;
97199 
97200 typedef struct {
97201 	short int ncount[256];
97202 	FSE_DTable dtable[1];
97203 } FSE_DecompressWksp;
97204 
97205 struct ZSTD_DCtx_s;
97206 
97207 typedef struct ZSTD_DCtx_s ZSTD_DCtx___2;
97208 
97209 struct ZSTD_inBuffer_s {
97210 	const void *src;
97211 	size_t size;
97212 	size_t pos;
97213 };
97214 
97215 typedef struct ZSTD_inBuffer_s ZSTD_inBuffer;
97216 
97217 typedef ZSTD_DCtx___2 ZSTD_DStream;
97218 
97219 typedef ZSTD_ErrorCode zstd_error_code;
97220 
97221 typedef ZSTD_DCtx___2 zstd_dctx;
97222 
97223 typedef ZSTD_inBuffer zstd_in_buffer;
97224 
97225 typedef ZSTD_outBuffer zstd_out_buffer;
97226 
97227 typedef ZSTD_DStream zstd_dstream;
97228 
97229 typedef ZSTD_frameHeader zstd_frame_header;
97230 
97231 typedef struct {
97232 	long unsigned int key[2];
97233 } hsiphash_key_t;
97234 
97235 struct pci_bus_resource {
97236 	struct list_head list;
97237 	struct resource *res;
97238 	unsigned int flags;
97239 };
97240 
97241 struct pci_dev_resource {
97242 	struct list_head list;
97243 	struct resource *res;
97244 	struct pci_dev *dev;
97245 	resource_size_t start;
97246 	resource_size_t end;
97247 	resource_size_t add_size;
97248 	resource_size_t min_align;
97249 	long unsigned int flags;
97250 };
97251 
97252 enum release_type {
97253 	leaf_only = 0,
97254 	whole_subtree = 1,
97255 };
97256 
97257 enum enable_type {
97258 	undefined = -1,
97259 	user_disabled = 0,
97260 	auto_disabled = 1,
97261 	user_enabled = 2,
97262 	auto_enabled = 3,
97263 };
97264 
97265 struct mode_map {
97266 	int vmode;
97267 	const struct fb_videomode *mode;
97268 };
97269 
97270 struct monitor_map {
97271 	int sense;
97272 	int vmode;
97273 };
97274 
97275 enum {
97276 	cmap_unknown = 0,
97277 	cmap_simple = 1,
97278 	cmap_r128 = 2,
97279 	cmap_M3A = 3,
97280 	cmap_M3B = 4,
97281 	cmap_radeon = 5,
97282 	cmap_gxt2000 = 6,
97283 	cmap_avivo = 7,
97284 	cmap_qemu = 8,
97285 };
97286 
97287 struct offb_par {
97288 	volatile void *cmap_adr;
97289 	volatile void *cmap_data;
97290 	int cmap_type;
97291 	int blanked;
97292 };
97293 
97294 typedef short unsigned int ushort;
97295 
97296 struct unipair {
97297 	short unsigned int unicode;
97298 	short unsigned int fontpos;
97299 };
97300 
97301 struct unimapdesc {
97302 	short unsigned int entry_ct;
97303 	struct unipair *entries;
97304 };
97305 
97306 struct kbentry {
97307 	unsigned char kb_table;
97308 	unsigned char kb_index;
97309 	short unsigned int kb_value;
97310 };
97311 
97312 struct kbsentry {
97313 	unsigned char kb_func;
97314 	unsigned char kb_string[512];
97315 };
97316 
97317 struct kbkeycode {
97318 	unsigned int scancode;
97319 	unsigned int keycode;
97320 };
97321 
97322 struct kbd_repeat {
97323 	int delay;
97324 	int period;
97325 };
97326 
97327 struct console_font_op {
97328 	unsigned int op;
97329 	unsigned int flags;
97330 	unsigned int width;
97331 	unsigned int height;
97332 	unsigned int charcount;
97333 	unsigned char *data;
97334 };
97335 
97336 struct vt_stat {
97337 	short unsigned int v_active;
97338 	short unsigned int v_signal;
97339 	short unsigned int v_state;
97340 };
97341 
97342 struct vt_sizes {
97343 	short unsigned int v_rows;
97344 	short unsigned int v_cols;
97345 	short unsigned int v_scrollsize;
97346 };
97347 
97348 struct vt_consize {
97349 	short unsigned int v_rows;
97350 	short unsigned int v_cols;
97351 	short unsigned int v_vlin;
97352 	short unsigned int v_clin;
97353 	short unsigned int v_vcol;
97354 	short unsigned int v_ccol;
97355 };
97356 
97357 struct vt_event {
97358 	unsigned int event;
97359 	unsigned int oldev;
97360 	unsigned int newev;
97361 	unsigned int pad[4];
97362 };
97363 
97364 struct vt_setactivate {
97365 	unsigned int console;
97366 	struct vt_mode mode;
97367 };
97368 
97369 struct vt_spawn_console {
97370 	spinlock_t lock;
97371 	struct pid *pid;
97372 	int sig;
97373 };
97374 
97375 struct vt_event_wait {
97376 	struct list_head list;
97377 	struct vt_event event;
97378 	int done;
97379 };
97380 
97381 struct memdev {
97382 	const char *name;
97383 	umode_t mode;
97384 	const struct file_operations *fops;
97385 	fmode_t fmode;
97386 };
97387 
97388 struct anon_transport_class {
97389 	struct transport_class tclass;
97390 	struct attribute_container container;
97391 };
97392 
97393 enum pm_qos_flags_status {
97394 	PM_QOS_FLAGS_UNDEFINED = -1,
97395 	PM_QOS_FLAGS_NONE = 0,
97396 	PM_QOS_FLAGS_SOME = 1,
97397 	PM_QOS_FLAGS_ALL = 2,
97398 };
97399 
97400 enum pm_qos_req_action {
97401 	PM_QOS_ADD_REQ = 0,
97402 	PM_QOS_UPDATE_REQ = 1,
97403 	PM_QOS_REMOVE_REQ = 2,
97404 };
97405 
97406 struct brd_device {
97407 	int brd_number;
97408 	struct gendisk *brd_disk;
97409 	struct list_head brd_list;
97410 	spinlock_t brd_lock;
97411 	struct xarray brd_pages;
97412 	u64 brd_nr_pages;
97413 };
97414 
97415 struct btt_sb {
97416 	u8 signature[16];
97417 	u8 uuid[16];
97418 	u8 parent_uuid[16];
97419 	__le32 flags;
97420 	__le16 version_major;
97421 	__le16 version_minor;
97422 	__le32 external_lbasize;
97423 	__le32 external_nlba;
97424 	__le32 internal_lbasize;
97425 	__le32 internal_nlba;
97426 	__le32 nfree;
97427 	__le32 infosize;
97428 	__le64 nextoff;
97429 	__le64 dataoff;
97430 	__le64 mapoff;
97431 	__le64 logoff;
97432 	__le64 info2off;
97433 	u8 padding[3968];
97434 	__le64 checksum;
97435 };
97436 
97437 struct scsi_mode_data {
97438 	__u32 length;
97439 	__u16 block_descriptor_length;
97440 	__u8 medium_type;
97441 	__u8 device_specific;
97442 	__u8 header_length;
97443 	__u8 longlba: 1;
97444 };
97445 
97446 struct scsi_event {
97447 	enum scsi_device_event evt_type;
97448 	struct list_head node;
97449 };
97450 
97451 enum scsi_host_prot_capabilities {
97452 	SHOST_DIF_TYPE1_PROTECTION = 1,
97453 	SHOST_DIF_TYPE2_PROTECTION = 2,
97454 	SHOST_DIF_TYPE3_PROTECTION = 4,
97455 	SHOST_DIX_TYPE0_PROTECTION = 8,
97456 	SHOST_DIX_TYPE1_PROTECTION = 16,
97457 	SHOST_DIX_TYPE2_PROTECTION = 32,
97458 	SHOST_DIX_TYPE3_PROTECTION = 64,
97459 };
97460 
97461 enum {
97462 	ACTION_FAIL = 0,
97463 	ACTION_REPREP = 1,
97464 	ACTION_DELAYED_REPREP = 2,
97465 	ACTION_RETRY = 3,
97466 	ACTION_DELAYED_RETRY = 4,
97467 };
97468 
97469 struct sg_page_iter {
97470 	struct scatterlist *sg;
97471 	unsigned int sg_pgoffset;
97472 	unsigned int __nents;
97473 	int __pg_advance;
97474 };
97475 
97476 struct sg_mapping_iter {
97477 	struct page *page;
97478 	void *addr;
97479 	size_t length;
97480 	size_t consumed;
97481 	struct sg_page_iter piter;
97482 	unsigned int __offset;
97483 	unsigned int __remaining;
97484 	unsigned int __flags;
97485 };
97486 
97487 typedef unsigned int (*ata_xlat_func_t)(struct ata_queued_cmd *);
97488 
97489 struct ata_scsi_args {
97490 	struct ata_device *dev;
97491 	u16 *id;
97492 	struct scsi_cmnd *cmd;
97493 };
97494 
97495 struct mdio_board_info {
97496 	const char *bus_id;
97497 	char modalias[32];
97498 	int mdio_addr;
97499 	const void *platform_data;
97500 };
97501 
97502 struct mdio_board_entry {
97503 	struct list_head list;
97504 	struct mdio_board_info board_info;
97505 };
97506 
97507 enum {
97508 	ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC = 0,
97509 	ETHTOOL_A_CABLE_RESULT_CODE_OK = 1,
97510 	ETHTOOL_A_CABLE_RESULT_CODE_OPEN = 2,
97511 	ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT = 3,
97512 	ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT = 4,
97513 };
97514 
97515 enum {
97516 	ETHTOOL_A_CABLE_PAIR_A = 0,
97517 	ETHTOOL_A_CABLE_PAIR_B = 1,
97518 	ETHTOOL_A_CABLE_PAIR_C = 2,
97519 	ETHTOOL_A_CABLE_PAIR_D = 3,
97520 };
97521 
97522 struct mdio_device_id {
97523 	__u32 phy_id;
97524 	__u32 phy_id_mask;
97525 };
97526 
97527 struct marvell_hw_stat {
97528 	const char *string;
97529 	u8 page;
97530 	u8 reg;
97531 	u8 bits;
97532 };
97533 
97534 struct marvell_priv {
97535 	u64 stats[3];
97536 	char *hwmon_name;
97537 	struct device *hwmon_dev;
97538 	bool cable_test_tdr;
97539 	u32 first;
97540 	u32 last;
97541 	u32 step;
97542 	s8 pair;
97543 };
97544 
97545 struct marvell_hwmon_ops {
97546 	int (*config)(struct phy_device *);
97547 	int (*get_temp)(struct phy_device *, long int *);
97548 	int (*get_temp_critical)(struct phy_device *, long int *);
97549 	int (*set_temp_critical)(struct phy_device *, long int);
97550 	int (*get_temp_alarm)(struct phy_device *, long int *);
97551 };
97552 
97553 union e1000_rx_desc_extended {
97554 	struct {
97555 		__le64 buffer_addr;
97556 		__le64 reserved;
97557 	} read;
97558 	struct {
97559 		struct {
97560 			__le32 mrq;
97561 			union {
97562 				__le32 rss;
97563 				struct {
97564 					__le16 ip_id;
97565 					__le16 csum;
97566 				} csum_ip;
97567 			} hi_dword;
97568 		} lower;
97569 		struct {
97570 			__le32 status_error;
97571 			__le16 length;
97572 			__le16 vlan;
97573 		} upper;
97574 	} wb;
97575 };
97576 
97577 union e1000_rx_desc_packet_split {
97578 	struct {
97579 		__le64 buffer_addr[4];
97580 	} read;
97581 	struct {
97582 		struct {
97583 			__le32 mrq;
97584 			union {
97585 				__le32 rss;
97586 				struct {
97587 					__le16 ip_id;
97588 					__le16 csum;
97589 				} csum_ip;
97590 			} hi_dword;
97591 		} lower;
97592 		struct {
97593 			__le32 status_error;
97594 			__le16 length0;
97595 			__le16 vlan;
97596 		} middle;
97597 		struct {
97598 			__le16 header_status;
97599 			__le16 length[3];
97600 		} upper;
97601 		__le64 reserved;
97602 	} wb;
97603 };
97604 
97605 enum e1000_boards {
97606 	board_82571 = 0,
97607 	board_82572 = 1,
97608 	board_82573 = 2,
97609 	board_82574 = 3,
97610 	board_82583 = 4,
97611 	board_80003es2lan = 5,
97612 	board_ich8lan = 6,
97613 	board_ich9lan = 7,
97614 	board_ich10lan = 8,
97615 	board_pchlan = 9,
97616 	board_pch2lan = 10,
97617 	board_pch_lpt = 11,
97618 	board_pch_spt = 12,
97619 	board_pch_cnp = 13,
97620 	board_pch_tgp = 14,
97621 	board_pch_adp = 15,
97622 };
97623 
97624 struct e1000_reg_info {
97625 	u32 ofs;
97626 	char *name;
97627 };
97628 
97629 struct my_u0 {
97630 	__le64 a;
97631 	__le64 b;
97632 };
97633 
97634 struct my_u1 {
97635 	__le64 a;
97636 	__le64 b;
97637 	__le64 c;
97638 	__le64 d;
97639 };
97640 
97641 enum usb_phy_interface {
97642 	USBPHY_INTERFACE_MODE_UNKNOWN = 0,
97643 	USBPHY_INTERFACE_MODE_UTMI = 1,
97644 	USBPHY_INTERFACE_MODE_UTMIW = 2,
97645 	USBPHY_INTERFACE_MODE_ULPI = 3,
97646 	USBPHY_INTERFACE_MODE_SERIAL = 4,
97647 	USBPHY_INTERFACE_MODE_HSIC = 5,
97648 };
97649 
97650 struct input_dev_poller {
97651 	void (*poll)(struct input_dev *);
97652 	unsigned int poll_interval;
97653 	unsigned int poll_interval_max;
97654 	unsigned int poll_interval_min;
97655 	struct input_dev *input;
97656 	struct delayed_work work;
97657 };
97658 
97659 struct cytp_contact {
97660 	int x;
97661 	int y;
97662 	int z;
97663 };
97664 
97665 struct cytp_report_data {
97666 	int contact_cnt;
97667 	struct cytp_contact contacts[2];
97668 	unsigned int left: 1;
97669 	unsigned int right: 1;
97670 	unsigned int middle: 1;
97671 	unsigned int tap: 1;
97672 };
97673 
97674 struct cytp_data {
97675 	int fw_version;
97676 	int pkt_size;
97677 	int mode;
97678 	int tp_min_pressure;
97679 	int tp_max_pressure;
97680 	int tp_width;
97681 	int tp_high;
97682 	int tp_max_abs_x;
97683 	int tp_max_abs_y;
97684 	int tp_res_x;
97685 	int tp_res_y;
97686 	int tp_metrics_supported;
97687 };
97688 
97689 struct opal_i2c_request {
97690 	uint8_t type;
97691 	uint8_t flags;
97692 	uint8_t subaddr_sz;
97693 	uint8_t reserved;
97694 	__be16 addr;
97695 	__be16 reserved2;
97696 	__be32 subaddr;
97697 	__be32 size;
97698 	__be64 buffer_ra;
97699 };
97700 
97701 struct mdu_array_info_s {
97702 	int major_version;
97703 	int minor_version;
97704 	int patch_version;
97705 	unsigned int ctime;
97706 	int level;
97707 	int size;
97708 	int nr_disks;
97709 	int raid_disks;
97710 	int md_minor;
97711 	int not_persistent;
97712 	unsigned int utime;
97713 	int state;
97714 	int active_disks;
97715 	int working_disks;
97716 	int failed_disks;
97717 	int spare_disks;
97718 	int layout;
97719 	int chunk_size;
97720 };
97721 
97722 struct mdu_disk_info_s {
97723 	int number;
97724 	int major;
97725 	int minor;
97726 	int raid_disk;
97727 	int state;
97728 };
97729 
97730 struct md_setup_args {
97731 	int minor;
97732 	int partitioned;
97733 	int level;
97734 	int chunk;
97735 	char *device_names;
97736 };
97737 
97738 enum tick_broadcast_mode {
97739 	TICK_BROADCAST_OFF = 0,
97740 	TICK_BROADCAST_ON = 1,
97741 	TICK_BROADCAST_FORCE = 2,
97742 };
97743 
97744 struct quirks_list_struct {
97745 	struct hid_device_id hid_bl_item;
97746 	struct list_head node;
97747 };
97748 
97749 struct reserved_mem_ops;
97750 
97751 struct reserved_mem {
97752 	const char *name;
97753 	long unsigned int fdt_node;
97754 	long unsigned int phandle;
97755 	const struct reserved_mem_ops *ops;
97756 	phys_addr_t base;
97757 	phys_addr_t size;
97758 	void *priv;
97759 };
97760 
97761 struct reserved_mem_ops {
97762 	int (*device_init)(struct reserved_mem *, struct device *);
97763 	void (*device_release)(struct reserved_mem *, struct device *);
97764 };
97765 
97766 typedef int (*reservedmem_of_init_fn)(struct reserved_mem *);
97767 
97768 struct rmem_assigned_device {
97769 	struct device *dev;
97770 	struct reserved_mem *rmem;
97771 	struct list_head list;
97772 };
97773 
97774 enum hwtstamp_flags {
97775 	HWTSTAMP_FLAG_BONDED_PHC_INDEX = 1,
97776 	HWTSTAMP_FLAG_LAST = 1,
97777 	HWTSTAMP_FLAG_MASK = 1,
97778 };
97779 
97780 struct compat_ifconf {
97781 	compat_int_t ifc_len;
97782 	compat_caddr_t ifcbuf;
97783 };
97784 
97785 enum tc_link_layer {
97786 	TC_LINKLAYER_UNAWARE = 0,
97787 	TC_LINKLAYER_ETHERNET = 1,
97788 	TC_LINKLAYER_ATM = 2,
97789 };
97790 
97791 enum {
97792 	TCA_STAB_UNSPEC = 0,
97793 	TCA_STAB_BASE = 1,
97794 	TCA_STAB_DATA = 2,
97795 	__TCA_STAB_MAX = 3,
97796 };
97797 
97798 struct qdisc_rate_table {
97799 	struct tc_ratespec rate;
97800 	u32 data[256];
97801 	struct qdisc_rate_table *next;
97802 	int refcnt;
97803 };
97804 
97805 struct tcf_walker {
97806 	int stop;
97807 	int skip;
97808 	int count;
97809 	bool nonempty;
97810 	long unsigned int cookie;
97811 	int (*fn)(struct tcf_proto *, void *, struct tcf_walker *);
97812 };
97813 
97814 struct Qdisc_class_common {
97815 	u32 classid;
97816 	struct hlist_node hnode;
97817 };
97818 
97819 struct Qdisc_class_hash {
97820 	struct hlist_head *hash;
97821 	unsigned int hashsize;
97822 	unsigned int hashmask;
97823 	unsigned int hashelems;
97824 };
97825 
97826 struct qdisc_watchdog {
97827 	u64 last_expires;
97828 	struct hrtimer timer;
97829 	struct Qdisc *qdisc;
97830 };
97831 
97832 enum tc_root_command {
97833 	TC_ROOT_GRAFT = 0,
97834 };
97835 
97836 struct tc_root_qopt_offload {
97837 	enum tc_root_command command;
97838 	u32 handle;
97839 	bool ingress;
97840 };
97841 
97842 struct check_loop_arg {
97843 	struct qdisc_walker w;
97844 	struct Qdisc *p;
97845 	int depth;
97846 };
97847 
97848 struct tcf_bind_args {
97849 	struct tcf_walker w;
97850 	long unsigned int base;
97851 	long unsigned int cl;
97852 	u32 classid;
97853 };
97854 
97855 struct tc_bind_class_args {
97856 	struct qdisc_walker w;
97857 	long unsigned int new_cl;
97858 	u32 portid;
97859 	u32 clid;
97860 };
97861 
97862 struct qdisc_dump_args {
97863 	struct qdisc_walker w;
97864 	struct sk_buff *skb;
97865 	struct netlink_callback *cb;
97866 };
97867 
97868 struct debug_reply_data {
97869 	struct ethnl_reply_data base;
97870 	u32 msg_mask;
97871 };
97872 
97873 struct module_reply_data {
97874 	struct ethnl_reply_data base;
97875 	struct ethtool_module_power_mode_params power;
97876 };
97877 
97878 enum {
97879 	IFLA_UNSPEC = 0,
97880 	IFLA_ADDRESS = 1,
97881 	IFLA_BROADCAST = 2,
97882 	IFLA_IFNAME = 3,
97883 	IFLA_MTU = 4,
97884 	IFLA_LINK = 5,
97885 	IFLA_QDISC = 6,
97886 	IFLA_STATS = 7,
97887 	IFLA_COST = 8,
97888 	IFLA_PRIORITY = 9,
97889 	IFLA_MASTER = 10,
97890 	IFLA_WIRELESS = 11,
97891 	IFLA_PROTINFO = 12,
97892 	IFLA_TXQLEN = 13,
97893 	IFLA_MAP = 14,
97894 	IFLA_WEIGHT = 15,
97895 	IFLA_OPERSTATE = 16,
97896 	IFLA_LINKMODE = 17,
97897 	IFLA_LINKINFO = 18,
97898 	IFLA_NET_NS_PID = 19,
97899 	IFLA_IFALIAS = 20,
97900 	IFLA_NUM_VF = 21,
97901 	IFLA_VFINFO_LIST = 22,
97902 	IFLA_STATS64 = 23,
97903 	IFLA_VF_PORTS = 24,
97904 	IFLA_PORT_SELF = 25,
97905 	IFLA_AF_SPEC = 26,
97906 	IFLA_GROUP = 27,
97907 	IFLA_NET_NS_FD = 28,
97908 	IFLA_EXT_MASK = 29,
97909 	IFLA_PROMISCUITY = 30,
97910 	IFLA_NUM_TX_QUEUES = 31,
97911 	IFLA_NUM_RX_QUEUES = 32,
97912 	IFLA_CARRIER = 33,
97913 	IFLA_PHYS_PORT_ID = 34,
97914 	IFLA_CARRIER_CHANGES = 35,
97915 	IFLA_PHYS_SWITCH_ID = 36,
97916 	IFLA_LINK_NETNSID = 37,
97917 	IFLA_PHYS_PORT_NAME = 38,
97918 	IFLA_PROTO_DOWN = 39,
97919 	IFLA_GSO_MAX_SEGS = 40,
97920 	IFLA_GSO_MAX_SIZE = 41,
97921 	IFLA_PAD = 42,
97922 	IFLA_XDP = 43,
97923 	IFLA_EVENT = 44,
97924 	IFLA_NEW_NETNSID = 45,
97925 	IFLA_IF_NETNSID = 46,
97926 	IFLA_TARGET_NETNSID = 46,
97927 	IFLA_CARRIER_UP_COUNT = 47,
97928 	IFLA_CARRIER_DOWN_COUNT = 48,
97929 	IFLA_NEW_IFINDEX = 49,
97930 	IFLA_MIN_MTU = 50,
97931 	IFLA_MAX_MTU = 51,
97932 	IFLA_PROP_LIST = 52,
97933 	IFLA_ALT_IFNAME = 53,
97934 	IFLA_PERM_ADDRESS = 54,
97935 	IFLA_PROTO_DOWN_REASON = 55,
97936 	IFLA_PARENT_DEV_NAME = 56,
97937 	IFLA_PARENT_DEV_BUS_NAME = 57,
97938 	IFLA_GRO_MAX_SIZE = 58,
97939 	IFLA_TSO_MAX_SIZE = 59,
97940 	IFLA_TSO_MAX_SEGS = 60,
97941 	__IFLA_MAX = 61,
97942 };
97943 
97944 enum tunnel_encap_types {
97945 	TUNNEL_ENCAP_NONE = 0,
97946 	TUNNEL_ENCAP_FOU = 1,
97947 	TUNNEL_ENCAP_GUE = 2,
97948 	TUNNEL_ENCAP_MPLS = 3,
97949 };
97950 
97951 struct gro_cell;
97952 
97953 struct gro_cells {
97954 	struct gro_cell *cells;
97955 };
97956 
97957 struct ip_tunnel_prl_entry {
97958 	struct ip_tunnel_prl_entry *next;
97959 	__be32 addr;
97960 	u16 flags;
97961 	struct callback_head callback_head;
97962 };
97963 
97964 struct ip_tunnel {
97965 	struct ip_tunnel *next;
97966 	struct hlist_node hash_node;
97967 	struct net_device *dev;
97968 	netdevice_tracker dev_tracker;
97969 	struct net *net;
97970 	long unsigned int err_time;
97971 	int err_count;
97972 	u32 i_seqno;
97973 	atomic_t o_seqno;
97974 	int tun_hlen;
97975 	u32 index;
97976 	u8 erspan_ver;
97977 	u8 dir;
97978 	u16 hwid;
97979 	struct dst_cache dst_cache;
97980 	struct ip_tunnel_parm parms;
97981 	int mlink;
97982 	int encap_hlen;
97983 	int hlen;
97984 	struct ip_tunnel_encap encap;
97985 	struct ip_tunnel_prl_entry *prl;
97986 	unsigned int prl_count;
97987 	unsigned int ip_tnl_net_id;
97988 	struct gro_cells gro_cells;
97989 	__u32 fwmark;
97990 	bool collect_md;
97991 	bool ignore_df;
97992 };
97993 
97994 struct tnl_ptk_info {
97995 	__be16 flags;
97996 	__be16 proto;
97997 	__be32 key;
97998 	__be32 seq;
97999 	int hdr_len;
98000 };
98001 
98002 struct ip_tunnel_net {
98003 	struct net_device *fb_tunnel_dev;
98004 	struct rtnl_link_ops *rtnl_link_ops;
98005 	struct hlist_head tunnels[128];
98006 	struct ip_tunnel *collect_md_tun;
98007 	int type;
98008 };
98009 
98010 struct nf_conn;
98011 
98012 enum nf_nat_manip_type;
98013 
98014 struct nf_nat_hook {
98015 	int (*parse_nat_setup)(struct nf_conn *, enum nf_nat_manip_type, const struct nlattr *);
98016 	void (*decode_session)(struct sk_buff *, struct flowi *);
98017 	unsigned int (*manip_pkt)(struct sk_buff *, struct nf_conn *, enum nf_nat_manip_type, enum ip_conntrack_dir);
98018 	void (*remove_nat_bysrc)(struct nf_conn *);
98019 };
98020 
98021 enum {
98022 	XFRM_LOOKUP_ICMP = 1,
98023 	XFRM_LOOKUP_QUEUE = 2,
98024 	XFRM_LOOKUP_KEEP_DST_REF = 4,
98025 };
98026 
98027 struct xfrm_if;
98028 
98029 struct xfrm_if_cb {
98030 	struct xfrm_if * (*decode_session)(struct sk_buff *, short unsigned int);
98031 };
98032 
98033 struct xfrm_if_parms {
98034 	int link;
98035 	u32 if_id;
98036 };
98037 
98038 struct xfrm_if {
98039 	struct xfrm_if *next;
98040 	struct net_device *dev;
98041 	struct net *net;
98042 	struct xfrm_if_parms p;
98043 	struct gro_cells gro_cells;
98044 };
98045 
98046 struct xfrm_policy_afinfo {
98047 	struct dst_ops *dst_ops;
98048 	struct dst_entry * (*dst_lookup)(struct net *, int, int, const xfrm_address_t *, const xfrm_address_t *, u32);
98049 	int (*get_saddr)(struct net *, int, xfrm_address_t *, xfrm_address_t *, u32);
98050 	int (*fill_dst)(struct xfrm_dst *, struct net_device *, const struct flowi *);
98051 	struct dst_entry * (*blackhole_route)(struct net *, struct dst_entry *);
98052 };
98053 
98054 struct xfrm_policy_walk {
98055 	struct xfrm_policy_walk_entry walk;
98056 	u8 type;
98057 	u32 seq;
98058 };
98059 
98060 struct xfrmk_spdinfo {
98061 	u32 incnt;
98062 	u32 outcnt;
98063 	u32 fwdcnt;
98064 	u32 inscnt;
98065 	u32 outscnt;
98066 	u32 fwdscnt;
98067 	u32 spdhcnt;
98068 	u32 spdhmcnt;
98069 };
98070 
98071 struct xfrm_flo {
98072 	struct dst_entry *dst_orig;
98073 	u8 flags;
98074 };
98075 
98076 struct xfrm_pol_inexact_node {
98077 	struct rb_node node;
98078 	union {
98079 		xfrm_address_t addr;
98080 		struct callback_head rcu;
98081 	};
98082 	u8 prefixlen;
98083 	struct rb_root root;
98084 	struct hlist_head hhead;
98085 };
98086 
98087 struct xfrm_pol_inexact_key {
98088 	possible_net_t net;
98089 	u32 if_id;
98090 	u16 family;
98091 	u8 dir;
98092 	u8 type;
98093 };
98094 
98095 struct xfrm_pol_inexact_bin {
98096 	struct xfrm_pol_inexact_key k;
98097 	struct rhash_head head;
98098 	struct hlist_head hhead;
98099 	seqcount_spinlock_t count;
98100 	struct rb_root root_d;
98101 	struct rb_root root_s;
98102 	struct list_head inexact_bins;
98103 	struct callback_head rcu;
98104 };
98105 
98106 enum xfrm_pol_inexact_candidate_type {
98107 	XFRM_POL_CAND_BOTH = 0,
98108 	XFRM_POL_CAND_SADDR = 1,
98109 	XFRM_POL_CAND_DADDR = 2,
98110 	XFRM_POL_CAND_ANY = 3,
98111 	XFRM_POL_CAND_MAX = 4,
98112 };
98113 
98114 struct xfrm_pol_inexact_candidates {
98115 	struct hlist_head *res[4];
98116 };
98117 
98118 enum rpc_gss_proc {
98119 	RPC_GSS_PROC_DATA = 0,
98120 	RPC_GSS_PROC_INIT = 1,
98121 	RPC_GSS_PROC_CONTINUE_INIT = 2,
98122 	RPC_GSS_PROC_DESTROY = 3,
98123 };
98124 
98125 enum rpc_gss_svc {
98126 	RPC_GSS_SVC_NONE = 1,
98127 	RPC_GSS_SVC_INTEGRITY = 2,
98128 	RPC_GSS_SVC_PRIVACY = 3,
98129 };
98130 
98131 struct rpc_gss_wire_cred {
98132 	u32 gc_v;
98133 	u32 gc_proc;
98134 	u32 gc_seq;
98135 	u32 gc_svc;
98136 	struct xdr_netobj gc_ctx;
98137 };
98138 
98139 typedef unsigned int OM_uint32;
98140 
98141 struct gssp_in_token {
98142 	struct page **pages;
98143 	unsigned int page_base;
98144 	unsigned int page_len;
98145 };
98146 
98147 struct gssp_upcall_data {
98148 	struct xdr_netobj in_handle;
98149 	struct gssp_in_token in_token;
98150 	struct xdr_netobj out_handle;
98151 	struct xdr_netobj out_token;
98152 	struct rpcsec_gss_oid mech_oid;
98153 	struct svc_cred creds;
98154 	int found_creds;
98155 	int major_status;
98156 	int minor_status;
98157 };
98158 
98159 struct rsi {
98160 	struct cache_head h;
98161 	struct xdr_netobj in_handle;
98162 	struct xdr_netobj in_token;
98163 	struct xdr_netobj out_handle;
98164 	struct xdr_netobj out_token;
98165 	int major_status;
98166 	int minor_status;
98167 	struct callback_head callback_head;
98168 };
98169 
98170 struct gss_svc_seq_data {
98171 	u32 sd_max;
98172 	long unsigned int sd_win[2];
98173 	spinlock_t sd_lock;
98174 };
98175 
98176 struct rsc {
98177 	struct cache_head h;
98178 	struct xdr_netobj handle;
98179 	struct svc_cred cred;
98180 	struct gss_svc_seq_data seqdata;
98181 	struct gss_ctx *mechctx;
98182 	struct callback_head callback_head;
98183 };
98184 
98185 struct gss_domain {
98186 	struct auth_domain h;
98187 	u32 pseudoflavor;
98188 };
98189 
98190 struct gss_svc_data {
98191 	struct rpc_gss_wire_cred clcred;
98192 	__be32 *verf_start;
98193 	struct rsc *rsci;
98194 };
98195 
98196 struct div_result {
98197 	u64 result_high;
98198 	u64 result_low;
98199 };
98200 
98201 struct kmsg_dump_iter {
98202 	u64 cur_seq;
98203 	u64 next_seq;
98204 };
98205 
98206 struct err_log_info {
98207 	__be32 error_type;
98208 	__be32 seq_num;
98209 };
98210 
98211 struct oops_log_info {
98212 	__be16 version;
98213 	__be16 report_length;
98214 	__be64 timestamp;
98215 } __attribute__((packed));
98216 
98217 struct nvram_header {
98218 	unsigned char signature;
98219 	unsigned char checksum;
98220 	short unsigned int length;
98221 	char name[12];
98222 };
98223 
98224 struct nvram_partition {
98225 	struct list_head partition;
98226 	struct nvram_header header;
98227 	unsigned int index;
98228 };
98229 
98230 typedef void (*eeh_edev_traverse_func)(struct eeh_dev *, void *);
98231 
98232 typedef void * (*eeh_pe_traverse_func)(struct eeh_pe *, void *);
98233 
98234 struct kretprobe_blackpoint {
98235 	const char *name;
98236 	void *addr;
98237 };
98238 
98239 struct prtb_entry {
98240 	__be64 prtb0;
98241 	__be64 prtb1;
98242 };
98243 
98244 struct opal_ipmi_msg {
98245 	uint8_t version;
98246 	uint8_t netfn;
98247 	uint8_t cmd;
98248 	uint8_t data[0];
98249 };
98250 
98251 enum {
98252 	OPAL_HMI_FLAGS_TB_RESYNC = 1ULL,
98253 	OPAL_HMI_FLAGS_DEC_LOST = 2ULL,
98254 	OPAL_HMI_FLAGS_HDEC_LOST = 4ULL,
98255 	OPAL_HMI_FLAGS_TOD_TB_FAIL = 8ULL,
98256 	OPAL_HMI_FLAGS_NEW_EVENT = 9223372036854775808ULL,
98257 };
98258 
98259 enum {
98260 	OPAL_REINIT_CPUS_HILE_BE = 1,
98261 	OPAL_REINIT_CPUS_HILE_LE = 2,
98262 	OPAL_REINIT_CPUS_MMU_HASH = 4,
98263 	OPAL_REINIT_CPUS_MMU_RADIX = 8,
98264 	OPAL_REINIT_CPUS_TM_SUSPEND_DISABLED = 16,
98265 };
98266 
98267 struct oppanel_line {
98268 	__be64 line;
98269 	__be64 line_len;
98270 };
98271 
98272 typedef struct oppanel_line oppanel_line_t;
98273 
98274 struct opal_sg_entry {
98275 	__be64 data;
98276 	__be64 length;
98277 };
98278 
98279 struct opal_sg_list {
98280 	__be64 length;
98281 	__be64 next;
98282 	struct opal_sg_entry entry[0];
98283 };
98284 
98285 struct opal_msg_node {
98286 	struct list_head list;
98287 	struct opal_msg msg;
98288 };
98289 
98290 struct opal {
98291 	u64 base;
98292 	u64 entry;
98293 	u64 size;
98294 };
98295 
98296 struct mcheck_recoverable_range {
98297 	u64 start_addr;
98298 	u64 end_addr;
98299 	u64 recover_addr;
98300 };
98301 
98302 struct opal_prd_msg;
98303 
98304 enum OpalMmioWindowType {
98305 	OPAL_M32_WINDOW_TYPE = 1,
98306 	OPAL_M64_WINDOW_TYPE = 2,
98307 	OPAL_IO_WINDOW_TYPE = 3,
98308 };
98309 
98310 enum OpalPciBusCompare {
98311 	OpalPciBusAny = 0,
98312 	OpalPciBus3Bits = 2,
98313 	OpalPciBus4Bits = 3,
98314 	OpalPciBus5Bits = 4,
98315 	OpalPciBus6Bits = 5,
98316 	OpalPciBus7Bits = 6,
98317 	OpalPciBusAll = 7,
98318 };
98319 
98320 enum OpalDeviceCompare {
98321 	OPAL_IGNORE_RID_DEVICE_NUMBER = 0,
98322 	OPAL_COMPARE_RID_DEVICE_NUMBER = 1,
98323 };
98324 
98325 enum OpalFuncCompare {
98326 	OPAL_IGNORE_RID_FUNCTION_NUMBER = 0,
98327 	OPAL_COMPARE_RID_FUNCTION_NUMBER = 1,
98328 };
98329 
98330 enum OpalPeAction {
98331 	OPAL_UNMAP_PE = 0,
98332 	OPAL_MAP_PE = 1,
98333 };
98334 
98335 enum OpalPeltvAction {
98336 	OPAL_REMOVE_PE_FROM_DOMAIN = 0,
98337 	OPAL_ADD_PE_TO_DOMAIN = 1,
98338 };
98339 
98340 enum OpalMveEnableAction {
98341 	OPAL_DISABLE_MVE = 0,
98342 	OPAL_ENABLE_MVE = 1,
98343 };
98344 
98345 enum OpalM64Action {
98346 	OPAL_DISABLE_M64 = 0,
98347 	OPAL_ENABLE_M64_SPLIT = 1,
98348 	OPAL_ENABLE_M64_NON_SPLIT = 2,
98349 };
98350 
98351 enum {
98352 	OPAL_PCI_TCE_KILL_PAGES = 0,
98353 	OPAL_PCI_TCE_KILL_PE = 1,
98354 	OPAL_PCI_TCE_KILL_ALL = 2,
98355 };
98356 
98357 struct iommu_table_group_link {
98358 	struct list_head next;
98359 	struct callback_head rcu;
98360 	struct iommu_table_group *table_group;
98361 };
98362 
98363 struct energy_scale_attribute {
98364 	__be64 id;
98365 	__be64 val;
98366 	u8 desc[64];
98367 	u8 value_desc[64];
98368 };
98369 
98370 struct h_energy_scale_info_hdr {
98371 	__be64 num_attrs;
98372 	__be64 array_offset;
98373 	u8 data_header_version;
98374 } __attribute__((packed));
98375 
98376 struct papr_attr {
98377 	u64 id;
98378 	struct kobj_attribute kobj_attr;
98379 };
98380 
98381 struct papr_group {
98382 	struct attribute_group pg;
98383 	struct papr_attr pgattrs[3];
98384 };
98385 
98386 struct papr_ops_info {
98387 	const char *attr_name;
98388 	ssize_t (*show)(struct kobject *, struct kobj_attribute *, char *);
98389 };
98390 
98391 struct wq_flusher;
98392 
98393 struct worker;
98394 
98395 struct workqueue_attrs;
98396 
98397 struct pool_workqueue;
98398 
98399 struct wq_device;
98400 
98401 struct workqueue_struct {
98402 	struct list_head pwqs;
98403 	struct list_head list;
98404 	struct mutex mutex;
98405 	int work_color;
98406 	int flush_color;
98407 	atomic_t nr_pwqs_to_flush;
98408 	struct wq_flusher *first_flusher;
98409 	struct list_head flusher_queue;
98410 	struct list_head flusher_overflow;
98411 	struct list_head maydays;
98412 	struct worker *rescuer;
98413 	int nr_drainers;
98414 	int saved_max_active;
98415 	struct workqueue_attrs *unbound_attrs;
98416 	struct pool_workqueue *dfl_pwq;
98417 	struct wq_device *wq_dev;
98418 	char name[24];
98419 	struct callback_head rcu;
98420 	long: 64;
98421 	long: 64;
98422 	long: 64;
98423 	long: 64;
98424 	unsigned int flags;
98425 	struct pool_workqueue *cpu_pwqs;
98426 	struct pool_workqueue *numa_pwq_tbl[0];
98427 	long: 64;
98428 	long: 64;
98429 	long: 64;
98430 	long: 64;
98431 	long: 64;
98432 	long: 64;
98433 	long: 64;
98434 	long: 64;
98435 	long: 64;
98436 	long: 64;
98437 	long: 64;
98438 	long: 64;
98439 	long: 64;
98440 	long: 64;
98441 };
98442 
98443 struct workqueue_attrs {
98444 	int nice;
98445 	cpumask_var_t cpumask;
98446 	bool no_numa;
98447 };
98448 
98449 struct worker_pool;
98450 
98451 struct worker {
98452 	union {
98453 		struct list_head entry;
98454 		struct hlist_node hentry;
98455 	};
98456 	struct work_struct *current_work;
98457 	work_func_t current_func;
98458 	struct pool_workqueue *current_pwq;
98459 	unsigned int current_color;
98460 	struct list_head scheduled;
98461 	struct task_struct *task;
98462 	struct worker_pool *pool;
98463 	struct list_head node;
98464 	long unsigned int last_active;
98465 	unsigned int flags;
98466 	int id;
98467 	int sleeping;
98468 	char desc[24];
98469 	struct workqueue_struct *rescue_wq;
98470 	work_func_t last_func;
98471 };
98472 
98473 struct pool_workqueue {
98474 	struct worker_pool *pool;
98475 	struct workqueue_struct *wq;
98476 	int work_color;
98477 	int flush_color;
98478 	int refcnt;
98479 	int nr_in_flight[16];
98480 	int nr_active;
98481 	int max_active;
98482 	struct list_head inactive_works;
98483 	struct list_head pwqs_node;
98484 	struct list_head mayday_node;
98485 	struct work_struct unbound_release_work;
98486 	struct callback_head rcu;
98487 	long: 64;
98488 	long: 64;
98489 	long: 64;
98490 	long: 64;
98491 	long: 64;
98492 	long: 64;
98493 	long: 64;
98494 };
98495 
98496 struct worker_pool {
98497 	raw_spinlock_t lock;
98498 	int cpu;
98499 	int node;
98500 	int id;
98501 	unsigned int flags;
98502 	long unsigned int watchdog_ts;
98503 	int nr_running;
98504 	struct list_head worklist;
98505 	int nr_workers;
98506 	int nr_idle;
98507 	struct list_head idle_list;
98508 	struct timer_list idle_timer;
98509 	struct timer_list mayday_timer;
98510 	struct hlist_head busy_hash[64];
98511 	struct worker *manager;
98512 	struct list_head workers;
98513 	struct completion *detach_completion;
98514 	struct ida worker_ida;
98515 	struct workqueue_attrs *attrs;
98516 	struct hlist_node hash_node;
98517 	int refcnt;
98518 	struct callback_head rcu;
98519 };
98520 
98521 enum {
98522 	POOL_MANAGER_ACTIVE = 1,
98523 	POOL_DISASSOCIATED = 4,
98524 	WORKER_DIE = 2,
98525 	WORKER_IDLE = 4,
98526 	WORKER_PREP = 8,
98527 	WORKER_CPU_INTENSIVE = 64,
98528 	WORKER_UNBOUND = 128,
98529 	WORKER_REBOUND = 256,
98530 	WORKER_NOT_RUNNING = 456,
98531 	NR_STD_WORKER_POOLS = 2,
98532 	UNBOUND_POOL_HASH_ORDER = 6,
98533 	BUSY_WORKER_HASH_ORDER = 6,
98534 	MAX_IDLE_WORKERS_RATIO = 4,
98535 	IDLE_WORKER_TIMEOUT = 30000,
98536 	MAYDAY_INITIAL_TIMEOUT = 2,
98537 	MAYDAY_INTERVAL = 10,
98538 	CREATE_COOLDOWN = 100,
98539 	RESCUER_NICE_LEVEL = -20,
98540 	HIGHPRI_NICE_LEVEL = -20,
98541 	WQ_NAME_LEN = 24,
98542 };
98543 
98544 struct wq_flusher {
98545 	struct list_head list;
98546 	int flush_color;
98547 	struct completion done;
98548 };
98549 
98550 struct wq_device {
98551 	struct workqueue_struct *wq;
98552 	struct device dev;
98553 };
98554 
98555 struct trace_event_raw_workqueue_queue_work {
98556 	struct trace_entry ent;
98557 	void *work;
98558 	void *function;
98559 	u32 __data_loc_workqueue;
98560 	int req_cpu;
98561 	int cpu;
98562 	char __data[0];
98563 };
98564 
98565 struct trace_event_raw_workqueue_activate_work {
98566 	struct trace_entry ent;
98567 	void *work;
98568 	char __data[0];
98569 };
98570 
98571 struct trace_event_raw_workqueue_execute_start {
98572 	struct trace_entry ent;
98573 	void *work;
98574 	void *function;
98575 	char __data[0];
98576 };
98577 
98578 struct trace_event_raw_workqueue_execute_end {
98579 	struct trace_entry ent;
98580 	void *work;
98581 	void *function;
98582 	char __data[0];
98583 };
98584 
98585 struct trace_event_data_offsets_workqueue_queue_work {
98586 	u32 workqueue;
98587 };
98588 
98589 struct trace_event_data_offsets_workqueue_activate_work {};
98590 
98591 struct trace_event_data_offsets_workqueue_execute_start {};
98592 
98593 struct trace_event_data_offsets_workqueue_execute_end {};
98594 
98595 typedef void (*btf_trace_workqueue_queue_work)(void *, int, struct pool_workqueue *, struct work_struct *);
98596 
98597 typedef void (*btf_trace_workqueue_activate_work)(void *, struct work_struct *);
98598 
98599 typedef void (*btf_trace_workqueue_execute_start)(void *, struct work_struct *);
98600 
98601 typedef void (*btf_trace_workqueue_execute_end)(void *, struct work_struct *, work_func_t);
98602 
98603 struct wq_barrier {
98604 	struct work_struct work;
98605 	struct completion done;
98606 	struct task_struct *task;
98607 };
98608 
98609 struct cwt_wait {
98610 	wait_queue_entry_t wait;
98611 	struct work_struct *work;
98612 };
98613 
98614 struct apply_wqattrs_ctx {
98615 	struct workqueue_struct *wq;
98616 	struct workqueue_attrs *attrs;
98617 	struct list_head list;
98618 	struct pool_workqueue *dfl_pwq;
98619 	struct pool_workqueue *pwq_tbl[0];
98620 };
98621 
98622 struct work_for_cpu {
98623 	struct work_struct work;
98624 	long int (*fn)(void *);
98625 	void *arg;
98626 	long int ret;
98627 };
98628 
98629 struct optimistic_spin_node {
98630 	struct optimistic_spin_node *next;
98631 	struct optimistic_spin_node *prev;
98632 	int locked;
98633 	int cpu;
98634 };
98635 
98636 struct irq_devres {
98637 	unsigned int irq;
98638 	void *dev_id;
98639 };
98640 
98641 struct irq_desc_devres {
98642 	unsigned int from;
98643 	unsigned int cnt;
98644 };
98645 
98646 struct module_use {
98647 	struct list_head source_list;
98648 	struct list_head target_list;
98649 	struct module *source;
98650 	struct module *target;
98651 };
98652 
98653 struct module_sect_attr {
98654 	struct bin_attribute battr;
98655 	long unsigned int address;
98656 };
98657 
98658 struct module_sect_attrs {
98659 	struct attribute_group grp;
98660 	unsigned int nsections;
98661 	struct module_sect_attr attrs[0];
98662 };
98663 
98664 struct module_notes_attrs {
98665 	struct kobject *dir;
98666 	unsigned int notes;
98667 	struct bin_attribute attrs[0];
98668 };
98669 
98670 struct tm {
98671 	int tm_sec;
98672 	int tm_min;
98673 	int tm_hour;
98674 	int tm_mday;
98675 	int tm_mon;
98676 	long int tm_year;
98677 	int tm_wday;
98678 	int tm_yday;
98679 };
98680 
98681 struct __kernel_old_itimerval {
98682 	struct __kernel_old_timeval it_interval;
98683 	struct __kernel_old_timeval it_value;
98684 };
98685 
98686 struct root_domain;
98687 
98688 struct sched_domain_attr {
98689 	int relax_domain_level;
98690 };
98691 
98692 struct fmeter {
98693 	int cnt;
98694 	int val;
98695 	time64_t time;
98696 	spinlock_t lock;
98697 };
98698 
98699 struct cpuset {
98700 	struct cgroup_subsys_state css;
98701 	long unsigned int flags;
98702 	cpumask_var_t cpus_allowed;
98703 	nodemask_t mems_allowed;
98704 	cpumask_var_t effective_cpus;
98705 	nodemask_t effective_mems;
98706 	cpumask_var_t subparts_cpus;
98707 	nodemask_t old_mems_allowed;
98708 	struct fmeter fmeter;
98709 	int attach_in_progress;
98710 	int pn;
98711 	int relax_domain_level;
98712 	int nr_subparts_cpus;
98713 	int partition_root_state;
98714 	int use_parent_ecpus;
98715 	int child_ecpus_count;
98716 	struct cgroup_file partition_file;
98717 };
98718 
98719 struct tmpmasks {
98720 	cpumask_var_t addmask;
98721 	cpumask_var_t delmask;
98722 	cpumask_var_t new_cpus;
98723 };
98724 
98725 typedef enum {
98726 	CS_ONLINE = 0,
98727 	CS_CPU_EXCLUSIVE = 1,
98728 	CS_MEM_EXCLUSIVE = 2,
98729 	CS_MEM_HARDWALL = 3,
98730 	CS_MEMORY_MIGRATE = 4,
98731 	CS_SCHED_LOAD_BALANCE = 5,
98732 	CS_SPREAD_PAGE = 6,
98733 	CS_SPREAD_SLAB = 7,
98734 } cpuset_flagbits_t;
98735 
98736 enum subparts_cmd {
98737 	partcmd_enable = 0,
98738 	partcmd_disable = 1,
98739 	partcmd_update = 2,
98740 };
98741 
98742 struct cpuset_migrate_mm_work {
98743 	struct work_struct work;
98744 	struct mm_struct *mm;
98745 	nodemask_t from;
98746 	nodemask_t to;
98747 };
98748 
98749 typedef enum {
98750 	FILE_MEMORY_MIGRATE = 0,
98751 	FILE_CPULIST = 1,
98752 	FILE_MEMLIST = 2,
98753 	FILE_EFFECTIVE_CPULIST = 3,
98754 	FILE_EFFECTIVE_MEMLIST = 4,
98755 	FILE_SUBPARTS_CPULIST = 5,
98756 	FILE_CPU_EXCLUSIVE = 6,
98757 	FILE_MEM_EXCLUSIVE = 7,
98758 	FILE_MEM_HARDWALL = 8,
98759 	FILE_SCHED_LOAD_BALANCE = 9,
98760 	FILE_PARTITION_ROOT = 10,
98761 	FILE_SCHED_RELAX_DOMAIN_LEVEL = 11,
98762 	FILE_MEMORY_PRESSURE_ENABLED = 12,
98763 	FILE_MEMORY_PRESSURE = 13,
98764 	FILE_SPREAD_PAGE = 14,
98765 	FILE_SPREAD_SLAB = 15,
98766 } cpuset_filetype_t;
98767 
98768 enum {
98769 	TRACE_NOP_OPT_ACCEPT = 1,
98770 	TRACE_NOP_OPT_REFUSE = 2,
98771 };
98772 
98773 struct bpf_attach_target_info {
98774 	struct btf_func_model fmodel;
98775 	long int tgt_addr;
98776 	const char *tgt_name;
98777 	const struct btf_type *tgt_type;
98778 };
98779 
98780 struct bpf_tramp_run_ctx {
98781 	struct bpf_run_ctx run_ctx;
98782 	u64 bpf_cookie;
98783 	struct bpf_run_ctx *saved_run_ctx;
98784 };
98785 
98786 enum hmm_pfn_flags {
98787 	HMM_PFN_VALID = 9223372036854775808ULL,
98788 	HMM_PFN_WRITE = 4611686018427387904ULL,
98789 	HMM_PFN_ERROR = 2305843009213693952ULL,
98790 	HMM_PFN_ORDER_SHIFT = 56ULL,
98791 	HMM_PFN_REQ_FAULT = 9223372036854775808ULL,
98792 	HMM_PFN_REQ_WRITE = 4611686018427387904ULL,
98793 	HMM_PFN_FLAGS = 18374686479671623680ULL,
98794 };
98795 
98796 struct hmm_range {
98797 	struct mmu_interval_notifier *notifier;
98798 	long unsigned int notifier_seq;
98799 	long unsigned int start;
98800 	long unsigned int end;
98801 	long unsigned int *hmm_pfns;
98802 	long unsigned int default_flags;
98803 	long unsigned int pfn_flags_mask;
98804 	void *dev_private_owner;
98805 };
98806 
98807 struct hmm_vma_walk {
98808 	struct hmm_range *range;
98809 	long unsigned int last;
98810 };
98811 
98812 enum {
98813 	HMM_NEED_FAULT = 1,
98814 	HMM_NEED_WRITE_FAULT = 2,
98815 	HMM_NEED_ALL_BITS = 3,
98816 };
98817 
98818 struct f_owner_ex {
98819 	int type;
98820 	__kernel_pid_t pid;
98821 };
98822 
98823 struct flock {
98824 	short int l_type;
98825 	short int l_whence;
98826 	__kernel_off_t l_start;
98827 	__kernel_off_t l_len;
98828 	__kernel_pid_t l_pid;
98829 };
98830 
98831 enum rw_hint {
98832 	WRITE_LIFE_NOT_SET = 0,
98833 	WRITE_LIFE_NONE = 1,
98834 	WRITE_LIFE_SHORT = 2,
98835 	WRITE_LIFE_MEDIUM = 3,
98836 	WRITE_LIFE_LONG = 4,
98837 	WRITE_LIFE_EXTREME = 5,
98838 };
98839 
98840 enum dentry_d_lock_class {
98841 	DENTRY_D_LOCK_NORMAL = 0,
98842 	DENTRY_D_LOCK_NESTED = 1,
98843 };
98844 
98845 struct tree_descr {
98846 	const char *name;
98847 	const struct file_operations *ops;
98848 	int mode;
98849 };
98850 
98851 struct simple_transaction_argresp {
98852 	ssize_t size;
98853 	char data[0];
98854 };
98855 
98856 enum utf8_normalization {
98857 	UTF8_NFDI = 0,
98858 	UTF8_NFDICF = 1,
98859 	UTF8_NMAX = 2,
98860 };
98861 
98862 struct simple_attr {
98863 	int (*get)(void *, u64 *);
98864 	int (*set)(void *, u64);
98865 	char get_buf[24];
98866 	char set_buf[24];
98867 	void *data;
98868 	const char *fmt;
98869 	struct mutex mutex;
98870 };
98871 
98872 struct file_dedupe_range_info {
98873 	__s64 dest_fd;
98874 	__u64 dest_offset;
98875 	__u64 bytes_deduped;
98876 	__s32 status;
98877 	__u32 reserved;
98878 };
98879 
98880 struct file_dedupe_range {
98881 	__u64 src_offset;
98882 	__u64 src_length;
98883 	__u16 dest_count;
98884 	__u16 reserved1;
98885 	__u32 reserved2;
98886 	struct file_dedupe_range_info info[0];
98887 };
98888 
98889 struct iomap_ops;
98890 
98891 struct flock64 {
98892 	short int l_type;
98893 	short int l_whence;
98894 	__kernel_loff_t l_start;
98895 	__kernel_loff_t l_len;
98896 	__kernel_pid_t l_pid;
98897 };
98898 
98899 struct trace_event_raw_locks_get_lock_context {
98900 	struct trace_entry ent;
98901 	long unsigned int i_ino;
98902 	dev_t s_dev;
98903 	unsigned char type;
98904 	struct file_lock_context *ctx;
98905 	char __data[0];
98906 };
98907 
98908 struct trace_event_raw_filelock_lock {
98909 	struct trace_entry ent;
98910 	struct file_lock *fl;
98911 	long unsigned int i_ino;
98912 	dev_t s_dev;
98913 	struct file_lock *fl_blocker;
98914 	fl_owner_t fl_owner;
98915 	unsigned int fl_pid;
98916 	unsigned int fl_flags;
98917 	unsigned char fl_type;
98918 	loff_t fl_start;
98919 	loff_t fl_end;
98920 	int ret;
98921 	char __data[0];
98922 };
98923 
98924 struct trace_event_raw_filelock_lease {
98925 	struct trace_entry ent;
98926 	struct file_lock *fl;
98927 	long unsigned int i_ino;
98928 	dev_t s_dev;
98929 	struct file_lock *fl_blocker;
98930 	fl_owner_t fl_owner;
98931 	unsigned int fl_flags;
98932 	unsigned char fl_type;
98933 	long unsigned int fl_break_time;
98934 	long unsigned int fl_downgrade_time;
98935 	char __data[0];
98936 };
98937 
98938 struct trace_event_raw_generic_add_lease {
98939 	struct trace_entry ent;
98940 	long unsigned int i_ino;
98941 	int wcount;
98942 	int rcount;
98943 	int icount;
98944 	dev_t s_dev;
98945 	fl_owner_t fl_owner;
98946 	unsigned int fl_flags;
98947 	unsigned char fl_type;
98948 	char __data[0];
98949 };
98950 
98951 struct trace_event_raw_leases_conflict {
98952 	struct trace_entry ent;
98953 	void *lease;
98954 	void *breaker;
98955 	unsigned int l_fl_flags;
98956 	unsigned int b_fl_flags;
98957 	unsigned char l_fl_type;
98958 	unsigned char b_fl_type;
98959 	bool conflict;
98960 	char __data[0];
98961 };
98962 
98963 struct trace_event_data_offsets_locks_get_lock_context {};
98964 
98965 struct trace_event_data_offsets_filelock_lock {};
98966 
98967 struct trace_event_data_offsets_filelock_lease {};
98968 
98969 struct trace_event_data_offsets_generic_add_lease {};
98970 
98971 struct trace_event_data_offsets_leases_conflict {};
98972 
98973 typedef void (*btf_trace_locks_get_lock_context)(void *, struct inode *, int, struct file_lock_context *);
98974 
98975 typedef void (*btf_trace_posix_lock_inode)(void *, struct inode *, struct file_lock *, int);
98976 
98977 typedef void (*btf_trace_fcntl_setlk)(void *, struct inode *, struct file_lock *, int);
98978 
98979 typedef void (*btf_trace_locks_remove_posix)(void *, struct inode *, struct file_lock *, int);
98980 
98981 typedef void (*btf_trace_flock_lock_inode)(void *, struct inode *, struct file_lock *, int);
98982 
98983 typedef void (*btf_trace_break_lease_noblock)(void *, struct inode *, struct file_lock *);
98984 
98985 typedef void (*btf_trace_break_lease_block)(void *, struct inode *, struct file_lock *);
98986 
98987 typedef void (*btf_trace_break_lease_unblock)(void *, struct inode *, struct file_lock *);
98988 
98989 typedef void (*btf_trace_generic_delete_lease)(void *, struct inode *, struct file_lock *);
98990 
98991 typedef void (*btf_trace_time_out_leases)(void *, struct inode *, struct file_lock *);
98992 
98993 typedef void (*btf_trace_generic_add_lease)(void *, struct inode *, struct file_lock *);
98994 
98995 typedef void (*btf_trace_leases_conflict)(void *, bool, struct file_lock *, struct file_lock *);
98996 
98997 struct file_lock_list_struct {
98998 	spinlock_t lock;
98999 	struct hlist_head hlist;
99000 };
99001 
99002 struct locks_iterator {
99003 	int li_cpu;
99004 	loff_t li_pos;
99005 };
99006 
99007 struct kernfs_global_locks {
99008 	struct mutex open_file_mutex[1024];
99009 };
99010 
99011 struct ext4_system_zone {
99012 	struct rb_node node;
99013 	ext4_fsblk_t start_blk;
99014 	unsigned int count;
99015 	u32 ino;
99016 };
99017 
99018 struct mmp_struct {
99019 	__le32 mmp_magic;
99020 	__le32 mmp_seq;
99021 	__le64 mmp_time;
99022 	char mmp_nodename[64];
99023 	char mmp_bdevname[32];
99024 	__le16 mmp_check_interval;
99025 	__le16 mmp_pad1;
99026 	__le32 mmp_pad2[226];
99027 	__le32 mmp_checksum;
99028 };
99029 
99030 typedef long long unsigned int llu;
99031 
99032 struct fat_fid {
99033 	u32 i_gen;
99034 	u32 i_pos_low;
99035 	u16 i_pos_hi;
99036 	u16 parent_i_pos_hi;
99037 	u32 parent_i_pos_low;
99038 	u32 parent_i_gen;
99039 };
99040 
99041 struct nfs_mount_request {
99042 	struct sockaddr *sap;
99043 	size_t salen;
99044 	char *hostname;
99045 	char *dirpath;
99046 	u32 version;
99047 	short unsigned int protocol;
99048 	struct nfs_fh *fh;
99049 	int noresvport;
99050 	unsigned int *auth_flav_len;
99051 	rpc_authflavor_t *auth_flavs;
99052 	struct net *net;
99053 };
99054 
99055 struct proc_nfs_info {
99056 	int flag;
99057 	const char *str;
99058 	const char *nostr;
99059 };
99060 
99061 struct idmap_legacy_upcalldata;
99062 
99063 struct idmap {
99064 	struct rpc_pipe_dir_object idmap_pdo;
99065 	struct rpc_pipe *idmap_pipe;
99066 	struct idmap_legacy_upcalldata *idmap_upcall_data;
99067 	struct mutex idmap_mutex;
99068 	struct user_namespace *user_ns;
99069 };
99070 
99071 struct idmap_msg {
99072 	__u8 im_type;
99073 	__u8 im_conv;
99074 	char im_name[128];
99075 	__u32 im_id;
99076 	__u8 im_status;
99077 };
99078 
99079 struct idmap_legacy_upcalldata {
99080 	struct rpc_pipe_msg pipe_msg;
99081 	struct idmap_msg idmap_msg;
99082 	struct key *authkey;
99083 	struct idmap *idmap;
99084 };
99085 
99086 enum {
99087 	Opt_find_uid = 0,
99088 	Opt_find_gid = 1,
99089 	Opt_find_user = 2,
99090 	Opt_find_group = 3,
99091 	Opt_find_err = 4,
99092 };
99093 
99094 struct nlm_wait;
99095 
99096 struct xfs_dir2_sf_hdr {
99097 	uint8_t count;
99098 	uint8_t i8count;
99099 	uint8_t parent[8];
99100 };
99101 
99102 typedef struct xfs_dir2_sf_hdr xfs_dir2_sf_hdr_t;
99103 
99104 typedef __u32 xfs_dev_t;
99105 
99106 struct xfs_attr_sf_hdr {
99107 	__be16 totsize;
99108 	__u8 count;
99109 	__u8 padding;
99110 };
99111 
99112 struct xfs_attr_sf_entry {
99113 	uint8_t namelen;
99114 	uint8_t valuelen;
99115 	uint8_t flags;
99116 	uint8_t nameval[0];
99117 };
99118 
99119 struct xfs_attr_shortform {
99120 	struct xfs_attr_sf_hdr hdr;
99121 	struct xfs_attr_sf_entry list[1];
99122 };
99123 
99124 struct xfs_attr_leaf_name_local {
99125 	__be16 valuelen;
99126 	__u8 namelen;
99127 	__u8 nameval[1];
99128 };
99129 
99130 typedef struct xfs_attr_leaf_name_local xfs_attr_leaf_name_local_t;
99131 
99132 struct xfs_attr_sf_sort {
99133 	uint8_t entno;
99134 	uint8_t namelen;
99135 	uint8_t valuelen;
99136 	uint8_t flags;
99137 	xfs_dahash_t hash;
99138 	unsigned char *name;
99139 };
99140 
99141 typedef struct xfs_attr_sf_sort xfs_attr_sf_sort_t;
99142 
99143 struct fsxattr {
99144 	__u32 fsx_xflags;
99145 	__u32 fsx_extsize;
99146 	__u32 fsx_nextents;
99147 	__u32 fsx_projid;
99148 	__u32 fsx_cowextsize;
99149 	unsigned char fsx_pad[8];
99150 };
99151 
99152 struct dioattr {
99153 	__u32 d_mem;
99154 	__u32 d_miniosz;
99155 	__u32 d_maxiosz;
99156 };
99157 
99158 struct getbmapx {
99159 	__s64 bmv_offset;
99160 	__s64 bmv_block;
99161 	__s64 bmv_length;
99162 	__s32 bmv_count;
99163 	__s32 bmv_entries;
99164 	__s32 bmv_iflags;
99165 	__s32 bmv_oflags;
99166 	__s32 bmv_unused1;
99167 	__s32 bmv_unused2;
99168 };
99169 
99170 struct xfs_fsop_counts {
99171 	__u64 freedata;
99172 	__u64 freertx;
99173 	__u64 freeino;
99174 	__u64 allocino;
99175 };
99176 
99177 typedef struct xfs_fsop_counts xfs_fsop_counts_t;
99178 
99179 struct xfs_fsop_resblks {
99180 	__u64 resblks;
99181 	__u64 resblks_avail;
99182 };
99183 
99184 typedef struct xfs_fsop_resblks xfs_fsop_resblks_t;
99185 
99186 struct xfs_growfs_data {
99187 	__u64 newblocks;
99188 	__u32 imaxpct;
99189 };
99190 
99191 struct xfs_growfs_log {
99192 	__u32 newblocks;
99193 	__u32 isint;
99194 };
99195 
99196 struct xfs_growfs_rt {
99197 	__u64 newblocks;
99198 	__u32 extsize;
99199 };
99200 
99201 typedef struct xfs_growfs_rt xfs_growfs_rt_t;
99202 
99203 struct xfs_bstime {
99204 	__kernel_long_t tv_sec;
99205 	__s32 tv_nsec;
99206 };
99207 
99208 typedef struct xfs_bstime xfs_bstime_t;
99209 
99210 struct xfs_bstat {
99211 	__u64 bs_ino;
99212 	__u16 bs_mode;
99213 	__u16 bs_nlink;
99214 	__u32 bs_uid;
99215 	__u32 bs_gid;
99216 	__u32 bs_rdev;
99217 	__s32 bs_blksize;
99218 	__s64 bs_size;
99219 	xfs_bstime_t bs_atime;
99220 	xfs_bstime_t bs_mtime;
99221 	xfs_bstime_t bs_ctime;
99222 	int64_t bs_blocks;
99223 	__u32 bs_xflags;
99224 	__s32 bs_extsize;
99225 	__s32 bs_extents;
99226 	__u32 bs_gen;
99227 	__u16 bs_projid_lo;
99228 	__u16 bs_forkoff;
99229 	__u16 bs_projid_hi;
99230 	uint16_t bs_sick;
99231 	uint16_t bs_checked;
99232 	unsigned char bs_pad[2];
99233 	__u32 bs_cowextsize;
99234 	__u32 bs_dmevmask;
99235 	__u16 bs_dmstate;
99236 	__u16 bs_aextents;
99237 };
99238 
99239 struct xfs_fsop_bulkreq {
99240 	__u64 *lastip;
99241 	__s32 icount;
99242 	void *ubuffer;
99243 	__s32 *ocount;
99244 };
99245 
99246 struct xfs_inogrp {
99247 	__u64 xi_startino;
99248 	__s32 xi_alloccount;
99249 	__u64 xi_allocmask;
99250 };
99251 
99252 struct xfs_inumbers {
99253 	uint64_t xi_startino;
99254 	uint64_t xi_allocmask;
99255 	uint8_t xi_alloccount;
99256 	uint8_t xi_version;
99257 	uint8_t xi_padding[6];
99258 };
99259 
99260 struct xfs_bulk_ireq {
99261 	uint64_t ino;
99262 	uint32_t flags;
99263 	uint32_t icount;
99264 	uint32_t ocount;
99265 	uint32_t agno;
99266 	uint64_t reserved[5];
99267 };
99268 
99269 struct xfs_bulkstat_req {
99270 	struct xfs_bulk_ireq hdr;
99271 	struct xfs_bulkstat bulkstat[0];
99272 };
99273 
99274 struct xfs_inumbers_req {
99275 	struct xfs_bulk_ireq hdr;
99276 	struct xfs_inumbers inumbers[0];
99277 };
99278 
99279 struct xfs_error_injection {
99280 	__s32 fd;
99281 	__s32 errtag;
99282 };
99283 
99284 typedef struct xfs_error_injection xfs_error_injection_t;
99285 
99286 struct xfs_fs_eofblocks {
99287 	__u32 eof_version;
99288 	__u32 eof_flags;
99289 	uid_t eof_uid;
99290 	gid_t eof_gid;
99291 	prid_t eof_prid;
99292 	__u32 pad32;
99293 	__u64 eof_min_file_size;
99294 	__u64 pad64[12];
99295 };
99296 
99297 struct xfs_fsop_handlereq {
99298 	__u32 fd;
99299 	void *path;
99300 	__u32 oflags;
99301 	void *ihandle;
99302 	__u32 ihandlen;
99303 	void *ohandle;
99304 	__u32 *ohandlen;
99305 };
99306 
99307 typedef struct xfs_fsop_handlereq xfs_fsop_handlereq_t;
99308 
99309 struct xfs_attrlist_cursor {
99310 	__u32 opaque[4];
99311 };
99312 
99313 struct xfs_attrlist {
99314 	__s32 al_count;
99315 	__s32 al_more;
99316 	__s32 al_offset[1];
99317 };
99318 
99319 struct xfs_attrlist_ent {
99320 	__u32 a_valuelen;
99321 	char a_name[1];
99322 };
99323 
99324 struct xfs_fsop_attrlist_handlereq {
99325 	struct xfs_fsop_handlereq hreq;
99326 	struct xfs_attrlist_cursor pos;
99327 	__u32 flags;
99328 	__u32 buflen;
99329 	void *buffer;
99330 };
99331 
99332 struct xfs_attr_multiop {
99333 	__u32 am_opcode;
99334 	__s32 am_error;
99335 	void *am_attrname;
99336 	void *am_attrvalue;
99337 	__u32 am_length;
99338 	__u32 am_flags;
99339 };
99340 
99341 typedef struct xfs_attr_multiop xfs_attr_multiop_t;
99342 
99343 struct xfs_fsop_attrmulti_handlereq {
99344 	struct xfs_fsop_handlereq hreq;
99345 	__u32 opcount;
99346 	struct xfs_attr_multiop *ops;
99347 };
99348 
99349 typedef struct xfs_fsop_attrmulti_handlereq xfs_fsop_attrmulti_handlereq_t;
99350 
99351 typedef struct {
99352 	__u32 val[2];
99353 } xfs_fsid_t;
99354 
99355 struct xfs_fid {
99356 	__u16 fid_len;
99357 	__u16 fid_pad;
99358 	__u32 fid_gen;
99359 	__u64 fid_ino;
99360 };
99361 
99362 typedef struct xfs_fid xfs_fid_t;
99363 
99364 struct xfs_handle {
99365 	union {
99366 		__s64 align;
99367 		xfs_fsid_t _ha_fsid;
99368 	} ha_u;
99369 	xfs_fid_t ha_fid;
99370 };
99371 
99372 typedef struct xfs_handle xfs_handle_t;
99373 
99374 struct xfs_swapext {
99375 	int64_t sx_version;
99376 	int64_t sx_fdtarget;
99377 	int64_t sx_fdtmp;
99378 	xfs_off_t sx_offset;
99379 	xfs_off_t sx_length;
99380 	char sx_pad[16];
99381 	struct xfs_bstat sx_stat;
99382 };
99383 
99384 typedef struct xfs_swapext xfs_swapext_t;
99385 
99386 struct xfs_scrub_metadata {
99387 	__u32 sm_type;
99388 	__u32 sm_flags;
99389 	__u64 sm_ino;
99390 	__u32 sm_gen;
99391 	__u32 sm_agno;
99392 	__u64 sm_reserved[5];
99393 };
99394 
99395 struct xfs_ibulk {
99396 	struct xfs_mount *mp;
99397 	struct user_namespace *mnt_userns;
99398 	void *ubuffer;
99399 	xfs_ino_t startino;
99400 	unsigned int icount;
99401 	unsigned int ocount;
99402 	unsigned int flags;
99403 };
99404 
99405 typedef int (*bulkstat_one_fmt_pf)(struct xfs_ibulk *, const struct xfs_bulkstat *);
99406 
99407 typedef int (*inumbers_fmt_pf)(struct xfs_ibulk *, const struct xfs_inumbers *);
99408 
99409 struct kgetbmap {
99410 	__s64 bmv_offset;
99411 	__s64 bmv_block;
99412 	__s64 bmv_length;
99413 	__s32 bmv_oflags;
99414 };
99415 
99416 struct xfs_fid64 {
99417 	u64 ino;
99418 	u32 gen;
99419 	u64 parent_ino;
99420 	u32 parent_gen;
99421 } __attribute__((packed));
99422 
99423 struct fsmap_head {
99424 	__u32 fmh_iflags;
99425 	__u32 fmh_oflags;
99426 	__u32 fmh_count;
99427 	__u32 fmh_entries;
99428 	__u64 fmh_reserved[6];
99429 	struct fsmap fmh_keys[2];
99430 	struct fsmap fmh_recs[0];
99431 };
99432 
99433 struct xfs_phys_extent {
99434 	uint64_t pe_startblock;
99435 	uint32_t pe_len;
99436 	uint32_t pe_flags;
99437 };
99438 
99439 struct xfs_cui_log_format {
99440 	uint16_t cui_type;
99441 	uint16_t cui_size;
99442 	uint32_t cui_nextents;
99443 	uint64_t cui_id;
99444 	struct xfs_phys_extent cui_extents[0];
99445 };
99446 
99447 struct xfs_cud_log_format {
99448 	uint16_t cud_type;
99449 	uint16_t cud_size;
99450 	uint32_t __pad;
99451 	uint64_t cud_cui_id;
99452 };
99453 
99454 struct xfs_cui_log_item {
99455 	struct xfs_log_item cui_item;
99456 	atomic_t cui_refcount;
99457 	atomic_t cui_next_extent;
99458 	struct xfs_cui_log_format cui_format;
99459 };
99460 
99461 struct xfs_cud_log_item {
99462 	struct xfs_log_item cud_item;
99463 	struct xfs_cui_log_item *cud_cuip;
99464 	struct xfs_cud_log_format cud_format;
99465 };
99466 
99467 enum xfs_refcount_intent_type {
99468 	XFS_REFCOUNT_INCREASE = 1,
99469 	XFS_REFCOUNT_DECREASE = 2,
99470 	XFS_REFCOUNT_ALLOC_COW = 3,
99471 	XFS_REFCOUNT_FREE_COW = 4,
99472 };
99473 
99474 struct xfs_refcount_intent {
99475 	struct list_head ri_list;
99476 	enum xfs_refcount_intent_type ri_type;
99477 	xfs_extlen_t ri_blockcount;
99478 	xfs_fsblock_t ri_startblock;
99479 };
99480 
99481 struct keyctl_dh_params {
99482 	union {
99483 		__s32 private;
99484 		__s32 priv;
99485 	};
99486 	__s32 prime;
99487 	__s32 base;
99488 };
99489 
99490 struct keyctl_kdf_params {
99491 	char *hashname;
99492 	char *otherinfo;
99493 	__u32 otherinfolen;
99494 	__u32 __spare[8];
99495 };
99496 
99497 struct keyctl_pkey_query {
99498 	__u32 supported_ops;
99499 	__u32 key_size;
99500 	__u16 max_data_size;
99501 	__u16 max_sig_size;
99502 	__u16 max_enc_size;
99503 	__u16 max_dec_size;
99504 	__u32 __spare[10];
99505 };
99506 
99507 struct keyctl_pkey_params {
99508 	__s32 key_id;
99509 	__u32 in_len;
99510 	union {
99511 		__u32 out_len;
99512 		__u32 in2_len;
99513 	};
99514 	__u32 __spare[7];
99515 };
99516 
99517 enum key_notification_subtype {
99518 	NOTIFY_KEY_INSTANTIATED = 0,
99519 	NOTIFY_KEY_UPDATED = 1,
99520 	NOTIFY_KEY_LINKED = 2,
99521 	NOTIFY_KEY_UNLINKED = 3,
99522 	NOTIFY_KEY_CLEARED = 4,
99523 	NOTIFY_KEY_REVOKED = 5,
99524 	NOTIFY_KEY_INVALIDATED = 6,
99525 	NOTIFY_KEY_SETATTR = 7,
99526 };
99527 
99528 struct crypto_report_acomp {
99529 	char type[64];
99530 };
99531 
99532 struct acomp_alg {
99533 	int (*compress)(struct acomp_req *);
99534 	int (*decompress)(struct acomp_req *);
99535 	void (*dst_free)(struct scatterlist *);
99536 	int (*init)(struct crypto_acomp *);
99537 	void (*exit)(struct crypto_acomp *);
99538 	unsigned int reqsize;
99539 	struct crypto_alg base;
99540 };
99541 
99542 enum {
99543 	BIOSET_NEED_BVECS = 1,
99544 	BIOSET_NEED_RESCUER = 2,
99545 	BIOSET_PERCPU_CACHE = 4,
99546 };
99547 
99548 enum {
99549 	DIO_SHOULD_DIRTY = 1,
99550 	DIO_IS_SYNC = 2,
99551 };
99552 
99553 struct blkdev_dio {
99554 	union {
99555 		struct kiocb *iocb;
99556 		struct task_struct *waiter;
99557 	};
99558 	size_t size;
99559 	atomic_t ref;
99560 	unsigned int flags;
99561 	long: 64;
99562 	long: 64;
99563 	long: 64;
99564 	long: 64;
99565 	long: 64;
99566 	long: 64;
99567 	long: 64;
99568 	long: 64;
99569 	long: 64;
99570 	long: 64;
99571 	long: 64;
99572 	long: 64;
99573 	long: 64;
99574 	struct bio bio;
99575 	long: 64;
99576 	long: 64;
99577 	long: 64;
99578 	long: 64;
99579 };
99580 
99581 struct class_dev_iter {
99582 	struct klist_iter ki;
99583 	const struct device_type *type;
99584 };
99585 
99586 struct blk_major_name {
99587 	struct blk_major_name *next;
99588 	int major;
99589 	char name[16];
99590 	void (*probe)(dev_t);
99591 };
99592 
99593 enum {
99594 	IORING_MSG_DATA = 0,
99595 	IORING_MSG_SEND_FD = 1,
99596 };
99597 
99598 struct io_msg {
99599 	struct file *file;
99600 	u64 user_data;
99601 	u32 len;
99602 	u32 cmd;
99603 	u32 src_fd;
99604 	u32 dst_fd;
99605 	u32 flags;
99606 };
99607 
99608 struct cpio_data {
99609 	void *data;
99610 	size_t size;
99611 	char name[18];
99612 };
99613 
99614 enum cpio_fields {
99615 	C_MAGIC = 0,
99616 	C_INO = 1,
99617 	C_MODE = 2,
99618 	C_UID = 3,
99619 	C_GID = 4,
99620 	C_NLINK = 5,
99621 	C_MTIME = 6,
99622 	C_FILESIZE = 7,
99623 	C_MAJ = 8,
99624 	C_MIN = 9,
99625 	C_RMAJ = 10,
99626 	C_RMIN = 11,
99627 	C_NAMESIZE = 12,
99628 	C_CHKSUM = 13,
99629 	C_NFIELDS = 14,
99630 };
99631 
99632 struct hvc_opal_priv {
99633 	hv_protocol_t proto;
99634 	struct hvsi_priv hvsi;
99635 };
99636 
99637 struct iommu_group {
99638 	struct kobject kobj;
99639 	struct kobject *devices_kobj;
99640 	struct list_head devices;
99641 	struct mutex mutex;
99642 	void *iommu_data;
99643 	void (*iommu_data_release)(void *);
99644 	char *name;
99645 	int id;
99646 	struct iommu_domain *default_domain;
99647 	struct iommu_domain *blocking_domain;
99648 	struct iommu_domain *domain;
99649 	struct list_head entry;
99650 	unsigned int owner_cnt;
99651 	void *owner;
99652 };
99653 
99654 enum iommu_fault_type {
99655 	IOMMU_FAULT_DMA_UNRECOV = 1,
99656 	IOMMU_FAULT_PAGE_REQ = 2,
99657 };
99658 
99659 enum iommu_resv_type {
99660 	IOMMU_RESV_DIRECT = 0,
99661 	IOMMU_RESV_DIRECT_RELAXABLE = 1,
99662 	IOMMU_RESV_RESERVED = 2,
99663 	IOMMU_RESV_MSI = 3,
99664 	IOMMU_RESV_SW_MSI = 4,
99665 };
99666 
99667 struct iommu_resv_region {
99668 	struct list_head list;
99669 	phys_addr_t start;
99670 	size_t length;
99671 	int prot;
99672 	enum iommu_resv_type type;
99673 	void (*free)(struct device *, struct iommu_resv_region *);
99674 };
99675 
99676 struct fsl_mc_obj_desc {
99677 	char type[16];
99678 	int id;
99679 	u16 vendor;
99680 	u16 ver_major;
99681 	u16 ver_minor;
99682 	u8 irq_count;
99683 	u8 region_count;
99684 	u32 state;
99685 	char label[16];
99686 	u16 flags;
99687 };
99688 
99689 struct fsl_mc_io;
99690 
99691 struct fsl_mc_device_irq;
99692 
99693 struct fsl_mc_resource;
99694 
99695 struct fsl_mc_device {
99696 	struct device dev;
99697 	u64 dma_mask;
99698 	u16 flags;
99699 	u32 icid;
99700 	u16 mc_handle;
99701 	struct fsl_mc_io *mc_io;
99702 	struct fsl_mc_obj_desc obj_desc;
99703 	struct resource *regions;
99704 	struct fsl_mc_device_irq **irqs;
99705 	struct fsl_mc_resource *resource;
99706 	struct device_link *consumer_link;
99707 	const char *driver_override;
99708 };
99709 
99710 enum fsl_mc_pool_type {
99711 	FSL_MC_POOL_DPMCP = 0,
99712 	FSL_MC_POOL_DPBP = 1,
99713 	FSL_MC_POOL_DPCON = 2,
99714 	FSL_MC_POOL_IRQ = 3,
99715 	FSL_MC_NUM_POOL_TYPES = 4,
99716 };
99717 
99718 struct fsl_mc_resource_pool;
99719 
99720 struct fsl_mc_resource {
99721 	enum fsl_mc_pool_type type;
99722 	s32 id;
99723 	void *data;
99724 	struct fsl_mc_resource_pool *parent_pool;
99725 	struct list_head node;
99726 };
99727 
99728 struct fsl_mc_device_irq {
99729 	unsigned int virq;
99730 	struct fsl_mc_device *mc_dev;
99731 	u8 dev_irq_index;
99732 	struct fsl_mc_resource resource;
99733 };
99734 
99735 struct fsl_mc_io {
99736 	struct device *dev;
99737 	u16 flags;
99738 	u32 portal_size;
99739 	phys_addr_t portal_phys_addr;
99740 	void *portal_virt_addr;
99741 	struct fsl_mc_device *dpmcp_dev;
99742 	union {
99743 		struct mutex mutex;
99744 		raw_spinlock_t spinlock;
99745 	};
99746 };
99747 
99748 struct group_device {
99749 	struct list_head list;
99750 	struct device *dev;
99751 	char *name;
99752 };
99753 
99754 struct iommu_group_attribute {
99755 	struct attribute attr;
99756 	ssize_t (*show)(struct iommu_group *, char *);
99757 	ssize_t (*store)(struct iommu_group *, const char *, size_t);
99758 };
99759 
99760 struct group_for_pci_data {
99761 	struct pci_dev *pdev;
99762 	struct iommu_group *group;
99763 };
99764 
99765 struct __group_domain_type {
99766 	struct device *dev;
99767 	unsigned int type;
99768 };
99769 
99770 typedef void * (*devcon_match_fn_t)(struct fwnode_handle *, const char *, void *);
99771 
99772 struct regcache_rbtree_node {
99773 	void *block;
99774 	long int *cache_present;
99775 	unsigned int base_reg;
99776 	unsigned int blklen;
99777 	struct rb_node node;
99778 };
99779 
99780 struct regcache_rbtree_ctx {
99781 	struct rb_root root;
99782 	struct regcache_rbtree_node *cached_rbnode;
99783 };
99784 
99785 struct nd_mapping_desc {
99786 	struct nvdimm *nvdimm;
99787 	u64 start;
99788 	u64 size;
99789 	int position;
99790 };
99791 
99792 struct nd_region_desc {
99793 	struct resource *res;
99794 	struct nd_mapping_desc *mapping;
99795 	u16 num_mappings;
99796 	const struct attribute_group **attr_groups;
99797 	struct nd_interleave_set *nd_set;
99798 	void *provider_data;
99799 	int num_lanes;
99800 	int numa_node;
99801 	int target_node;
99802 	long unsigned int flags;
99803 	int memregion;
99804 	struct device_node *of_node;
99805 	int (*flush)(struct nd_region *, struct bio *);
99806 };
99807 
99808 struct nd_namespace_index {
99809 	u8 sig[16];
99810 	u8 flags[3];
99811 	u8 labelsize;
99812 	__le32 seq;
99813 	__le64 myoff;
99814 	__le64 mysize;
99815 	__le64 otheroff;
99816 	__le64 labeloff;
99817 	__le32 nslot;
99818 	__le16 major;
99819 	__le16 minor;
99820 	__le64 checksum;
99821 	u8 free[0];
99822 };
99823 
99824 struct nvdimm_efi_label {
99825 	u8 uuid[16];
99826 	u8 name[64];
99827 	__le32 flags;
99828 	__le16 nlabel;
99829 	__le16 position;
99830 	__le64 isetcookie;
99831 	__le64 lbasize;
99832 	__le64 dpa;
99833 	__le64 rawsize;
99834 	__le32 slot;
99835 	u8 align;
99836 	u8 reserved[3];
99837 	guid_t type_guid;
99838 	guid_t abstraction_guid;
99839 	u8 reserved2[88];
99840 	__le64 checksum;
99841 };
99842 
99843 struct nvdimm_cxl_label {
99844 	u8 type[16];
99845 	u8 uuid[16];
99846 	u8 name[64];
99847 	__le32 flags;
99848 	__le16 nrange;
99849 	__le16 position;
99850 	__le64 dpa;
99851 	__le64 rawsize;
99852 	__le32 slot;
99853 	__le32 align;
99854 	u8 region_uuid[16];
99855 	u8 abstraction_uuid[16];
99856 	__le16 lbasize;
99857 	u8 reserved[86];
99858 	__le64 checksum;
99859 };
99860 
99861 struct nd_namespace_label {
99862 	union {
99863 		struct nvdimm_cxl_label cxl;
99864 		struct nvdimm_efi_label efi;
99865 	};
99866 };
99867 
99868 struct nd_label_ent {
99869 	struct list_head list;
99870 	long unsigned int flags;
99871 	struct nd_namespace_label *label;
99872 };
99873 
99874 struct conflict_context {
99875 	struct nd_region *nd_region;
99876 	resource_size_t start;
99877 	resource_size_t size;
99878 };
99879 
99880 struct dma_resv_list {
99881 	struct callback_head rcu;
99882 	u32 num_fences;
99883 	u32 max_fences;
99884 	struct dma_fence *table[0];
99885 };
99886 
99887 enum scsi_scan_mode {
99888 	SCSI_SCAN_INITIAL = 0,
99889 	SCSI_SCAN_RESCAN = 1,
99890 	SCSI_SCAN_MANUAL = 2,
99891 };
99892 
99893 enum scsi_msg_byte {
99894 	COMMAND_COMPLETE = 0,
99895 	EXTENDED_MESSAGE = 1,
99896 	SAVE_POINTERS = 2,
99897 	RESTORE_POINTERS = 3,
99898 	DISCONNECT = 4,
99899 	INITIATOR_ERROR = 5,
99900 	ABORT_TASK_SET = 6,
99901 	MESSAGE_REJECT = 7,
99902 	NOP = 8,
99903 	MSG_PARITY_ERROR = 9,
99904 	LINKED_CMD_COMPLETE = 10,
99905 	LINKED_FLG_CMD_COMPLETE = 11,
99906 	TARGET_RESET = 12,
99907 	ABORT_TASK = 13,
99908 	CLEAR_TASK_SET = 14,
99909 	INITIATE_RECOVERY = 15,
99910 	RELEASE_RECOVERY = 16,
99911 	TERMINATE_IO_PROC = 17,
99912 	CLEAR_ACA = 22,
99913 	LOGICAL_UNIT_RESET = 23,
99914 	SIMPLE_QUEUE_TAG = 32,
99915 	HEAD_OF_QUEUE_TAG = 33,
99916 	ORDERED_QUEUE_TAG = 34,
99917 	IGNORE_WIDE_RESIDUE = 35,
99918 	ACA = 36,
99919 	QAS_REQUEST = 85,
99920 	BUS_DEVICE_RESET = 12,
99921 	ABORT = 6,
99922 };
99923 
99924 struct sg_io_hdr {
99925 	int interface_id;
99926 	int dxfer_direction;
99927 	unsigned char cmd_len;
99928 	unsigned char mx_sb_len;
99929 	short unsigned int iovec_count;
99930 	unsigned int dxfer_len;
99931 	void *dxferp;
99932 	unsigned char *cmdp;
99933 	void *sbp;
99934 	unsigned int timeout;
99935 	unsigned int flags;
99936 	int pack_id;
99937 	void *usr_ptr;
99938 	unsigned char status;
99939 	unsigned char masked_status;
99940 	unsigned char msg_status;
99941 	unsigned char sb_len_wr;
99942 	short unsigned int host_status;
99943 	short unsigned int driver_status;
99944 	int resid;
99945 	unsigned int duration;
99946 	unsigned int info;
99947 };
99948 
99949 typedef struct sg_io_hdr sg_io_hdr_t;
99950 
99951 struct compat_sg_io_hdr {
99952 	compat_int_t interface_id;
99953 	compat_int_t dxfer_direction;
99954 	unsigned char cmd_len;
99955 	unsigned char mx_sb_len;
99956 	short unsigned int iovec_count;
99957 	compat_uint_t dxfer_len;
99958 	compat_uint_t dxferp;
99959 	compat_uptr_t cmdp;
99960 	compat_uptr_t sbp;
99961 	compat_uint_t timeout;
99962 	compat_uint_t flags;
99963 	compat_int_t pack_id;
99964 	compat_uptr_t usr_ptr;
99965 	unsigned char status;
99966 	unsigned char masked_status;
99967 	unsigned char msg_status;
99968 	unsigned char sb_len_wr;
99969 	short unsigned int host_status;
99970 	short unsigned int driver_status;
99971 	compat_int_t resid;
99972 	compat_uint_t duration;
99973 	compat_uint_t info;
99974 };
99975 
99976 struct sg_scsi_id {
99977 	int host_no;
99978 	int channel;
99979 	int scsi_id;
99980 	int lun;
99981 	int scsi_type;
99982 	short int h_cmd_per_lun;
99983 	short int d_queue_depth;
99984 	int unused[2];
99985 };
99986 
99987 typedef struct sg_scsi_id sg_scsi_id_t;
99988 
99989 struct sg_req_info {
99990 	char req_state;
99991 	char orphan;
99992 	char sg_io_owned;
99993 	char problem;
99994 	int pack_id;
99995 	void *usr_ptr;
99996 	unsigned int duration;
99997 	int unused;
99998 };
99999 
100000 typedef struct sg_req_info sg_req_info_t;
100001 
100002 struct sg_header {
100003 	int pack_len;
100004 	int reply_len;
100005 	int pack_id;
100006 	int result;
100007 	unsigned int twelve_byte: 1;
100008 	unsigned int target_status: 5;
100009 	unsigned int host_status: 8;
100010 	unsigned int driver_status: 8;
100011 	unsigned int other_flags: 10;
100012 	unsigned char sense_buffer[16];
100013 };
100014 
100015 struct sg_scatter_hold {
100016 	short unsigned int k_use_sg;
100017 	unsigned int sglist_len;
100018 	unsigned int bufflen;
100019 	struct page **pages;
100020 	int page_order;
100021 	char dio_in_use;
100022 	unsigned char cmd_opcode;
100023 };
100024 
100025 typedef struct sg_scatter_hold Sg_scatter_hold;
100026 
100027 struct sg_fd;
100028 
100029 struct sg_request {
100030 	struct list_head entry;
100031 	struct sg_fd *parentfp;
100032 	Sg_scatter_hold data;
100033 	sg_io_hdr_t header;
100034 	unsigned char sense_b[96];
100035 	char res_used;
100036 	char orphan;
100037 	char sg_io_owned;
100038 	char done;
100039 	struct request *rq;
100040 	struct bio *bio;
100041 	struct execute_work ew;
100042 };
100043 
100044 typedef struct sg_request Sg_request;
100045 
100046 struct sg_device;
100047 
100048 struct sg_fd {
100049 	struct list_head sfd_siblings;
100050 	struct sg_device *parentdp;
100051 	wait_queue_head_t read_wait;
100052 	rwlock_t rq_list_lock;
100053 	struct mutex f_mutex;
100054 	int timeout;
100055 	int timeout_user;
100056 	Sg_scatter_hold reserve;
100057 	struct list_head rq_list;
100058 	struct fasync_struct *async_qp;
100059 	Sg_request req_arr[16];
100060 	char force_packid;
100061 	char cmd_q;
100062 	unsigned char next_cmd_len;
100063 	char keep_orphan;
100064 	char mmap_called;
100065 	char res_in_use;
100066 	struct kref f_ref;
100067 	struct execute_work ew;
100068 };
100069 
100070 struct sg_device {
100071 	struct scsi_device *device;
100072 	wait_queue_head_t open_wait;
100073 	struct mutex open_rel_lock;
100074 	int sg_tablesize;
100075 	u32 index;
100076 	struct list_head sfds;
100077 	rwlock_t sfd_lock;
100078 	atomic_t detaching;
100079 	bool exclude;
100080 	int open_cnt;
100081 	char sgdebug;
100082 	char name[32];
100083 	struct cdev *cdev;
100084 	struct kref d_ref;
100085 };
100086 
100087 typedef struct sg_fd Sg_fd;
100088 
100089 typedef struct sg_device Sg_device;
100090 
100091 struct sg_proc_deviter {
100092 	loff_t index;
100093 	size_t max;
100094 };
100095 
100096 enum {
100097 	ATA_GEN_CLASS_MATCH = 1,
100098 	ATA_GEN_FORCE_DMA = 2,
100099 	ATA_GEN_INTEL_IDER = 4,
100100 };
100101 
100102 struct fixed_phy_status {
100103 	int link;
100104 	int speed;
100105 	int duplex;
100106 	int pause;
100107 	int asym_pause;
100108 };
100109 
100110 struct fixed_mdio_bus {
100111 	struct mii_bus *mii_bus;
100112 	struct list_head phys;
100113 };
100114 
100115 struct fixed_phy {
100116 	int addr;
100117 	struct phy_device *phydev;
100118 	struct fixed_phy_status status;
100119 	bool no_carrier;
100120 	int (*link_update)(struct net_device *, struct fixed_phy_status *);
100121 	struct list_head node;
100122 	struct gpio_desc *link_gpiod;
100123 };
100124 
100125 enum serio_event_type {
100126 	SERIO_RESCAN_PORT = 0,
100127 	SERIO_RECONNECT_PORT = 1,
100128 	SERIO_RECONNECT_SUBTREE = 2,
100129 	SERIO_REGISTER_PORT = 3,
100130 	SERIO_ATTACH_DRIVER = 4,
100131 };
100132 
100133 struct serio_event {
100134 	enum serio_event_type type;
100135 	void *object;
100136 	struct module *owner;
100137 	struct list_head node;
100138 };
100139 
100140 enum SS4_PACKET_ID {
100141 	SS4_PACKET_ID_IDLE = 0,
100142 	SS4_PACKET_ID_ONE = 1,
100143 	SS4_PACKET_ID_TWO = 2,
100144 	SS4_PACKET_ID_MULTI = 3,
100145 	SS4_PACKET_ID_STICK = 4,
100146 };
100147 
100148 enum V7_PACKET_ID {
100149 	V7_PACKET_ID_IDLE = 0,
100150 	V7_PACKET_ID_TWO = 1,
100151 	V7_PACKET_ID_MULTI = 2,
100152 	V7_PACKET_ID_NEW = 3,
100153 	V7_PACKET_ID_UNKNOWN = 4,
100154 };
100155 
100156 struct alps_protocol_info {
100157 	u16 version;
100158 	u8 byte0;
100159 	u8 mask0;
100160 	unsigned int flags;
100161 };
100162 
100163 struct alps_model_info {
100164 	u8 signature[3];
100165 	struct alps_protocol_info protocol_info;
100166 };
100167 
100168 struct alps_nibble_commands {
100169 	int command;
100170 	unsigned char data;
100171 };
100172 
100173 struct alps_bitmap_point {
100174 	int start_bit;
100175 	int num_bits;
100176 };
100177 
100178 struct alps_fields {
100179 	unsigned int x_map;
100180 	unsigned int y_map;
100181 	unsigned int fingers;
100182 	int pressure;
100183 	struct input_mt_pos st;
100184 	struct input_mt_pos mt[4];
100185 	unsigned int first_mp: 1;
100186 	unsigned int is_mp: 1;
100187 	unsigned int left: 1;
100188 	unsigned int right: 1;
100189 	unsigned int middle: 1;
100190 	unsigned int ts_left: 1;
100191 	unsigned int ts_right: 1;
100192 	unsigned int ts_middle: 1;
100193 };
100194 
100195 struct alps_data {
100196 	struct psmouse *psmouse;
100197 	struct input_dev *dev2;
100198 	struct input_dev *dev3;
100199 	char phys2[32];
100200 	char phys3[32];
100201 	struct delayed_work dev3_register_work;
100202 	const struct alps_nibble_commands *nibble_commands;
100203 	int addr_command;
100204 	u16 proto_version;
100205 	u8 byte0;
100206 	u8 mask0;
100207 	u8 dev_id[3];
100208 	u8 fw_ver[3];
100209 	int flags;
100210 	int x_max;
100211 	int y_max;
100212 	int x_bits;
100213 	int y_bits;
100214 	unsigned int x_res;
100215 	unsigned int y_res;
100216 	int (*hw_init)(struct psmouse *);
100217 	void (*process_packet)(struct psmouse *);
100218 	int (*decode_fields)(struct alps_fields *, unsigned char *, struct psmouse *);
100219 	void (*set_abs_params)(struct alps_data *, struct input_dev *);
100220 	int prev_fin;
100221 	int multi_packet;
100222 	int second_touch;
100223 	unsigned char multi_data[6];
100224 	struct alps_fields f;
100225 	u8 quirks;
100226 	struct timer_list timer;
100227 };
100228 
100229 struct dm_rq_target_io;
100230 
100231 struct dm_rq_clone_bio_info {
100232 	struct bio *orig;
100233 	struct dm_rq_target_io *tio;
100234 	struct bio clone;
100235 };
100236 
100237 struct dm_rq_target_io {
100238 	struct mapped_device *md;
100239 	struct dm_target *ti;
100240 	struct request *orig;
100241 	struct request *clone;
100242 	struct kthread_work work;
100243 	blk_status_t error;
100244 	union map_info info;
100245 	struct dm_stats_aux stats_aux;
100246 	long unsigned int duration_jiffies;
100247 	unsigned int n_sectors;
100248 	unsigned int completed;
100249 };
100250 
100251 enum {
100252 	OD_NORMAL_SAMPLE = 0,
100253 	OD_SUB_SAMPLE = 1,
100254 };
100255 
100256 struct od_ops {
100257 	unsigned int (*powersave_bias_target)(struct cpufreq_policy *, unsigned int, unsigned int);
100258 };
100259 
100260 struct od_policy_dbs_info {
100261 	struct policy_dbs_info policy_dbs;
100262 	unsigned int freq_lo;
100263 	unsigned int freq_lo_delay_us;
100264 	unsigned int freq_hi_delay_us;
100265 	unsigned int sample_type: 1;
100266 };
100267 
100268 struct od_dbs_tuners {
100269 	unsigned int powersave_bias;
100270 };
100271 
100272 struct nx842_constraints {
100273 	int alignment;
100274 	int multiple;
100275 	int minimum;
100276 	int maximum;
100277 };
100278 
100279 struct nx842_driver {
100280 	char *name;
100281 	struct module *owner;
100282 	size_t workmem_size;
100283 	struct nx842_constraints *constraints;
100284 	int (*compress)(const unsigned char *, unsigned int, unsigned char *, unsigned int *, void *);
100285 	int (*decompress)(const unsigned char *, unsigned int, unsigned char *, unsigned int *, void *);
100286 };
100287 
100288 struct nx842_workmem {
100289 	struct coprocessor_request_block crb;
100290 	struct data_descriptor_entry ddl_in[17];
100291 	struct data_descriptor_entry ddl_out[17];
100292 	ktime_t start;
100293 	char padding[256];
100294 	long: 64;
100295 	long: 64;
100296 	long: 64;
100297 	long: 64;
100298 	long: 64;
100299 	long: 64;
100300 	long: 64;
100301 	long: 64;
100302 	long: 64;
100303 	long: 64;
100304 	long: 64;
100305 };
100306 
100307 struct nx_coproc {
100308 	unsigned int chip_id;
100309 	unsigned int ct;
100310 	unsigned int ci;
100311 	struct {
100312 		struct vas_window *rxwin;
100313 		int id;
100314 	} vas;
100315 	struct list_head list;
100316 };
100317 
100318 struct of_bus {
100319 	const char *name;
100320 	const char *addresses;
100321 	int (*match)(struct device_node *);
100322 	void (*count_cells)(struct device_node *, int *, int *);
100323 	u64 (*map)(__be32 *, const __be32 *, int, int, int);
100324 	int (*translate)(__be32 *, u64, int);
100325 	bool has_flags;
100326 	unsigned int (*get_flags)(const __be32 *);
100327 };
100328 
100329 struct rtgenmsg {
100330 	unsigned char rtgen_family;
100331 };
100332 
100333 enum {
100334 	NETNSA_NONE = 0,
100335 	NETNSA_NSID = 1,
100336 	NETNSA_PID = 2,
100337 	NETNSA_FD = 3,
100338 	NETNSA_TARGET_NSID = 4,
100339 	NETNSA_CURRENT_NSID = 5,
100340 	__NETNSA_MAX = 6,
100341 };
100342 
100343 struct pcpu_gen_cookie {
100344 	local_t nesting;
100345 	u64 last;
100346 };
100347 
100348 struct gen_cookie {
100349 	struct pcpu_gen_cookie *local;
100350 	long: 64;
100351 	long: 64;
100352 	long: 64;
100353 	long: 64;
100354 	long: 64;
100355 	long: 64;
100356 	long: 64;
100357 	long: 64;
100358 	long: 64;
100359 	long: 64;
100360 	long: 64;
100361 	long: 64;
100362 	long: 64;
100363 	long: 64;
100364 	long: 64;
100365 	atomic64_t forward_last;
100366 	atomic64_t reverse_last;
100367 	long: 64;
100368 	long: 64;
100369 	long: 64;
100370 	long: 64;
100371 	long: 64;
100372 	long: 64;
100373 	long: 64;
100374 	long: 64;
100375 	long: 64;
100376 	long: 64;
100377 	long: 64;
100378 	long: 64;
100379 	long: 64;
100380 	long: 64;
100381 };
100382 
100383 struct net_fill_args {
100384 	u32 portid;
100385 	u32 seq;
100386 	int flags;
100387 	int cmd;
100388 	int nsid;
100389 	bool add_ref;
100390 	int ref_nsid;
100391 };
100392 
100393 struct rtnl_net_dump_cb {
100394 	struct net *tgt_net;
100395 	struct net *ref_net;
100396 	struct sk_buff *skb;
100397 	struct net_fill_args fillargs;
100398 	int idx;
100399 	int s_idx;
100400 };
100401 
100402 struct tso_t {
100403 	int next_frag_idx;
100404 	int size;
100405 	void *data;
100406 	u16 ip_id;
100407 	u8 tlen;
100408 	bool ipv6;
100409 	u32 tcp_seq;
100410 };
100411 
100412 struct net_packet_attrs {
100413 	const unsigned char *src;
100414 	const unsigned char *dst;
100415 	u32 ip_src;
100416 	u32 ip_dst;
100417 	bool tcp;
100418 	u16 sport;
100419 	u16 dport;
100420 	int timeout;
100421 	int size;
100422 	int max_size;
100423 	u8 id;
100424 	u16 queue_mapping;
100425 };
100426 
100427 struct net_test_priv {
100428 	struct net_packet_attrs *packet;
100429 	struct packet_type pt;
100430 	struct completion comp;
100431 	int double_vlan;
100432 	int vlan_id;
100433 	int ok;
100434 };
100435 
100436 struct netsfhdr {
100437 	__be32 version;
100438 	__be64 magic;
100439 	u8 id;
100440 } __attribute__((packed));
100441 
100442 struct net_test {
100443 	char name[32];
100444 	int (*fn)(struct net_device *);
100445 };
100446 
100447 struct tc_fifo_qopt {
100448 	__u32 limit;
100449 };
100450 
100451 struct tc_qopt_offload_stats {
100452 	struct gnet_stats_basic_sync *bstats;
100453 	struct gnet_stats_queue *qstats;
100454 };
100455 
100456 enum tc_fifo_command {
100457 	TC_FIFO_REPLACE = 0,
100458 	TC_FIFO_DESTROY = 1,
100459 	TC_FIFO_STATS = 2,
100460 };
100461 
100462 struct tc_fifo_qopt_offload {
100463 	enum tc_fifo_command command;
100464 	u32 handle;
100465 	u32 parent;
100466 	union {
100467 		struct tc_qopt_offload_stats stats;
100468 	};
100469 };
100470 
100471 struct linkinfo_reply_data {
100472 	struct ethnl_reply_data base;
100473 	struct ethtool_link_ksettings ksettings;
100474 	struct ethtool_link_settings *lsettings;
100475 };
100476 
100477 struct tsinfo_reply_data {
100478 	struct ethnl_reply_data base;
100479 	struct ethtool_ts_info ts_info;
100480 };
100481 
100482 enum ip_defrag_users {
100483 	IP_DEFRAG_LOCAL_DELIVER = 0,
100484 	IP_DEFRAG_CALL_RA_CHAIN = 1,
100485 	IP_DEFRAG_CONNTRACK_IN = 2,
100486 	__IP_DEFRAG_CONNTRACK_IN_END = 65537,
100487 	IP_DEFRAG_CONNTRACK_OUT = 65538,
100488 	__IP_DEFRAG_CONNTRACK_OUT_END = 131073,
100489 	IP_DEFRAG_CONNTRACK_BRIDGE_IN = 131074,
100490 	__IP_DEFRAG_CONNTRACK_BRIDGE_IN = 196609,
100491 	IP_DEFRAG_VS_IN = 196610,
100492 	IP_DEFRAG_VS_OUT = 196611,
100493 	IP_DEFRAG_VS_FWD = 196612,
100494 	IP_DEFRAG_AF_PACKET = 196613,
100495 	IP_DEFRAG_MACVLAN = 196614,
100496 };
100497 
100498 struct ipq {
100499 	struct inet_frag_queue q;
100500 	u8 ecn;
100501 	u16 max_df_size;
100502 	int iif;
100503 	unsigned int rid;
100504 	struct inet_peer *peer;
100505 };
100506 
100507 enum tcp_fastopen_client_fail {
100508 	TFO_STATUS_UNSPEC = 0,
100509 	TFO_COOKIE_UNAVAILABLE = 1,
100510 	TFO_DATA_NOT_ACKED = 2,
100511 	TFO_SYN_RETRANSMITTED = 3,
100512 };
100513 
100514 struct ip_mreq_source {
100515 	__be32 imr_multiaddr;
100516 	__be32 imr_interface;
100517 	__be32 imr_sourceaddr;
100518 };
100519 
100520 struct ip_msfilter {
100521 	union {
100522 		struct {
100523 			__be32 imsf_multiaddr_aux;
100524 			__be32 imsf_interface_aux;
100525 			__u32 imsf_fmode_aux;
100526 			__u32 imsf_numsrc_aux;
100527 			__be32 imsf_slist[1];
100528 		};
100529 		struct {
100530 			__be32 imsf_multiaddr;
100531 			__be32 imsf_interface;
100532 			__u32 imsf_fmode;
100533 			__u32 imsf_numsrc;
100534 			__be32 imsf_slist_flex[0];
100535 		};
100536 	};
100537 };
100538 
100539 struct igmphdr {
100540 	__u8 type;
100541 	__u8 code;
100542 	__sum16 csum;
100543 	__be32 group;
100544 };
100545 
100546 struct igmpv3_grec {
100547 	__u8 grec_type;
100548 	__u8 grec_auxwords;
100549 	__be16 grec_nsrcs;
100550 	__be32 grec_mca;
100551 	__be32 grec_src[0];
100552 };
100553 
100554 struct igmpv3_report {
100555 	__u8 type;
100556 	__u8 resv1;
100557 	__sum16 csum;
100558 	__be16 resv2;
100559 	__be16 ngrec;
100560 	struct igmpv3_grec grec[0];
100561 };
100562 
100563 struct igmpv3_query {
100564 	__u8 type;
100565 	__u8 code;
100566 	__sum16 csum;
100567 	__be32 group;
100568 	__u8 qrv: 3;
100569 	__u8 suppress: 1;
100570 	__u8 resv: 4;
100571 	__u8 qqic;
100572 	__be16 nsrcs;
100573 	__be32 srcs[0];
100574 };
100575 
100576 struct igmp_mc_iter_state {
100577 	struct seq_net_private p;
100578 	struct net_device *dev;
100579 	struct in_device *in_dev;
100580 };
100581 
100582 struct igmp_mcf_iter_state {
100583 	struct seq_net_private p;
100584 	struct net_device *dev;
100585 	struct in_device *idev;
100586 	struct ip_mc_list *im;
100587 };
100588 
100589 enum {
100590 	IFLA_IPTUN_UNSPEC = 0,
100591 	IFLA_IPTUN_LINK = 1,
100592 	IFLA_IPTUN_LOCAL = 2,
100593 	IFLA_IPTUN_REMOTE = 3,
100594 	IFLA_IPTUN_TTL = 4,
100595 	IFLA_IPTUN_TOS = 5,
100596 	IFLA_IPTUN_ENCAP_LIMIT = 6,
100597 	IFLA_IPTUN_FLOWINFO = 7,
100598 	IFLA_IPTUN_FLAGS = 8,
100599 	IFLA_IPTUN_PROTO = 9,
100600 	IFLA_IPTUN_PMTUDISC = 10,
100601 	IFLA_IPTUN_6RD_PREFIX = 11,
100602 	IFLA_IPTUN_6RD_RELAY_PREFIX = 12,
100603 	IFLA_IPTUN_6RD_PREFIXLEN = 13,
100604 	IFLA_IPTUN_6RD_RELAY_PREFIXLEN = 14,
100605 	IFLA_IPTUN_ENCAP_TYPE = 15,
100606 	IFLA_IPTUN_ENCAP_FLAGS = 16,
100607 	IFLA_IPTUN_ENCAP_SPORT = 17,
100608 	IFLA_IPTUN_ENCAP_DPORT = 18,
100609 	IFLA_IPTUN_COLLECT_METADATA = 19,
100610 	IFLA_IPTUN_FWMARK = 20,
100611 	__IFLA_IPTUN_MAX = 21,
100612 };
100613 
100614 struct xfrm_tunnel {
100615 	int (*handler)(struct sk_buff *);
100616 	int (*cb_handler)(struct sk_buff *, int);
100617 	int (*err_handler)(struct sk_buff *, u32);
100618 	struct xfrm_tunnel *next;
100619 	int priority;
100620 };
100621 
100622 typedef u64 (*btf_bpf_tcp_send_ack)(struct tcp_sock *, u32);
100623 
100624 enum {
100625 	IFLA_INET6_UNSPEC = 0,
100626 	IFLA_INET6_FLAGS = 1,
100627 	IFLA_INET6_CONF = 2,
100628 	IFLA_INET6_STATS = 3,
100629 	IFLA_INET6_MCAST = 4,
100630 	IFLA_INET6_CACHEINFO = 5,
100631 	IFLA_INET6_ICMP6STATS = 6,
100632 	IFLA_INET6_TOKEN = 7,
100633 	IFLA_INET6_ADDR_GEN_MODE = 8,
100634 	IFLA_INET6_RA_MTU = 9,
100635 	__IFLA_INET6_MAX = 10,
100636 };
100637 
100638 enum in6_addr_gen_mode {
100639 	IN6_ADDR_GEN_MODE_EUI64 = 0,
100640 	IN6_ADDR_GEN_MODE_NONE = 1,
100641 	IN6_ADDR_GEN_MODE_STABLE_PRIVACY = 2,
100642 	IN6_ADDR_GEN_MODE_RANDOM = 3,
100643 };
100644 
100645 struct ifla_cacheinfo {
100646 	__u32 max_reasm_len;
100647 	__u32 tstamp;
100648 	__u32 reachable_time;
100649 	__u32 retrans_time;
100650 };
100651 
100652 struct netdev_notifier_change_info {
100653 	struct netdev_notifier_info info;
100654 	unsigned int flags_changed;
100655 };
100656 
100657 struct netdev_notifier_changeupper_info {
100658 	struct netdev_notifier_info info;
100659 	struct net_device *upper_dev;
100660 	bool master;
100661 	bool linking;
100662 	void *upper_info;
100663 };
100664 
100665 struct ifinfomsg {
100666 	unsigned char ifi_family;
100667 	unsigned char __ifi_pad;
100668 	short unsigned int ifi_type;
100669 	int ifi_index;
100670 	unsigned int ifi_flags;
100671 	unsigned int ifi_change;
100672 };
100673 
100674 struct prefixmsg {
100675 	unsigned char prefix_family;
100676 	unsigned char prefix_pad1;
100677 	short unsigned int prefix_pad2;
100678 	int prefix_ifindex;
100679 	unsigned char prefix_type;
100680 	unsigned char prefix_len;
100681 	unsigned char prefix_flags;
100682 	unsigned char prefix_pad3;
100683 };
100684 
100685 enum {
100686 	PREFIX_UNSPEC = 0,
100687 	PREFIX_ADDRESS = 1,
100688 	PREFIX_CACHEINFO = 2,
100689 	__PREFIX_MAX = 3,
100690 };
100691 
100692 struct prefix_cacheinfo {
100693 	__u32 preferred_time;
100694 	__u32 valid_time;
100695 };
100696 
100697 struct in6_ifreq {
100698 	struct in6_addr ifr6_addr;
100699 	__u32 ifr6_prefixlen;
100700 	int ifr6_ifindex;
100701 };
100702 
100703 enum {
100704 	DEVCONF_FORWARDING = 0,
100705 	DEVCONF_HOPLIMIT = 1,
100706 	DEVCONF_MTU6 = 2,
100707 	DEVCONF_ACCEPT_RA = 3,
100708 	DEVCONF_ACCEPT_REDIRECTS = 4,
100709 	DEVCONF_AUTOCONF = 5,
100710 	DEVCONF_DAD_TRANSMITS = 6,
100711 	DEVCONF_RTR_SOLICITS = 7,
100712 	DEVCONF_RTR_SOLICIT_INTERVAL = 8,
100713 	DEVCONF_RTR_SOLICIT_DELAY = 9,
100714 	DEVCONF_USE_TEMPADDR = 10,
100715 	DEVCONF_TEMP_VALID_LFT = 11,
100716 	DEVCONF_TEMP_PREFERED_LFT = 12,
100717 	DEVCONF_REGEN_MAX_RETRY = 13,
100718 	DEVCONF_MAX_DESYNC_FACTOR = 14,
100719 	DEVCONF_MAX_ADDRESSES = 15,
100720 	DEVCONF_FORCE_MLD_VERSION = 16,
100721 	DEVCONF_ACCEPT_RA_DEFRTR = 17,
100722 	DEVCONF_ACCEPT_RA_PINFO = 18,
100723 	DEVCONF_ACCEPT_RA_RTR_PREF = 19,
100724 	DEVCONF_RTR_PROBE_INTERVAL = 20,
100725 	DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21,
100726 	DEVCONF_PROXY_NDP = 22,
100727 	DEVCONF_OPTIMISTIC_DAD = 23,
100728 	DEVCONF_ACCEPT_SOURCE_ROUTE = 24,
100729 	DEVCONF_MC_FORWARDING = 25,
100730 	DEVCONF_DISABLE_IPV6 = 26,
100731 	DEVCONF_ACCEPT_DAD = 27,
100732 	DEVCONF_FORCE_TLLAO = 28,
100733 	DEVCONF_NDISC_NOTIFY = 29,
100734 	DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30,
100735 	DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31,
100736 	DEVCONF_SUPPRESS_FRAG_NDISC = 32,
100737 	DEVCONF_ACCEPT_RA_FROM_LOCAL = 33,
100738 	DEVCONF_USE_OPTIMISTIC = 34,
100739 	DEVCONF_ACCEPT_RA_MTU = 35,
100740 	DEVCONF_STABLE_SECRET = 36,
100741 	DEVCONF_USE_OIF_ADDRS_ONLY = 37,
100742 	DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38,
100743 	DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39,
100744 	DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40,
100745 	DEVCONF_DROP_UNSOLICITED_NA = 41,
100746 	DEVCONF_KEEP_ADDR_ON_DOWN = 42,
100747 	DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43,
100748 	DEVCONF_SEG6_ENABLED = 44,
100749 	DEVCONF_SEG6_REQUIRE_HMAC = 45,
100750 	DEVCONF_ENHANCED_DAD = 46,
100751 	DEVCONF_ADDR_GEN_MODE = 47,
100752 	DEVCONF_DISABLE_POLICY = 48,
100753 	DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49,
100754 	DEVCONF_NDISC_TCLASS = 50,
100755 	DEVCONF_RPL_SEG_ENABLED = 51,
100756 	DEVCONF_RA_DEFRTR_METRIC = 52,
100757 	DEVCONF_IOAM6_ENABLED = 53,
100758 	DEVCONF_IOAM6_ID = 54,
100759 	DEVCONF_IOAM6_ID_WIDE = 55,
100760 	DEVCONF_NDISC_EVICT_NOCARRIER = 56,
100761 	DEVCONF_ACCEPT_UNTRACKED_NA = 57,
100762 	DEVCONF_MAX = 58,
100763 };
100764 
100765 struct ipv6_params {
100766 	__s32 disable_ipv6;
100767 	__s32 autoconf;
100768 };
100769 
100770 enum {
100771 	INET6_IFADDR_STATE_PREDAD = 0,
100772 	INET6_IFADDR_STATE_DAD = 1,
100773 	INET6_IFADDR_STATE_POSTDAD = 2,
100774 	INET6_IFADDR_STATE_ERRDAD = 3,
100775 	INET6_IFADDR_STATE_DEAD = 4,
100776 };
100777 
100778 union fwnet_hwaddr {
100779 	u8 u[16];
100780 	struct {
100781 		__be64 uniq_id;
100782 		u8 max_rec;
100783 		u8 sspd;
100784 		u8 fifo[6];
100785 	} uc;
100786 };
100787 
100788 struct in6_validator_info {
100789 	struct in6_addr i6vi_addr;
100790 	struct inet6_dev *i6vi_dev;
100791 	struct netlink_ext_ack *extack;
100792 };
100793 
100794 struct ifa6_config {
100795 	const struct in6_addr *pfx;
100796 	unsigned int plen;
100797 	u8 ifa_proto;
100798 	const struct in6_addr *peer_pfx;
100799 	u32 rt_priority;
100800 	u32 ifa_flags;
100801 	u32 preferred_lft;
100802 	u32 valid_lft;
100803 	u16 scope;
100804 };
100805 
100806 enum cleanup_prefix_rt_t {
100807 	CLEANUP_PREFIX_RT_NOP = 0,
100808 	CLEANUP_PREFIX_RT_DEL = 1,
100809 	CLEANUP_PREFIX_RT_EXPIRE = 2,
100810 };
100811 
100812 enum {
100813 	IPV6_SADDR_RULE_INIT = 0,
100814 	IPV6_SADDR_RULE_LOCAL = 1,
100815 	IPV6_SADDR_RULE_SCOPE = 2,
100816 	IPV6_SADDR_RULE_PREFERRED = 3,
100817 	IPV6_SADDR_RULE_OIF = 4,
100818 	IPV6_SADDR_RULE_LABEL = 5,
100819 	IPV6_SADDR_RULE_PRIVACY = 6,
100820 	IPV6_SADDR_RULE_ORCHID = 7,
100821 	IPV6_SADDR_RULE_PREFIX = 8,
100822 	IPV6_SADDR_RULE_MAX = 9,
100823 };
100824 
100825 struct ipv6_saddr_score {
100826 	int rule;
100827 	int addr_type;
100828 	struct inet6_ifaddr *ifa;
100829 	long unsigned int scorebits[1];
100830 	int scopedist;
100831 	int matchlen;
100832 };
100833 
100834 struct ipv6_saddr_dst {
100835 	const struct in6_addr *addr;
100836 	int ifindex;
100837 	int scope;
100838 	int label;
100839 	unsigned int prefs;
100840 };
100841 
100842 struct if6_iter_state {
100843 	struct seq_net_private p;
100844 	int bucket;
100845 	int offset;
100846 };
100847 
100848 enum addr_type_t {
100849 	UNICAST_ADDR = 0,
100850 	MULTICAST_ADDR = 1,
100851 	ANYCAST_ADDR = 2,
100852 };
100853 
100854 struct inet6_fill_args {
100855 	u32 portid;
100856 	u32 seq;
100857 	int event;
100858 	unsigned int flags;
100859 	int netnsid;
100860 	int ifindex;
100861 	enum addr_type_t type;
100862 };
100863 
100864 enum {
100865 	DAD_PROCESS = 0,
100866 	DAD_BEGIN = 1,
100867 	DAD_ABORT = 2,
100868 };
100869 
100870 typedef struct rpc_xprt * (*xprt_switch_find_xprt_t)(struct rpc_xprt_switch *, const struct rpc_xprt *);
100871 
100872 typedef initcall_t initcall_entry_t;
100873 
100874 struct trace_event_raw_initcall_level {
100875 	struct trace_entry ent;
100876 	u32 __data_loc_level;
100877 	char __data[0];
100878 };
100879 
100880 struct trace_event_raw_initcall_start {
100881 	struct trace_entry ent;
100882 	initcall_t func;
100883 	char __data[0];
100884 };
100885 
100886 struct trace_event_raw_initcall_finish {
100887 	struct trace_entry ent;
100888 	initcall_t func;
100889 	int ret;
100890 	char __data[0];
100891 };
100892 
100893 struct trace_event_data_offsets_initcall_level {
100894 	u32 level;
100895 };
100896 
100897 struct trace_event_data_offsets_initcall_start {};
100898 
100899 struct trace_event_data_offsets_initcall_finish {};
100900 
100901 typedef void (*btf_trace_initcall_level)(void *, const char *);
100902 
100903 typedef void (*btf_trace_initcall_start)(void *, initcall_t);
100904 
100905 typedef void (*btf_trace_initcall_finish)(void *, initcall_t, int);
100906 
100907 struct blacklist_entry {
100908 	struct list_head next;
100909 	char *buf;
100910 };
100911 
100912 enum branch_cache_flush_type {
100913 	BRANCH_CACHE_FLUSH_NONE = 1,
100914 	BRANCH_CACHE_FLUSH_SW = 2,
100915 	BRANCH_CACHE_FLUSH_HW = 4,
100916 };
100917 
100918 struct legacy_serial_info {
100919 	struct device_node *np;
100920 	unsigned int speed;
100921 	unsigned int clock;
100922 	int irq_check_parent;
100923 	phys_addr_t taddr;
100924 	void *early_addr;
100925 };
100926 
100927 enum slb_index {
100928 	LINEAR_INDEX = 0,
100929 	KSTACK_INDEX = 1,
100930 };
100931 
100932 struct icp_ipl {
100933 	union {
100934 		u32 word;
100935 		u8 bytes[4];
100936 	} xirr_poll;
100937 	union {
100938 		u32 word;
100939 		u8 bytes[4];
100940 	} xirr;
100941 	u32 dummy;
100942 	union {
100943 		u32 word;
100944 		u8 bytes[4];
100945 	} qirr;
100946 	u32 link_a;
100947 	u32 link_b;
100948 	u32 link_c;
100949 };
100950 
100951 enum OpalSysparamPerm {
100952 	OPAL_SYSPARAM_READ = 1,
100953 	OPAL_SYSPARAM_WRITE = 2,
100954 	OPAL_SYSPARAM_RW = 3,
100955 };
100956 
100957 struct param_attr {
100958 	struct list_head list;
100959 	u32 param_id;
100960 	u32 param_size;
100961 	struct kobj_attribute kobj_attr;
100962 };
100963 
100964 struct sg_attr {
100965 	u32 handle;
100966 	struct kobj_attribute attr;
100967 };
100968 
100969 struct sensor_group___2 {
100970 	char name[20];
100971 	struct attribute_group sg;
100972 	struct sg_attr *sgattrs;
100973 };
100974 
100975 struct sg_ops_info {
100976 	int opal_no;
100977 	const char *attr_name;
100978 	ssize_t (*store)(struct kobject *, struct kobj_attribute *, const char *, size_t);
100979 };
100980 
100981 enum {
100982 	IMC_TYPE_THREAD = 1,
100983 	IMC_TYPE_TRACE = 2,
100984 	IMC_TYPE_CORE = 4,
100985 	IMC_TYPE_CHIP = 16,
100986 };
100987 
100988 struct hv_gpci_request_buffer {
100989 	struct hv_get_perf_counter_info_params params;
100990 	uint8_t bytes[4064];
100991 };
100992 
100993 struct hvcall_ppp_data {
100994 	u64 entitlement;
100995 	u64 unallocated_entitlement;
100996 	u16 group_num;
100997 	u16 pool_num;
100998 	u8 capped;
100999 	u8 weight;
101000 	u8 unallocated_weight;
101001 	u16 active_procs_in_pool;
101002 	u16 active_system_procs;
101003 	u16 phys_platform_procs;
101004 	u32 max_proc_cap_avail;
101005 	u32 entitled_proc_cap_avail;
101006 };
101007 
101008 struct clone_args {
101009 	__u64 flags;
101010 	__u64 pidfd;
101011 	__u64 child_tid;
101012 	__u64 parent_tid;
101013 	__u64 exit_signal;
101014 	__u64 stack;
101015 	__u64 stack_size;
101016 	__u64 tls;
101017 	__u64 set_tid;
101018 	__u64 set_tid_size;
101019 	__u64 cgroup;
101020 };
101021 
101022 typedef int (*proc_visitor)(struct task_struct *, void *);
101023 
101024 struct trace_event_raw_task_newtask {
101025 	struct trace_entry ent;
101026 	pid_t pid;
101027 	char comm[16];
101028 	long unsigned int clone_flags;
101029 	short int oom_score_adj;
101030 	char __data[0];
101031 };
101032 
101033 struct trace_event_raw_task_rename {
101034 	struct trace_entry ent;
101035 	pid_t pid;
101036 	char oldcomm[16];
101037 	char newcomm[16];
101038 	short int oom_score_adj;
101039 	char __data[0];
101040 };
101041 
101042 struct trace_event_data_offsets_task_newtask {};
101043 
101044 struct trace_event_data_offsets_task_rename {};
101045 
101046 typedef void (*btf_trace_task_newtask)(void *, struct task_struct *, long unsigned int);
101047 
101048 typedef void (*btf_trace_task_rename)(void *, struct task_struct *, const char *);
101049 
101050 struct audit_context;
101051 
101052 enum con_flush_mode {
101053 	CONSOLE_FLUSH_PENDING = 0,
101054 	CONSOLE_REPLAY_ALL = 1,
101055 };
101056 
101057 struct trace_event_raw_console {
101058 	struct trace_entry ent;
101059 	u32 __data_loc_msg;
101060 	char __data[0];
101061 };
101062 
101063 struct trace_event_data_offsets_console {
101064 	u32 msg;
101065 };
101066 
101067 typedef void (*btf_trace_console)(void *, const char *, size_t);
101068 
101069 struct console_cmdline {
101070 	char name[16];
101071 	int index;
101072 	bool user_specified;
101073 	char *options;
101074 };
101075 
101076 enum printk_info_flags {
101077 	LOG_NEWLINE = 2,
101078 	LOG_CONT = 8,
101079 };
101080 
101081 enum devkmsg_log_bits {
101082 	__DEVKMSG_LOG_BIT_ON = 0,
101083 	__DEVKMSG_LOG_BIT_OFF = 1,
101084 	__DEVKMSG_LOG_BIT_LOCK = 2,
101085 };
101086 
101087 enum devkmsg_log_masks {
101088 	DEVKMSG_LOG_MASK_ON = 1,
101089 	DEVKMSG_LOG_MASK_OFF = 2,
101090 	DEVKMSG_LOG_MASK_LOCK = 4,
101091 };
101092 
101093 enum con_msg_format_flags {
101094 	MSG_FORMAT_DEFAULT = 0,
101095 	MSG_FORMAT_SYSLOG = 1,
101096 };
101097 
101098 struct latched_seq {
101099 	seqcount_latch_t latch;
101100 	u64 val[2];
101101 };
101102 
101103 struct devkmsg_user {
101104 	atomic64_t seq;
101105 	struct ratelimit_state rs;
101106 	struct mutex lock;
101107 	char buf[8192];
101108 	struct printk_info info;
101109 	char text_buf[8192];
101110 	struct printk_record record;
101111 };
101112 
101113 struct dma_sgt_handle {
101114 	struct sg_table sgt;
101115 	struct page **pages;
101116 };
101117 
101118 struct dma_devres {
101119 	size_t size;
101120 	void *vaddr;
101121 	dma_addr_t dma_handle;
101122 	long unsigned int attrs;
101123 };
101124 
101125 struct ktime_timestamps {
101126 	u64 mono;
101127 	u64 boot;
101128 	u64 real;
101129 };
101130 
101131 struct system_time_snapshot {
101132 	u64 cycles;
101133 	ktime_t real;
101134 	ktime_t raw;
101135 	enum clocksource_ids cs_id;
101136 	unsigned int clock_was_set_seq;
101137 	u8 cs_was_changed_seq;
101138 };
101139 
101140 struct system_counterval_t {
101141 	u64 cycles;
101142 	struct clocksource *cs;
101143 };
101144 
101145 struct tk_read_base {
101146 	struct clocksource *clock;
101147 	u64 mask;
101148 	u64 cycle_last;
101149 	u32 mult;
101150 	u32 shift;
101151 	u64 xtime_nsec;
101152 	ktime_t base;
101153 	u64 base_real;
101154 };
101155 
101156 struct timekeeper {
101157 	struct tk_read_base tkr_mono;
101158 	struct tk_read_base tkr_raw;
101159 	u64 xtime_sec;
101160 	long unsigned int ktime_sec;
101161 	struct timespec64 wall_to_monotonic;
101162 	ktime_t offs_real;
101163 	ktime_t offs_boot;
101164 	ktime_t offs_tai;
101165 	s32 tai_offset;
101166 	unsigned int clock_was_set_seq;
101167 	u8 cs_was_changed_seq;
101168 	ktime_t next_leap_ktime;
101169 	u64 raw_sec;
101170 	struct timespec64 monotonic_to_boot;
101171 	u64 cycle_interval;
101172 	u64 xtime_interval;
101173 	s64 xtime_remainder;
101174 	u64 raw_interval;
101175 	u64 ntp_tick;
101176 	s64 ntp_error;
101177 	u32 ntp_error_shift;
101178 	u32 ntp_err_mult;
101179 	u32 skip_second_overflow;
101180 };
101181 
101182 enum timekeeping_adv_mode {
101183 	TK_ADV_TICK = 0,
101184 	TK_ADV_FREQ = 1,
101185 };
101186 
101187 struct tk_fast {
101188 	seqcount_latch_t seq;
101189 	struct tk_read_base base[2];
101190 };
101191 
101192 enum {
101193 	Q_REQUEUE_PI_NONE = 0,
101194 	Q_REQUEUE_PI_IGNORE = 1,
101195 	Q_REQUEUE_PI_IN_PROGRESS = 2,
101196 	Q_REQUEUE_PI_WAIT = 3,
101197 	Q_REQUEUE_PI_DONE = 4,
101198 	Q_REQUEUE_PI_LOCKED = 5,
101199 };
101200 
101201 struct cgroupstats {
101202 	__u64 nr_sleeping;
101203 	__u64 nr_running;
101204 	__u64 nr_stopped;
101205 	__u64 nr_uninterruptible;
101206 	__u64 nr_io_wait;
101207 };
101208 
101209 enum cgroup_filetype {
101210 	CGROUP_FILE_PROCS = 0,
101211 	CGROUP_FILE_TASKS = 1,
101212 };
101213 
101214 struct cgroup_pidlist {
101215 	struct {
101216 		enum cgroup_filetype type;
101217 		struct pid_namespace *ns;
101218 	} key;
101219 	pid_t *list;
101220 	int length;
101221 	struct list_head links;
101222 	struct cgroup *owner;
101223 	struct delayed_work destroy_dwork;
101224 };
101225 
101226 enum cgroup1_param {
101227 	Opt_all = 0,
101228 	Opt_clone_children = 1,
101229 	Opt_cpuset_v2_mode = 2,
101230 	Opt_name = 3,
101231 	Opt_none = 4,
101232 	Opt_noprefix = 5,
101233 	Opt_release_agent = 6,
101234 	Opt_xattr = 7,
101235 	Opt_favordynmods___2 = 8,
101236 	Opt_nofavordynmods = 9,
101237 };
101238 
101239 struct tp_module {
101240 	struct list_head list;
101241 	struct module *mod;
101242 };
101243 
101244 enum tp_func_state {
101245 	TP_FUNC_0 = 0,
101246 	TP_FUNC_1 = 1,
101247 	TP_FUNC_2 = 2,
101248 	TP_FUNC_N = 3,
101249 };
101250 
101251 enum tp_transition_sync {
101252 	TP_TRANSITION_SYNC_1_0_1 = 0,
101253 	TP_TRANSITION_SYNC_N_2_1 = 1,
101254 	_NR_TP_TRANSITION_SYNC = 2,
101255 };
101256 
101257 struct tp_transition_snapshot {
101258 	long unsigned int rcu;
101259 	long unsigned int srcu;
101260 	bool ongoing;
101261 };
101262 
101263 struct tp_probes {
101264 	struct callback_head rcu;
101265 	struct tracepoint_func probes[0];
101266 };
101267 
101268 enum {
101269 	TRACE_CTX_NMI = 0,
101270 	TRACE_CTX_IRQ = 1,
101271 	TRACE_CTX_SOFTIRQ = 2,
101272 	TRACE_CTX_NORMAL = 3,
101273 	TRACE_CTX_TRANSITION = 4,
101274 };
101275 
101276 typedef long unsigned int perf_trace_t[1024];
101277 
101278 struct bpf_kfunc_desc {
101279 	struct btf_func_model func_model;
101280 	u32 func_id;
101281 	s32 imm;
101282 	u16 offset;
101283 };
101284 
101285 struct bpf_kfunc_desc_tab {
101286 	struct bpf_kfunc_desc descs[256];
101287 	u32 nr_descs;
101288 };
101289 
101290 struct bpf_kfunc_btf {
101291 	struct btf *btf;
101292 	struct module *module;
101293 	u16 offset;
101294 };
101295 
101296 struct bpf_kfunc_btf_tab {
101297 	struct bpf_kfunc_btf descs[256];
101298 	u32 nr_descs;
101299 };
101300 
101301 typedef u32 (*bpf_convert_ctx_access_t)(enum bpf_access_type, const struct bpf_insn *, struct bpf_insn *, struct bpf_prog *, u32 *);
101302 
101303 enum bpf_stack_slot_type {
101304 	STACK_INVALID = 0,
101305 	STACK_SPILL = 1,
101306 	STACK_MISC = 2,
101307 	STACK_ZERO = 3,
101308 	STACK_DYNPTR = 4,
101309 };
101310 
101311 struct bpf_verifier_stack_elem {
101312 	struct bpf_verifier_state st;
101313 	int insn_idx;
101314 	int prev_insn_idx;
101315 	struct bpf_verifier_stack_elem *next;
101316 	u32 log_pos;
101317 };
101318 
101319 typedef void (*bpf_insn_print_t)(void *, const char *, ...);
101320 
101321 typedef const char * (*bpf_insn_revmap_call_t)(void *, const struct bpf_insn *);
101322 
101323 typedef const char * (*bpf_insn_print_imm_t)(void *, const struct bpf_insn *, __u64);
101324 
101325 struct bpf_insn_cbs {
101326 	bpf_insn_print_t cb_print;
101327 	bpf_insn_revmap_call_t cb_call;
101328 	bpf_insn_print_imm_t cb_imm;
101329 	void *private_data;
101330 };
101331 
101332 struct bpf_call_arg_meta {
101333 	struct bpf_map *map_ptr;
101334 	bool raw_mode;
101335 	bool pkt_access;
101336 	u8 release_regno;
101337 	int regno;
101338 	int access_size;
101339 	int mem_size;
101340 	u64 msize_max_value;
101341 	int ref_obj_id;
101342 	int map_uid;
101343 	int func_id;
101344 	struct btf *btf;
101345 	u32 btf_id;
101346 	struct btf *ret_btf;
101347 	u32 ret_btf_id;
101348 	u32 subprogno;
101349 	struct bpf_map_value_off_desc *kptr_off_desc;
101350 	u8 uninit_dynptr_regno;
101351 };
101352 
101353 enum reg_arg_type {
101354 	SRC_OP = 0,
101355 	DST_OP = 1,
101356 	DST_OP_NO_MARK = 2,
101357 };
101358 
101359 enum bpf_access_src {
101360 	ACCESS_DIRECT = 1,
101361 	ACCESS_HELPER = 2,
101362 };
101363 
101364 struct bpf_reg_types {
101365 	const enum bpf_reg_type types[10];
101366 	u32 *btf_id;
101367 };
101368 
101369 enum {
101370 	AT_PKT_END = -1,
101371 	BEYOND_PKT_END = -2,
101372 };
101373 
101374 typedef int (*set_callee_state_fn)(struct bpf_verifier_env *, struct bpf_func_state *, struct bpf_func_state *, int);
101375 
101376 enum {
101377 	REASON_BOUNDS = -1,
101378 	REASON_TYPE = -2,
101379 	REASON_PATHS = -3,
101380 	REASON_LIMIT = -4,
101381 	REASON_STACK = -5,
101382 };
101383 
101384 struct bpf_sanitize_info {
101385 	struct bpf_insn_aux_data aux;
101386 	bool mask_to_left;
101387 };
101388 
101389 enum {
101390 	DISCOVERED = 16,
101391 	EXPLORED = 32,
101392 	FALLTHROUGH = 1,
101393 	BRANCH___2 = 2,
101394 };
101395 
101396 enum {
101397 	DONE_EXPLORING = 0,
101398 	KEEP_EXPLORING = 1,
101399 };
101400 
101401 struct bpf_dummy_ops {
101402 	int (*test_1)(struct bpf_dummy_ops_state *);
101403 	int (*test_2)(struct bpf_dummy_ops_state *, int, short unsigned int, char, long unsigned int);
101404 };
101405 
101406 enum bpf_struct_ops_state {
101407 	BPF_STRUCT_OPS_STATE_INIT = 0,
101408 	BPF_STRUCT_OPS_STATE_INUSE = 1,
101409 	BPF_STRUCT_OPS_STATE_TOBEFREE = 2,
101410 };
101411 
101412 struct bpf_struct_ops_value {
101413 	refcount_t refcnt;
101414 	enum bpf_struct_ops_state state;
101415 	long: 64;
101416 	long: 64;
101417 	long: 64;
101418 	long: 64;
101419 	long: 64;
101420 	long: 64;
101421 	long: 64;
101422 	long: 64;
101423 	long: 64;
101424 	long: 64;
101425 	long: 64;
101426 	long: 64;
101427 	long: 64;
101428 	long: 64;
101429 	long: 64;
101430 	char data[0];
101431 };
101432 
101433 struct bpf_struct_ops_map {
101434 	struct bpf_map map;
101435 	struct callback_head rcu;
101436 	const struct bpf_struct_ops *st_ops;
101437 	struct mutex lock;
101438 	struct bpf_link **links;
101439 	void *image;
101440 	struct bpf_struct_ops_value *uvalue;
101441 	long: 64;
101442 	long: 64;
101443 	long: 64;
101444 	long: 64;
101445 	long: 64;
101446 	struct bpf_struct_ops_value kvalue;
101447 };
101448 
101449 struct bpf_struct_ops_bpf_dummy_ops {
101450 	refcount_t refcnt;
101451 	enum bpf_struct_ops_state state;
101452 	long: 64;
101453 	long: 64;
101454 	long: 64;
101455 	long: 64;
101456 	long: 64;
101457 	long: 64;
101458 	long: 64;
101459 	long: 64;
101460 	long: 64;
101461 	long: 64;
101462 	long: 64;
101463 	long: 64;
101464 	long: 64;
101465 	long: 64;
101466 	long: 64;
101467 	struct bpf_dummy_ops data;
101468 	long: 64;
101469 	long: 64;
101470 	long: 64;
101471 	long: 64;
101472 	long: 64;
101473 	long: 64;
101474 	long: 64;
101475 	long: 64;
101476 	long: 64;
101477 	long: 64;
101478 	long: 64;
101479 	long: 64;
101480 	long: 64;
101481 	long: 64;
101482 };
101483 
101484 struct bpf_struct_ops_tcp_congestion_ops {
101485 	refcount_t refcnt;
101486 	enum bpf_struct_ops_state state;
101487 	long: 64;
101488 	long: 64;
101489 	long: 64;
101490 	long: 64;
101491 	long: 64;
101492 	long: 64;
101493 	long: 64;
101494 	long: 64;
101495 	long: 64;
101496 	long: 64;
101497 	long: 64;
101498 	long: 64;
101499 	long: 64;
101500 	long: 64;
101501 	long: 64;
101502 	struct tcp_congestion_ops data;
101503 };
101504 
101505 enum {
101506 	BPF_STRUCT_OPS_TYPE_bpf_dummy_ops = 0,
101507 	BPF_STRUCT_OPS_TYPE_tcp_congestion_ops = 1,
101508 	__NR_BPF_STRUCT_OPS_TYPE = 2,
101509 };
101510 
101511 enum lruvec_flags {
101512 	LRUVEC_CONGESTED = 0,
101513 };
101514 
101515 enum pgdat_flags {
101516 	PGDAT_DIRTY = 0,
101517 	PGDAT_WRITEBACK = 1,
101518 	PGDAT_RECLAIM_LOCKED = 2,
101519 };
101520 
101521 enum zone_flags {
101522 	ZONE_BOOSTED_WATERMARK = 0,
101523 	ZONE_RECLAIM_ACTIVE = 1,
101524 };
101525 
101526 struct reclaim_stat {
101527 	unsigned int nr_dirty;
101528 	unsigned int nr_unqueued_dirty;
101529 	unsigned int nr_congested;
101530 	unsigned int nr_writeback;
101531 	unsigned int nr_immediate;
101532 	unsigned int nr_pageout;
101533 	unsigned int nr_activate[2];
101534 	unsigned int nr_ref_keep;
101535 	unsigned int nr_unmap_fail;
101536 	unsigned int nr_lazyfree_fail;
101537 };
101538 
101539 enum {
101540 	SWP_USED = 1,
101541 	SWP_WRITEOK = 2,
101542 	SWP_DISCARDABLE = 4,
101543 	SWP_DISCARDING = 8,
101544 	SWP_SOLIDSTATE = 16,
101545 	SWP_CONTINUED = 32,
101546 	SWP_BLKDEV = 64,
101547 	SWP_ACTIVATED = 128,
101548 	SWP_FS_OPS = 256,
101549 	SWP_AREA_DISCARD = 512,
101550 	SWP_PAGE_DISCARD = 1024,
101551 	SWP_STABLE_WRITES = 2048,
101552 	SWP_SYNCHRONOUS_IO = 4096,
101553 	SWP_SCANNING = 16384,
101554 };
101555 
101556 struct trace_event_raw_mm_vmscan_kswapd_sleep {
101557 	struct trace_entry ent;
101558 	int nid;
101559 	char __data[0];
101560 };
101561 
101562 struct trace_event_raw_mm_vmscan_kswapd_wake {
101563 	struct trace_entry ent;
101564 	int nid;
101565 	int zid;
101566 	int order;
101567 	char __data[0];
101568 };
101569 
101570 struct trace_event_raw_mm_vmscan_wakeup_kswapd {
101571 	struct trace_entry ent;
101572 	int nid;
101573 	int zid;
101574 	int order;
101575 	long unsigned int gfp_flags;
101576 	char __data[0];
101577 };
101578 
101579 struct trace_event_raw_mm_vmscan_direct_reclaim_begin_template {
101580 	struct trace_entry ent;
101581 	int order;
101582 	long unsigned int gfp_flags;
101583 	char __data[0];
101584 };
101585 
101586 struct trace_event_raw_mm_vmscan_direct_reclaim_end_template {
101587 	struct trace_entry ent;
101588 	long unsigned int nr_reclaimed;
101589 	char __data[0];
101590 };
101591 
101592 struct trace_event_raw_mm_shrink_slab_start {
101593 	struct trace_entry ent;
101594 	struct shrinker *shr;
101595 	void *shrink;
101596 	int nid;
101597 	long int nr_objects_to_shrink;
101598 	long unsigned int gfp_flags;
101599 	long unsigned int cache_items;
101600 	long long unsigned int delta;
101601 	long unsigned int total_scan;
101602 	int priority;
101603 	char __data[0];
101604 };
101605 
101606 struct trace_event_raw_mm_shrink_slab_end {
101607 	struct trace_entry ent;
101608 	struct shrinker *shr;
101609 	int nid;
101610 	void *shrink;
101611 	long int unused_scan;
101612 	long int new_scan;
101613 	int retval;
101614 	long int total_scan;
101615 	char __data[0];
101616 };
101617 
101618 struct trace_event_raw_mm_vmscan_lru_isolate {
101619 	struct trace_entry ent;
101620 	int highest_zoneidx;
101621 	int order;
101622 	long unsigned int nr_requested;
101623 	long unsigned int nr_scanned;
101624 	long unsigned int nr_skipped;
101625 	long unsigned int nr_taken;
101626 	unsigned int isolate_mode;
101627 	int lru;
101628 	char __data[0];
101629 };
101630 
101631 struct trace_event_raw_mm_vmscan_write_folio {
101632 	struct trace_entry ent;
101633 	long unsigned int pfn;
101634 	int reclaim_flags;
101635 	char __data[0];
101636 };
101637 
101638 struct trace_event_raw_mm_vmscan_lru_shrink_inactive {
101639 	struct trace_entry ent;
101640 	int nid;
101641 	long unsigned int nr_scanned;
101642 	long unsigned int nr_reclaimed;
101643 	long unsigned int nr_dirty;
101644 	long unsigned int nr_writeback;
101645 	long unsigned int nr_congested;
101646 	long unsigned int nr_immediate;
101647 	unsigned int nr_activate0;
101648 	unsigned int nr_activate1;
101649 	long unsigned int nr_ref_keep;
101650 	long unsigned int nr_unmap_fail;
101651 	int priority;
101652 	int reclaim_flags;
101653 	char __data[0];
101654 };
101655 
101656 struct trace_event_raw_mm_vmscan_lru_shrink_active {
101657 	struct trace_entry ent;
101658 	int nid;
101659 	long unsigned int nr_taken;
101660 	long unsigned int nr_active;
101661 	long unsigned int nr_deactivated;
101662 	long unsigned int nr_referenced;
101663 	int priority;
101664 	int reclaim_flags;
101665 	char __data[0];
101666 };
101667 
101668 struct trace_event_raw_mm_vmscan_node_reclaim_begin {
101669 	struct trace_entry ent;
101670 	int nid;
101671 	int order;
101672 	long unsigned int gfp_flags;
101673 	char __data[0];
101674 };
101675 
101676 struct trace_event_raw_mm_vmscan_throttled {
101677 	struct trace_entry ent;
101678 	int nid;
101679 	int usec_timeout;
101680 	int usec_delayed;
101681 	int reason;
101682 	char __data[0];
101683 };
101684 
101685 struct trace_event_data_offsets_mm_vmscan_kswapd_sleep {};
101686 
101687 struct trace_event_data_offsets_mm_vmscan_kswapd_wake {};
101688 
101689 struct trace_event_data_offsets_mm_vmscan_wakeup_kswapd {};
101690 
101691 struct trace_event_data_offsets_mm_vmscan_direct_reclaim_begin_template {};
101692 
101693 struct trace_event_data_offsets_mm_vmscan_direct_reclaim_end_template {};
101694 
101695 struct trace_event_data_offsets_mm_shrink_slab_start {};
101696 
101697 struct trace_event_data_offsets_mm_shrink_slab_end {};
101698 
101699 struct trace_event_data_offsets_mm_vmscan_lru_isolate {};
101700 
101701 struct trace_event_data_offsets_mm_vmscan_write_folio {};
101702 
101703 struct trace_event_data_offsets_mm_vmscan_lru_shrink_inactive {};
101704 
101705 struct trace_event_data_offsets_mm_vmscan_lru_shrink_active {};
101706 
101707 struct trace_event_data_offsets_mm_vmscan_node_reclaim_begin {};
101708 
101709 struct trace_event_data_offsets_mm_vmscan_throttled {};
101710 
101711 typedef void (*btf_trace_mm_vmscan_kswapd_sleep)(void *, int);
101712 
101713 typedef void (*btf_trace_mm_vmscan_kswapd_wake)(void *, int, int, int);
101714 
101715 typedef void (*btf_trace_mm_vmscan_wakeup_kswapd)(void *, int, int, int, gfp_t);
101716 
101717 typedef void (*btf_trace_mm_vmscan_direct_reclaim_begin)(void *, int, gfp_t);
101718 
101719 typedef void (*btf_trace_mm_vmscan_memcg_reclaim_begin)(void *, int, gfp_t);
101720 
101721 typedef void (*btf_trace_mm_vmscan_memcg_softlimit_reclaim_begin)(void *, int, gfp_t);
101722 
101723 typedef void (*btf_trace_mm_vmscan_direct_reclaim_end)(void *, long unsigned int);
101724 
101725 typedef void (*btf_trace_mm_vmscan_memcg_reclaim_end)(void *, long unsigned int);
101726 
101727 typedef void (*btf_trace_mm_vmscan_memcg_softlimit_reclaim_end)(void *, long unsigned int);
101728 
101729 typedef void (*btf_trace_mm_shrink_slab_start)(void *, struct shrinker *, struct shrink_control *, long int, long unsigned int, long long unsigned int, long unsigned int, int);
101730 
101731 typedef void (*btf_trace_mm_shrink_slab_end)(void *, struct shrinker *, int, int, long int, long int, long int);
101732 
101733 typedef void (*btf_trace_mm_vmscan_lru_isolate)(void *, int, int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, isolate_mode_t, int);
101734 
101735 typedef void (*btf_trace_mm_vmscan_write_folio)(void *, struct folio *);
101736 
101737 typedef void (*btf_trace_mm_vmscan_lru_shrink_inactive)(void *, int, long unsigned int, long unsigned int, struct reclaim_stat *, int, int);
101738 
101739 typedef void (*btf_trace_mm_vmscan_lru_shrink_active)(void *, int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, int, int);
101740 
101741 typedef void (*btf_trace_mm_vmscan_node_reclaim_begin)(void *, int, int, gfp_t);
101742 
101743 typedef void (*btf_trace_mm_vmscan_node_reclaim_end)(void *, long unsigned int);
101744 
101745 typedef void (*btf_trace_mm_vmscan_throttled)(void *, int, int, int, int);
101746 
101747 struct scan_control {
101748 	long unsigned int nr_to_reclaim;
101749 	nodemask_t *nodemask;
101750 	struct mem_cgroup *target_mem_cgroup;
101751 	long unsigned int anon_cost;
101752 	long unsigned int file_cost;
101753 	unsigned int may_deactivate: 2;
101754 	unsigned int force_deactivate: 1;
101755 	unsigned int skipped_deactivate: 1;
101756 	unsigned int may_writepage: 1;
101757 	unsigned int may_unmap: 1;
101758 	unsigned int may_swap: 1;
101759 	unsigned int proactive: 1;
101760 	unsigned int memcg_low_reclaim: 1;
101761 	unsigned int memcg_low_skipped: 1;
101762 	unsigned int hibernation_mode: 1;
101763 	unsigned int compaction_ready: 1;
101764 	unsigned int cache_trim_mode: 1;
101765 	unsigned int file_is_tiny: 1;
101766 	unsigned int no_demotion: 1;
101767 	s8 order;
101768 	s8 priority;
101769 	s8 reclaim_idx;
101770 	gfp_t gfp_mask;
101771 	long unsigned int nr_scanned;
101772 	long unsigned int nr_reclaimed;
101773 	struct {
101774 		unsigned int dirty;
101775 		unsigned int unqueued_dirty;
101776 		unsigned int congested;
101777 		unsigned int writeback;
101778 		unsigned int immediate;
101779 		unsigned int file_taken;
101780 		unsigned int taken;
101781 	} nr;
101782 	struct reclaim_state reclaim_state;
101783 };
101784 
101785 typedef enum {
101786 	PAGE_KEEP = 0,
101787 	PAGE_ACTIVATE = 1,
101788 	PAGE_SUCCESS = 2,
101789 	PAGE_CLEAN = 3,
101790 } pageout_t;
101791 
101792 enum page_references {
101793 	PAGEREF_RECLAIM = 0,
101794 	PAGEREF_RECLAIM_CLEAN = 1,
101795 	PAGEREF_KEEP = 2,
101796 	PAGEREF_ACTIVATE = 3,
101797 };
101798 
101799 enum scan_balance {
101800 	SCAN_EQUAL = 0,
101801 	SCAN_FRACT = 1,
101802 	SCAN_ANON = 2,
101803 	SCAN_FILE = 3,
101804 };
101805 
101806 struct vmap_area {
101807 	long unsigned int va_start;
101808 	long unsigned int va_end;
101809 	struct rb_node rb_node;
101810 	struct list_head list;
101811 	union {
101812 		long unsigned int subtree_max_size;
101813 		struct vm_struct *vm;
101814 	};
101815 };
101816 
101817 typedef unsigned int pgtbl_mod_mask;
101818 
101819 typedef unsigned int kasan_vmalloc_flags_t;
101820 
101821 struct vfree_deferred {
101822 	struct llist_head list;
101823 	struct work_struct wq;
101824 };
101825 
101826 enum fit_type {
101827 	NOTHING_FIT = 0,
101828 	FL_FIT_TYPE = 1,
101829 	LE_FIT_TYPE = 2,
101830 	RE_FIT_TYPE = 3,
101831 	NE_FIT_TYPE = 4,
101832 };
101833 
101834 struct vmap_block_queue {
101835 	spinlock_t lock;
101836 	struct list_head free;
101837 };
101838 
101839 struct vmap_block {
101840 	spinlock_t lock;
101841 	struct vmap_area *va;
101842 	long unsigned int free;
101843 	long unsigned int dirty;
101844 	long unsigned int dirty_min;
101845 	long unsigned int dirty_max;
101846 	struct list_head free_list;
101847 	struct callback_head callback_head;
101848 	struct list_head purge;
101849 };
101850 
101851 enum transparent_hugepage_flag {
101852 	TRANSPARENT_HUGEPAGE_NEVER_DAX = 0,
101853 	TRANSPARENT_HUGEPAGE_FLAG = 1,
101854 	TRANSPARENT_HUGEPAGE_REQ_MADV_FLAG = 2,
101855 	TRANSPARENT_HUGEPAGE_DEFRAG_DIRECT_FLAG = 3,
101856 	TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_FLAG = 4,
101857 	TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_OR_MADV_FLAG = 5,
101858 	TRANSPARENT_HUGEPAGE_DEFRAG_REQ_MADV_FLAG = 6,
101859 	TRANSPARENT_HUGEPAGE_DEFRAG_KHUGEPAGED_FLAG = 7,
101860 	TRANSPARENT_HUGEPAGE_USE_ZERO_PAGE_FLAG = 8,
101861 };
101862 
101863 struct trace_event_raw_hugepage_set_pmd {
101864 	struct trace_entry ent;
101865 	long unsigned int addr;
101866 	long unsigned int pmd;
101867 	char __data[0];
101868 };
101869 
101870 struct trace_event_raw_hugepage_update {
101871 	struct trace_entry ent;
101872 	long unsigned int addr;
101873 	long unsigned int pte;
101874 	long unsigned int clr;
101875 	long unsigned int set;
101876 	char __data[0];
101877 };
101878 
101879 struct trace_event_raw_migration_pmd {
101880 	struct trace_entry ent;
101881 	long unsigned int addr;
101882 	long unsigned int pmd;
101883 	char __data[0];
101884 };
101885 
101886 struct trace_event_data_offsets_hugepage_set_pmd {};
101887 
101888 struct trace_event_data_offsets_hugepage_update {};
101889 
101890 struct trace_event_data_offsets_migration_pmd {};
101891 
101892 typedef void (*btf_trace_hugepage_set_pmd)(void *, long unsigned int, long unsigned int);
101893 
101894 typedef void (*btf_trace_hugepage_update)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
101895 
101896 typedef void (*btf_trace_set_migration_pmd)(void *, long unsigned int, long unsigned int);
101897 
101898 typedef void (*btf_trace_remove_migration_pmd)(void *, long unsigned int, long unsigned int);
101899 
101900 struct inodes_stat_t {
101901 	long int nr_inodes;
101902 	long int nr_unused;
101903 	long int dummy[5];
101904 };
101905 
101906 enum legacy_fs_param {
101907 	LEGACY_FS_UNSET_PARAMS = 0,
101908 	LEGACY_FS_MONOLITHIC_PARAMS = 1,
101909 	LEGACY_FS_INDIVIDUAL_PARAMS = 2,
101910 };
101911 
101912 struct legacy_fs_context {
101913 	char *legacy_data;
101914 	size_t data_size;
101915 	enum legacy_fs_param param_type;
101916 };
101917 
101918 struct inotify_event {
101919 	__s32 wd;
101920 	__u32 mask;
101921 	__u32 cookie;
101922 	__u32 len;
101923 	char name[0];
101924 };
101925 
101926 struct inotify_event_info {
101927 	struct fsnotify_event fse;
101928 	u32 mask;
101929 	int wd;
101930 	u32 sync_cookie;
101931 	int name_len;
101932 	char name[0];
101933 };
101934 
101935 struct inotify_inode_mark {
101936 	struct fsnotify_mark fsn_mark;
101937 	int wd;
101938 };
101939 
101940 struct trace_event_raw_iomap_readpage_class {
101941 	struct trace_entry ent;
101942 	dev_t dev;
101943 	u64 ino;
101944 	int nr_pages;
101945 	char __data[0];
101946 };
101947 
101948 struct trace_event_raw_iomap_range_class {
101949 	struct trace_entry ent;
101950 	dev_t dev;
101951 	u64 ino;
101952 	loff_t size;
101953 	loff_t offset;
101954 	u64 length;
101955 	char __data[0];
101956 };
101957 
101958 struct trace_event_raw_iomap_class {
101959 	struct trace_entry ent;
101960 	dev_t dev;
101961 	u64 ino;
101962 	u64 addr;
101963 	loff_t offset;
101964 	u64 length;
101965 	u16 type;
101966 	u16 flags;
101967 	dev_t bdev;
101968 	char __data[0];
101969 };
101970 
101971 struct trace_event_raw_iomap_iter {
101972 	struct trace_entry ent;
101973 	dev_t dev;
101974 	u64 ino;
101975 	loff_t pos;
101976 	u64 length;
101977 	unsigned int flags;
101978 	const void *ops;
101979 	long unsigned int caller;
101980 	char __data[0];
101981 };
101982 
101983 struct trace_event_data_offsets_iomap_readpage_class {};
101984 
101985 struct trace_event_data_offsets_iomap_range_class {};
101986 
101987 struct trace_event_data_offsets_iomap_class {};
101988 
101989 struct trace_event_data_offsets_iomap_iter {};
101990 
101991 typedef void (*btf_trace_iomap_readpage)(void *, struct inode *, int);
101992 
101993 typedef void (*btf_trace_iomap_readahead)(void *, struct inode *, int);
101994 
101995 typedef void (*btf_trace_iomap_writepage)(void *, struct inode *, loff_t, u64);
101996 
101997 typedef void (*btf_trace_iomap_release_folio)(void *, struct inode *, loff_t, u64);
101998 
101999 typedef void (*btf_trace_iomap_invalidate_folio)(void *, struct inode *, loff_t, u64);
102000 
102001 typedef void (*btf_trace_iomap_dio_invalidate_fail)(void *, struct inode *, loff_t, u64);
102002 
102003 typedef void (*btf_trace_iomap_iter_dstmap)(void *, struct inode *, struct iomap *);
102004 
102005 typedef void (*btf_trace_iomap_iter_srcmap)(void *, struct inode *, struct iomap *);
102006 
102007 typedef void (*btf_trace_iomap_iter)(void *, struct iomap_iter *, const void *, long unsigned int);
102008 
102009 struct ctl_path {
102010 	const char *procname;
102011 };
102012 
102013 struct sysctl_alias {
102014 	const char *kernel_param;
102015 	const char *sysctl_param;
102016 };
102017 
102018 struct fiemap {
102019 	__u64 fm_start;
102020 	__u64 fm_length;
102021 	__u32 fm_flags;
102022 	__u32 fm_mapped_extents;
102023 	__u32 fm_extent_count;
102024 	__u32 fm_reserved;
102025 	struct fiemap_extent fm_extents[0];
102026 };
102027 
102028 struct ext4_new_group_input {
102029 	__u32 group;
102030 	__u64 block_bitmap;
102031 	__u64 inode_bitmap;
102032 	__u64 inode_table;
102033 	__u32 blocks_count;
102034 	__u16 reserved_blocks;
102035 	__u16 unused;
102036 };
102037 
102038 struct fsuuid {
102039 	__u32 fsu_len;
102040 	__u32 fsu_flags;
102041 	__u8 fsu_uuid[0];
102042 };
102043 
102044 struct move_extent {
102045 	__u32 reserved;
102046 	__u32 donor_fd;
102047 	__u64 orig_start;
102048 	__u64 donor_start;
102049 	__u64 len;
102050 	__u64 moved_len;
102051 };
102052 
102053 struct ext4_fsmap_head {
102054 	uint32_t fmh_iflags;
102055 	uint32_t fmh_oflags;
102056 	unsigned int fmh_count;
102057 	unsigned int fmh_entries;
102058 	struct ext4_fsmap fmh_keys[2];
102059 };
102060 
102061 typedef int (*ext4_fsmap_format_t)(struct ext4_fsmap *, void *);
102062 
102063 typedef void ext4_update_sb_callback(struct ext4_super_block *, const void *);
102064 
102065 struct getfsmap_info {
102066 	struct super_block *gi_sb;
102067 	struct fsmap_head *gi_data;
102068 	unsigned int gi_idx;
102069 	__u32 gi_last_flags;
102070 };
102071 
102072 struct mb_cache_entry {
102073 	struct list_head e_list;
102074 	struct hlist_bl_node e_hash_list;
102075 	atomic_t e_refcnt;
102076 	u32 e_key;
102077 	u32 e_referenced: 1;
102078 	u32 e_reusable: 1;
102079 	u64 e_value;
102080 };
102081 
102082 struct ext2_xattr_header {
102083 	__le32 h_magic;
102084 	__le32 h_refcount;
102085 	__le32 h_blocks;
102086 	__le32 h_hash;
102087 	__u32 h_reserved[4];
102088 };
102089 
102090 struct ext2_xattr_entry {
102091 	__u8 e_name_len;
102092 	__u8 e_name_index;
102093 	__le16 e_value_offs;
102094 	__le32 e_value_block;
102095 	__le32 e_value_size;
102096 	__le32 e_hash;
102097 	char e_name[0];
102098 };
102099 
102100 struct fat_boot_fsinfo {
102101 	__le32 signature1;
102102 	__le32 reserved1[120];
102103 	__le32 signature2;
102104 	__le32 free_clusters;
102105 	__le32 next_cluster;
102106 	__le32 reserved2[4];
102107 };
102108 
102109 struct fat_bios_param_block {
102110 	u16 fat_sector_size;
102111 	u8 fat_sec_per_clus;
102112 	u16 fat_reserved;
102113 	u8 fat_fats;
102114 	u16 fat_dir_entries;
102115 	u16 fat_sectors;
102116 	u16 fat_fat_length;
102117 	u32 fat_total_sect;
102118 	u8 fat16_state;
102119 	u32 fat16_vol_id;
102120 	u32 fat32_length;
102121 	u32 fat32_root_cluster;
102122 	u16 fat32_info_sector;
102123 	u8 fat32_state;
102124 	u32 fat32_vol_id;
102125 };
102126 
102127 struct fat_floppy_defaults {
102128 	unsigned int nr_sectors;
102129 	unsigned int sec_per_clus;
102130 	unsigned int dir_entries;
102131 	unsigned int media;
102132 	unsigned int fat_length;
102133 };
102134 
102135 enum {
102136 	Opt_check_n = 0,
102137 	Opt_check_r___2 = 1,
102138 	Opt_check_s___2 = 2,
102139 	Opt_uid___4 = 3,
102140 	Opt_gid___5 = 4,
102141 	Opt_umask = 5,
102142 	Opt_dmask = 6,
102143 	Opt_fmask = 7,
102144 	Opt_allow_utime = 8,
102145 	Opt_codepage = 9,
102146 	Opt_usefree = 10,
102147 	Opt_nocase = 11,
102148 	Opt_quiet = 12,
102149 	Opt_showexec = 13,
102150 	Opt_debug___2 = 14,
102151 	Opt_immutable = 15,
102152 	Opt_dots = 16,
102153 	Opt_nodots = 17,
102154 	Opt_charset = 18,
102155 	Opt_shortname_lower = 19,
102156 	Opt_shortname_win95 = 20,
102157 	Opt_shortname_winnt = 21,
102158 	Opt_shortname_mixed = 22,
102159 	Opt_utf8_no = 23,
102160 	Opt_utf8_yes = 24,
102161 	Opt_uni_xl_no = 25,
102162 	Opt_uni_xl_yes = 26,
102163 	Opt_nonumtail_no = 27,
102164 	Opt_nonumtail_yes = 28,
102165 	Opt_obsolete = 29,
102166 	Opt_flush = 30,
102167 	Opt_tz_utc = 31,
102168 	Opt_rodir = 32,
102169 	Opt_err_cont = 33,
102170 	Opt_err_panic = 34,
102171 	Opt_err_ro = 35,
102172 	Opt_discard___2 = 36,
102173 	Opt_nfs = 37,
102174 	Opt_time_offset = 38,
102175 	Opt_nfs_stale_rw = 39,
102176 	Opt_nfs_nostale_ro = 40,
102177 	Opt_err___3 = 41,
102178 	Opt_dos1xfloppy = 42,
102179 };
102180 
102181 struct nfs2_fh {
102182 	char data[32];
102183 };
102184 
102185 struct nfs3_fh {
102186 	short unsigned int size;
102187 	unsigned char data[64];
102188 };
102189 
102190 struct nfs_mount_data {
102191 	int version;
102192 	int fd;
102193 	struct nfs2_fh old_root;
102194 	int flags;
102195 	int rsize;
102196 	int wsize;
102197 	int timeo;
102198 	int retrans;
102199 	int acregmin;
102200 	int acregmax;
102201 	int acdirmin;
102202 	int acdirmax;
102203 	struct sockaddr_in addr;
102204 	char hostname[256];
102205 	int namlen;
102206 	unsigned int bsize;
102207 	struct nfs3_fh root;
102208 	int pseudoflavor;
102209 	char context[257];
102210 };
102211 
102212 struct nfs_string {
102213 	unsigned int len;
102214 	const char *data;
102215 };
102216 
102217 struct nfs4_mount_data {
102218 	int version;
102219 	int flags;
102220 	int rsize;
102221 	int wsize;
102222 	int timeo;
102223 	int retrans;
102224 	int acregmin;
102225 	int acregmax;
102226 	int acdirmin;
102227 	int acdirmax;
102228 	struct nfs_string client_addr;
102229 	struct nfs_string mnt_path;
102230 	struct nfs_string hostname;
102231 	unsigned int host_addrlen;
102232 	struct sockaddr *host_addr;
102233 	int proto;
102234 	int auth_flavourlen;
102235 	int *auth_flavours;
102236 };
102237 
102238 enum nfs_param {
102239 	Opt_ac = 0,
102240 	Opt_acdirmax = 1,
102241 	Opt_acdirmin = 2,
102242 	Opt_acl___2 = 3,
102243 	Opt_acregmax = 4,
102244 	Opt_acregmin = 5,
102245 	Opt_actimeo = 6,
102246 	Opt_addr = 7,
102247 	Opt_bg = 8,
102248 	Opt_bsize = 9,
102249 	Opt_clientaddr = 10,
102250 	Opt_cto = 11,
102251 	Opt_fg = 12,
102252 	Opt_fscache = 13,
102253 	Opt_fscache_flag = 14,
102254 	Opt_hard = 15,
102255 	Opt_intr = 16,
102256 	Opt_local_lock = 17,
102257 	Opt_lock = 18,
102258 	Opt_lookupcache = 19,
102259 	Opt_migration = 20,
102260 	Opt_minorversion = 21,
102261 	Opt_mountaddr = 22,
102262 	Opt_mounthost = 23,
102263 	Opt_mountport = 24,
102264 	Opt_mountproto = 25,
102265 	Opt_mountvers = 26,
102266 	Opt_namelen = 27,
102267 	Opt_nconnect = 28,
102268 	Opt_max_connect = 29,
102269 	Opt_port = 30,
102270 	Opt_posix = 31,
102271 	Opt_proto = 32,
102272 	Opt_rdirplus = 33,
102273 	Opt_rdma = 34,
102274 	Opt_resvport = 35,
102275 	Opt_retrans = 36,
102276 	Opt_retry = 37,
102277 	Opt_rsize = 38,
102278 	Opt_sec = 39,
102279 	Opt_sharecache = 40,
102280 	Opt_sloppy = 41,
102281 	Opt_soft = 42,
102282 	Opt_softerr = 43,
102283 	Opt_softreval = 44,
102284 	Opt_source = 45,
102285 	Opt_tcp = 46,
102286 	Opt_timeo = 47,
102287 	Opt_trunkdiscovery = 48,
102288 	Opt_udp = 49,
102289 	Opt_v = 50,
102290 	Opt_vers = 51,
102291 	Opt_wsize = 52,
102292 	Opt_write = 53,
102293 };
102294 
102295 enum {
102296 	Opt_local_lock_all = 0,
102297 	Opt_local_lock_flock = 1,
102298 	Opt_local_lock_none = 2,
102299 	Opt_local_lock_posix = 3,
102300 };
102301 
102302 enum {
102303 	Opt_lookupcache_all = 0,
102304 	Opt_lookupcache_none = 1,
102305 	Opt_lookupcache_positive = 2,
102306 };
102307 
102308 enum {
102309 	Opt_write_lazy = 0,
102310 	Opt_write_eager = 1,
102311 	Opt_write_wait = 2,
102312 };
102313 
102314 enum {
102315 	Opt_vers_2 = 0,
102316 	Opt_vers_3 = 1,
102317 	Opt_vers_4 = 2,
102318 	Opt_vers_4_0 = 3,
102319 	Opt_vers_4_1 = 4,
102320 	Opt_vers_4_2 = 5,
102321 };
102322 
102323 enum {
102324 	Opt_xprt_rdma = 0,
102325 	Opt_xprt_rdma6 = 1,
102326 	Opt_xprt_tcp = 2,
102327 	Opt_xprt_tcp6 = 3,
102328 	Opt_xprt_udp = 4,
102329 	Opt_xprt_udp6 = 5,
102330 	nr__Opt_xprt = 6,
102331 };
102332 
102333 enum {
102334 	Opt_sec_krb5 = 0,
102335 	Opt_sec_krb5i = 1,
102336 	Opt_sec_krb5p = 2,
102337 	Opt_sec_lkey = 3,
102338 	Opt_sec_lkeyi = 4,
102339 	Opt_sec_lkeyp = 5,
102340 	Opt_sec_none = 6,
102341 	Opt_sec_spkm = 7,
102342 	Opt_sec_spkmi = 8,
102343 	Opt_sec_spkmp = 9,
102344 	Opt_sec_sys = 10,
102345 	nr__Opt_sec = 11,
102346 };
102347 
102348 struct compat_nfs_string {
102349 	compat_uint_t len;
102350 	compat_uptr_t data;
102351 };
102352 
102353 struct compat_nfs4_mount_data_v1 {
102354 	compat_int_t version;
102355 	compat_int_t flags;
102356 	compat_int_t rsize;
102357 	compat_int_t wsize;
102358 	compat_int_t timeo;
102359 	compat_int_t retrans;
102360 	compat_int_t acregmin;
102361 	compat_int_t acregmax;
102362 	compat_int_t acdirmin;
102363 	compat_int_t acdirmax;
102364 	struct compat_nfs_string client_addr;
102365 	struct compat_nfs_string mnt_path;
102366 	struct compat_nfs_string hostname;
102367 	compat_uint_t host_addrlen;
102368 	compat_uptr_t host_addr;
102369 	compat_int_t proto;
102370 	compat_int_t auth_flavourlen;
102371 	compat_uptr_t auth_flavours;
102372 };
102373 
102374 struct xfs_dir2_sf_entry {
102375 	__u8 namelen;
102376 	__u8 offset[2];
102377 	__u8 name[0];
102378 };
102379 
102380 typedef struct xfs_dir2_sf_entry xfs_dir2_sf_entry_t;
102381 
102382 enum layout_break_reason {
102383 	BREAK_WRITE = 0,
102384 	BREAK_UNMAP = 1,
102385 };
102386 
102387 struct xfs_globals {
102388 	int log_recovery_delay;
102389 	int mount_delay;
102390 	bool bug_on_assert;
102391 	bool always_cow;
102392 };
102393 
102394 struct crypto_cipher {
102395 	struct crypto_tfm base;
102396 };
102397 
102398 struct crypto_hash_walk {
102399 	char *data;
102400 	unsigned int offset;
102401 	unsigned int alignmask;
102402 	struct page *pg;
102403 	unsigned int entrylen;
102404 	unsigned int total;
102405 	struct scatterlist *sg;
102406 	unsigned int flags;
102407 };
102408 
102409 struct shash_instance {
102410 	void (*free)(struct shash_instance *);
102411 	union {
102412 		struct {
102413 			char head[96];
102414 			struct crypto_instance base;
102415 		} s;
102416 		struct shash_alg alg;
102417 	};
102418 };
102419 
102420 struct crypto_shash_spawn {
102421 	struct crypto_spawn base;
102422 };
102423 
102424 struct crypto_report_hash {
102425 	char type[64];
102426 	unsigned int blocksize;
102427 	unsigned int digestsize;
102428 };
102429 
102430 struct bsg_job;
102431 
102432 typedef int bsg_job_fn(struct bsg_job *);
102433 
102434 struct bsg_buffer {
102435 	unsigned int payload_len;
102436 	int sg_cnt;
102437 	struct scatterlist *sg_list;
102438 };
102439 
102440 struct bsg_job {
102441 	struct device *dev;
102442 	struct kref kref;
102443 	unsigned int timeout;
102444 	void *request;
102445 	void *reply;
102446 	unsigned int request_len;
102447 	unsigned int reply_len;
102448 	struct bsg_buffer request_payload;
102449 	struct bsg_buffer reply_payload;
102450 	int result;
102451 	unsigned int reply_payload_rcv_len;
102452 	struct request *bidi_rq;
102453 	struct bio *bidi_bio;
102454 	void *dd_data;
102455 };
102456 
102457 typedef enum blk_eh_timer_return bsg_timeout_fn(struct request *);
102458 
102459 struct bsg_set {
102460 	struct blk_mq_tag_set tag_set;
102461 	struct bsg_device *bd;
102462 	bsg_job_fn *job_fn;
102463 	bsg_timeout_fn *timeout_fn;
102464 };
102465 
102466 struct open_how {
102467 	__u64 flags;
102468 	__u64 mode;
102469 	__u64 resolve;
102470 };
102471 
102472 struct open_flags {
102473 	int open_flag;
102474 	umode_t mode;
102475 	int acc_mode;
102476 	int intent;
102477 	int lookup_flags;
102478 };
102479 
102480 struct io_open {
102481 	struct file *file;
102482 	int dfd;
102483 	u32 file_slot;
102484 	struct filename *filename;
102485 	struct open_how how;
102486 	long unsigned int nofile;
102487 };
102488 
102489 struct io_close {
102490 	struct file *file;
102491 	int fd;
102492 	u32 file_slot;
102493 };
102494 
102495 struct sg_append_table {
102496 	struct sg_table sgt;
102497 	struct scatterlist *prv;
102498 	unsigned int total_nents;
102499 };
102500 
102501 typedef struct scatterlist *sg_alloc_fn(unsigned int, gfp_t);
102502 
102503 typedef void sg_free_fn(struct scatterlist *, unsigned int);
102504 
102505 struct sg_dma_page_iter {
102506 	struct sg_page_iter base;
102507 };
102508 
102509 typedef uint64_t vli_type;
102510 
102511 enum xz_check {
102512 	XZ_CHECK_NONE = 0,
102513 	XZ_CHECK_CRC32 = 1,
102514 	XZ_CHECK_CRC64 = 4,
102515 	XZ_CHECK_SHA256 = 10,
102516 };
102517 
102518 struct xz_dec_hash {
102519 	vli_type unpadded;
102520 	vli_type uncompressed;
102521 	uint32_t crc32;
102522 };
102523 
102524 struct xz_dec_bcj;
102525 
102526 struct xz_dec {
102527 	enum {
102528 		SEQ_STREAM_HEADER = 0,
102529 		SEQ_BLOCK_START = 1,
102530 		SEQ_BLOCK_HEADER = 2,
102531 		SEQ_BLOCK_UNCOMPRESS = 3,
102532 		SEQ_BLOCK_PADDING = 4,
102533 		SEQ_BLOCK_CHECK = 5,
102534 		SEQ_INDEX = 6,
102535 		SEQ_INDEX_PADDING = 7,
102536 		SEQ_INDEX_CRC32 = 8,
102537 		SEQ_STREAM_FOOTER = 9,
102538 	} sequence;
102539 	uint32_t pos;
102540 	vli_type vli;
102541 	size_t in_start;
102542 	size_t out_start;
102543 	uint32_t crc32;
102544 	enum xz_check check_type;
102545 	enum xz_mode mode;
102546 	bool allow_buf_error;
102547 	struct {
102548 		vli_type compressed;
102549 		vli_type uncompressed;
102550 		uint32_t size;
102551 	} block_header;
102552 	struct {
102553 		vli_type compressed;
102554 		vli_type uncompressed;
102555 		vli_type count;
102556 		struct xz_dec_hash hash;
102557 	} block;
102558 	struct {
102559 		enum {
102560 			SEQ_INDEX_COUNT = 0,
102561 			SEQ_INDEX_UNPADDED = 1,
102562 			SEQ_INDEX_UNCOMPRESSED = 2,
102563 		} sequence;
102564 		vli_type size;
102565 		vli_type count;
102566 		struct xz_dec_hash hash;
102567 	} index;
102568 	struct {
102569 		size_t pos;
102570 		size_t size;
102571 		uint8_t buf[1024];
102572 	} temp;
102573 	struct xz_dec_lzma2 *lzma2;
102574 	struct xz_dec_bcj *bcj;
102575 	bool bcj_active;
102576 };
102577 
102578 struct seccomp_data {
102579 	int nr;
102580 	__u32 arch;
102581 	__u64 instruction_pointer;
102582 	__u64 args[6];
102583 };
102584 
102585 struct syscall_info {
102586 	__u64 sp;
102587 	struct seccomp_data data;
102588 };
102589 
102590 enum radeon_errata {
102591 	CHIP_ERRATA_R300_CG = 1,
102592 	CHIP_ERRATA_PLL_DUMMYREADS = 2,
102593 	CHIP_ERRATA_PLL_DELAY = 4,
102594 };
102595 
102596 enum radeon_montype {
102597 	MT_NONE = 0,
102598 	MT_CRT = 1,
102599 	MT_LCD = 2,
102600 	MT_DFP = 3,
102601 	MT_CTV = 4,
102602 	MT_STV = 5,
102603 };
102604 
102605 enum ddc_type {
102606 	ddc_none = 0,
102607 	ddc_monid = 1,
102608 	ddc_dvi = 2,
102609 	ddc_vga = 3,
102610 	ddc_crt2 = 4,
102611 };
102612 
102613 struct of_pci_iommu_alias_info {
102614 	struct device *dev;
102615 	struct device_node *np;
102616 };
102617 
102618 struct probe {
102619 	struct probe *next;
102620 	dev_t dev;
102621 	long unsigned int range;
102622 	struct module *owner;
102623 	kobj_probe_t *get;
102624 	int (*lock)(dev_t, void *);
102625 	void *data;
102626 };
102627 
102628 struct kobj_map {
102629 	struct probe *probes[255];
102630 	struct mutex *lock;
102631 };
102632 
102633 struct auxiliary_device_id {
102634 	char name[32];
102635 	kernel_ulong_t driver_data;
102636 };
102637 
102638 struct auxiliary_device {
102639 	struct device dev;
102640 	const char *name;
102641 	u32 id;
102642 };
102643 
102644 struct auxiliary_driver {
102645 	int (*probe)(struct auxiliary_device *, const struct auxiliary_device_id *);
102646 	void (*remove)(struct auxiliary_device *);
102647 	void (*shutdown)(struct auxiliary_device *);
102648 	int (*suspend)(struct auxiliary_device *, pm_message_t);
102649 	int (*resume)(struct auxiliary_device *);
102650 	const char *name;
102651 	struct device_driver driver;
102652 	const struct auxiliary_device_id *id_table;
102653 };
102654 
102655 enum fw_opt {
102656 	FW_OPT_UEVENT = 1,
102657 	FW_OPT_NOWAIT = 2,
102658 	FW_OPT_USERHELPER = 4,
102659 	FW_OPT_NO_WARN = 8,
102660 	FW_OPT_NOCACHE = 16,
102661 	FW_OPT_NOFALLBACK_SYSFS = 32,
102662 	FW_OPT_FALLBACK_PLATFORM = 64,
102663 	FW_OPT_PARTIAL = 128,
102664 };
102665 
102666 enum fw_status {
102667 	FW_STATUS_UNKNOWN = 0,
102668 	FW_STATUS_LOADING = 1,
102669 	FW_STATUS_DONE = 2,
102670 	FW_STATUS_ABORTED = 3,
102671 };
102672 
102673 struct fw_state {
102674 	struct completion completion;
102675 	enum fw_status status;
102676 };
102677 
102678 struct firmware_cache;
102679 
102680 struct fw_priv {
102681 	struct kref ref;
102682 	struct list_head list;
102683 	struct firmware_cache *fwc;
102684 	struct fw_state fw_st;
102685 	void *data;
102686 	size_t size;
102687 	size_t allocated_size;
102688 	size_t offset;
102689 	u32 opt_flags;
102690 	const char *fw_name;
102691 };
102692 
102693 struct firmware_cache {
102694 	spinlock_t lock;
102695 	struct list_head head;
102696 	int state;
102697 	spinlock_t name_lock;
102698 	struct list_head fw_names;
102699 	struct delayed_work work;
102700 	struct notifier_block pm_notify;
102701 };
102702 
102703 struct fw_cache_entry {
102704 	struct list_head list;
102705 	const char *name;
102706 };
102707 
102708 struct fw_name_devm {
102709 	long unsigned int magic;
102710 	const char *name;
102711 };
102712 
102713 struct firmware_work {
102714 	struct work_struct work;
102715 	struct module *module;
102716 	const char *name;
102717 	struct device *device;
102718 	void *context;
102719 	void (*cont)(const struct firmware *, void *);
102720 	u32 opt_flags;
102721 };
102722 
102723 struct dax_device {
102724 	struct inode inode;
102725 	struct cdev cdev;
102726 	void *private;
102727 	long unsigned int flags;
102728 	const struct dax_operations *ops;
102729 	void *holder_data;
102730 	const struct dax_holder_operations *holder_ops;
102731 };
102732 
102733 enum dax_device_flags {
102734 	DAXDEV_ALIVE = 0,
102735 	DAXDEV_WRITE_CACHE = 1,
102736 	DAXDEV_SYNC = 2,
102737 	DAXDEV_NOCACHE = 3,
102738 	DAXDEV_NOMC = 4,
102739 };
102740 
102741 struct cdrom_ti {
102742 	__u8 cdti_trk0;
102743 	__u8 cdti_ind0;
102744 	__u8 cdti_trk1;
102745 	__u8 cdti_ind1;
102746 };
102747 
102748 struct cdrom_tochdr {
102749 	__u8 cdth_trk0;
102750 	__u8 cdth_trk1;
102751 };
102752 
102753 struct media_event_desc {
102754 	__u8 media_event_code: 4;
102755 	__u8 reserved1: 4;
102756 	__u8 door_open: 1;
102757 	__u8 media_present: 1;
102758 	__u8 reserved2: 6;
102759 	__u8 start_slot;
102760 	__u8 end_slot;
102761 };
102762 
102763 struct scsi_cd {
102764 	unsigned int capacity;
102765 	struct scsi_device *device;
102766 	unsigned int vendor;
102767 	long unsigned int ms_offset;
102768 	unsigned int writeable: 1;
102769 	unsigned int use: 1;
102770 	unsigned int xa_flag: 1;
102771 	unsigned int readcd_known: 1;
102772 	unsigned int readcd_cdda: 1;
102773 	unsigned int media_present: 1;
102774 	int tur_mismatch;
102775 	bool tur_changed: 1;
102776 	bool get_event_changed: 1;
102777 	bool ignore_get_event: 1;
102778 	struct cdrom_device_info cdi;
102779 	struct mutex lock;
102780 	struct gendisk *disk;
102781 };
102782 
102783 typedef struct scsi_cd Scsi_CD;
102784 
102785 struct ata_timing {
102786 	short unsigned int mode;
102787 	short unsigned int setup;
102788 	short unsigned int act8b;
102789 	short unsigned int rec8b;
102790 	short unsigned int cyc8b;
102791 	short unsigned int active;
102792 	short unsigned int recover;
102793 	short unsigned int dmack_hold;
102794 	short unsigned int cycle;
102795 	short unsigned int udma;
102796 };
102797 
102798 struct mdiobus_devres {
102799 	struct mii_bus *mii;
102800 };
102801 
102802 struct pcmcia_device_id {
102803 	__u16 match_flags;
102804 	__u16 manf_id;
102805 	__u16 card_id;
102806 	__u8 func_id;
102807 	__u8 function;
102808 	__u8 device_no;
102809 	__u32 prod_id_hash[4];
102810 	const char *prod_id[4];
102811 	kernel_ulong_t driver_info;
102812 	char *cisfile;
102813 };
102814 
102815 struct pcmcia_dynids {
102816 	struct mutex lock;
102817 	struct list_head list;
102818 };
102819 
102820 struct pcmcia_device;
102821 
102822 struct pcmcia_driver {
102823 	const char *name;
102824 	int (*probe)(struct pcmcia_device *);
102825 	void (*remove)(struct pcmcia_device *);
102826 	int (*suspend)(struct pcmcia_device *);
102827 	int (*resume)(struct pcmcia_device *);
102828 	struct module *owner;
102829 	const struct pcmcia_device_id *id_table;
102830 	struct device_driver drv;
102831 	struct pcmcia_dynids dynids;
102832 };
102833 
102834 struct config_t;
102835 
102836 struct pcmcia_device {
102837 	struct pcmcia_socket *socket;
102838 	char *devname;
102839 	u8 device_no;
102840 	u8 func;
102841 	struct config_t *function_config;
102842 	struct list_head socket_device_list;
102843 	unsigned int irq;
102844 	struct resource *resource[6];
102845 	resource_size_t card_addr;
102846 	unsigned int vpp;
102847 	unsigned int config_flags;
102848 	unsigned int config_base;
102849 	unsigned int config_index;
102850 	unsigned int config_regs;
102851 	unsigned int io_lines;
102852 	u16 suspended: 1;
102853 	u16 _irq: 1;
102854 	u16 _io: 1;
102855 	u16 _win: 4;
102856 	u16 _locked: 1;
102857 	u16 allow_func_id_match: 1;
102858 	u16 has_manf_id: 1;
102859 	u16 has_card_id: 1;
102860 	u16 has_func_id: 1;
102861 	u16 reserved: 4;
102862 	u8 func_id;
102863 	u16 manf_id;
102864 	u16 card_id;
102865 	char *prod_id[4];
102866 	u64 dma_mask;
102867 	struct device dev;
102868 	void *priv;
102869 	unsigned int open;
102870 };
102871 
102872 struct config_t {
102873 	struct kref ref;
102874 	unsigned int state;
102875 	struct resource io[2];
102876 	struct resource mem[4];
102877 };
102878 
102879 typedef struct config_t config_t;
102880 
102881 struct pcmcia_dynid {
102882 	struct list_head node;
102883 	struct pcmcia_device_id id;
102884 };
102885 
102886 struct usb_descriptor_header {
102887 	__u8 bLength;
102888 	__u8 bDescriptorType;
102889 };
102890 
102891 struct usb_dev_cap_header {
102892 	__u8 bLength;
102893 	__u8 bDescriptorType;
102894 	__u8 bDevCapabilityType;
102895 };
102896 
102897 enum usb_port_connect_type {
102898 	USB_PORT_CONNECT_TYPE_UNKNOWN = 0,
102899 	USB_PORT_CONNECT_TYPE_HOT_PLUG = 1,
102900 	USB_PORT_CONNECT_TYPE_HARD_WIRED = 2,
102901 	USB_PORT_NOT_USED = 3,
102902 };
102903 
102904 struct usb_port_status {
102905 	__le16 wPortStatus;
102906 	__le16 wPortChange;
102907 	__le32 dwExtPortStatus;
102908 };
102909 
102910 struct usb_hub_status {
102911 	__le16 wHubStatus;
102912 	__le16 wHubChange;
102913 };
102914 
102915 typedef u32 usb_port_location_t;
102916 
102917 struct usb_port;
102918 
102919 struct usb_hub {
102920 	struct device *intfdev;
102921 	struct usb_device *hdev;
102922 	struct kref kref;
102923 	struct urb *urb;
102924 	u8 (*buffer)[8];
102925 	union {
102926 		struct usb_hub_status hub;
102927 		struct usb_port_status port;
102928 	} *status;
102929 	struct mutex status_mutex;
102930 	int error;
102931 	int nerrors;
102932 	long unsigned int event_bits[1];
102933 	long unsigned int change_bits[1];
102934 	long unsigned int removed_bits[1];
102935 	long unsigned int wakeup_bits[1];
102936 	long unsigned int power_bits[1];
102937 	long unsigned int child_usage_bits[1];
102938 	long unsigned int warm_reset_bits[1];
102939 	struct usb_hub_descriptor *descriptor;
102940 	struct usb_tt tt;
102941 	unsigned int mA_per_port;
102942 	unsigned int wakeup_enabled_descendants;
102943 	unsigned int limited_power: 1;
102944 	unsigned int quiescing: 1;
102945 	unsigned int disconnected: 1;
102946 	unsigned int in_reset: 1;
102947 	unsigned int quirk_disable_autosuspend: 1;
102948 	unsigned int quirk_check_port_auto_suspend: 1;
102949 	unsigned int has_indicators: 1;
102950 	u8 indicator[31];
102951 	struct delayed_work leds;
102952 	struct delayed_work init_work;
102953 	struct work_struct events;
102954 	spinlock_t irq_urb_lock;
102955 	struct timer_list irq_urb_retry;
102956 	struct usb_port **ports;
102957 	struct list_head onboard_hub_devs;
102958 };
102959 
102960 struct usb_dev_state;
102961 
102962 struct usb_port {
102963 	struct usb_device *child;
102964 	struct device dev;
102965 	struct usb_dev_state *port_owner;
102966 	struct usb_port *peer;
102967 	struct dev_pm_qos_request *req;
102968 	enum usb_port_connect_type connect_type;
102969 	usb_port_location_t location;
102970 	struct mutex status_lock;
102971 	u32 over_current_count;
102972 	u8 portnum;
102973 	u32 quirks;
102974 	unsigned int is_superspeed: 1;
102975 	unsigned int usb3_lpm_u1_permit: 1;
102976 	unsigned int usb3_lpm_u2_permit: 1;
102977 };
102978 
102979 struct touchscreen_properties {
102980 	unsigned int max_x;
102981 	unsigned int max_y;
102982 	bool invert_x;
102983 	bool invert_y;
102984 	bool swap_x_y;
102985 };
102986 
102987 struct trace_event_raw_rtc_time_alarm_class {
102988 	struct trace_entry ent;
102989 	time64_t secs;
102990 	int err;
102991 	char __data[0];
102992 };
102993 
102994 struct trace_event_raw_rtc_irq_set_freq {
102995 	struct trace_entry ent;
102996 	int freq;
102997 	int err;
102998 	char __data[0];
102999 };
103000 
103001 struct trace_event_raw_rtc_irq_set_state {
103002 	struct trace_entry ent;
103003 	int enabled;
103004 	int err;
103005 	char __data[0];
103006 };
103007 
103008 struct trace_event_raw_rtc_alarm_irq_enable {
103009 	struct trace_entry ent;
103010 	unsigned int enabled;
103011 	int err;
103012 	char __data[0];
103013 };
103014 
103015 struct trace_event_raw_rtc_offset_class {
103016 	struct trace_entry ent;
103017 	long int offset;
103018 	int err;
103019 	char __data[0];
103020 };
103021 
103022 struct trace_event_raw_rtc_timer_class {
103023 	struct trace_entry ent;
103024 	struct rtc_timer *timer;
103025 	ktime_t expires;
103026 	ktime_t period;
103027 	char __data[0];
103028 };
103029 
103030 struct trace_event_data_offsets_rtc_time_alarm_class {};
103031 
103032 struct trace_event_data_offsets_rtc_irq_set_freq {};
103033 
103034 struct trace_event_data_offsets_rtc_irq_set_state {};
103035 
103036 struct trace_event_data_offsets_rtc_alarm_irq_enable {};
103037 
103038 struct trace_event_data_offsets_rtc_offset_class {};
103039 
103040 struct trace_event_data_offsets_rtc_timer_class {};
103041 
103042 typedef void (*btf_trace_rtc_set_time)(void *, time64_t, int);
103043 
103044 typedef void (*btf_trace_rtc_read_time)(void *, time64_t, int);
103045 
103046 typedef void (*btf_trace_rtc_set_alarm)(void *, time64_t, int);
103047 
103048 typedef void (*btf_trace_rtc_read_alarm)(void *, time64_t, int);
103049 
103050 typedef void (*btf_trace_rtc_irq_set_freq)(void *, int, int);
103051 
103052 typedef void (*btf_trace_rtc_irq_set_state)(void *, int, int);
103053 
103054 typedef void (*btf_trace_rtc_alarm_irq_enable)(void *, unsigned int, int);
103055 
103056 typedef void (*btf_trace_rtc_set_offset)(void *, long int, int);
103057 
103058 typedef void (*btf_trace_rtc_read_offset)(void *, long int, int);
103059 
103060 typedef void (*btf_trace_rtc_timer_enqueue)(void *, struct rtc_timer *);
103061 
103062 typedef void (*btf_trace_rtc_timer_dequeue)(void *, struct rtc_timer *);
103063 
103064 typedef void (*btf_trace_rtc_timer_fired)(void *, struct rtc_timer *);
103065 
103066 enum {
103067 	none = 0,
103068 	day = 1,
103069 	month = 2,
103070 	year = 3,
103071 };
103072 
103073 struct dm_ioctl {
103074 	__u32 version[3];
103075 	__u32 data_size;
103076 	__u32 data_start;
103077 	__u32 target_count;
103078 	__s32 open_count;
103079 	__u32 flags;
103080 	__u32 event_nr;
103081 	__u32 padding;
103082 	__u64 dev;
103083 	char name[128];
103084 	char uuid[129];
103085 	char data[7];
103086 };
103087 
103088 struct dm_target_spec {
103089 	__u64 sector_start;
103090 	__u64 length;
103091 	__s32 status;
103092 	__u32 next;
103093 	char target_type[16];
103094 };
103095 
103096 struct dm_target_deps {
103097 	__u32 count;
103098 	__u32 padding;
103099 	__u64 dev[0];
103100 };
103101 
103102 struct dm_name_list {
103103 	__u64 dev;
103104 	__u32 next;
103105 	char name[0];
103106 };
103107 
103108 struct dm_target_versions {
103109 	__u32 next;
103110 	__u32 version[3];
103111 	char name[0];
103112 };
103113 
103114 struct dm_target_msg {
103115 	__u64 sector;
103116 	char message[0];
103117 };
103118 
103119 enum {
103120 	DM_VERSION_CMD = 0,
103121 	DM_REMOVE_ALL_CMD = 1,
103122 	DM_LIST_DEVICES_CMD = 2,
103123 	DM_DEV_CREATE_CMD = 3,
103124 	DM_DEV_REMOVE_CMD = 4,
103125 	DM_DEV_RENAME_CMD = 5,
103126 	DM_DEV_SUSPEND_CMD = 6,
103127 	DM_DEV_STATUS_CMD = 7,
103128 	DM_DEV_WAIT_CMD = 8,
103129 	DM_TABLE_LOAD_CMD = 9,
103130 	DM_TABLE_CLEAR_CMD = 10,
103131 	DM_TABLE_DEPS_CMD = 11,
103132 	DM_TABLE_STATUS_CMD = 12,
103133 	DM_LIST_VERSIONS_CMD = 13,
103134 	DM_TARGET_MSG_CMD = 14,
103135 	DM_DEV_SET_GEOMETRY_CMD = 15,
103136 	DM_DEV_ARM_POLL_CMD = 16,
103137 	DM_GET_TARGET_VERSION_CMD = 17,
103138 };
103139 
103140 struct dm_dev_internal {
103141 	struct list_head list;
103142 	refcount_t count;
103143 	struct dm_dev *dm_dev;
103144 };
103145 
103146 struct dm_file {
103147 	volatile unsigned int global_event_nr;
103148 };
103149 
103150 struct hash_cell {
103151 	struct rb_node name_node;
103152 	struct rb_node uuid_node;
103153 	bool name_set;
103154 	bool uuid_set;
103155 	char *name;
103156 	char *uuid;
103157 	struct mapped_device *md;
103158 	struct dm_table *new_map;
103159 };
103160 
103161 struct vers_iter {
103162 	size_t param_size;
103163 	struct dm_target_versions *vers;
103164 	struct dm_target_versions *old_vers;
103165 	char *end;
103166 	uint32_t flags;
103167 };
103168 
103169 typedef int (*ioctl_fn)(struct file *, struct dm_ioctl *, size_t);
103170 
103171 struct edac_pci_counter {
103172 	atomic_t pe_count;
103173 	atomic_t npe_count;
103174 };
103175 
103176 struct edac_pci_ctl_info {
103177 	struct list_head link;
103178 	int pci_idx;
103179 	struct bus_type *edac_subsys;
103180 	int op_state;
103181 	struct delayed_work work;
103182 	void (*edac_check)(struct edac_pci_ctl_info *);
103183 	struct device *dev;
103184 	const char *mod_name;
103185 	const char *ctl_name;
103186 	const char *dev_name;
103187 	void *pvt_info;
103188 	long unsigned int start_time;
103189 	struct completion complete;
103190 	char name[32];
103191 	struct edac_pci_counter counters;
103192 	struct kobject kobj;
103193 };
103194 
103195 struct edac_pci_gen_data {
103196 	int edac_idx;
103197 };
103198 
103199 enum led_brightness {
103200 	LED_OFF = 0,
103201 	LED_ON = 1,
103202 	LED_HALF = 127,
103203 	LED_FULL = 255,
103204 };
103205 
103206 enum led_default_state {
103207 	LEDS_DEFSTATE_OFF = 0,
103208 	LEDS_DEFSTATE_ON = 1,
103209 	LEDS_DEFSTATE_KEEP = 2,
103210 };
103211 
103212 struct led_init_data {
103213 	struct fwnode_handle *fwnode;
103214 	const char *default_label;
103215 	const char *devicename;
103216 	bool devname_mandatory;
103217 };
103218 
103219 struct led_pattern;
103220 
103221 struct led_classdev {
103222 	const char *name;
103223 	unsigned int brightness;
103224 	unsigned int max_brightness;
103225 	int flags;
103226 	long unsigned int work_flags;
103227 	void (*brightness_set)(struct led_classdev *, enum led_brightness);
103228 	int (*brightness_set_blocking)(struct led_classdev *, enum led_brightness);
103229 	enum led_brightness (*brightness_get)(struct led_classdev *);
103230 	int (*blink_set)(struct led_classdev *, long unsigned int *, long unsigned int *);
103231 	int (*pattern_set)(struct led_classdev *, struct led_pattern *, u32, int);
103232 	int (*pattern_clear)(struct led_classdev *);
103233 	struct device *dev;
103234 	const struct attribute_group **groups;
103235 	struct list_head node;
103236 	const char *default_trigger;
103237 	long unsigned int blink_delay_on;
103238 	long unsigned int blink_delay_off;
103239 	struct timer_list blink_timer;
103240 	int blink_brightness;
103241 	int new_blink_brightness;
103242 	void (*flash_resume)(struct led_classdev *);
103243 	struct work_struct set_brightness_work;
103244 	int delayed_set_value;
103245 	struct mutex led_access;
103246 };
103247 
103248 struct led_pattern {
103249 	u32 delta_t;
103250 	int brightness;
103251 };
103252 
103253 struct led_properties {
103254 	u32 color;
103255 	bool color_present;
103256 	const char *function;
103257 	u32 func_enum;
103258 	bool func_enum_present;
103259 	const char *label;
103260 };
103261 
103262 struct net_device_devres {
103263 	struct net_device *ndev;
103264 };
103265 
103266 struct flow_dissector_key_ports_range {
103267 	union {
103268 		struct flow_dissector_key_ports tp;
103269 		struct {
103270 			struct flow_dissector_key_ports tp_min;
103271 			struct flow_dissector_key_ports tp_max;
103272 		};
103273 	};
103274 };
103275 
103276 struct flow_match_meta {
103277 	struct flow_dissector_key_meta *key;
103278 	struct flow_dissector_key_meta *mask;
103279 };
103280 
103281 struct flow_match_basic {
103282 	struct flow_dissector_key_basic *key;
103283 	struct flow_dissector_key_basic *mask;
103284 };
103285 
103286 struct flow_match_control {
103287 	struct flow_dissector_key_control *key;
103288 	struct flow_dissector_key_control *mask;
103289 };
103290 
103291 struct flow_match_eth_addrs {
103292 	struct flow_dissector_key_eth_addrs *key;
103293 	struct flow_dissector_key_eth_addrs *mask;
103294 };
103295 
103296 struct flow_match_vlan {
103297 	struct flow_dissector_key_vlan *key;
103298 	struct flow_dissector_key_vlan *mask;
103299 };
103300 
103301 struct flow_match_ipv4_addrs {
103302 	struct flow_dissector_key_ipv4_addrs *key;
103303 	struct flow_dissector_key_ipv4_addrs *mask;
103304 };
103305 
103306 struct flow_match_ipv6_addrs {
103307 	struct flow_dissector_key_ipv6_addrs *key;
103308 	struct flow_dissector_key_ipv6_addrs *mask;
103309 };
103310 
103311 struct flow_match_ip {
103312 	struct flow_dissector_key_ip *key;
103313 	struct flow_dissector_key_ip *mask;
103314 };
103315 
103316 struct flow_match_ports {
103317 	struct flow_dissector_key_ports *key;
103318 	struct flow_dissector_key_ports *mask;
103319 };
103320 
103321 struct flow_match_ports_range {
103322 	struct flow_dissector_key_ports_range *key;
103323 	struct flow_dissector_key_ports_range *mask;
103324 };
103325 
103326 struct flow_match_icmp {
103327 	struct flow_dissector_key_icmp *key;
103328 	struct flow_dissector_key_icmp *mask;
103329 };
103330 
103331 struct flow_match_tcp {
103332 	struct flow_dissector_key_tcp *key;
103333 	struct flow_dissector_key_tcp *mask;
103334 };
103335 
103336 struct flow_match_mpls {
103337 	struct flow_dissector_key_mpls *key;
103338 	struct flow_dissector_key_mpls *mask;
103339 };
103340 
103341 struct flow_match_enc_keyid {
103342 	struct flow_dissector_key_keyid *key;
103343 	struct flow_dissector_key_keyid *mask;
103344 };
103345 
103346 struct flow_match_enc_opts {
103347 	struct flow_dissector_key_enc_opts *key;
103348 	struct flow_dissector_key_enc_opts *mask;
103349 };
103350 
103351 struct flow_match_ct {
103352 	struct flow_dissector_key_ct *key;
103353 	struct flow_dissector_key_ct *mask;
103354 };
103355 
103356 struct flow_match_pppoe {
103357 	struct flow_dissector_key_pppoe *key;
103358 	struct flow_dissector_key_pppoe *mask;
103359 };
103360 
103361 struct flow_stats {
103362 	u64 pkts;
103363 	u64 bytes;
103364 	u64 drops;
103365 	u64 lastused;
103366 	enum flow_action_hw_stats used_hw_stats;
103367 	bool used_hw_stats_valid;
103368 };
103369 
103370 enum flow_block_command {
103371 	FLOW_BLOCK_BIND = 0,
103372 	FLOW_BLOCK_UNBIND = 1,
103373 };
103374 
103375 enum flow_block_binder_type {
103376 	FLOW_BLOCK_BINDER_TYPE_UNSPEC = 0,
103377 	FLOW_BLOCK_BINDER_TYPE_CLSACT_INGRESS = 1,
103378 	FLOW_BLOCK_BINDER_TYPE_CLSACT_EGRESS = 2,
103379 	FLOW_BLOCK_BINDER_TYPE_RED_EARLY_DROP = 3,
103380 	FLOW_BLOCK_BINDER_TYPE_RED_MARK = 4,
103381 };
103382 
103383 struct flow_block_offload {
103384 	enum flow_block_command command;
103385 	enum flow_block_binder_type binder_type;
103386 	bool block_shared;
103387 	bool unlocked_driver_cb;
103388 	struct net *net;
103389 	struct flow_block *block;
103390 	struct list_head cb_list;
103391 	struct list_head *driver_block_list;
103392 	struct netlink_ext_ack *extack;
103393 	struct Qdisc *sch;
103394 	struct list_head *cb_list_head;
103395 };
103396 
103397 struct flow_block_cb;
103398 
103399 struct flow_block_indr {
103400 	struct list_head list;
103401 	struct net_device *dev;
103402 	struct Qdisc *sch;
103403 	enum flow_block_binder_type binder_type;
103404 	void *data;
103405 	void *cb_priv;
103406 	void (*cleanup)(struct flow_block_cb *);
103407 };
103408 
103409 struct flow_block_cb {
103410 	struct list_head driver_list;
103411 	struct list_head list;
103412 	flow_setup_cb_t *cb;
103413 	void *cb_ident;
103414 	void *cb_priv;
103415 	void (*release)(void *);
103416 	struct flow_block_indr indr;
103417 	unsigned int refcnt;
103418 };
103419 
103420 enum offload_act_command {
103421 	FLOW_ACT_REPLACE = 0,
103422 	FLOW_ACT_DESTROY = 1,
103423 	FLOW_ACT_STATS = 2,
103424 };
103425 
103426 struct flow_offload_action {
103427 	struct netlink_ext_ack *extack;
103428 	enum offload_act_command command;
103429 	enum flow_action_id id;
103430 	u32 index;
103431 	struct flow_stats stats;
103432 	struct flow_action action;
103433 };
103434 
103435 typedef int flow_indr_block_bind_cb_t(struct net_device *, struct Qdisc *, void *, enum tc_setup_type, void *, void *, void (*)(struct flow_block_cb *));
103436 
103437 struct flow_indr_dev {
103438 	struct list_head list;
103439 	flow_indr_block_bind_cb_t *cb;
103440 	void *cb_priv;
103441 	refcount_t refcnt;
103442 };
103443 
103444 struct flow_indir_dev_info {
103445 	void *data;
103446 	struct net_device *dev;
103447 	struct Qdisc *sch;
103448 	enum tc_setup_type type;
103449 	void (*cleanup)(struct flow_block_cb *);
103450 	struct list_head list;
103451 	enum flow_block_command command;
103452 	enum flow_block_binder_type binder_type;
103453 	struct list_head *cb_list;
103454 };
103455 
103456 struct nla_bitfield32 {
103457 	__u32 value;
103458 	__u32 selector;
103459 };
103460 
103461 enum ib_uverbs_write_cmds {
103462 	IB_USER_VERBS_CMD_GET_CONTEXT = 0,
103463 	IB_USER_VERBS_CMD_QUERY_DEVICE = 1,
103464 	IB_USER_VERBS_CMD_QUERY_PORT = 2,
103465 	IB_USER_VERBS_CMD_ALLOC_PD = 3,
103466 	IB_USER_VERBS_CMD_DEALLOC_PD = 4,
103467 	IB_USER_VERBS_CMD_CREATE_AH = 5,
103468 	IB_USER_VERBS_CMD_MODIFY_AH = 6,
103469 	IB_USER_VERBS_CMD_QUERY_AH = 7,
103470 	IB_USER_VERBS_CMD_DESTROY_AH = 8,
103471 	IB_USER_VERBS_CMD_REG_MR = 9,
103472 	IB_USER_VERBS_CMD_REG_SMR = 10,
103473 	IB_USER_VERBS_CMD_REREG_MR = 11,
103474 	IB_USER_VERBS_CMD_QUERY_MR = 12,
103475 	IB_USER_VERBS_CMD_DEREG_MR = 13,
103476 	IB_USER_VERBS_CMD_ALLOC_MW = 14,
103477 	IB_USER_VERBS_CMD_BIND_MW = 15,
103478 	IB_USER_VERBS_CMD_DEALLOC_MW = 16,
103479 	IB_USER_VERBS_CMD_CREATE_COMP_CHANNEL = 17,
103480 	IB_USER_VERBS_CMD_CREATE_CQ = 18,
103481 	IB_USER_VERBS_CMD_RESIZE_CQ = 19,
103482 	IB_USER_VERBS_CMD_DESTROY_CQ = 20,
103483 	IB_USER_VERBS_CMD_POLL_CQ = 21,
103484 	IB_USER_VERBS_CMD_PEEK_CQ = 22,
103485 	IB_USER_VERBS_CMD_REQ_NOTIFY_CQ = 23,
103486 	IB_USER_VERBS_CMD_CREATE_QP = 24,
103487 	IB_USER_VERBS_CMD_QUERY_QP = 25,
103488 	IB_USER_VERBS_CMD_MODIFY_QP = 26,
103489 	IB_USER_VERBS_CMD_DESTROY_QP = 27,
103490 	IB_USER_VERBS_CMD_POST_SEND = 28,
103491 	IB_USER_VERBS_CMD_POST_RECV = 29,
103492 	IB_USER_VERBS_CMD_ATTACH_MCAST = 30,
103493 	IB_USER_VERBS_CMD_DETACH_MCAST = 31,
103494 	IB_USER_VERBS_CMD_CREATE_SRQ = 32,
103495 	IB_USER_VERBS_CMD_MODIFY_SRQ = 33,
103496 	IB_USER_VERBS_CMD_QUERY_SRQ = 34,
103497 	IB_USER_VERBS_CMD_DESTROY_SRQ = 35,
103498 	IB_USER_VERBS_CMD_POST_SRQ_RECV = 36,
103499 	IB_USER_VERBS_CMD_OPEN_XRCD = 37,
103500 	IB_USER_VERBS_CMD_CLOSE_XRCD = 38,
103501 	IB_USER_VERBS_CMD_CREATE_XSRQ = 39,
103502 	IB_USER_VERBS_CMD_OPEN_QP = 40,
103503 };
103504 
103505 enum ib_uverbs_wc_opcode {
103506 	IB_UVERBS_WC_SEND = 0,
103507 	IB_UVERBS_WC_RDMA_WRITE = 1,
103508 	IB_UVERBS_WC_RDMA_READ = 2,
103509 	IB_UVERBS_WC_COMP_SWAP = 3,
103510 	IB_UVERBS_WC_FETCH_ADD = 4,
103511 	IB_UVERBS_WC_BIND_MW = 5,
103512 	IB_UVERBS_WC_LOCAL_INV = 6,
103513 	IB_UVERBS_WC_TSO = 7,
103514 };
103515 
103516 enum ib_uverbs_create_qp_mask {
103517 	IB_UVERBS_CREATE_QP_MASK_IND_TABLE = 1,
103518 };
103519 
103520 enum ib_uverbs_wr_opcode {
103521 	IB_UVERBS_WR_RDMA_WRITE = 0,
103522 	IB_UVERBS_WR_RDMA_WRITE_WITH_IMM = 1,
103523 	IB_UVERBS_WR_SEND = 2,
103524 	IB_UVERBS_WR_SEND_WITH_IMM = 3,
103525 	IB_UVERBS_WR_RDMA_READ = 4,
103526 	IB_UVERBS_WR_ATOMIC_CMP_AND_SWP = 5,
103527 	IB_UVERBS_WR_ATOMIC_FETCH_AND_ADD = 6,
103528 	IB_UVERBS_WR_LOCAL_INV = 7,
103529 	IB_UVERBS_WR_BIND_MW = 8,
103530 	IB_UVERBS_WR_SEND_WITH_INV = 9,
103531 	IB_UVERBS_WR_TSO = 10,
103532 	IB_UVERBS_WR_RDMA_READ_WITH_INV = 11,
103533 	IB_UVERBS_WR_MASKED_ATOMIC_CMP_AND_SWP = 12,
103534 	IB_UVERBS_WR_MASKED_ATOMIC_FETCH_AND_ADD = 13,
103535 };
103536 
103537 enum ib_uverbs_device_cap_flags {
103538 	IB_UVERBS_DEVICE_RESIZE_MAX_WR = 1ULL,
103539 	IB_UVERBS_DEVICE_BAD_PKEY_CNTR = 2ULL,
103540 	IB_UVERBS_DEVICE_BAD_QKEY_CNTR = 4ULL,
103541 	IB_UVERBS_DEVICE_RAW_MULTI = 8ULL,
103542 	IB_UVERBS_DEVICE_AUTO_PATH_MIG = 16ULL,
103543 	IB_UVERBS_DEVICE_CHANGE_PHY_PORT = 32ULL,
103544 	IB_UVERBS_DEVICE_UD_AV_PORT_ENFORCE = 64ULL,
103545 	IB_UVERBS_DEVICE_CURR_QP_STATE_MOD = 128ULL,
103546 	IB_UVERBS_DEVICE_SHUTDOWN_PORT = 256ULL,
103547 	IB_UVERBS_DEVICE_PORT_ACTIVE_EVENT = 1024ULL,
103548 	IB_UVERBS_DEVICE_SYS_IMAGE_GUID = 2048ULL,
103549 	IB_UVERBS_DEVICE_RC_RNR_NAK_GEN = 4096ULL,
103550 	IB_UVERBS_DEVICE_SRQ_RESIZE = 8192ULL,
103551 	IB_UVERBS_DEVICE_N_NOTIFY_CQ = 16384ULL,
103552 	IB_UVERBS_DEVICE_MEM_WINDOW = 131072ULL,
103553 	IB_UVERBS_DEVICE_UD_IP_CSUM = 262144ULL,
103554 	IB_UVERBS_DEVICE_XRC = 1048576ULL,
103555 	IB_UVERBS_DEVICE_MEM_MGT_EXTENSIONS = 2097152ULL,
103556 	IB_UVERBS_DEVICE_MEM_WINDOW_TYPE_2A = 8388608ULL,
103557 	IB_UVERBS_DEVICE_MEM_WINDOW_TYPE_2B = 16777216ULL,
103558 	IB_UVERBS_DEVICE_RC_IP_CSUM = 33554432ULL,
103559 	IB_UVERBS_DEVICE_RAW_IP_CSUM = 67108864ULL,
103560 	IB_UVERBS_DEVICE_MANAGED_FLOW_STEERING = 536870912ULL,
103561 	IB_UVERBS_DEVICE_RAW_SCATTER_FCS = 17179869184ULL,
103562 	IB_UVERBS_DEVICE_PCI_WRITE_END_PADDING = 68719476736ULL,
103563 };
103564 
103565 enum ib_uverbs_raw_packet_caps {
103566 	IB_UVERBS_RAW_PACKET_CAP_CVLAN_STRIPPING = 1,
103567 	IB_UVERBS_RAW_PACKET_CAP_SCATTER_FCS = 2,
103568 	IB_UVERBS_RAW_PACKET_CAP_IP_CSUM = 4,
103569 	IB_UVERBS_RAW_PACKET_CAP_DELAY_DROP = 8,
103570 };
103571 
103572 enum rdma_nl_counter_mode {
103573 	RDMA_COUNTER_MODE_NONE = 0,
103574 	RDMA_COUNTER_MODE_AUTO = 1,
103575 	RDMA_COUNTER_MODE_MANUAL = 2,
103576 	RDMA_COUNTER_MODE_MAX = 3,
103577 };
103578 
103579 enum rdma_nl_counter_mask {
103580 	RDMA_COUNTER_MASK_QP_TYPE = 1,
103581 	RDMA_COUNTER_MASK_PID = 2,
103582 };
103583 
103584 enum rdma_restrack_type {
103585 	RDMA_RESTRACK_PD = 0,
103586 	RDMA_RESTRACK_CQ = 1,
103587 	RDMA_RESTRACK_QP = 2,
103588 	RDMA_RESTRACK_CM_ID = 3,
103589 	RDMA_RESTRACK_MR = 4,
103590 	RDMA_RESTRACK_CTX = 5,
103591 	RDMA_RESTRACK_COUNTER = 6,
103592 	RDMA_RESTRACK_SRQ = 7,
103593 	RDMA_RESTRACK_MAX = 8,
103594 };
103595 
103596 struct rdma_restrack_entry {
103597 	bool valid;
103598 	u8 no_track: 1;
103599 	struct kref kref;
103600 	struct completion comp;
103601 	struct task_struct *task;
103602 	const char *kern_name;
103603 	enum rdma_restrack_type type;
103604 	bool user;
103605 	u32 id;
103606 };
103607 
103608 struct rdma_link_ops {
103609 	struct list_head list;
103610 	const char *type;
103611 	int (*newlink)(const char *, struct net_device *);
103612 };
103613 
103614 struct auto_mode_param {
103615 	int qp_type;
103616 };
103617 
103618 struct rdma_counter_mode {
103619 	enum rdma_nl_counter_mode mode;
103620 	enum rdma_nl_counter_mask mask;
103621 	struct auto_mode_param param;
103622 };
103623 
103624 struct rdma_hw_stats;
103625 
103626 struct rdma_port_counter {
103627 	struct rdma_counter_mode mode;
103628 	struct rdma_hw_stats *hstats;
103629 	unsigned int num_counters;
103630 	struct mutex lock;
103631 };
103632 
103633 struct rdma_stat_desc;
103634 
103635 struct rdma_hw_stats {
103636 	struct mutex lock;
103637 	long unsigned int timestamp;
103638 	long unsigned int lifespan;
103639 	const struct rdma_stat_desc *descs;
103640 	long unsigned int *is_disabled;
103641 	int num_counters;
103642 	u64 value[0];
103643 };
103644 
103645 struct ib_device;
103646 
103647 struct rdma_counter {
103648 	struct rdma_restrack_entry res;
103649 	struct ib_device *device;
103650 	uint32_t id;
103651 	struct kref kref;
103652 	struct rdma_counter_mode mode;
103653 	struct mutex lock;
103654 	struct rdma_hw_stats *stats;
103655 	u32 port;
103656 };
103657 
103658 enum rdma_driver_id {
103659 	RDMA_DRIVER_UNKNOWN = 0,
103660 	RDMA_DRIVER_MLX5 = 1,
103661 	RDMA_DRIVER_MLX4 = 2,
103662 	RDMA_DRIVER_CXGB3 = 3,
103663 	RDMA_DRIVER_CXGB4 = 4,
103664 	RDMA_DRIVER_MTHCA = 5,
103665 	RDMA_DRIVER_BNXT_RE = 6,
103666 	RDMA_DRIVER_OCRDMA = 7,
103667 	RDMA_DRIVER_NES = 8,
103668 	RDMA_DRIVER_I40IW = 9,
103669 	RDMA_DRIVER_IRDMA = 9,
103670 	RDMA_DRIVER_VMW_PVRDMA = 10,
103671 	RDMA_DRIVER_QEDR = 11,
103672 	RDMA_DRIVER_HNS = 12,
103673 	RDMA_DRIVER_USNIC = 13,
103674 	RDMA_DRIVER_RXE = 14,
103675 	RDMA_DRIVER_HFI1 = 15,
103676 	RDMA_DRIVER_QIB = 16,
103677 	RDMA_DRIVER_EFA = 17,
103678 	RDMA_DRIVER_SIW = 18,
103679 	RDMA_DRIVER_ERDMA = 19,
103680 };
103681 
103682 enum ib_cq_notify_flags {
103683 	IB_CQ_SOLICITED = 1,
103684 	IB_CQ_NEXT_COMP = 2,
103685 	IB_CQ_SOLICITED_MASK = 3,
103686 	IB_CQ_REPORT_MISSED_EVENTS = 4,
103687 };
103688 
103689 struct ib_mad;
103690 
103691 enum rdma_link_layer {
103692 	IB_LINK_LAYER_UNSPECIFIED = 0,
103693 	IB_LINK_LAYER_INFINIBAND = 1,
103694 	IB_LINK_LAYER_ETHERNET = 2,
103695 };
103696 
103697 enum rdma_netdev_t {
103698 	RDMA_NETDEV_OPA_VNIC = 0,
103699 	RDMA_NETDEV_IPOIB = 1,
103700 };
103701 
103702 enum ib_srq_attr_mask {
103703 	IB_SRQ_MAX_WR = 1,
103704 	IB_SRQ_LIMIT = 2,
103705 };
103706 
103707 enum ib_mr_type {
103708 	IB_MR_TYPE_MEM_REG = 0,
103709 	IB_MR_TYPE_SG_GAPS = 1,
103710 	IB_MR_TYPE_DM = 2,
103711 	IB_MR_TYPE_USER = 3,
103712 	IB_MR_TYPE_DMA = 4,
103713 	IB_MR_TYPE_INTEGRITY = 5,
103714 };
103715 
103716 enum ib_uverbs_advise_mr_advice {
103717 	IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH = 0,
103718 	IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH_WRITE = 1,
103719 	IB_UVERBS_ADVISE_MR_ADVICE_PREFETCH_NO_FAULT = 2,
103720 };
103721 
103722 struct uverbs_attr_bundle;
103723 
103724 struct rdma_cm_id;
103725 
103726 struct iw_cm_id;
103727 
103728 struct iw_cm_conn_param;
103729 
103730 struct ib_qp;
103731 
103732 struct ib_send_wr;
103733 
103734 struct ib_recv_wr;
103735 
103736 struct ib_cq;
103737 
103738 struct ib_wc;
103739 
103740 struct ib_srq;
103741 
103742 struct ib_grh;
103743 
103744 struct ib_device_attr;
103745 
103746 struct ib_udata;
103747 
103748 struct ib_device_modify;
103749 
103750 struct ib_port_attr;
103751 
103752 struct ib_port_modify;
103753 
103754 struct ib_port_immutable;
103755 
103756 struct rdma_netdev_alloc_params;
103757 
103758 union ib_gid;
103759 
103760 struct ib_gid_attr;
103761 
103762 struct ib_ucontext;
103763 
103764 struct rdma_user_mmap_entry;
103765 
103766 struct ib_pd;
103767 
103768 struct ib_ah;
103769 
103770 struct rdma_ah_init_attr;
103771 
103772 struct rdma_ah_attr;
103773 
103774 struct ib_srq_init_attr;
103775 
103776 struct ib_srq_attr;
103777 
103778 struct ib_qp_init_attr;
103779 
103780 struct ib_qp_attr;
103781 
103782 struct ib_cq_init_attr;
103783 
103784 struct ib_mr;
103785 
103786 struct ib_sge;
103787 
103788 struct ib_mr_status;
103789 
103790 struct ib_mw;
103791 
103792 struct ib_xrcd;
103793 
103794 struct ib_flow;
103795 
103796 struct ib_flow_attr;
103797 
103798 struct ib_flow_action;
103799 
103800 struct ib_wq;
103801 
103802 struct ib_wq_init_attr;
103803 
103804 struct ib_wq_attr;
103805 
103806 struct ib_rwq_ind_table;
103807 
103808 struct ib_rwq_ind_table_init_attr;
103809 
103810 struct ib_dm;
103811 
103812 struct ib_dm_alloc_attr;
103813 
103814 struct ib_dm_mr_attr;
103815 
103816 struct ib_counters;
103817 
103818 struct ib_counters_read_attr;
103819 
103820 struct ib_device_ops {
103821 	struct module *owner;
103822 	enum rdma_driver_id driver_id;
103823 	u32 uverbs_abi_ver;
103824 	unsigned int uverbs_no_driver_id_binding: 1;
103825 	const struct attribute_group *device_group;
103826 	const struct attribute_group **port_groups;
103827 	int (*post_send)(struct ib_qp *, const struct ib_send_wr *, const struct ib_send_wr **);
103828 	int (*post_recv)(struct ib_qp *, const struct ib_recv_wr *, const struct ib_recv_wr **);
103829 	void (*drain_rq)(struct ib_qp *);
103830 	void (*drain_sq)(struct ib_qp *);
103831 	int (*poll_cq)(struct ib_cq *, int, struct ib_wc *);
103832 	int (*peek_cq)(struct ib_cq *, int);
103833 	int (*req_notify_cq)(struct ib_cq *, enum ib_cq_notify_flags);
103834 	int (*post_srq_recv)(struct ib_srq *, const struct ib_recv_wr *, const struct ib_recv_wr **);
103835 	int (*process_mad)(struct ib_device *, int, u32, const struct ib_wc *, const struct ib_grh *, const struct ib_mad *, struct ib_mad *, size_t *, u16 *);
103836 	int (*query_device)(struct ib_device *, struct ib_device_attr *, struct ib_udata *);
103837 	int (*modify_device)(struct ib_device *, int, struct ib_device_modify *);
103838 	void (*get_dev_fw_str)(struct ib_device *, char *);
103839 	const struct cpumask * (*get_vector_affinity)(struct ib_device *, int);
103840 	int (*query_port)(struct ib_device *, u32, struct ib_port_attr *);
103841 	int (*modify_port)(struct ib_device *, u32, int, struct ib_port_modify *);
103842 	int (*get_port_immutable)(struct ib_device *, u32, struct ib_port_immutable *);
103843 	enum rdma_link_layer (*get_link_layer)(struct ib_device *, u32);
103844 	struct net_device * (*get_netdev)(struct ib_device *, u32);
103845 	struct net_device * (*alloc_rdma_netdev)(struct ib_device *, u32, enum rdma_netdev_t, const char *, unsigned char, void (*)(struct net_device *));
103846 	int (*rdma_netdev_get_params)(struct ib_device *, u32, enum rdma_netdev_t, struct rdma_netdev_alloc_params *);
103847 	int (*query_gid)(struct ib_device *, u32, int, union ib_gid *);
103848 	int (*add_gid)(const struct ib_gid_attr *, void **);
103849 	int (*del_gid)(const struct ib_gid_attr *, void **);
103850 	int (*query_pkey)(struct ib_device *, u32, u16, u16 *);
103851 	int (*alloc_ucontext)(struct ib_ucontext *, struct ib_udata *);
103852 	void (*dealloc_ucontext)(struct ib_ucontext *);
103853 	int (*mmap)(struct ib_ucontext *, struct vm_area_struct *);
103854 	void (*mmap_free)(struct rdma_user_mmap_entry *);
103855 	void (*disassociate_ucontext)(struct ib_ucontext *);
103856 	int (*alloc_pd)(struct ib_pd *, struct ib_udata *);
103857 	int (*dealloc_pd)(struct ib_pd *, struct ib_udata *);
103858 	int (*create_ah)(struct ib_ah *, struct rdma_ah_init_attr *, struct ib_udata *);
103859 	int (*create_user_ah)(struct ib_ah *, struct rdma_ah_init_attr *, struct ib_udata *);
103860 	int (*modify_ah)(struct ib_ah *, struct rdma_ah_attr *);
103861 	int (*query_ah)(struct ib_ah *, struct rdma_ah_attr *);
103862 	int (*destroy_ah)(struct ib_ah *, u32);
103863 	int (*create_srq)(struct ib_srq *, struct ib_srq_init_attr *, struct ib_udata *);
103864 	int (*modify_srq)(struct ib_srq *, struct ib_srq_attr *, enum ib_srq_attr_mask, struct ib_udata *);
103865 	int (*query_srq)(struct ib_srq *, struct ib_srq_attr *);
103866 	int (*destroy_srq)(struct ib_srq *, struct ib_udata *);
103867 	int (*create_qp)(struct ib_qp *, struct ib_qp_init_attr *, struct ib_udata *);
103868 	int (*modify_qp)(struct ib_qp *, struct ib_qp_attr *, int, struct ib_udata *);
103869 	int (*query_qp)(struct ib_qp *, struct ib_qp_attr *, int, struct ib_qp_init_attr *);
103870 	int (*destroy_qp)(struct ib_qp *, struct ib_udata *);
103871 	int (*create_cq)(struct ib_cq *, const struct ib_cq_init_attr *, struct ib_udata *);
103872 	int (*modify_cq)(struct ib_cq *, u16, u16);
103873 	int (*destroy_cq)(struct ib_cq *, struct ib_udata *);
103874 	int (*resize_cq)(struct ib_cq *, int, struct ib_udata *);
103875 	struct ib_mr * (*get_dma_mr)(struct ib_pd *, int);
103876 	struct ib_mr * (*reg_user_mr)(struct ib_pd *, u64, u64, u64, int, struct ib_udata *);
103877 	struct ib_mr * (*reg_user_mr_dmabuf)(struct ib_pd *, u64, u64, u64, int, int, struct ib_udata *);
103878 	struct ib_mr * (*rereg_user_mr)(struct ib_mr *, int, u64, u64, u64, int, struct ib_pd *, struct ib_udata *);
103879 	int (*dereg_mr)(struct ib_mr *, struct ib_udata *);
103880 	struct ib_mr * (*alloc_mr)(struct ib_pd *, enum ib_mr_type, u32);
103881 	struct ib_mr * (*alloc_mr_integrity)(struct ib_pd *, u32, u32);
103882 	int (*advise_mr)(struct ib_pd *, enum ib_uverbs_advise_mr_advice, u32, struct ib_sge *, u32, struct uverbs_attr_bundle *);
103883 	int (*map_mr_sg)(struct ib_mr *, struct scatterlist *, int, unsigned int *);
103884 	int (*check_mr_status)(struct ib_mr *, u32, struct ib_mr_status *);
103885 	int (*alloc_mw)(struct ib_mw *, struct ib_udata *);
103886 	int (*dealloc_mw)(struct ib_mw *);
103887 	int (*attach_mcast)(struct ib_qp *, union ib_gid *, u16);
103888 	int (*detach_mcast)(struct ib_qp *, union ib_gid *, u16);
103889 	int (*alloc_xrcd)(struct ib_xrcd *, struct ib_udata *);
103890 	int (*dealloc_xrcd)(struct ib_xrcd *, struct ib_udata *);
103891 	struct ib_flow * (*create_flow)(struct ib_qp *, struct ib_flow_attr *, struct ib_udata *);
103892 	int (*destroy_flow)(struct ib_flow *);
103893 	int (*destroy_flow_action)(struct ib_flow_action *);
103894 	int (*set_vf_link_state)(struct ib_device *, int, u32, int);
103895 	int (*get_vf_config)(struct ib_device *, int, u32, struct ifla_vf_info *);
103896 	int (*get_vf_stats)(struct ib_device *, int, u32, struct ifla_vf_stats *);
103897 	int (*get_vf_guid)(struct ib_device *, int, u32, struct ifla_vf_guid *, struct ifla_vf_guid *);
103898 	int (*set_vf_guid)(struct ib_device *, int, u32, u64, int);
103899 	struct ib_wq * (*create_wq)(struct ib_pd *, struct ib_wq_init_attr *, struct ib_udata *);
103900 	int (*destroy_wq)(struct ib_wq *, struct ib_udata *);
103901 	int (*modify_wq)(struct ib_wq *, struct ib_wq_attr *, u32, struct ib_udata *);
103902 	int (*create_rwq_ind_table)(struct ib_rwq_ind_table *, struct ib_rwq_ind_table_init_attr *, struct ib_udata *);
103903 	int (*destroy_rwq_ind_table)(struct ib_rwq_ind_table *);
103904 	struct ib_dm * (*alloc_dm)(struct ib_device *, struct ib_ucontext *, struct ib_dm_alloc_attr *, struct uverbs_attr_bundle *);
103905 	int (*dealloc_dm)(struct ib_dm *, struct uverbs_attr_bundle *);
103906 	struct ib_mr * (*reg_dm_mr)(struct ib_pd *, struct ib_dm *, struct ib_dm_mr_attr *, struct uverbs_attr_bundle *);
103907 	int (*create_counters)(struct ib_counters *, struct uverbs_attr_bundle *);
103908 	int (*destroy_counters)(struct ib_counters *);
103909 	int (*read_counters)(struct ib_counters *, struct ib_counters_read_attr *, struct uverbs_attr_bundle *);
103910 	int (*map_mr_sg_pi)(struct ib_mr *, struct scatterlist *, int, unsigned int *, struct scatterlist *, int, unsigned int *);
103911 	struct rdma_hw_stats * (*alloc_hw_device_stats)(struct ib_device *);
103912 	struct rdma_hw_stats * (*alloc_hw_port_stats)(struct ib_device *, u32);
103913 	int (*get_hw_stats)(struct ib_device *, struct rdma_hw_stats *, u32, int);
103914 	int (*modify_hw_stat)(struct ib_device *, u32, unsigned int, bool);
103915 	int (*fill_res_mr_entry)(struct sk_buff *, struct ib_mr *);
103916 	int (*fill_res_mr_entry_raw)(struct sk_buff *, struct ib_mr *);
103917 	int (*fill_res_cq_entry)(struct sk_buff *, struct ib_cq *);
103918 	int (*fill_res_cq_entry_raw)(struct sk_buff *, struct ib_cq *);
103919 	int (*fill_res_qp_entry)(struct sk_buff *, struct ib_qp *);
103920 	int (*fill_res_qp_entry_raw)(struct sk_buff *, struct ib_qp *);
103921 	int (*fill_res_cm_id_entry)(struct sk_buff *, struct rdma_cm_id *);
103922 	int (*enable_driver)(struct ib_device *);
103923 	void (*dealloc_driver)(struct ib_device *);
103924 	void (*iw_add_ref)(struct ib_qp *);
103925 	void (*iw_rem_ref)(struct ib_qp *);
103926 	struct ib_qp * (*iw_get_qp)(struct ib_device *, int);
103927 	int (*iw_connect)(struct iw_cm_id *, struct iw_cm_conn_param *);
103928 	int (*iw_accept)(struct iw_cm_id *, struct iw_cm_conn_param *);
103929 	int (*iw_reject)(struct iw_cm_id *, const void *, u8);
103930 	int (*iw_create_listen)(struct iw_cm_id *, int);
103931 	int (*iw_destroy_listen)(struct iw_cm_id *);
103932 	int (*counter_bind_qp)(struct rdma_counter *, struct ib_qp *);
103933 	int (*counter_unbind_qp)(struct ib_qp *);
103934 	int (*counter_dealloc)(struct rdma_counter *);
103935 	struct rdma_hw_stats * (*counter_alloc_stats)(struct rdma_counter *);
103936 	int (*counter_update_stats)(struct rdma_counter *);
103937 	int (*fill_stat_mr_entry)(struct sk_buff *, struct ib_mr *);
103938 	int (*query_ucontext)(struct ib_ucontext *, struct uverbs_attr_bundle *);
103939 	int (*get_numa_node)(struct ib_device *);
103940 	size_t size_ib_ah;
103941 	size_t size_ib_counters;
103942 	size_t size_ib_cq;
103943 	size_t size_ib_mw;
103944 	size_t size_ib_pd;
103945 	size_t size_ib_qp;
103946 	size_t size_ib_rwq_ind_table;
103947 	size_t size_ib_srq;
103948 	size_t size_ib_ucontext;
103949 	size_t size_ib_xrcd;
103950 };
103951 
103952 struct ib_core_device {
103953 	struct device dev;
103954 	possible_net_t rdma_net;
103955 	struct kobject *ports_kobj;
103956 	struct list_head port_list;
103957 	struct ib_device *owner;
103958 };
103959 
103960 enum ib_atomic_cap {
103961 	IB_ATOMIC_NONE = 0,
103962 	IB_ATOMIC_HCA = 1,
103963 	IB_ATOMIC_GLOB = 2,
103964 };
103965 
103966 struct ib_odp_caps {
103967 	uint64_t general_caps;
103968 	struct {
103969 		uint32_t rc_odp_caps;
103970 		uint32_t uc_odp_caps;
103971 		uint32_t ud_odp_caps;
103972 		uint32_t xrc_odp_caps;
103973 	} per_transport_caps;
103974 };
103975 
103976 struct ib_rss_caps {
103977 	u32 supported_qpts;
103978 	u32 max_rwq_indirection_tables;
103979 	u32 max_rwq_indirection_table_size;
103980 };
103981 
103982 struct ib_tm_caps {
103983 	u32 max_rndv_hdr_size;
103984 	u32 max_num_tags;
103985 	u32 flags;
103986 	u32 max_ops;
103987 	u32 max_sge;
103988 };
103989 
103990 struct ib_cq_caps {
103991 	u16 max_cq_moderation_count;
103992 	u16 max_cq_moderation_period;
103993 };
103994 
103995 struct ib_device_attr {
103996 	u64 fw_ver;
103997 	__be64 sys_image_guid;
103998 	u64 max_mr_size;
103999 	u64 page_size_cap;
104000 	u32 vendor_id;
104001 	u32 vendor_part_id;
104002 	u32 hw_ver;
104003 	int max_qp;
104004 	int max_qp_wr;
104005 	u64 device_cap_flags;
104006 	u64 kernel_cap_flags;
104007 	int max_send_sge;
104008 	int max_recv_sge;
104009 	int max_sge_rd;
104010 	int max_cq;
104011 	int max_cqe;
104012 	int max_mr;
104013 	int max_pd;
104014 	int max_qp_rd_atom;
104015 	int max_ee_rd_atom;
104016 	int max_res_rd_atom;
104017 	int max_qp_init_rd_atom;
104018 	int max_ee_init_rd_atom;
104019 	enum ib_atomic_cap atomic_cap;
104020 	enum ib_atomic_cap masked_atomic_cap;
104021 	int max_ee;
104022 	int max_rdd;
104023 	int max_mw;
104024 	int max_raw_ipv6_qp;
104025 	int max_raw_ethy_qp;
104026 	int max_mcast_grp;
104027 	int max_mcast_qp_attach;
104028 	int max_total_mcast_qp_attach;
104029 	int max_ah;
104030 	int max_srq;
104031 	int max_srq_wr;
104032 	int max_srq_sge;
104033 	unsigned int max_fast_reg_page_list_len;
104034 	unsigned int max_pi_fast_reg_page_list_len;
104035 	u16 max_pkeys;
104036 	u8 local_ca_ack_delay;
104037 	int sig_prot_cap;
104038 	int sig_guard_cap;
104039 	struct ib_odp_caps odp_caps;
104040 	uint64_t timestamp_mask;
104041 	uint64_t hca_core_clock;
104042 	struct ib_rss_caps rss_caps;
104043 	u32 max_wq_type_rq;
104044 	u32 raw_packet_caps;
104045 	struct ib_tm_caps tm_caps;
104046 	struct ib_cq_caps cq_caps;
104047 	u64 max_dm_size;
104048 	u32 max_sgl_rd;
104049 };
104050 
104051 struct hw_stats_device_data;
104052 
104053 struct rdma_restrack_root;
104054 
104055 struct uapi_definition;
104056 
104057 struct ib_port_data;
104058 
104059 struct ib_device {
104060 	struct device *dma_device;
104061 	struct ib_device_ops ops;
104062 	char name[64];
104063 	struct callback_head callback_head;
104064 	struct list_head event_handler_list;
104065 	struct rw_semaphore event_handler_rwsem;
104066 	spinlock_t qp_open_list_lock;
104067 	struct rw_semaphore client_data_rwsem;
104068 	struct xarray client_data;
104069 	struct mutex unregistration_lock;
104070 	rwlock_t cache_lock;
104071 	struct ib_port_data *port_data;
104072 	int num_comp_vectors;
104073 	union {
104074 		struct device dev;
104075 		struct ib_core_device coredev;
104076 	};
104077 	const struct attribute_group *groups[4];
104078 	u64 uverbs_cmd_mask;
104079 	char node_desc[64];
104080 	__be64 node_guid;
104081 	u32 local_dma_lkey;
104082 	u16 is_switch: 1;
104083 	u16 kverbs_provider: 1;
104084 	u16 use_cq_dim: 1;
104085 	u8 node_type;
104086 	u32 phys_port_cnt;
104087 	struct ib_device_attr attrs;
104088 	struct hw_stats_device_data *hw_stats_data;
104089 	u32 index;
104090 	spinlock_t cq_pools_lock;
104091 	struct list_head cq_pools[3];
104092 	struct rdma_restrack_root *res;
104093 	const struct uapi_definition *driver_def;
104094 	refcount_t refcount;
104095 	struct completion unreg_completion;
104096 	struct work_struct unregistration_work;
104097 	const struct rdma_link_ops *link_ops;
104098 	struct mutex compat_devs_mutex;
104099 	struct xarray compat_devs;
104100 	char iw_ifname[16];
104101 	u32 iw_driver_flags;
104102 	u32 lag_flags;
104103 };
104104 
104105 enum ib_signature_type {
104106 	IB_SIG_TYPE_NONE = 0,
104107 	IB_SIG_TYPE_T10_DIF = 1,
104108 };
104109 
104110 enum ib_t10_dif_bg_type {
104111 	IB_T10DIF_CRC = 0,
104112 	IB_T10DIF_CSUM = 1,
104113 };
104114 
104115 struct ib_t10_dif_domain {
104116 	enum ib_t10_dif_bg_type bg_type;
104117 	u16 pi_interval;
104118 	u16 bg;
104119 	u16 app_tag;
104120 	u32 ref_tag;
104121 	bool ref_remap;
104122 	bool app_escape;
104123 	bool ref_escape;
104124 	u16 apptag_check_mask;
104125 };
104126 
104127 struct ib_sig_domain {
104128 	enum ib_signature_type sig_type;
104129 	union {
104130 		struct ib_t10_dif_domain dif;
104131 	} sig;
104132 };
104133 
104134 struct ib_sig_attrs {
104135 	u8 check_mask;
104136 	struct ib_sig_domain mem;
104137 	struct ib_sig_domain wire;
104138 	int meta_length;
104139 };
104140 
104141 enum ib_sig_err_type {
104142 	IB_SIG_BAD_GUARD = 0,
104143 	IB_SIG_BAD_REFTAG = 1,
104144 	IB_SIG_BAD_APPTAG = 2,
104145 };
104146 
104147 struct ib_sig_err {
104148 	enum ib_sig_err_type err_type;
104149 	u32 expected;
104150 	u32 actual;
104151 	u64 sig_err_offset;
104152 	u32 key;
104153 };
104154 
104155 enum ib_uverbs_access_flags {
104156 	IB_UVERBS_ACCESS_LOCAL_WRITE = 1,
104157 	IB_UVERBS_ACCESS_REMOTE_WRITE = 2,
104158 	IB_UVERBS_ACCESS_REMOTE_READ = 4,
104159 	IB_UVERBS_ACCESS_REMOTE_ATOMIC = 8,
104160 	IB_UVERBS_ACCESS_MW_BIND = 16,
104161 	IB_UVERBS_ACCESS_ZERO_BASED = 32,
104162 	IB_UVERBS_ACCESS_ON_DEMAND = 64,
104163 	IB_UVERBS_ACCESS_HUGETLB = 128,
104164 	IB_UVERBS_ACCESS_RELAXED_ORDERING = 1048576,
104165 	IB_UVERBS_ACCESS_OPTIONAL_RANGE = 1072693248,
104166 };
104167 
104168 enum ib_uverbs_srq_type {
104169 	IB_UVERBS_SRQT_BASIC = 0,
104170 	IB_UVERBS_SRQT_XRC = 1,
104171 	IB_UVERBS_SRQT_TM = 2,
104172 };
104173 
104174 enum ib_uverbs_wq_type {
104175 	IB_UVERBS_WQT_RQ = 0,
104176 };
104177 
104178 enum ib_uverbs_wq_flags {
104179 	IB_UVERBS_WQ_FLAGS_CVLAN_STRIPPING = 1,
104180 	IB_UVERBS_WQ_FLAGS_SCATTER_FCS = 2,
104181 	IB_UVERBS_WQ_FLAGS_DELAY_DROP = 4,
104182 	IB_UVERBS_WQ_FLAGS_PCI_WRITE_END_PADDING = 8,
104183 };
104184 
104185 enum ib_uverbs_qp_type {
104186 	IB_UVERBS_QPT_RC = 2,
104187 	IB_UVERBS_QPT_UC = 3,
104188 	IB_UVERBS_QPT_UD = 4,
104189 	IB_UVERBS_QPT_RAW_PACKET = 8,
104190 	IB_UVERBS_QPT_XRC_INI = 9,
104191 	IB_UVERBS_QPT_XRC_TGT = 10,
104192 	IB_UVERBS_QPT_DRIVER = 255,
104193 };
104194 
104195 enum ib_uverbs_qp_create_flags {
104196 	IB_UVERBS_QP_CREATE_BLOCK_MULTICAST_LOOPBACK = 2,
104197 	IB_UVERBS_QP_CREATE_SCATTER_FCS = 256,
104198 	IB_UVERBS_QP_CREATE_CVLAN_STRIPPING = 512,
104199 	IB_UVERBS_QP_CREATE_PCI_WRITE_END_PADDING = 2048,
104200 	IB_UVERBS_QP_CREATE_SQ_SIG_ALL = 4096,
104201 };
104202 
104203 enum ib_uverbs_gid_type {
104204 	IB_UVERBS_GID_TYPE_IB = 0,
104205 	IB_UVERBS_GID_TYPE_ROCE_V1 = 1,
104206 	IB_UVERBS_GID_TYPE_ROCE_V2 = 2,
104207 };
104208 
104209 union ib_gid {
104210 	u8 raw[16];
104211 	struct {
104212 		__be64 subnet_prefix;
104213 		__be64 interface_id;
104214 	} global;
104215 };
104216 
104217 enum ib_gid_type {
104218 	IB_GID_TYPE_IB = 0,
104219 	IB_GID_TYPE_ROCE = 1,
104220 	IB_GID_TYPE_ROCE_UDP_ENCAP = 2,
104221 	IB_GID_TYPE_SIZE = 3,
104222 };
104223 
104224 struct ib_gid_attr {
104225 	struct net_device *ndev;
104226 	struct ib_device *device;
104227 	union ib_gid gid;
104228 	enum ib_gid_type gid_type;
104229 	u16 index;
104230 	u32 port_num;
104231 };
104232 
104233 struct ib_cq_init_attr {
104234 	unsigned int cqe;
104235 	u32 comp_vector;
104236 	u32 flags;
104237 };
104238 
104239 struct ib_dm_mr_attr {
104240 	u64 length;
104241 	u64 offset;
104242 	u32 access_flags;
104243 };
104244 
104245 struct ib_dm_alloc_attr {
104246 	u64 length;
104247 	u32 alignment;
104248 	u32 flags;
104249 };
104250 
104251 enum ib_mtu {
104252 	IB_MTU_256 = 1,
104253 	IB_MTU_512 = 2,
104254 	IB_MTU_1024 = 3,
104255 	IB_MTU_2048 = 4,
104256 	IB_MTU_4096 = 5,
104257 };
104258 
104259 enum ib_port_state {
104260 	IB_PORT_NOP = 0,
104261 	IB_PORT_DOWN = 1,
104262 	IB_PORT_INIT = 2,
104263 	IB_PORT_ARMED = 3,
104264 	IB_PORT_ACTIVE = 4,
104265 	IB_PORT_ACTIVE_DEFER = 5,
104266 };
104267 
104268 struct rdma_stat_desc {
104269 	const char *name;
104270 	unsigned int flags;
104271 	const void *priv;
104272 };
104273 
104274 struct ib_port_attr {
104275 	u64 subnet_prefix;
104276 	enum ib_port_state state;
104277 	enum ib_mtu max_mtu;
104278 	enum ib_mtu active_mtu;
104279 	u32 phys_mtu;
104280 	int gid_tbl_len;
104281 	unsigned int ip_gids: 1;
104282 	u32 port_cap_flags;
104283 	u32 max_msg_sz;
104284 	u32 bad_pkey_cntr;
104285 	u32 qkey_viol_cntr;
104286 	u16 pkey_tbl_len;
104287 	u32 sm_lid;
104288 	u32 lid;
104289 	u8 lmc;
104290 	u8 max_vl_num;
104291 	u8 sm_sl;
104292 	u8 subnet_timeout;
104293 	u8 init_type_reply;
104294 	u8 active_width;
104295 	u16 active_speed;
104296 	u8 phys_state;
104297 	u16 port_cap_flags2;
104298 };
104299 
104300 struct ib_device_modify {
104301 	u64 sys_image_guid;
104302 	char node_desc[64];
104303 };
104304 
104305 struct ib_port_modify {
104306 	u32 set_port_cap_mask;
104307 	u32 clr_port_cap_mask;
104308 	u8 init_type;
104309 };
104310 
104311 enum ib_event_type {
104312 	IB_EVENT_CQ_ERR = 0,
104313 	IB_EVENT_QP_FATAL = 1,
104314 	IB_EVENT_QP_REQ_ERR = 2,
104315 	IB_EVENT_QP_ACCESS_ERR = 3,
104316 	IB_EVENT_COMM_EST = 4,
104317 	IB_EVENT_SQ_DRAINED = 5,
104318 	IB_EVENT_PATH_MIG = 6,
104319 	IB_EVENT_PATH_MIG_ERR = 7,
104320 	IB_EVENT_DEVICE_FATAL = 8,
104321 	IB_EVENT_PORT_ACTIVE = 9,
104322 	IB_EVENT_PORT_ERR = 10,
104323 	IB_EVENT_LID_CHANGE = 11,
104324 	IB_EVENT_PKEY_CHANGE = 12,
104325 	IB_EVENT_SM_CHANGE = 13,
104326 	IB_EVENT_SRQ_ERR = 14,
104327 	IB_EVENT_SRQ_LIMIT_REACHED = 15,
104328 	IB_EVENT_QP_LAST_WQE_REACHED = 16,
104329 	IB_EVENT_CLIENT_REREGISTER = 17,
104330 	IB_EVENT_GID_CHANGE = 18,
104331 	IB_EVENT_WQ_FATAL = 19,
104332 };
104333 
104334 struct ib_ucq_object;
104335 
104336 typedef void (*ib_comp_handler)(struct ib_cq *, void *);
104337 
104338 enum ib_poll_context {
104339 	IB_POLL_SOFTIRQ = 0,
104340 	IB_POLL_WORKQUEUE = 1,
104341 	IB_POLL_UNBOUND_WORKQUEUE = 2,
104342 	IB_POLL_LAST_POOL_TYPE = 2,
104343 	IB_POLL_DIRECT = 3,
104344 };
104345 
104346 struct ib_event;
104347 
104348 struct ib_cq {
104349 	struct ib_device *device;
104350 	struct ib_ucq_object *uobject;
104351 	ib_comp_handler comp_handler;
104352 	void (*event_handler)(struct ib_event *, void *);
104353 	void *cq_context;
104354 	int cqe;
104355 	unsigned int cqe_used;
104356 	atomic_t usecnt;
104357 	enum ib_poll_context poll_ctx;
104358 	struct ib_wc *wc;
104359 	struct list_head pool_entry;
104360 	union {
104361 		struct irq_poll iop;
104362 		struct work_struct work;
104363 	};
104364 	struct workqueue_struct *comp_wq;
104365 	struct dim *dim;
104366 	ktime_t timestamp;
104367 	u8 interrupt: 1;
104368 	u8 shared: 1;
104369 	unsigned int comp_vector;
104370 	struct rdma_restrack_entry res;
104371 };
104372 
104373 struct ib_uqp_object;
104374 
104375 enum ib_qp_type {
104376 	IB_QPT_SMI = 0,
104377 	IB_QPT_GSI = 1,
104378 	IB_QPT_RC = 2,
104379 	IB_QPT_UC = 3,
104380 	IB_QPT_UD = 4,
104381 	IB_QPT_RAW_IPV6 = 5,
104382 	IB_QPT_RAW_ETHERTYPE = 6,
104383 	IB_QPT_RAW_PACKET = 8,
104384 	IB_QPT_XRC_INI = 9,
104385 	IB_QPT_XRC_TGT = 10,
104386 	IB_QPT_MAX = 11,
104387 	IB_QPT_DRIVER = 255,
104388 	IB_QPT_RESERVED1 = 4096,
104389 	IB_QPT_RESERVED2 = 4097,
104390 	IB_QPT_RESERVED3 = 4098,
104391 	IB_QPT_RESERVED4 = 4099,
104392 	IB_QPT_RESERVED5 = 4100,
104393 	IB_QPT_RESERVED6 = 4101,
104394 	IB_QPT_RESERVED7 = 4102,
104395 	IB_QPT_RESERVED8 = 4103,
104396 	IB_QPT_RESERVED9 = 4104,
104397 	IB_QPT_RESERVED10 = 4105,
104398 };
104399 
104400 struct ib_qp_security;
104401 
104402 struct ib_qp {
104403 	struct ib_device *device;
104404 	struct ib_pd *pd;
104405 	struct ib_cq *send_cq;
104406 	struct ib_cq *recv_cq;
104407 	spinlock_t mr_lock;
104408 	int mrs_used;
104409 	struct list_head rdma_mrs;
104410 	struct list_head sig_mrs;
104411 	struct ib_srq *srq;
104412 	struct ib_xrcd *xrcd;
104413 	struct list_head xrcd_list;
104414 	atomic_t usecnt;
104415 	struct list_head open_list;
104416 	struct ib_qp *real_qp;
104417 	struct ib_uqp_object *uobject;
104418 	void (*event_handler)(struct ib_event *, void *);
104419 	void *qp_context;
104420 	const struct ib_gid_attr *av_sgid_attr;
104421 	const struct ib_gid_attr *alt_path_sgid_attr;
104422 	u32 qp_num;
104423 	u32 max_write_sge;
104424 	u32 max_read_sge;
104425 	enum ib_qp_type qp_type;
104426 	struct ib_rwq_ind_table *rwq_ind_tbl;
104427 	struct ib_qp_security *qp_sec;
104428 	u32 port;
104429 	bool integrity_en;
104430 	struct rdma_restrack_entry res;
104431 	struct rdma_counter *counter;
104432 };
104433 
104434 struct ib_usrq_object;
104435 
104436 enum ib_srq_type {
104437 	IB_SRQT_BASIC = 0,
104438 	IB_SRQT_XRC = 1,
104439 	IB_SRQT_TM = 2,
104440 };
104441 
104442 struct ib_srq {
104443 	struct ib_device *device;
104444 	struct ib_pd *pd;
104445 	struct ib_usrq_object *uobject;
104446 	void (*event_handler)(struct ib_event *, void *);
104447 	void *srq_context;
104448 	enum ib_srq_type srq_type;
104449 	atomic_t usecnt;
104450 	struct {
104451 		struct ib_cq *cq;
104452 		union {
104453 			struct {
104454 				struct ib_xrcd *xrcd;
104455 				u32 srq_num;
104456 			} xrc;
104457 		};
104458 	} ext;
104459 	struct rdma_restrack_entry res;
104460 };
104461 
104462 struct ib_uwq_object;
104463 
104464 enum ib_wq_state {
104465 	IB_WQS_RESET = 0,
104466 	IB_WQS_RDY = 1,
104467 	IB_WQS_ERR = 2,
104468 };
104469 
104470 enum ib_wq_type {
104471 	IB_WQT_RQ = 0,
104472 };
104473 
104474 struct ib_wq {
104475 	struct ib_device *device;
104476 	struct ib_uwq_object *uobject;
104477 	void *wq_context;
104478 	void (*event_handler)(struct ib_event *, void *);
104479 	struct ib_pd *pd;
104480 	struct ib_cq *cq;
104481 	u32 wq_num;
104482 	enum ib_wq_state state;
104483 	enum ib_wq_type wq_type;
104484 	atomic_t usecnt;
104485 };
104486 
104487 struct ib_event {
104488 	struct ib_device *device;
104489 	union {
104490 		struct ib_cq *cq;
104491 		struct ib_qp *qp;
104492 		struct ib_srq *srq;
104493 		struct ib_wq *wq;
104494 		u32 port_num;
104495 	} element;
104496 	enum ib_event_type event;
104497 };
104498 
104499 struct ib_global_route {
104500 	const struct ib_gid_attr *sgid_attr;
104501 	union ib_gid dgid;
104502 	u32 flow_label;
104503 	u8 sgid_index;
104504 	u8 hop_limit;
104505 	u8 traffic_class;
104506 };
104507 
104508 struct ib_grh {
104509 	__be32 version_tclass_flow;
104510 	__be16 paylen;
104511 	u8 next_hdr;
104512 	u8 hop_limit;
104513 	union ib_gid sgid;
104514 	union ib_gid dgid;
104515 };
104516 
104517 struct ib_mr_status {
104518 	u32 fail_status;
104519 	struct ib_sig_err sig_err;
104520 };
104521 
104522 struct rdma_ah_init_attr {
104523 	struct rdma_ah_attr *ah_attr;
104524 	u32 flags;
104525 	struct net_device *xmit_slave;
104526 };
104527 
104528 enum rdma_ah_attr_type {
104529 	RDMA_AH_ATTR_TYPE_UNDEFINED = 0,
104530 	RDMA_AH_ATTR_TYPE_IB = 1,
104531 	RDMA_AH_ATTR_TYPE_ROCE = 2,
104532 	RDMA_AH_ATTR_TYPE_OPA = 3,
104533 };
104534 
104535 struct ib_ah_attr {
104536 	u16 dlid;
104537 	u8 src_path_bits;
104538 };
104539 
104540 struct roce_ah_attr {
104541 	u8 dmac[6];
104542 };
104543 
104544 struct opa_ah_attr {
104545 	u32 dlid;
104546 	u8 src_path_bits;
104547 	bool make_grd;
104548 };
104549 
104550 struct rdma_ah_attr {
104551 	struct ib_global_route grh;
104552 	u8 sl;
104553 	u8 static_rate;
104554 	u32 port_num;
104555 	u8 ah_flags;
104556 	enum rdma_ah_attr_type type;
104557 	union {
104558 		struct ib_ah_attr ib;
104559 		struct roce_ah_attr roce;
104560 		struct opa_ah_attr opa;
104561 	};
104562 };
104563 
104564 enum ib_wc_status {
104565 	IB_WC_SUCCESS = 0,
104566 	IB_WC_LOC_LEN_ERR = 1,
104567 	IB_WC_LOC_QP_OP_ERR = 2,
104568 	IB_WC_LOC_EEC_OP_ERR = 3,
104569 	IB_WC_LOC_PROT_ERR = 4,
104570 	IB_WC_WR_FLUSH_ERR = 5,
104571 	IB_WC_MW_BIND_ERR = 6,
104572 	IB_WC_BAD_RESP_ERR = 7,
104573 	IB_WC_LOC_ACCESS_ERR = 8,
104574 	IB_WC_REM_INV_REQ_ERR = 9,
104575 	IB_WC_REM_ACCESS_ERR = 10,
104576 	IB_WC_REM_OP_ERR = 11,
104577 	IB_WC_RETRY_EXC_ERR = 12,
104578 	IB_WC_RNR_RETRY_EXC_ERR = 13,
104579 	IB_WC_LOC_RDD_VIOL_ERR = 14,
104580 	IB_WC_REM_INV_RD_REQ_ERR = 15,
104581 	IB_WC_REM_ABORT_ERR = 16,
104582 	IB_WC_INV_EECN_ERR = 17,
104583 	IB_WC_INV_EEC_STATE_ERR = 18,
104584 	IB_WC_FATAL_ERR = 19,
104585 	IB_WC_RESP_TIMEOUT_ERR = 20,
104586 	IB_WC_GENERAL_ERR = 21,
104587 };
104588 
104589 enum ib_wc_opcode {
104590 	IB_WC_SEND = 0,
104591 	IB_WC_RDMA_WRITE = 1,
104592 	IB_WC_RDMA_READ = 2,
104593 	IB_WC_COMP_SWAP = 3,
104594 	IB_WC_FETCH_ADD = 4,
104595 	IB_WC_BIND_MW = 5,
104596 	IB_WC_LOCAL_INV = 6,
104597 	IB_WC_LSO = 7,
104598 	IB_WC_REG_MR = 8,
104599 	IB_WC_MASKED_COMP_SWAP = 9,
104600 	IB_WC_MASKED_FETCH_ADD = 10,
104601 	IB_WC_RECV = 128,
104602 	IB_WC_RECV_RDMA_WITH_IMM = 129,
104603 };
104604 
104605 struct ib_cqe {
104606 	void (*done)(struct ib_cq *, struct ib_wc *);
104607 };
104608 
104609 struct ib_wc {
104610 	union {
104611 		u64 wr_id;
104612 		struct ib_cqe *wr_cqe;
104613 	};
104614 	enum ib_wc_status status;
104615 	enum ib_wc_opcode opcode;
104616 	u32 vendor_err;
104617 	u32 byte_len;
104618 	struct ib_qp *qp;
104619 	union {
104620 		__be32 imm_data;
104621 		u32 invalidate_rkey;
104622 	} ex;
104623 	u32 src_qp;
104624 	u32 slid;
104625 	int wc_flags;
104626 	u16 pkey_index;
104627 	u8 sl;
104628 	u8 dlid_path_bits;
104629 	u32 port_num;
104630 	u8 smac[6];
104631 	u16 vlan_id;
104632 	u8 network_hdr_type;
104633 };
104634 
104635 struct ib_srq_attr {
104636 	u32 max_wr;
104637 	u32 max_sge;
104638 	u32 srq_limit;
104639 };
104640 
104641 struct ib_xrcd {
104642 	struct ib_device *device;
104643 	atomic_t usecnt;
104644 	struct inode *inode;
104645 	struct rw_semaphore tgt_qps_rwsem;
104646 	struct xarray tgt_qps;
104647 };
104648 
104649 struct ib_srq_init_attr {
104650 	void (*event_handler)(struct ib_event *, void *);
104651 	void *srq_context;
104652 	struct ib_srq_attr attr;
104653 	enum ib_srq_type srq_type;
104654 	struct {
104655 		struct ib_cq *cq;
104656 		union {
104657 			struct {
104658 				struct ib_xrcd *xrcd;
104659 			} xrc;
104660 			struct {
104661 				u32 max_num_tags;
104662 			} tag_matching;
104663 		};
104664 	} ext;
104665 };
104666 
104667 struct ib_qp_cap {
104668 	u32 max_send_wr;
104669 	u32 max_recv_wr;
104670 	u32 max_send_sge;
104671 	u32 max_recv_sge;
104672 	u32 max_inline_data;
104673 	u32 max_rdma_ctxs;
104674 };
104675 
104676 enum ib_sig_type {
104677 	IB_SIGNAL_ALL_WR = 0,
104678 	IB_SIGNAL_REQ_WR = 1,
104679 };
104680 
104681 struct ib_qp_init_attr {
104682 	void (*event_handler)(struct ib_event *, void *);
104683 	void *qp_context;
104684 	struct ib_cq *send_cq;
104685 	struct ib_cq *recv_cq;
104686 	struct ib_srq *srq;
104687 	struct ib_xrcd *xrcd;
104688 	struct ib_qp_cap cap;
104689 	enum ib_sig_type sq_sig_type;
104690 	enum ib_qp_type qp_type;
104691 	u32 create_flags;
104692 	u32 port_num;
104693 	struct ib_rwq_ind_table *rwq_ind_tbl;
104694 	u32 source_qpn;
104695 };
104696 
104697 struct ib_uobject;
104698 
104699 struct ib_rwq_ind_table {
104700 	struct ib_device *device;
104701 	struct ib_uobject *uobject;
104702 	atomic_t usecnt;
104703 	u32 ind_tbl_num;
104704 	u32 log_ind_tbl_size;
104705 	struct ib_wq **ind_tbl;
104706 };
104707 
104708 enum ib_qp_state {
104709 	IB_QPS_RESET = 0,
104710 	IB_QPS_INIT = 1,
104711 	IB_QPS_RTR = 2,
104712 	IB_QPS_RTS = 3,
104713 	IB_QPS_SQD = 4,
104714 	IB_QPS_SQE = 5,
104715 	IB_QPS_ERR = 6,
104716 };
104717 
104718 enum ib_mig_state {
104719 	IB_MIG_MIGRATED = 0,
104720 	IB_MIG_REARM = 1,
104721 	IB_MIG_ARMED = 2,
104722 };
104723 
104724 enum ib_mw_type {
104725 	IB_MW_TYPE_1 = 1,
104726 	IB_MW_TYPE_2 = 2,
104727 };
104728 
104729 struct ib_qp_attr {
104730 	enum ib_qp_state qp_state;
104731 	enum ib_qp_state cur_qp_state;
104732 	enum ib_mtu path_mtu;
104733 	enum ib_mig_state path_mig_state;
104734 	u32 qkey;
104735 	u32 rq_psn;
104736 	u32 sq_psn;
104737 	u32 dest_qp_num;
104738 	int qp_access_flags;
104739 	struct ib_qp_cap cap;
104740 	struct rdma_ah_attr ah_attr;
104741 	struct rdma_ah_attr alt_ah_attr;
104742 	u16 pkey_index;
104743 	u16 alt_pkey_index;
104744 	u8 en_sqd_async_notify;
104745 	u8 sq_draining;
104746 	u8 max_rd_atomic;
104747 	u8 max_dest_rd_atomic;
104748 	u8 min_rnr_timer;
104749 	u32 port_num;
104750 	u8 timeout;
104751 	u8 retry_cnt;
104752 	u8 rnr_retry;
104753 	u32 alt_port_num;
104754 	u8 alt_timeout;
104755 	u32 rate_limit;
104756 	struct net_device *xmit_slave;
104757 };
104758 
104759 enum ib_wr_opcode {
104760 	IB_WR_RDMA_WRITE = 0,
104761 	IB_WR_RDMA_WRITE_WITH_IMM = 1,
104762 	IB_WR_SEND = 2,
104763 	IB_WR_SEND_WITH_IMM = 3,
104764 	IB_WR_RDMA_READ = 4,
104765 	IB_WR_ATOMIC_CMP_AND_SWP = 5,
104766 	IB_WR_ATOMIC_FETCH_AND_ADD = 6,
104767 	IB_WR_BIND_MW = 8,
104768 	IB_WR_LSO = 10,
104769 	IB_WR_SEND_WITH_INV = 9,
104770 	IB_WR_RDMA_READ_WITH_INV = 11,
104771 	IB_WR_LOCAL_INV = 7,
104772 	IB_WR_MASKED_ATOMIC_CMP_AND_SWP = 12,
104773 	IB_WR_MASKED_ATOMIC_FETCH_AND_ADD = 13,
104774 	IB_WR_REG_MR = 32,
104775 	IB_WR_REG_MR_INTEGRITY = 33,
104776 	IB_WR_RESERVED1 = 240,
104777 	IB_WR_RESERVED2 = 241,
104778 	IB_WR_RESERVED3 = 242,
104779 	IB_WR_RESERVED4 = 243,
104780 	IB_WR_RESERVED5 = 244,
104781 	IB_WR_RESERVED6 = 245,
104782 	IB_WR_RESERVED7 = 246,
104783 	IB_WR_RESERVED8 = 247,
104784 	IB_WR_RESERVED9 = 248,
104785 	IB_WR_RESERVED10 = 249,
104786 };
104787 
104788 struct ib_sge {
104789 	u64 addr;
104790 	u32 length;
104791 	u32 lkey;
104792 };
104793 
104794 struct ib_send_wr {
104795 	struct ib_send_wr *next;
104796 	union {
104797 		u64 wr_id;
104798 		struct ib_cqe *wr_cqe;
104799 	};
104800 	struct ib_sge *sg_list;
104801 	int num_sge;
104802 	enum ib_wr_opcode opcode;
104803 	int send_flags;
104804 	union {
104805 		__be32 imm_data;
104806 		u32 invalidate_rkey;
104807 	} ex;
104808 };
104809 
104810 struct ib_ah {
104811 	struct ib_device *device;
104812 	struct ib_pd *pd;
104813 	struct ib_uobject *uobject;
104814 	const struct ib_gid_attr *sgid_attr;
104815 	enum rdma_ah_attr_type type;
104816 };
104817 
104818 struct ib_mr {
104819 	struct ib_device *device;
104820 	struct ib_pd *pd;
104821 	u32 lkey;
104822 	u32 rkey;
104823 	u64 iova;
104824 	u64 length;
104825 	unsigned int page_size;
104826 	enum ib_mr_type type;
104827 	bool need_inval;
104828 	union {
104829 		struct ib_uobject *uobject;
104830 		struct list_head qp_entry;
104831 	};
104832 	struct ib_dm *dm;
104833 	struct ib_sig_attrs *sig_attrs;
104834 	struct rdma_restrack_entry res;
104835 };
104836 
104837 struct ib_recv_wr {
104838 	struct ib_recv_wr *next;
104839 	union {
104840 		u64 wr_id;
104841 		struct ib_cqe *wr_cqe;
104842 	};
104843 	struct ib_sge *sg_list;
104844 	int num_sge;
104845 };
104846 
104847 struct ib_rdmacg_object {};
104848 
104849 struct ib_uverbs_file;
104850 
104851 struct ib_ucontext {
104852 	struct ib_device *device;
104853 	struct ib_uverbs_file *ufile;
104854 	struct ib_rdmacg_object cg_obj;
104855 	struct rdma_restrack_entry res;
104856 	struct xarray mmap_xa;
104857 };
104858 
104859 struct uverbs_api_object;
104860 
104861 struct ib_uobject {
104862 	u64 user_handle;
104863 	struct ib_uverbs_file *ufile;
104864 	struct ib_ucontext *context;
104865 	void *object;
104866 	struct list_head list;
104867 	struct ib_rdmacg_object cg_obj;
104868 	int id;
104869 	struct kref ref;
104870 	atomic_t usecnt;
104871 	struct callback_head rcu;
104872 	const struct uverbs_api_object *uapi_object;
104873 };
104874 
104875 struct ib_udata {
104876 	const void *inbuf;
104877 	void *outbuf;
104878 	size_t inlen;
104879 	size_t outlen;
104880 };
104881 
104882 struct ib_pd {
104883 	u32 local_dma_lkey;
104884 	u32 flags;
104885 	struct ib_device *device;
104886 	struct ib_uobject *uobject;
104887 	atomic_t usecnt;
104888 	u32 unsafe_global_rkey;
104889 	struct ib_mr *__internal_mr;
104890 	struct rdma_restrack_entry res;
104891 };
104892 
104893 struct ib_wq_init_attr {
104894 	void *wq_context;
104895 	enum ib_wq_type wq_type;
104896 	u32 max_wr;
104897 	u32 max_sge;
104898 	struct ib_cq *cq;
104899 	void (*event_handler)(struct ib_event *, void *);
104900 	u32 create_flags;
104901 };
104902 
104903 struct ib_wq_attr {
104904 	enum ib_wq_state wq_state;
104905 	enum ib_wq_state curr_wq_state;
104906 	u32 flags;
104907 	u32 flags_mask;
104908 };
104909 
104910 struct ib_rwq_ind_table_init_attr {
104911 	u32 log_ind_tbl_size;
104912 	struct ib_wq **ind_tbl;
104913 };
104914 
104915 enum port_pkey_state {
104916 	IB_PORT_PKEY_NOT_VALID = 0,
104917 	IB_PORT_PKEY_VALID = 1,
104918 	IB_PORT_PKEY_LISTED = 2,
104919 };
104920 
104921 struct ib_port_pkey {
104922 	enum port_pkey_state state;
104923 	u16 pkey_index;
104924 	u32 port_num;
104925 	struct list_head qp_list;
104926 	struct list_head to_error_list;
104927 	struct ib_qp_security *sec;
104928 };
104929 
104930 struct ib_ports_pkeys;
104931 
104932 struct ib_qp_security {
104933 	struct ib_qp *qp;
104934 	struct ib_device *dev;
104935 	struct mutex mutex;
104936 	struct ib_ports_pkeys *ports_pkeys;
104937 	struct list_head shared_qp_list;
104938 	void *security;
104939 	bool destroying;
104940 	atomic_t error_list_count;
104941 	struct completion error_complete;
104942 	int error_comps_pending;
104943 };
104944 
104945 struct ib_ports_pkeys {
104946 	struct ib_port_pkey main;
104947 	struct ib_port_pkey alt;
104948 };
104949 
104950 struct ib_dm {
104951 	struct ib_device *device;
104952 	u32 length;
104953 	u32 flags;
104954 	struct ib_uobject *uobject;
104955 	atomic_t usecnt;
104956 };
104957 
104958 struct ib_mw {
104959 	struct ib_device *device;
104960 	struct ib_pd *pd;
104961 	struct ib_uobject *uobject;
104962 	u32 rkey;
104963 	enum ib_mw_type type;
104964 };
104965 
104966 enum ib_flow_attr_type {
104967 	IB_FLOW_ATTR_NORMAL = 0,
104968 	IB_FLOW_ATTR_ALL_DEFAULT = 1,
104969 	IB_FLOW_ATTR_MC_DEFAULT = 2,
104970 	IB_FLOW_ATTR_SNIFFER = 3,
104971 };
104972 
104973 enum ib_flow_spec_type {
104974 	IB_FLOW_SPEC_ETH = 32,
104975 	IB_FLOW_SPEC_IB = 34,
104976 	IB_FLOW_SPEC_IPV4 = 48,
104977 	IB_FLOW_SPEC_IPV6 = 49,
104978 	IB_FLOW_SPEC_ESP = 52,
104979 	IB_FLOW_SPEC_TCP = 64,
104980 	IB_FLOW_SPEC_UDP = 65,
104981 	IB_FLOW_SPEC_VXLAN_TUNNEL = 80,
104982 	IB_FLOW_SPEC_GRE = 81,
104983 	IB_FLOW_SPEC_MPLS = 96,
104984 	IB_FLOW_SPEC_INNER = 256,
104985 	IB_FLOW_SPEC_ACTION_TAG = 4096,
104986 	IB_FLOW_SPEC_ACTION_DROP = 4097,
104987 	IB_FLOW_SPEC_ACTION_HANDLE = 4098,
104988 	IB_FLOW_SPEC_ACTION_COUNT = 4099,
104989 };
104990 
104991 struct ib_flow_eth_filter {
104992 	u8 dst_mac[6];
104993 	u8 src_mac[6];
104994 	__be16 ether_type;
104995 	__be16 vlan_tag;
104996 	u8 real_sz[0];
104997 };
104998 
104999 struct ib_flow_spec_eth {
105000 	u32 type;
105001 	u16 size;
105002 	struct ib_flow_eth_filter val;
105003 	struct ib_flow_eth_filter mask;
105004 };
105005 
105006 struct ib_flow_ib_filter {
105007 	__be16 dlid;
105008 	__u8 sl;
105009 	u8 real_sz[0];
105010 };
105011 
105012 struct ib_flow_spec_ib {
105013 	u32 type;
105014 	u16 size;
105015 	struct ib_flow_ib_filter val;
105016 	struct ib_flow_ib_filter mask;
105017 };
105018 
105019 struct ib_flow_ipv4_filter {
105020 	__be32 src_ip;
105021 	__be32 dst_ip;
105022 	u8 proto;
105023 	u8 tos;
105024 	u8 ttl;
105025 	u8 flags;
105026 	u8 real_sz[0];
105027 };
105028 
105029 struct ib_flow_spec_ipv4 {
105030 	u32 type;
105031 	u16 size;
105032 	struct ib_flow_ipv4_filter val;
105033 	struct ib_flow_ipv4_filter mask;
105034 };
105035 
105036 struct ib_flow_ipv6_filter {
105037 	u8 src_ip[16];
105038 	u8 dst_ip[16];
105039 	__be32 flow_label;
105040 	u8 next_hdr;
105041 	u8 traffic_class;
105042 	u8 hop_limit;
105043 	u8 real_sz[0];
105044 };
105045 
105046 struct ib_flow_spec_ipv6 {
105047 	u32 type;
105048 	u16 size;
105049 	struct ib_flow_ipv6_filter val;
105050 	struct ib_flow_ipv6_filter mask;
105051 };
105052 
105053 struct ib_flow_tcp_udp_filter {
105054 	__be16 dst_port;
105055 	__be16 src_port;
105056 	u8 real_sz[0];
105057 };
105058 
105059 struct ib_flow_spec_tcp_udp {
105060 	u32 type;
105061 	u16 size;
105062 	struct ib_flow_tcp_udp_filter val;
105063 	struct ib_flow_tcp_udp_filter mask;
105064 };
105065 
105066 struct ib_flow_tunnel_filter {
105067 	__be32 tunnel_id;
105068 	u8 real_sz[0];
105069 };
105070 
105071 struct ib_flow_spec_tunnel {
105072 	u32 type;
105073 	u16 size;
105074 	struct ib_flow_tunnel_filter val;
105075 	struct ib_flow_tunnel_filter mask;
105076 };
105077 
105078 struct ib_flow_esp_filter {
105079 	__be32 spi;
105080 	__be32 seq;
105081 	u8 real_sz[0];
105082 };
105083 
105084 struct ib_flow_spec_esp {
105085 	u32 type;
105086 	u16 size;
105087 	struct ib_flow_esp_filter val;
105088 	struct ib_flow_esp_filter mask;
105089 };
105090 
105091 struct ib_flow_gre_filter {
105092 	__be16 c_ks_res0_ver;
105093 	__be16 protocol;
105094 	__be32 key;
105095 	u8 real_sz[0];
105096 };
105097 
105098 struct ib_flow_spec_gre {
105099 	u32 type;
105100 	u16 size;
105101 	struct ib_flow_gre_filter val;
105102 	struct ib_flow_gre_filter mask;
105103 };
105104 
105105 struct ib_flow_mpls_filter {
105106 	__be32 tag;
105107 	u8 real_sz[0];
105108 };
105109 
105110 struct ib_flow_spec_mpls {
105111 	u32 type;
105112 	u16 size;
105113 	struct ib_flow_mpls_filter val;
105114 	struct ib_flow_mpls_filter mask;
105115 };
105116 
105117 struct ib_flow_spec_action_tag {
105118 	enum ib_flow_spec_type type;
105119 	u16 size;
105120 	u32 tag_id;
105121 };
105122 
105123 struct ib_flow_spec_action_drop {
105124 	enum ib_flow_spec_type type;
105125 	u16 size;
105126 };
105127 
105128 struct ib_flow_spec_action_handle {
105129 	enum ib_flow_spec_type type;
105130 	u16 size;
105131 	struct ib_flow_action *act;
105132 };
105133 
105134 enum ib_flow_action_type {
105135 	IB_FLOW_ACTION_UNSPECIFIED = 0,
105136 	IB_FLOW_ACTION_ESP = 1,
105137 };
105138 
105139 struct ib_flow_action {
105140 	struct ib_device *device;
105141 	struct ib_uobject *uobject;
105142 	enum ib_flow_action_type type;
105143 	atomic_t usecnt;
105144 };
105145 
105146 struct ib_flow_spec_action_count {
105147 	enum ib_flow_spec_type type;
105148 	u16 size;
105149 	struct ib_counters *counters;
105150 };
105151 
105152 struct ib_counters {
105153 	struct ib_device *device;
105154 	struct ib_uobject *uobject;
105155 	atomic_t usecnt;
105156 };
105157 
105158 union ib_flow_spec {
105159 	struct {
105160 		u32 type;
105161 		u16 size;
105162 	};
105163 	struct ib_flow_spec_eth eth;
105164 	struct ib_flow_spec_ib ib;
105165 	struct ib_flow_spec_ipv4 ipv4;
105166 	struct ib_flow_spec_tcp_udp tcp_udp;
105167 	struct ib_flow_spec_ipv6 ipv6;
105168 	struct ib_flow_spec_tunnel tunnel;
105169 	struct ib_flow_spec_esp esp;
105170 	struct ib_flow_spec_gre gre;
105171 	struct ib_flow_spec_mpls mpls;
105172 	struct ib_flow_spec_action_tag flow_tag;
105173 	struct ib_flow_spec_action_drop drop;
105174 	struct ib_flow_spec_action_handle action;
105175 	struct ib_flow_spec_action_count flow_count;
105176 };
105177 
105178 struct ib_flow_attr {
105179 	enum ib_flow_attr_type type;
105180 	u16 size;
105181 	u16 priority;
105182 	u32 flags;
105183 	u8 num_of_specs;
105184 	u32 port;
105185 	union ib_flow_spec flows[0];
105186 };
105187 
105188 struct ib_flow {
105189 	struct ib_qp *qp;
105190 	struct ib_device *device;
105191 	struct ib_uobject *uobject;
105192 };
105193 
105194 struct ib_pkey_cache;
105195 
105196 struct ib_gid_table;
105197 
105198 struct ib_port_cache {
105199 	u64 subnet_prefix;
105200 	struct ib_pkey_cache *pkey;
105201 	struct ib_gid_table *gid;
105202 	u8 lmc;
105203 	enum ib_port_state port_state;
105204 };
105205 
105206 struct ib_port_immutable {
105207 	int pkey_tbl_len;
105208 	int gid_tbl_len;
105209 	u32 core_cap_flags;
105210 	u32 max_mad_size;
105211 };
105212 
105213 struct ib_port;
105214 
105215 struct ib_port_data {
105216 	struct ib_device *ib_dev;
105217 	struct ib_port_immutable immutable;
105218 	spinlock_t pkey_list_lock;
105219 	spinlock_t netdev_lock;
105220 	struct list_head pkey_list;
105221 	struct ib_port_cache cache;
105222 	struct net_device *netdev;
105223 	struct hlist_node ndev_hash_link;
105224 	struct rdma_port_counter port_counter;
105225 	struct ib_port *sysfs;
105226 };
105227 
105228 struct rdma_netdev_alloc_params {
105229 	size_t sizeof_priv;
105230 	unsigned int txqs;
105231 	unsigned int rxqs;
105232 	void *param;
105233 	int (*initialize_rdma_netdev)(struct ib_device *, u32, struct net_device *, void *);
105234 };
105235 
105236 struct ib_counters_read_attr {
105237 	u64 *counters_buff;
105238 	u32 ncounters;
105239 	u32 flags;
105240 };
105241 
105242 struct rdma_user_mmap_entry {
105243 	struct kref ref;
105244 	struct ib_ucontext *ucontext;
105245 	long unsigned int start_pgoff;
105246 	size_t npages;
105247 	bool driver_removed;
105248 };
105249 
105250 struct genl_dumpit_info {
105251 	const struct genl_family *family;
105252 	struct genl_ops op;
105253 	struct nlattr **attrs;
105254 };
105255 
105256 enum devlink_command {
105257 	DEVLINK_CMD_UNSPEC = 0,
105258 	DEVLINK_CMD_GET = 1,
105259 	DEVLINK_CMD_SET = 2,
105260 	DEVLINK_CMD_NEW = 3,
105261 	DEVLINK_CMD_DEL = 4,
105262 	DEVLINK_CMD_PORT_GET = 5,
105263 	DEVLINK_CMD_PORT_SET = 6,
105264 	DEVLINK_CMD_PORT_NEW = 7,
105265 	DEVLINK_CMD_PORT_DEL = 8,
105266 	DEVLINK_CMD_PORT_SPLIT = 9,
105267 	DEVLINK_CMD_PORT_UNSPLIT = 10,
105268 	DEVLINK_CMD_SB_GET = 11,
105269 	DEVLINK_CMD_SB_SET = 12,
105270 	DEVLINK_CMD_SB_NEW = 13,
105271 	DEVLINK_CMD_SB_DEL = 14,
105272 	DEVLINK_CMD_SB_POOL_GET = 15,
105273 	DEVLINK_CMD_SB_POOL_SET = 16,
105274 	DEVLINK_CMD_SB_POOL_NEW = 17,
105275 	DEVLINK_CMD_SB_POOL_DEL = 18,
105276 	DEVLINK_CMD_SB_PORT_POOL_GET = 19,
105277 	DEVLINK_CMD_SB_PORT_POOL_SET = 20,
105278 	DEVLINK_CMD_SB_PORT_POOL_NEW = 21,
105279 	DEVLINK_CMD_SB_PORT_POOL_DEL = 22,
105280 	DEVLINK_CMD_SB_TC_POOL_BIND_GET = 23,
105281 	DEVLINK_CMD_SB_TC_POOL_BIND_SET = 24,
105282 	DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 25,
105283 	DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 26,
105284 	DEVLINK_CMD_SB_OCC_SNAPSHOT = 27,
105285 	DEVLINK_CMD_SB_OCC_MAX_CLEAR = 28,
105286 	DEVLINK_CMD_ESWITCH_GET = 29,
105287 	DEVLINK_CMD_ESWITCH_SET = 30,
105288 	DEVLINK_CMD_DPIPE_TABLE_GET = 31,
105289 	DEVLINK_CMD_DPIPE_ENTRIES_GET = 32,
105290 	DEVLINK_CMD_DPIPE_HEADERS_GET = 33,
105291 	DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 34,
105292 	DEVLINK_CMD_RESOURCE_SET = 35,
105293 	DEVLINK_CMD_RESOURCE_DUMP = 36,
105294 	DEVLINK_CMD_RELOAD = 37,
105295 	DEVLINK_CMD_PARAM_GET = 38,
105296 	DEVLINK_CMD_PARAM_SET = 39,
105297 	DEVLINK_CMD_PARAM_NEW = 40,
105298 	DEVLINK_CMD_PARAM_DEL = 41,
105299 	DEVLINK_CMD_REGION_GET = 42,
105300 	DEVLINK_CMD_REGION_SET = 43,
105301 	DEVLINK_CMD_REGION_NEW = 44,
105302 	DEVLINK_CMD_REGION_DEL = 45,
105303 	DEVLINK_CMD_REGION_READ = 46,
105304 	DEVLINK_CMD_PORT_PARAM_GET = 47,
105305 	DEVLINK_CMD_PORT_PARAM_SET = 48,
105306 	DEVLINK_CMD_PORT_PARAM_NEW = 49,
105307 	DEVLINK_CMD_PORT_PARAM_DEL = 50,
105308 	DEVLINK_CMD_INFO_GET = 51,
105309 	DEVLINK_CMD_HEALTH_REPORTER_GET = 52,
105310 	DEVLINK_CMD_HEALTH_REPORTER_SET = 53,
105311 	DEVLINK_CMD_HEALTH_REPORTER_RECOVER = 54,
105312 	DEVLINK_CMD_HEALTH_REPORTER_DIAGNOSE = 55,
105313 	DEVLINK_CMD_HEALTH_REPORTER_DUMP_GET = 56,
105314 	DEVLINK_CMD_HEALTH_REPORTER_DUMP_CLEAR = 57,
105315 	DEVLINK_CMD_FLASH_UPDATE = 58,
105316 	DEVLINK_CMD_FLASH_UPDATE_END = 59,
105317 	DEVLINK_CMD_FLASH_UPDATE_STATUS = 60,
105318 	DEVLINK_CMD_TRAP_GET = 61,
105319 	DEVLINK_CMD_TRAP_SET = 62,
105320 	DEVLINK_CMD_TRAP_NEW = 63,
105321 	DEVLINK_CMD_TRAP_DEL = 64,
105322 	DEVLINK_CMD_TRAP_GROUP_GET = 65,
105323 	DEVLINK_CMD_TRAP_GROUP_SET = 66,
105324 	DEVLINK_CMD_TRAP_GROUP_NEW = 67,
105325 	DEVLINK_CMD_TRAP_GROUP_DEL = 68,
105326 	DEVLINK_CMD_TRAP_POLICER_GET = 69,
105327 	DEVLINK_CMD_TRAP_POLICER_SET = 70,
105328 	DEVLINK_CMD_TRAP_POLICER_NEW = 71,
105329 	DEVLINK_CMD_TRAP_POLICER_DEL = 72,
105330 	DEVLINK_CMD_HEALTH_REPORTER_TEST = 73,
105331 	DEVLINK_CMD_RATE_GET = 74,
105332 	DEVLINK_CMD_RATE_SET = 75,
105333 	DEVLINK_CMD_RATE_NEW = 76,
105334 	DEVLINK_CMD_RATE_DEL = 77,
105335 	DEVLINK_CMD_LINECARD_GET = 78,
105336 	DEVLINK_CMD_LINECARD_SET = 79,
105337 	DEVLINK_CMD_LINECARD_NEW = 80,
105338 	DEVLINK_CMD_LINECARD_DEL = 81,
105339 	DEVLINK_CMD_SELFTESTS_GET = 82,
105340 	DEVLINK_CMD_SELFTESTS_RUN = 83,
105341 	__DEVLINK_CMD_MAX = 84,
105342 	DEVLINK_CMD_MAX = 83,
105343 };
105344 
105345 enum devlink_sb_pool_type {
105346 	DEVLINK_SB_POOL_TYPE_INGRESS = 0,
105347 	DEVLINK_SB_POOL_TYPE_EGRESS = 1,
105348 };
105349 
105350 enum devlink_sb_threshold_type {
105351 	DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0,
105352 	DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 1,
105353 };
105354 
105355 enum devlink_eswitch_mode {
105356 	DEVLINK_ESWITCH_MODE_LEGACY = 0,
105357 	DEVLINK_ESWITCH_MODE_SWITCHDEV = 1,
105358 };
105359 
105360 enum devlink_eswitch_encap_mode {
105361 	DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0,
105362 	DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 1,
105363 };
105364 
105365 enum devlink_param_cmode {
105366 	DEVLINK_PARAM_CMODE_RUNTIME = 0,
105367 	DEVLINK_PARAM_CMODE_DRIVERINIT = 1,
105368 	DEVLINK_PARAM_CMODE_PERMANENT = 2,
105369 	__DEVLINK_PARAM_CMODE_MAX = 3,
105370 	DEVLINK_PARAM_CMODE_MAX = 2,
105371 };
105372 
105373 enum {
105374 	DEVLINK_ATTR_STATS_RX_PACKETS = 0,
105375 	DEVLINK_ATTR_STATS_RX_BYTES = 1,
105376 	DEVLINK_ATTR_STATS_RX_DROPPED = 2,
105377 	__DEVLINK_ATTR_STATS_MAX = 3,
105378 	DEVLINK_ATTR_STATS_MAX = 2,
105379 };
105380 
105381 enum {
105382 	DEVLINK_FLASH_OVERWRITE_SETTINGS_BIT = 0,
105383 	DEVLINK_FLASH_OVERWRITE_IDENTIFIERS_BIT = 1,
105384 	__DEVLINK_FLASH_OVERWRITE_MAX_BIT = 2,
105385 	DEVLINK_FLASH_OVERWRITE_MAX_BIT = 1,
105386 };
105387 
105388 enum devlink_attr_selftest_id {
105389 	DEVLINK_ATTR_SELFTEST_ID_UNSPEC = 0,
105390 	DEVLINK_ATTR_SELFTEST_ID_FLASH = 1,
105391 	__DEVLINK_ATTR_SELFTEST_ID_MAX = 2,
105392 	DEVLINK_ATTR_SELFTEST_ID_MAX = 1,
105393 };
105394 
105395 enum devlink_selftest_status {
105396 	DEVLINK_SELFTEST_STATUS_SKIP = 0,
105397 	DEVLINK_SELFTEST_STATUS_PASS = 1,
105398 	DEVLINK_SELFTEST_STATUS_FAIL = 2,
105399 };
105400 
105401 enum devlink_attr_selftest_result {
105402 	DEVLINK_ATTR_SELFTEST_RESULT_UNSPEC = 0,
105403 	DEVLINK_ATTR_SELFTEST_RESULT = 1,
105404 	DEVLINK_ATTR_SELFTEST_RESULT_ID = 2,
105405 	DEVLINK_ATTR_SELFTEST_RESULT_STATUS = 3,
105406 	__DEVLINK_ATTR_SELFTEST_RESULT_MAX = 4,
105407 	DEVLINK_ATTR_SELFTEST_RESULT_MAX = 3,
105408 };
105409 
105410 enum devlink_trap_action {
105411 	DEVLINK_TRAP_ACTION_DROP = 0,
105412 	DEVLINK_TRAP_ACTION_TRAP = 1,
105413 	DEVLINK_TRAP_ACTION_MIRROR = 2,
105414 };
105415 
105416 enum devlink_trap_type {
105417 	DEVLINK_TRAP_TYPE_DROP = 0,
105418 	DEVLINK_TRAP_TYPE_EXCEPTION = 1,
105419 	DEVLINK_TRAP_TYPE_CONTROL = 2,
105420 };
105421 
105422 enum {
105423 	DEVLINK_ATTR_TRAP_METADATA_TYPE_IN_PORT = 0,
105424 	DEVLINK_ATTR_TRAP_METADATA_TYPE_FA_COOKIE = 1,
105425 };
105426 
105427 enum devlink_reload_action {
105428 	DEVLINK_RELOAD_ACTION_UNSPEC = 0,
105429 	DEVLINK_RELOAD_ACTION_DRIVER_REINIT = 1,
105430 	DEVLINK_RELOAD_ACTION_FW_ACTIVATE = 2,
105431 	__DEVLINK_RELOAD_ACTION_MAX = 3,
105432 	DEVLINK_RELOAD_ACTION_MAX = 2,
105433 };
105434 
105435 enum devlink_reload_limit {
105436 	DEVLINK_RELOAD_LIMIT_UNSPEC = 0,
105437 	DEVLINK_RELOAD_LIMIT_NO_RESET = 1,
105438 	__DEVLINK_RELOAD_LIMIT_MAX = 2,
105439 	DEVLINK_RELOAD_LIMIT_MAX = 1,
105440 };
105441 
105442 enum devlink_linecard_state {
105443 	DEVLINK_LINECARD_STATE_UNSPEC = 0,
105444 	DEVLINK_LINECARD_STATE_UNPROVISIONED = 1,
105445 	DEVLINK_LINECARD_STATE_UNPROVISIONING = 2,
105446 	DEVLINK_LINECARD_STATE_PROVISIONING = 3,
105447 	DEVLINK_LINECARD_STATE_PROVISIONING_FAILED = 4,
105448 	DEVLINK_LINECARD_STATE_PROVISIONED = 5,
105449 	DEVLINK_LINECARD_STATE_ACTIVE = 6,
105450 	__DEVLINK_LINECARD_STATE_MAX = 7,
105451 	DEVLINK_LINECARD_STATE_MAX = 6,
105452 };
105453 
105454 enum devlink_attr {
105455 	DEVLINK_ATTR_UNSPEC = 0,
105456 	DEVLINK_ATTR_BUS_NAME = 1,
105457 	DEVLINK_ATTR_DEV_NAME = 2,
105458 	DEVLINK_ATTR_PORT_INDEX = 3,
105459 	DEVLINK_ATTR_PORT_TYPE = 4,
105460 	DEVLINK_ATTR_PORT_DESIRED_TYPE = 5,
105461 	DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 6,
105462 	DEVLINK_ATTR_PORT_NETDEV_NAME = 7,
105463 	DEVLINK_ATTR_PORT_IBDEV_NAME = 8,
105464 	DEVLINK_ATTR_PORT_SPLIT_COUNT = 9,
105465 	DEVLINK_ATTR_PORT_SPLIT_GROUP = 10,
105466 	DEVLINK_ATTR_SB_INDEX = 11,
105467 	DEVLINK_ATTR_SB_SIZE = 12,
105468 	DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 13,
105469 	DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 14,
105470 	DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 15,
105471 	DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 16,
105472 	DEVLINK_ATTR_SB_POOL_INDEX = 17,
105473 	DEVLINK_ATTR_SB_POOL_TYPE = 18,
105474 	DEVLINK_ATTR_SB_POOL_SIZE = 19,
105475 	DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 20,
105476 	DEVLINK_ATTR_SB_THRESHOLD = 21,
105477 	DEVLINK_ATTR_SB_TC_INDEX = 22,
105478 	DEVLINK_ATTR_SB_OCC_CUR = 23,
105479 	DEVLINK_ATTR_SB_OCC_MAX = 24,
105480 	DEVLINK_ATTR_ESWITCH_MODE = 25,
105481 	DEVLINK_ATTR_ESWITCH_INLINE_MODE = 26,
105482 	DEVLINK_ATTR_DPIPE_TABLES = 27,
105483 	DEVLINK_ATTR_DPIPE_TABLE = 28,
105484 	DEVLINK_ATTR_DPIPE_TABLE_NAME = 29,
105485 	DEVLINK_ATTR_DPIPE_TABLE_SIZE = 30,
105486 	DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 31,
105487 	DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 32,
105488 	DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 33,
105489 	DEVLINK_ATTR_DPIPE_ENTRIES = 34,
105490 	DEVLINK_ATTR_DPIPE_ENTRY = 35,
105491 	DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 36,
105492 	DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 37,
105493 	DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 38,
105494 	DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 39,
105495 	DEVLINK_ATTR_DPIPE_MATCH = 40,
105496 	DEVLINK_ATTR_DPIPE_MATCH_VALUE = 41,
105497 	DEVLINK_ATTR_DPIPE_MATCH_TYPE = 42,
105498 	DEVLINK_ATTR_DPIPE_ACTION = 43,
105499 	DEVLINK_ATTR_DPIPE_ACTION_VALUE = 44,
105500 	DEVLINK_ATTR_DPIPE_ACTION_TYPE = 45,
105501 	DEVLINK_ATTR_DPIPE_VALUE = 46,
105502 	DEVLINK_ATTR_DPIPE_VALUE_MASK = 47,
105503 	DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 48,
105504 	DEVLINK_ATTR_DPIPE_HEADERS = 49,
105505 	DEVLINK_ATTR_DPIPE_HEADER = 50,
105506 	DEVLINK_ATTR_DPIPE_HEADER_NAME = 51,
105507 	DEVLINK_ATTR_DPIPE_HEADER_ID = 52,
105508 	DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 53,
105509 	DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 54,
105510 	DEVLINK_ATTR_DPIPE_HEADER_INDEX = 55,
105511 	DEVLINK_ATTR_DPIPE_FIELD = 56,
105512 	DEVLINK_ATTR_DPIPE_FIELD_NAME = 57,
105513 	DEVLINK_ATTR_DPIPE_FIELD_ID = 58,
105514 	DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 59,
105515 	DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 60,
105516 	DEVLINK_ATTR_PAD = 61,
105517 	DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 62,
105518 	DEVLINK_ATTR_RESOURCE_LIST = 63,
105519 	DEVLINK_ATTR_RESOURCE = 64,
105520 	DEVLINK_ATTR_RESOURCE_NAME = 65,
105521 	DEVLINK_ATTR_RESOURCE_ID = 66,
105522 	DEVLINK_ATTR_RESOURCE_SIZE = 67,
105523 	DEVLINK_ATTR_RESOURCE_SIZE_NEW = 68,
105524 	DEVLINK_ATTR_RESOURCE_SIZE_VALID = 69,
105525 	DEVLINK_ATTR_RESOURCE_SIZE_MIN = 70,
105526 	DEVLINK_ATTR_RESOURCE_SIZE_MAX = 71,
105527 	DEVLINK_ATTR_RESOURCE_SIZE_GRAN = 72,
105528 	DEVLINK_ATTR_RESOURCE_UNIT = 73,
105529 	DEVLINK_ATTR_RESOURCE_OCC = 74,
105530 	DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_ID = 75,
105531 	DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_UNITS = 76,
105532 	DEVLINK_ATTR_PORT_FLAVOUR = 77,
105533 	DEVLINK_ATTR_PORT_NUMBER = 78,
105534 	DEVLINK_ATTR_PORT_SPLIT_SUBPORT_NUMBER = 79,
105535 	DEVLINK_ATTR_PARAM = 80,
105536 	DEVLINK_ATTR_PARAM_NAME = 81,
105537 	DEVLINK_ATTR_PARAM_GENERIC = 82,
105538 	DEVLINK_ATTR_PARAM_TYPE = 83,
105539 	DEVLINK_ATTR_PARAM_VALUES_LIST = 84,
105540 	DEVLINK_ATTR_PARAM_VALUE = 85,
105541 	DEVLINK_ATTR_PARAM_VALUE_DATA = 86,
105542 	DEVLINK_ATTR_PARAM_VALUE_CMODE = 87,
105543 	DEVLINK_ATTR_REGION_NAME = 88,
105544 	DEVLINK_ATTR_REGION_SIZE = 89,
105545 	DEVLINK_ATTR_REGION_SNAPSHOTS = 90,
105546 	DEVLINK_ATTR_REGION_SNAPSHOT = 91,
105547 	DEVLINK_ATTR_REGION_SNAPSHOT_ID = 92,
105548 	DEVLINK_ATTR_REGION_CHUNKS = 93,
105549 	DEVLINK_ATTR_REGION_CHUNK = 94,
105550 	DEVLINK_ATTR_REGION_CHUNK_DATA = 95,
105551 	DEVLINK_ATTR_REGION_CHUNK_ADDR = 96,
105552 	DEVLINK_ATTR_REGION_CHUNK_LEN = 97,
105553 	DEVLINK_ATTR_INFO_DRIVER_NAME = 98,
105554 	DEVLINK_ATTR_INFO_SERIAL_NUMBER = 99,
105555 	DEVLINK_ATTR_INFO_VERSION_FIXED = 100,
105556 	DEVLINK_ATTR_INFO_VERSION_RUNNING = 101,
105557 	DEVLINK_ATTR_INFO_VERSION_STORED = 102,
105558 	DEVLINK_ATTR_INFO_VERSION_NAME = 103,
105559 	DEVLINK_ATTR_INFO_VERSION_VALUE = 104,
105560 	DEVLINK_ATTR_SB_POOL_CELL_SIZE = 105,
105561 	DEVLINK_ATTR_FMSG = 106,
105562 	DEVLINK_ATTR_FMSG_OBJ_NEST_START = 107,
105563 	DEVLINK_ATTR_FMSG_PAIR_NEST_START = 108,
105564 	DEVLINK_ATTR_FMSG_ARR_NEST_START = 109,
105565 	DEVLINK_ATTR_FMSG_NEST_END = 110,
105566 	DEVLINK_ATTR_FMSG_OBJ_NAME = 111,
105567 	DEVLINK_ATTR_FMSG_OBJ_VALUE_TYPE = 112,
105568 	DEVLINK_ATTR_FMSG_OBJ_VALUE_DATA = 113,
105569 	DEVLINK_ATTR_HEALTH_REPORTER = 114,
105570 	DEVLINK_ATTR_HEALTH_REPORTER_NAME = 115,
105571 	DEVLINK_ATTR_HEALTH_REPORTER_STATE = 116,
105572 	DEVLINK_ATTR_HEALTH_REPORTER_ERR_COUNT = 117,
105573 	DEVLINK_ATTR_HEALTH_REPORTER_RECOVER_COUNT = 118,
105574 	DEVLINK_ATTR_HEALTH_REPORTER_DUMP_TS = 119,
105575 	DEVLINK_ATTR_HEALTH_REPORTER_GRACEFUL_PERIOD = 120,
105576 	DEVLINK_ATTR_HEALTH_REPORTER_AUTO_RECOVER = 121,
105577 	DEVLINK_ATTR_FLASH_UPDATE_FILE_NAME = 122,
105578 	DEVLINK_ATTR_FLASH_UPDATE_COMPONENT = 123,
105579 	DEVLINK_ATTR_FLASH_UPDATE_STATUS_MSG = 124,
105580 	DEVLINK_ATTR_FLASH_UPDATE_STATUS_DONE = 125,
105581 	DEVLINK_ATTR_FLASH_UPDATE_STATUS_TOTAL = 126,
105582 	DEVLINK_ATTR_PORT_PCI_PF_NUMBER = 127,
105583 	DEVLINK_ATTR_PORT_PCI_VF_NUMBER = 128,
105584 	DEVLINK_ATTR_STATS = 129,
105585 	DEVLINK_ATTR_TRAP_NAME = 130,
105586 	DEVLINK_ATTR_TRAP_ACTION = 131,
105587 	DEVLINK_ATTR_TRAP_TYPE = 132,
105588 	DEVLINK_ATTR_TRAP_GENERIC = 133,
105589 	DEVLINK_ATTR_TRAP_METADATA = 134,
105590 	DEVLINK_ATTR_TRAP_GROUP_NAME = 135,
105591 	DEVLINK_ATTR_RELOAD_FAILED = 136,
105592 	DEVLINK_ATTR_HEALTH_REPORTER_DUMP_TS_NS = 137,
105593 	DEVLINK_ATTR_NETNS_FD = 138,
105594 	DEVLINK_ATTR_NETNS_PID = 139,
105595 	DEVLINK_ATTR_NETNS_ID = 140,
105596 	DEVLINK_ATTR_HEALTH_REPORTER_AUTO_DUMP = 141,
105597 	DEVLINK_ATTR_TRAP_POLICER_ID = 142,
105598 	DEVLINK_ATTR_TRAP_POLICER_RATE = 143,
105599 	DEVLINK_ATTR_TRAP_POLICER_BURST = 144,
105600 	DEVLINK_ATTR_PORT_FUNCTION = 145,
105601 	DEVLINK_ATTR_INFO_BOARD_SERIAL_NUMBER = 146,
105602 	DEVLINK_ATTR_PORT_LANES = 147,
105603 	DEVLINK_ATTR_PORT_SPLITTABLE = 148,
105604 	DEVLINK_ATTR_PORT_EXTERNAL = 149,
105605 	DEVLINK_ATTR_PORT_CONTROLLER_NUMBER = 150,
105606 	DEVLINK_ATTR_FLASH_UPDATE_STATUS_TIMEOUT = 151,
105607 	DEVLINK_ATTR_FLASH_UPDATE_OVERWRITE_MASK = 152,
105608 	DEVLINK_ATTR_RELOAD_ACTION = 153,
105609 	DEVLINK_ATTR_RELOAD_ACTIONS_PERFORMED = 154,
105610 	DEVLINK_ATTR_RELOAD_LIMITS = 155,
105611 	DEVLINK_ATTR_DEV_STATS = 156,
105612 	DEVLINK_ATTR_RELOAD_STATS = 157,
105613 	DEVLINK_ATTR_RELOAD_STATS_ENTRY = 158,
105614 	DEVLINK_ATTR_RELOAD_STATS_LIMIT = 159,
105615 	DEVLINK_ATTR_RELOAD_STATS_VALUE = 160,
105616 	DEVLINK_ATTR_REMOTE_RELOAD_STATS = 161,
105617 	DEVLINK_ATTR_RELOAD_ACTION_INFO = 162,
105618 	DEVLINK_ATTR_RELOAD_ACTION_STATS = 163,
105619 	DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 164,
105620 	DEVLINK_ATTR_RATE_TYPE = 165,
105621 	DEVLINK_ATTR_RATE_TX_SHARE = 166,
105622 	DEVLINK_ATTR_RATE_TX_MAX = 167,
105623 	DEVLINK_ATTR_RATE_NODE_NAME = 168,
105624 	DEVLINK_ATTR_RATE_PARENT_NODE_NAME = 169,
105625 	DEVLINK_ATTR_REGION_MAX_SNAPSHOTS = 170,
105626 	DEVLINK_ATTR_LINECARD_INDEX = 171,
105627 	DEVLINK_ATTR_LINECARD_STATE = 172,
105628 	DEVLINK_ATTR_LINECARD_TYPE = 173,
105629 	DEVLINK_ATTR_LINECARD_SUPPORTED_TYPES = 174,
105630 	DEVLINK_ATTR_NESTED_DEVLINK = 175,
105631 	DEVLINK_ATTR_SELFTESTS = 176,
105632 	__DEVLINK_ATTR_MAX = 177,
105633 	DEVLINK_ATTR_MAX = 176,
105634 };
105635 
105636 enum devlink_dpipe_field_mapping_type {
105637 	DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0,
105638 	DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 1,
105639 };
105640 
105641 enum devlink_dpipe_match_type {
105642 	DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0,
105643 };
105644 
105645 enum devlink_dpipe_action_type {
105646 	DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0,
105647 };
105648 
105649 enum devlink_dpipe_field_ethernet_id {
105650 	DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0,
105651 };
105652 
105653 enum devlink_dpipe_field_ipv4_id {
105654 	DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0,
105655 };
105656 
105657 enum devlink_dpipe_field_ipv6_id {
105658 	DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0,
105659 };
105660 
105661 enum devlink_dpipe_header_id {
105662 	DEVLINK_DPIPE_HEADER_ETHERNET = 0,
105663 	DEVLINK_DPIPE_HEADER_IPV4 = 1,
105664 	DEVLINK_DPIPE_HEADER_IPV6 = 2,
105665 };
105666 
105667 enum devlink_resource_unit {
105668 	DEVLINK_RESOURCE_UNIT_ENTRY = 0,
105669 };
105670 
105671 enum devlink_port_function_attr {
105672 	DEVLINK_PORT_FUNCTION_ATTR_UNSPEC = 0,
105673 	DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR = 1,
105674 	DEVLINK_PORT_FN_ATTR_STATE = 2,
105675 	DEVLINK_PORT_FN_ATTR_OPSTATE = 3,
105676 	__DEVLINK_PORT_FUNCTION_ATTR_MAX = 4,
105677 	DEVLINK_PORT_FUNCTION_ATTR_MAX = 3,
105678 };
105679 
105680 enum devlink_port_fn_state {
105681 	DEVLINK_PORT_FN_STATE_INACTIVE = 0,
105682 	DEVLINK_PORT_FN_STATE_ACTIVE = 1,
105683 };
105684 
105685 enum devlink_port_fn_opstate {
105686 	DEVLINK_PORT_FN_OPSTATE_DETACHED = 0,
105687 	DEVLINK_PORT_FN_OPSTATE_ATTACHED = 1,
105688 };
105689 
105690 struct devlink_dev_stats {
105691 	u32 reload_stats[6];
105692 	u32 remote_reload_stats[6];
105693 };
105694 
105695 struct devlink_dpipe_headers;
105696 
105697 struct devlink_ops;
105698 
105699 struct devlink {
105700 	u32 index;
105701 	struct list_head port_list;
105702 	struct list_head rate_list;
105703 	struct list_head sb_list;
105704 	struct list_head dpipe_table_list;
105705 	struct list_head resource_list;
105706 	struct list_head param_list;
105707 	struct list_head region_list;
105708 	struct list_head reporter_list;
105709 	struct mutex reporters_lock;
105710 	struct devlink_dpipe_headers *dpipe_headers;
105711 	struct list_head trap_list;
105712 	struct list_head trap_group_list;
105713 	struct list_head trap_policer_list;
105714 	struct list_head linecard_list;
105715 	struct mutex linecards_lock;
105716 	const struct devlink_ops *ops;
105717 	u64 features;
105718 	struct xarray snapshot_ids;
105719 	struct devlink_dev_stats stats;
105720 	struct device *dev;
105721 	possible_net_t _net;
105722 	struct mutex lock;
105723 	struct lock_class_key lock_key;
105724 	u8 reload_failed: 1;
105725 	refcount_t refcount;
105726 	struct completion comp;
105727 	struct callback_head rcu;
105728 	char priv[0];
105729 };
105730 
105731 struct devlink_linecard_ops;
105732 
105733 struct devlink_linecard_type;
105734 
105735 struct devlink_linecard {
105736 	struct list_head list;
105737 	struct devlink *devlink;
105738 	unsigned int index;
105739 	refcount_t refcount;
105740 	const struct devlink_linecard_ops *ops;
105741 	void *priv;
105742 	enum devlink_linecard_state state;
105743 	struct mutex state_lock;
105744 	const char *type;
105745 	struct devlink_linecard_type *types;
105746 	unsigned int types_count;
105747 	struct devlink *nested_devlink;
105748 };
105749 
105750 struct devlink_port_new_attrs {
105751 	enum devlink_port_flavour flavour;
105752 	unsigned int port_index;
105753 	u32 controller;
105754 	u32 sfnum;
105755 	u16 pfnum;
105756 	u8 port_index_valid: 1;
105757 	u8 controller_valid: 1;
105758 	u8 sfnum_valid: 1;
105759 };
105760 
105761 struct devlink_linecard_ops {
105762 	int (*provision)(struct devlink_linecard *, void *, const char *, const void *, struct netlink_ext_ack *);
105763 	int (*unprovision)(struct devlink_linecard *, void *, struct netlink_ext_ack *);
105764 	bool (*same_provision)(struct devlink_linecard *, void *, const char *, const void *);
105765 	unsigned int (*types_count)(struct devlink_linecard *, void *);
105766 	void (*types_get)(struct devlink_linecard *, void *, unsigned int, const char **, const void **);
105767 };
105768 
105769 struct devlink_sb_pool_info {
105770 	enum devlink_sb_pool_type pool_type;
105771 	u32 size;
105772 	enum devlink_sb_threshold_type threshold_type;
105773 	u32 cell_size;
105774 };
105775 
105776 struct devlink_dpipe_field {
105777 	const char *name;
105778 	unsigned int id;
105779 	unsigned int bitwidth;
105780 	enum devlink_dpipe_field_mapping_type mapping_type;
105781 };
105782 
105783 struct devlink_dpipe_header {
105784 	const char *name;
105785 	unsigned int id;
105786 	struct devlink_dpipe_field *fields;
105787 	unsigned int fields_count;
105788 	bool global;
105789 };
105790 
105791 struct devlink_dpipe_match {
105792 	enum devlink_dpipe_match_type type;
105793 	unsigned int header_index;
105794 	struct devlink_dpipe_header *header;
105795 	unsigned int field_id;
105796 };
105797 
105798 struct devlink_dpipe_action {
105799 	enum devlink_dpipe_action_type type;
105800 	unsigned int header_index;
105801 	struct devlink_dpipe_header *header;
105802 	unsigned int field_id;
105803 };
105804 
105805 struct devlink_dpipe_value {
105806 	union {
105807 		struct devlink_dpipe_action *action;
105808 		struct devlink_dpipe_match *match;
105809 	};
105810 	unsigned int mapping_value;
105811 	bool mapping_valid;
105812 	unsigned int value_size;
105813 	void *value;
105814 	void *mask;
105815 };
105816 
105817 struct devlink_dpipe_entry {
105818 	u64 index;
105819 	struct devlink_dpipe_value *match_values;
105820 	unsigned int match_values_count;
105821 	struct devlink_dpipe_value *action_values;
105822 	unsigned int action_values_count;
105823 	u64 counter;
105824 	bool counter_valid;
105825 };
105826 
105827 struct devlink_dpipe_dump_ctx {
105828 	struct genl_info *info;
105829 	enum devlink_command cmd;
105830 	struct sk_buff *skb;
105831 	struct nlattr *nest;
105832 	void *hdr;
105833 };
105834 
105835 struct devlink_dpipe_table_ops;
105836 
105837 struct devlink_dpipe_table {
105838 	void *priv;
105839 	struct list_head list;
105840 	const char *name;
105841 	bool counters_enabled;
105842 	bool counter_control_extern;
105843 	bool resource_valid;
105844 	u64 resource_id;
105845 	u64 resource_units;
105846 	struct devlink_dpipe_table_ops *table_ops;
105847 	struct callback_head rcu;
105848 };
105849 
105850 struct devlink_dpipe_table_ops {
105851 	int (*actions_dump)(void *, struct sk_buff *);
105852 	int (*matches_dump)(void *, struct sk_buff *);
105853 	int (*entries_dump)(void *, bool, struct devlink_dpipe_dump_ctx *);
105854 	int (*counters_set_update)(void *, bool);
105855 	u64 (*size_get)(void *);
105856 };
105857 
105858 struct devlink_dpipe_headers {
105859 	struct devlink_dpipe_header **headers;
105860 	unsigned int headers_count;
105861 };
105862 
105863 struct devlink_resource_size_params {
105864 	u64 size_min;
105865 	u64 size_max;
105866 	u64 size_granularity;
105867 	enum devlink_resource_unit unit;
105868 };
105869 
105870 typedef u64 devlink_resource_occ_get_t(void *);
105871 
105872 enum devlink_param_type {
105873 	DEVLINK_PARAM_TYPE_U8 = 0,
105874 	DEVLINK_PARAM_TYPE_U16 = 1,
105875 	DEVLINK_PARAM_TYPE_U32 = 2,
105876 	DEVLINK_PARAM_TYPE_STRING = 3,
105877 	DEVLINK_PARAM_TYPE_BOOL = 4,
105878 };
105879 
105880 union devlink_param_value {
105881 	u8 vu8;
105882 	u16 vu16;
105883 	u32 vu32;
105884 	char vstr[32];
105885 	bool vbool;
105886 };
105887 
105888 struct devlink_param_gset_ctx {
105889 	union devlink_param_value val;
105890 	enum devlink_param_cmode cmode;
105891 };
105892 
105893 struct devlink_flash_notify {
105894 	const char *status_msg;
105895 	const char *component;
105896 	long unsigned int done;
105897 	long unsigned int total;
105898 	long unsigned int timeout;
105899 };
105900 
105901 struct devlink_param {
105902 	u32 id;
105903 	const char *name;
105904 	bool generic;
105905 	enum devlink_param_type type;
105906 	long unsigned int supported_cmodes;
105907 	int (*get)(struct devlink *, u32, struct devlink_param_gset_ctx *);
105908 	int (*set)(struct devlink *, u32, struct devlink_param_gset_ctx *);
105909 	int (*validate)(struct devlink *, u32, union devlink_param_value, struct netlink_ext_ack *);
105910 };
105911 
105912 struct devlink_param_item {
105913 	struct list_head list;
105914 	const struct devlink_param *param;
105915 	union devlink_param_value driverinit_value;
105916 	bool driverinit_value_valid;
105917 };
105918 
105919 enum devlink_param_generic_id {
105920 	DEVLINK_PARAM_GENERIC_ID_INT_ERR_RESET = 0,
105921 	DEVLINK_PARAM_GENERIC_ID_MAX_MACS = 1,
105922 	DEVLINK_PARAM_GENERIC_ID_ENABLE_SRIOV = 2,
105923 	DEVLINK_PARAM_GENERIC_ID_REGION_SNAPSHOT = 3,
105924 	DEVLINK_PARAM_GENERIC_ID_IGNORE_ARI = 4,
105925 	DEVLINK_PARAM_GENERIC_ID_MSIX_VEC_PER_PF_MAX = 5,
105926 	DEVLINK_PARAM_GENERIC_ID_MSIX_VEC_PER_PF_MIN = 6,
105927 	DEVLINK_PARAM_GENERIC_ID_FW_LOAD_POLICY = 7,
105928 	DEVLINK_PARAM_GENERIC_ID_RESET_DEV_ON_DRV_PROBE = 8,
105929 	DEVLINK_PARAM_GENERIC_ID_ENABLE_ROCE = 9,
105930 	DEVLINK_PARAM_GENERIC_ID_ENABLE_REMOTE_DEV_RESET = 10,
105931 	DEVLINK_PARAM_GENERIC_ID_ENABLE_ETH = 11,
105932 	DEVLINK_PARAM_GENERIC_ID_ENABLE_RDMA = 12,
105933 	DEVLINK_PARAM_GENERIC_ID_ENABLE_VNET = 13,
105934 	DEVLINK_PARAM_GENERIC_ID_ENABLE_IWARP = 14,
105935 	DEVLINK_PARAM_GENERIC_ID_IO_EQ_SIZE = 15,
105936 	DEVLINK_PARAM_GENERIC_ID_EVENT_EQ_SIZE = 16,
105937 	__DEVLINK_PARAM_GENERIC_ID_MAX = 17,
105938 	DEVLINK_PARAM_GENERIC_ID_MAX = 16,
105939 };
105940 
105941 struct devlink_flash_update_params {
105942 	const struct firmware *fw;
105943 	const char *component;
105944 	u32 overwrite_mask;
105945 };
105946 
105947 struct devlink_region_ops {
105948 	const char *name;
105949 	void (*destructor)(const void *);
105950 	int (*snapshot)(struct devlink *, const struct devlink_region_ops *, struct netlink_ext_ack *, u8 **);
105951 	void *priv;
105952 };
105953 
105954 struct devlink_port_region_ops {
105955 	const char *name;
105956 	void (*destructor)(const void *);
105957 	int (*snapshot)(struct devlink_port *, const struct devlink_port_region_ops *, struct netlink_ext_ack *, u8 **);
105958 	void *priv;
105959 };
105960 
105961 enum devlink_health_reporter_state {
105962 	DEVLINK_HEALTH_REPORTER_STATE_HEALTHY = 0,
105963 	DEVLINK_HEALTH_REPORTER_STATE_ERROR = 1,
105964 };
105965 
105966 struct devlink_health_reporter;
105967 
105968 struct devlink_fmsg;
105969 
105970 struct devlink_health_reporter_ops {
105971 	char *name;
105972 	int (*recover)(struct devlink_health_reporter *, void *, struct netlink_ext_ack *);
105973 	int (*dump)(struct devlink_health_reporter *, struct devlink_fmsg *, void *, struct netlink_ext_ack *);
105974 	int (*diagnose)(struct devlink_health_reporter *, struct devlink_fmsg *, struct netlink_ext_ack *);
105975 	int (*test)(struct devlink_health_reporter *, struct netlink_ext_ack *);
105976 };
105977 
105978 struct devlink_health_reporter {
105979 	struct list_head list;
105980 	void *priv;
105981 	const struct devlink_health_reporter_ops *ops;
105982 	struct devlink *devlink;
105983 	struct devlink_port *devlink_port;
105984 	struct devlink_fmsg *dump_fmsg;
105985 	struct mutex dump_lock;
105986 	u64 graceful_period;
105987 	bool auto_recover;
105988 	bool auto_dump;
105989 	u8 health_state;
105990 	u64 dump_ts;
105991 	u64 dump_real_ts;
105992 	u64 error_count;
105993 	u64 recovery_count;
105994 	u64 last_recovery_ts;
105995 	refcount_t refcount;
105996 };
105997 
105998 struct devlink_fmsg {
105999 	struct list_head item_list;
106000 	bool putting_binary;
106001 };
106002 
106003 struct devlink_trap_metadata {
106004 	const char *trap_name;
106005 	const char *trap_group_name;
106006 	struct net_device *input_dev;
106007 	netdevice_tracker dev_tracker;
106008 	const struct flow_action_cookie *fa_cookie;
106009 	enum devlink_trap_type trap_type;
106010 };
106011 
106012 struct devlink_trap_policer {
106013 	u32 id;
106014 	u64 init_rate;
106015 	u64 init_burst;
106016 	u64 max_rate;
106017 	u64 min_rate;
106018 	u64 max_burst;
106019 	u64 min_burst;
106020 };
106021 
106022 struct devlink_trap_group {
106023 	const char *name;
106024 	u16 id;
106025 	bool generic;
106026 	u32 init_policer_id;
106027 };
106028 
106029 struct devlink_trap {
106030 	enum devlink_trap_type type;
106031 	enum devlink_trap_action init_action;
106032 	bool generic;
106033 	u16 id;
106034 	const char *name;
106035 	u16 init_group_id;
106036 	u32 metadata_cap;
106037 };
106038 
106039 enum devlink_trap_generic_id {
106040 	DEVLINK_TRAP_GENERIC_ID_SMAC_MC = 0,
106041 	DEVLINK_TRAP_GENERIC_ID_VLAN_TAG_MISMATCH = 1,
106042 	DEVLINK_TRAP_GENERIC_ID_INGRESS_VLAN_FILTER = 2,
106043 	DEVLINK_TRAP_GENERIC_ID_INGRESS_STP_FILTER = 3,
106044 	DEVLINK_TRAP_GENERIC_ID_EMPTY_TX_LIST = 4,
106045 	DEVLINK_TRAP_GENERIC_ID_PORT_LOOPBACK_FILTER = 5,
106046 	DEVLINK_TRAP_GENERIC_ID_BLACKHOLE_ROUTE = 6,
106047 	DEVLINK_TRAP_GENERIC_ID_TTL_ERROR = 7,
106048 	DEVLINK_TRAP_GENERIC_ID_TAIL_DROP = 8,
106049 	DEVLINK_TRAP_GENERIC_ID_NON_IP_PACKET = 9,
106050 	DEVLINK_TRAP_GENERIC_ID_UC_DIP_MC_DMAC = 10,
106051 	DEVLINK_TRAP_GENERIC_ID_DIP_LB = 11,
106052 	DEVLINK_TRAP_GENERIC_ID_SIP_MC = 12,
106053 	DEVLINK_TRAP_GENERIC_ID_SIP_LB = 13,
106054 	DEVLINK_TRAP_GENERIC_ID_CORRUPTED_IP_HDR = 14,
106055 	DEVLINK_TRAP_GENERIC_ID_IPV4_SIP_BC = 15,
106056 	DEVLINK_TRAP_GENERIC_ID_IPV6_MC_DIP_RESERVED_SCOPE = 16,
106057 	DEVLINK_TRAP_GENERIC_ID_IPV6_MC_DIP_INTERFACE_LOCAL_SCOPE = 17,
106058 	DEVLINK_TRAP_GENERIC_ID_MTU_ERROR = 18,
106059 	DEVLINK_TRAP_GENERIC_ID_UNRESOLVED_NEIGH = 19,
106060 	DEVLINK_TRAP_GENERIC_ID_RPF = 20,
106061 	DEVLINK_TRAP_GENERIC_ID_REJECT_ROUTE = 21,
106062 	DEVLINK_TRAP_GENERIC_ID_IPV4_LPM_UNICAST_MISS = 22,
106063 	DEVLINK_TRAP_GENERIC_ID_IPV6_LPM_UNICAST_MISS = 23,
106064 	DEVLINK_TRAP_GENERIC_ID_NON_ROUTABLE = 24,
106065 	DEVLINK_TRAP_GENERIC_ID_DECAP_ERROR = 25,
106066 	DEVLINK_TRAP_GENERIC_ID_OVERLAY_SMAC_MC = 26,
106067 	DEVLINK_TRAP_GENERIC_ID_INGRESS_FLOW_ACTION_DROP = 27,
106068 	DEVLINK_TRAP_GENERIC_ID_EGRESS_FLOW_ACTION_DROP = 28,
106069 	DEVLINK_TRAP_GENERIC_ID_STP = 29,
106070 	DEVLINK_TRAP_GENERIC_ID_LACP = 30,
106071 	DEVLINK_TRAP_GENERIC_ID_LLDP = 31,
106072 	DEVLINK_TRAP_GENERIC_ID_IGMP_QUERY = 32,
106073 	DEVLINK_TRAP_GENERIC_ID_IGMP_V1_REPORT = 33,
106074 	DEVLINK_TRAP_GENERIC_ID_IGMP_V2_REPORT = 34,
106075 	DEVLINK_TRAP_GENERIC_ID_IGMP_V3_REPORT = 35,
106076 	DEVLINK_TRAP_GENERIC_ID_IGMP_V2_LEAVE = 36,
106077 	DEVLINK_TRAP_GENERIC_ID_MLD_QUERY = 37,
106078 	DEVLINK_TRAP_GENERIC_ID_MLD_V1_REPORT = 38,
106079 	DEVLINK_TRAP_GENERIC_ID_MLD_V2_REPORT = 39,
106080 	DEVLINK_TRAP_GENERIC_ID_MLD_V1_DONE = 40,
106081 	DEVLINK_TRAP_GENERIC_ID_IPV4_DHCP = 41,
106082 	DEVLINK_TRAP_GENERIC_ID_IPV6_DHCP = 42,
106083 	DEVLINK_TRAP_GENERIC_ID_ARP_REQUEST = 43,
106084 	DEVLINK_TRAP_GENERIC_ID_ARP_RESPONSE = 44,
106085 	DEVLINK_TRAP_GENERIC_ID_ARP_OVERLAY = 45,
106086 	DEVLINK_TRAP_GENERIC_ID_IPV6_NEIGH_SOLICIT = 46,
106087 	DEVLINK_TRAP_GENERIC_ID_IPV6_NEIGH_ADVERT = 47,
106088 	DEVLINK_TRAP_GENERIC_ID_IPV4_BFD = 48,
106089 	DEVLINK_TRAP_GENERIC_ID_IPV6_BFD = 49,
106090 	DEVLINK_TRAP_GENERIC_ID_IPV4_OSPF = 50,
106091 	DEVLINK_TRAP_GENERIC_ID_IPV6_OSPF = 51,
106092 	DEVLINK_TRAP_GENERIC_ID_IPV4_BGP = 52,
106093 	DEVLINK_TRAP_GENERIC_ID_IPV6_BGP = 53,
106094 	DEVLINK_TRAP_GENERIC_ID_IPV4_VRRP = 54,
106095 	DEVLINK_TRAP_GENERIC_ID_IPV6_VRRP = 55,
106096 	DEVLINK_TRAP_GENERIC_ID_IPV4_PIM = 56,
106097 	DEVLINK_TRAP_GENERIC_ID_IPV6_PIM = 57,
106098 	DEVLINK_TRAP_GENERIC_ID_UC_LB = 58,
106099 	DEVLINK_TRAP_GENERIC_ID_LOCAL_ROUTE = 59,
106100 	DEVLINK_TRAP_GENERIC_ID_EXTERNAL_ROUTE = 60,
106101 	DEVLINK_TRAP_GENERIC_ID_IPV6_UC_DIP_LINK_LOCAL_SCOPE = 61,
106102 	DEVLINK_TRAP_GENERIC_ID_IPV6_DIP_ALL_NODES = 62,
106103 	DEVLINK_TRAP_GENERIC_ID_IPV6_DIP_ALL_ROUTERS = 63,
106104 	DEVLINK_TRAP_GENERIC_ID_IPV6_ROUTER_SOLICIT = 64,
106105 	DEVLINK_TRAP_GENERIC_ID_IPV6_ROUTER_ADVERT = 65,
106106 	DEVLINK_TRAP_GENERIC_ID_IPV6_REDIRECT = 66,
106107 	DEVLINK_TRAP_GENERIC_ID_IPV4_ROUTER_ALERT = 67,
106108 	DEVLINK_TRAP_GENERIC_ID_IPV6_ROUTER_ALERT = 68,
106109 	DEVLINK_TRAP_GENERIC_ID_PTP_EVENT = 69,
106110 	DEVLINK_TRAP_GENERIC_ID_PTP_GENERAL = 70,
106111 	DEVLINK_TRAP_GENERIC_ID_FLOW_ACTION_SAMPLE = 71,
106112 	DEVLINK_TRAP_GENERIC_ID_FLOW_ACTION_TRAP = 72,
106113 	DEVLINK_TRAP_GENERIC_ID_EARLY_DROP = 73,
106114 	DEVLINK_TRAP_GENERIC_ID_VXLAN_PARSING = 74,
106115 	DEVLINK_TRAP_GENERIC_ID_LLC_SNAP_PARSING = 75,
106116 	DEVLINK_TRAP_GENERIC_ID_VLAN_PARSING = 76,
106117 	DEVLINK_TRAP_GENERIC_ID_PPPOE_PPP_PARSING = 77,
106118 	DEVLINK_TRAP_GENERIC_ID_MPLS_PARSING = 78,
106119 	DEVLINK_TRAP_GENERIC_ID_ARP_PARSING = 79,
106120 	DEVLINK_TRAP_GENERIC_ID_IP_1_PARSING = 80,
106121 	DEVLINK_TRAP_GENERIC_ID_IP_N_PARSING = 81,
106122 	DEVLINK_TRAP_GENERIC_ID_GRE_PARSING = 82,
106123 	DEVLINK_TRAP_GENERIC_ID_UDP_PARSING = 83,
106124 	DEVLINK_TRAP_GENERIC_ID_TCP_PARSING = 84,
106125 	DEVLINK_TRAP_GENERIC_ID_IPSEC_PARSING = 85,
106126 	DEVLINK_TRAP_GENERIC_ID_SCTP_PARSING = 86,
106127 	DEVLINK_TRAP_GENERIC_ID_DCCP_PARSING = 87,
106128 	DEVLINK_TRAP_GENERIC_ID_GTP_PARSING = 88,
106129 	DEVLINK_TRAP_GENERIC_ID_ESP_PARSING = 89,
106130 	DEVLINK_TRAP_GENERIC_ID_BLACKHOLE_NEXTHOP = 90,
106131 	DEVLINK_TRAP_GENERIC_ID_DMAC_FILTER = 91,
106132 	__DEVLINK_TRAP_GENERIC_ID_MAX = 92,
106133 	DEVLINK_TRAP_GENERIC_ID_MAX = 91,
106134 };
106135 
106136 enum devlink_trap_group_generic_id {
106137 	DEVLINK_TRAP_GROUP_GENERIC_ID_L2_DROPS = 0,
106138 	DEVLINK_TRAP_GROUP_GENERIC_ID_L3_DROPS = 1,
106139 	DEVLINK_TRAP_GROUP_GENERIC_ID_L3_EXCEPTIONS = 2,
106140 	DEVLINK_TRAP_GROUP_GENERIC_ID_BUFFER_DROPS = 3,
106141 	DEVLINK_TRAP_GROUP_GENERIC_ID_TUNNEL_DROPS = 4,
106142 	DEVLINK_TRAP_GROUP_GENERIC_ID_ACL_DROPS = 5,
106143 	DEVLINK_TRAP_GROUP_GENERIC_ID_STP = 6,
106144 	DEVLINK_TRAP_GROUP_GENERIC_ID_LACP = 7,
106145 	DEVLINK_TRAP_GROUP_GENERIC_ID_LLDP = 8,
106146 	DEVLINK_TRAP_GROUP_GENERIC_ID_MC_SNOOPING = 9,
106147 	DEVLINK_TRAP_GROUP_GENERIC_ID_DHCP = 10,
106148 	DEVLINK_TRAP_GROUP_GENERIC_ID_NEIGH_DISCOVERY = 11,
106149 	DEVLINK_TRAP_GROUP_GENERIC_ID_BFD = 12,
106150 	DEVLINK_TRAP_GROUP_GENERIC_ID_OSPF = 13,
106151 	DEVLINK_TRAP_GROUP_GENERIC_ID_BGP = 14,
106152 	DEVLINK_TRAP_GROUP_GENERIC_ID_VRRP = 15,
106153 	DEVLINK_TRAP_GROUP_GENERIC_ID_PIM = 16,
106154 	DEVLINK_TRAP_GROUP_GENERIC_ID_UC_LB = 17,
106155 	DEVLINK_TRAP_GROUP_GENERIC_ID_LOCAL_DELIVERY = 18,
106156 	DEVLINK_TRAP_GROUP_GENERIC_ID_EXTERNAL_DELIVERY = 19,
106157 	DEVLINK_TRAP_GROUP_GENERIC_ID_IPV6 = 20,
106158 	DEVLINK_TRAP_GROUP_GENERIC_ID_PTP_EVENT = 21,
106159 	DEVLINK_TRAP_GROUP_GENERIC_ID_PTP_GENERAL = 22,
106160 	DEVLINK_TRAP_GROUP_GENERIC_ID_ACL_SAMPLE = 23,
106161 	DEVLINK_TRAP_GROUP_GENERIC_ID_ACL_TRAP = 24,
106162 	DEVLINK_TRAP_GROUP_GENERIC_ID_PARSER_ERROR_DROPS = 25,
106163 	__DEVLINK_TRAP_GROUP_GENERIC_ID_MAX = 26,
106164 	DEVLINK_TRAP_GROUP_GENERIC_ID_MAX = 25,
106165 };
106166 
106167 enum {
106168 	DEVLINK_F_RELOAD = 1,
106169 };
106170 
106171 struct devlink_info_req;
106172 
106173 struct devlink_ops {
106174 	u32 supported_flash_update_params;
106175 	long unsigned int reload_actions;
106176 	long unsigned int reload_limits;
106177 	int (*reload_down)(struct devlink *, bool, enum devlink_reload_action, enum devlink_reload_limit, struct netlink_ext_ack *);
106178 	int (*reload_up)(struct devlink *, enum devlink_reload_action, enum devlink_reload_limit, u32 *, struct netlink_ext_ack *);
106179 	int (*port_type_set)(struct devlink_port *, enum devlink_port_type);
106180 	int (*port_split)(struct devlink *, struct devlink_port *, unsigned int, struct netlink_ext_ack *);
106181 	int (*port_unsplit)(struct devlink *, struct devlink_port *, struct netlink_ext_ack *);
106182 	int (*sb_pool_get)(struct devlink *, unsigned int, u16, struct devlink_sb_pool_info *);
106183 	int (*sb_pool_set)(struct devlink *, unsigned int, u16, u32, enum devlink_sb_threshold_type, struct netlink_ext_ack *);
106184 	int (*sb_port_pool_get)(struct devlink_port *, unsigned int, u16, u32 *);
106185 	int (*sb_port_pool_set)(struct devlink_port *, unsigned int, u16, u32, struct netlink_ext_ack *);
106186 	int (*sb_tc_pool_bind_get)(struct devlink_port *, unsigned int, u16, enum devlink_sb_pool_type, u16 *, u32 *);
106187 	int (*sb_tc_pool_bind_set)(struct devlink_port *, unsigned int, u16, enum devlink_sb_pool_type, u16, u32, struct netlink_ext_ack *);
106188 	int (*sb_occ_snapshot)(struct devlink *, unsigned int);
106189 	int (*sb_occ_max_clear)(struct devlink *, unsigned int);
106190 	int (*sb_occ_port_pool_get)(struct devlink_port *, unsigned int, u16, u32 *, u32 *);
106191 	int (*sb_occ_tc_port_bind_get)(struct devlink_port *, unsigned int, u16, enum devlink_sb_pool_type, u32 *, u32 *);
106192 	int (*eswitch_mode_get)(struct devlink *, u16 *);
106193 	int (*eswitch_mode_set)(struct devlink *, u16, struct netlink_ext_ack *);
106194 	int (*eswitch_inline_mode_get)(struct devlink *, u8 *);
106195 	int (*eswitch_inline_mode_set)(struct devlink *, u8, struct netlink_ext_ack *);
106196 	int (*eswitch_encap_mode_get)(struct devlink *, enum devlink_eswitch_encap_mode *);
106197 	int (*eswitch_encap_mode_set)(struct devlink *, enum devlink_eswitch_encap_mode, struct netlink_ext_ack *);
106198 	int (*info_get)(struct devlink *, struct devlink_info_req *, struct netlink_ext_ack *);
106199 	int (*flash_update)(struct devlink *, struct devlink_flash_update_params *, struct netlink_ext_ack *);
106200 	int (*trap_init)(struct devlink *, const struct devlink_trap *, void *);
106201 	void (*trap_fini)(struct devlink *, const struct devlink_trap *, void *);
106202 	int (*trap_action_set)(struct devlink *, const struct devlink_trap *, enum devlink_trap_action, struct netlink_ext_ack *);
106203 	int (*trap_group_init)(struct devlink *, const struct devlink_trap_group *);
106204 	int (*trap_group_set)(struct devlink *, const struct devlink_trap_group *, const struct devlink_trap_policer *, struct netlink_ext_ack *);
106205 	int (*trap_group_action_set)(struct devlink *, const struct devlink_trap_group *, enum devlink_trap_action, struct netlink_ext_ack *);
106206 	int (*trap_drop_counter_get)(struct devlink *, const struct devlink_trap *, u64 *);
106207 	int (*trap_policer_init)(struct devlink *, const struct devlink_trap_policer *);
106208 	void (*trap_policer_fini)(struct devlink *, const struct devlink_trap_policer *);
106209 	int (*trap_policer_set)(struct devlink *, const struct devlink_trap_policer *, u64, u64, struct netlink_ext_ack *);
106210 	int (*trap_policer_counter_get)(struct devlink *, const struct devlink_trap_policer *, u64 *);
106211 	int (*port_function_hw_addr_get)(struct devlink_port *, u8 *, int *, struct netlink_ext_ack *);
106212 	int (*port_function_hw_addr_set)(struct devlink_port *, const u8 *, int, struct netlink_ext_ack *);
106213 	int (*port_new)(struct devlink *, const struct devlink_port_new_attrs *, struct netlink_ext_ack *, unsigned int *);
106214 	int (*port_del)(struct devlink *, unsigned int, struct netlink_ext_ack *);
106215 	int (*port_fn_state_get)(struct devlink_port *, enum devlink_port_fn_state *, enum devlink_port_fn_opstate *, struct netlink_ext_ack *);
106216 	int (*port_fn_state_set)(struct devlink_port *, enum devlink_port_fn_state, struct netlink_ext_ack *);
106217 	int (*rate_leaf_tx_share_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
106218 	int (*rate_leaf_tx_max_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
106219 	int (*rate_node_tx_share_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
106220 	int (*rate_node_tx_max_set)(struct devlink_rate *, void *, u64, struct netlink_ext_ack *);
106221 	int (*rate_node_new)(struct devlink_rate *, void **, struct netlink_ext_ack *);
106222 	int (*rate_node_del)(struct devlink_rate *, void *, struct netlink_ext_ack *);
106223 	int (*rate_leaf_parent_set)(struct devlink_rate *, struct devlink_rate *, void *, void *, struct netlink_ext_ack *);
106224 	int (*rate_node_parent_set)(struct devlink_rate *, struct devlink_rate *, void *, void *, struct netlink_ext_ack *);
106225 	bool (*selftest_check)(struct devlink *, unsigned int, struct netlink_ext_ack *);
106226 	enum devlink_selftest_status (*selftest_run)(struct devlink *, unsigned int, struct netlink_ext_ack *);
106227 };
106228 
106229 struct devlink_info_req {
106230 	struct sk_buff *msg;
106231 };
106232 
106233 struct trace_event_raw_devlink_hwmsg {
106234 	struct trace_entry ent;
106235 	u32 __data_loc_bus_name;
106236 	u32 __data_loc_dev_name;
106237 	u32 __data_loc_driver_name;
106238 	bool incoming;
106239 	long unsigned int type;
106240 	u32 __data_loc_buf;
106241 	size_t len;
106242 	char __data[0];
106243 };
106244 
106245 struct trace_event_raw_devlink_hwerr {
106246 	struct trace_entry ent;
106247 	u32 __data_loc_bus_name;
106248 	u32 __data_loc_dev_name;
106249 	u32 __data_loc_driver_name;
106250 	int err;
106251 	u32 __data_loc_msg;
106252 	char __data[0];
106253 };
106254 
106255 struct trace_event_raw_devlink_health_report {
106256 	struct trace_entry ent;
106257 	u32 __data_loc_bus_name;
106258 	u32 __data_loc_dev_name;
106259 	u32 __data_loc_driver_name;
106260 	u32 __data_loc_reporter_name;
106261 	u32 __data_loc_msg;
106262 	char __data[0];
106263 };
106264 
106265 struct trace_event_raw_devlink_health_recover_aborted {
106266 	struct trace_entry ent;
106267 	u32 __data_loc_bus_name;
106268 	u32 __data_loc_dev_name;
106269 	u32 __data_loc_driver_name;
106270 	u32 __data_loc_reporter_name;
106271 	bool health_state;
106272 	u64 time_since_last_recover;
106273 	char __data[0];
106274 };
106275 
106276 struct trace_event_raw_devlink_health_reporter_state_update {
106277 	struct trace_entry ent;
106278 	u32 __data_loc_bus_name;
106279 	u32 __data_loc_dev_name;
106280 	u32 __data_loc_driver_name;
106281 	u32 __data_loc_reporter_name;
106282 	u8 new_state;
106283 	char __data[0];
106284 };
106285 
106286 struct trace_event_raw_devlink_trap_report {
106287 	struct trace_entry ent;
106288 	u32 __data_loc_bus_name;
106289 	u32 __data_loc_dev_name;
106290 	u32 __data_loc_driver_name;
106291 	u32 __data_loc_trap_name;
106292 	u32 __data_loc_trap_group_name;
106293 	char input_dev_name[16];
106294 	char __data[0];
106295 };
106296 
106297 struct trace_event_data_offsets_devlink_hwmsg {
106298 	u32 bus_name;
106299 	u32 dev_name;
106300 	u32 driver_name;
106301 	u32 buf;
106302 };
106303 
106304 struct trace_event_data_offsets_devlink_hwerr {
106305 	u32 bus_name;
106306 	u32 dev_name;
106307 	u32 driver_name;
106308 	u32 msg;
106309 };
106310 
106311 struct trace_event_data_offsets_devlink_health_report {
106312 	u32 bus_name;
106313 	u32 dev_name;
106314 	u32 driver_name;
106315 	u32 reporter_name;
106316 	u32 msg;
106317 };
106318 
106319 struct trace_event_data_offsets_devlink_health_recover_aborted {
106320 	u32 bus_name;
106321 	u32 dev_name;
106322 	u32 driver_name;
106323 	u32 reporter_name;
106324 };
106325 
106326 struct trace_event_data_offsets_devlink_health_reporter_state_update {
106327 	u32 bus_name;
106328 	u32 dev_name;
106329 	u32 driver_name;
106330 	u32 reporter_name;
106331 };
106332 
106333 struct trace_event_data_offsets_devlink_trap_report {
106334 	u32 bus_name;
106335 	u32 dev_name;
106336 	u32 driver_name;
106337 	u32 trap_name;
106338 	u32 trap_group_name;
106339 };
106340 
106341 typedef void (*btf_trace_devlink_hwmsg)(void *, const struct devlink *, bool, long unsigned int, const u8 *, size_t);
106342 
106343 typedef void (*btf_trace_devlink_hwerr)(void *, const struct devlink *, int, const char *);
106344 
106345 typedef void (*btf_trace_devlink_health_report)(void *, const struct devlink *, const char *, const char *);
106346 
106347 typedef void (*btf_trace_devlink_health_recover_aborted)(void *, const struct devlink *, const char *, bool, u64);
106348 
106349 typedef void (*btf_trace_devlink_health_reporter_state_update)(void *, const struct devlink *, const char *, bool);
106350 
106351 typedef void (*btf_trace_devlink_trap_report)(void *, const struct devlink *, struct sk_buff *, const struct devlink_trap_metadata *);
106352 
106353 struct devlink_linecard_type {
106354 	const char *type;
106355 	const void *priv;
106356 };
106357 
106358 struct devlink_resource {
106359 	const char *name;
106360 	u64 id;
106361 	u64 size;
106362 	u64 size_new;
106363 	bool size_valid;
106364 	struct devlink_resource *parent;
106365 	struct devlink_resource_size_params size_params;
106366 	struct list_head list;
106367 	struct list_head resource_list;
106368 	devlink_resource_occ_get_t *occ_get;
106369 	void *occ_get_priv;
106370 };
106371 
106372 struct devlink_sb {
106373 	struct list_head list;
106374 	unsigned int index;
106375 	u32 size;
106376 	u16 ingress_pools_count;
106377 	u16 egress_pools_count;
106378 	u16 ingress_tc_count;
106379 	u16 egress_tc_count;
106380 };
106381 
106382 struct devlink_region {
106383 	struct devlink *devlink;
106384 	struct devlink_port *port;
106385 	struct list_head list;
106386 	union {
106387 		const struct devlink_region_ops *ops;
106388 		const struct devlink_port_region_ops *port_ops;
106389 	};
106390 	struct mutex snapshot_lock;
106391 	struct list_head snapshot_list;
106392 	u32 max_snapshots;
106393 	u32 cur_snapshots;
106394 	u64 size;
106395 };
106396 
106397 struct devlink_snapshot {
106398 	struct list_head list;
106399 	struct devlink_region *region;
106400 	u8 *data;
106401 	u32 id;
106402 };
106403 
106404 enum devlink_multicast_groups {
106405 	DEVLINK_MCGRP_CONFIG = 0,
106406 };
106407 
106408 struct devlink_reload_combination {
106409 	enum devlink_reload_action action;
106410 	enum devlink_reload_limit limit;
106411 };
106412 
106413 struct devlink_fmsg_item {
106414 	struct list_head list;
106415 	int attrtype;
106416 	u8 nla_type;
106417 	u16 len;
106418 	int value[0];
106419 };
106420 
106421 struct devlink_stats {
106422 	u64_stats_t rx_bytes;
106423 	u64_stats_t rx_packets;
106424 	struct u64_stats_sync syncp;
106425 };
106426 
106427 struct devlink_trap_policer_item {
106428 	const struct devlink_trap_policer *policer;
106429 	u64 rate;
106430 	u64 burst;
106431 	struct list_head list;
106432 };
106433 
106434 struct devlink_trap_group_item {
106435 	const struct devlink_trap_group *group;
106436 	struct devlink_trap_policer_item *policer_item;
106437 	struct list_head list;
106438 	struct devlink_stats *stats;
106439 };
106440 
106441 struct devlink_trap_item {
106442 	const struct devlink_trap *trap;
106443 	struct devlink_trap_group_item *group_item;
106444 	struct list_head list;
106445 	enum devlink_trap_action action;
106446 	struct devlink_stats *stats;
106447 	void *priv;
106448 };
106449 
106450 enum {
106451 	ETHTOOL_A_FEC_STAT_UNSPEC = 0,
106452 	ETHTOOL_A_FEC_STAT_PAD = 1,
106453 	ETHTOOL_A_FEC_STAT_CORRECTED = 2,
106454 	ETHTOOL_A_FEC_STAT_UNCORR = 3,
106455 	ETHTOOL_A_FEC_STAT_CORR_BITS = 4,
106456 	__ETHTOOL_A_FEC_STAT_CNT = 5,
106457 	ETHTOOL_A_FEC_STAT_MAX = 4,
106458 };
106459 
106460 struct fec_stat_grp {
106461 	u64 stats[9];
106462 	u8 cnt;
106463 };
106464 
106465 struct fec_reply_data {
106466 	struct ethnl_reply_data base;
106467 	long unsigned int fec_link_modes[2];
106468 	u32 active_fec;
106469 	u8 fec_auto;
106470 	struct fec_stat_grp corr;
106471 	struct fec_stat_grp uncorr;
106472 	struct fec_stat_grp corr_bits;
106473 };
106474 
106475 struct rps_sock_flow_table {
106476 	u32 mask;
106477 	long: 64;
106478 	long: 64;
106479 	long: 64;
106480 	long: 64;
106481 	long: 64;
106482 	long: 64;
106483 	long: 64;
106484 	long: 64;
106485 	long: 64;
106486 	long: 64;
106487 	long: 64;
106488 	long: 64;
106489 	long: 64;
106490 	long: 64;
106491 	long: 64;
106492 	u32 ents[0];
106493 };
106494 
106495 struct rtentry {
106496 	long unsigned int rt_pad1;
106497 	struct sockaddr rt_dst;
106498 	struct sockaddr rt_gateway;
106499 	struct sockaddr rt_genmask;
106500 	short unsigned int rt_flags;
106501 	short int rt_pad2;
106502 	long unsigned int rt_pad3;
106503 	void *rt_pad4;
106504 	short int rt_metric;
106505 	char *rt_dev;
106506 	long unsigned int rt_mtu;
106507 	long unsigned int rt_window;
106508 	short unsigned int rt_irtt;
106509 };
106510 
106511 struct pingv6_ops {
106512 	int (*ipv6_recv_error)(struct sock *, struct msghdr *, int, int *);
106513 	void (*ip6_datagram_recv_common_ctl)(struct sock *, struct msghdr *, struct sk_buff *);
106514 	void (*ip6_datagram_recv_specific_ctl)(struct sock *, struct msghdr *, struct sk_buff *);
106515 	int (*icmpv6_err_convert)(u8, u8, int *);
106516 	void (*ipv6_icmp_error)(struct sock *, struct sk_buff *, int, __be16, u32, u8 *);
106517 	int (*ipv6_chk_addr)(struct net *, const struct in6_addr *, const struct net_device *, int);
106518 };
106519 
106520 enum {
106521 	Root_NFS = 255,
106522 	Root_CIFS = 254,
106523 	Root_RAM0 = 1048576,
106524 	Root_RAM1 = 1048577,
106525 	Root_FD0 = 2097152,
106526 	Root_HDA1 = 3145729,
106527 	Root_HDA2 = 3145730,
106528 	Root_SDA1 = 8388609,
106529 	Root_SDA2 = 8388610,
106530 	Root_HDC1 = 23068673,
106531 	Root_SR0 = 11534336,
106532 };
106533 
106534 struct ic_device {
106535 	struct ic_device *next;
106536 	struct net_device *dev;
106537 	short unsigned int flags;
106538 	short int able;
106539 	__be32 xid;
106540 };
106541 
106542 struct bootp_pkt {
106543 	struct iphdr iph;
106544 	struct udphdr udph;
106545 	u8 op;
106546 	u8 htype;
106547 	u8 hlen;
106548 	u8 hops;
106549 	__be32 xid;
106550 	__be16 secs;
106551 	__be16 flags;
106552 	__be32 client_ip;
106553 	__be32 your_ip;
106554 	__be32 server_ip;
106555 	__be32 relay_ip;
106556 	u8 hw_addr[16];
106557 	u8 serv_name[64];
106558 	u8 boot_file[128];
106559 	u8 exten[312];
106560 };
106561 
106562 enum xfrm_ae_ftype_t {
106563 	XFRM_AE_UNSPEC = 0,
106564 	XFRM_AE_RTHR = 1,
106565 	XFRM_AE_RVAL = 2,
106566 	XFRM_AE_LVAL = 4,
106567 	XFRM_AE_ETHR = 8,
106568 	XFRM_AE_CR = 16,
106569 	XFRM_AE_CE = 32,
106570 	XFRM_AE_CU = 64,
106571 	__XFRM_AE_MAX = 65,
106572 };
106573 
106574 enum xfrm_nlgroups {
106575 	XFRMNLGRP_NONE = 0,
106576 	XFRMNLGRP_ACQUIRE = 1,
106577 	XFRMNLGRP_EXPIRE = 2,
106578 	XFRMNLGRP_SA = 3,
106579 	XFRMNLGRP_POLICY = 4,
106580 	XFRMNLGRP_AEVENTS = 5,
106581 	XFRMNLGRP_REPORT = 6,
106582 	XFRMNLGRP_MIGRATE = 7,
106583 	XFRMNLGRP_MAPPING = 8,
106584 	__XFRMNLGRP_MAX = 9,
106585 };
106586 
106587 struct km_event {
106588 	union {
106589 		u32 hard;
106590 		u32 proto;
106591 		u32 byid;
106592 		u32 aevent;
106593 		u32 type;
106594 	} data;
106595 	u32 seq;
106596 	u32 portid;
106597 	u32 event;
106598 	struct net *net;
106599 };
106600 
106601 struct xfrm_kmaddress {
106602 	xfrm_address_t local;
106603 	xfrm_address_t remote;
106604 	u32 reserved;
106605 	u16 family;
106606 };
106607 
106608 struct xfrm_migrate {
106609 	xfrm_address_t old_daddr;
106610 	xfrm_address_t old_saddr;
106611 	xfrm_address_t new_daddr;
106612 	xfrm_address_t new_saddr;
106613 	u8 proto;
106614 	u8 mode;
106615 	u16 reserved;
106616 	u32 reqid;
106617 	u16 old_family;
106618 	u16 new_family;
106619 };
106620 
106621 struct xfrm_mgr {
106622 	struct list_head list;
106623 	int (*notify)(struct xfrm_state *, const struct km_event *);
106624 	int (*acquire)(struct xfrm_state *, struct xfrm_tmpl *, struct xfrm_policy *);
106625 	struct xfrm_policy * (*compile_policy)(struct sock *, int, u8 *, int, int *);
106626 	int (*new_mapping)(struct xfrm_state *, xfrm_address_t *, __be16);
106627 	int (*notify_policy)(struct xfrm_policy *, int, const struct km_event *);
106628 	int (*report)(struct net *, u8, struct xfrm_selector *, xfrm_address_t *);
106629 	int (*migrate)(const struct xfrm_selector *, u8, u8, const struct xfrm_migrate *, int, const struct xfrm_kmaddress *, const struct xfrm_encap_tmpl *);
106630 	bool (*is_alive)(const struct km_event *);
106631 };
106632 
106633 struct xfrmk_sadinfo {
106634 	u32 sadhcnt;
106635 	u32 sadhmcnt;
106636 	u32 sadcnt;
106637 };
106638 
106639 struct xfrm_translator {
106640 	int (*alloc_compat)(struct sk_buff *, const struct nlmsghdr *);
106641 	struct nlmsghdr * (*rcv_msg_compat)(const struct nlmsghdr *, int, const struct nla_policy *, struct netlink_ext_ack *);
106642 	int (*xlate_user_policy_sockptr)(u8 **, int);
106643 	struct module *owner;
106644 };
106645 
106646 struct in_pktinfo {
106647 	int ipi_ifindex;
106648 	struct in_addr ipi_spec_dst;
106649 	struct in_addr ipi_addr;
106650 };
106651 
106652 struct snmp_mib {
106653 	const char *name;
106654 	int entry;
106655 };
106656 
106657 typedef __be32 rpc_fraghdr;
106658 
106659 struct xdr_skb_reader {
106660 	struct sk_buff *skb;
106661 	unsigned int offset;
106662 	size_t count;
106663 	__wsum csum;
106664 };
106665 
106666 typedef size_t (*xdr_skb_read_actor)(struct xdr_skb_reader *, void *, size_t);
106667 
106668 struct xdr_array2_desc;
106669 
106670 typedef int (*xdr_xcode_elem_t)(struct xdr_array2_desc *, void *);
106671 
106672 struct xdr_array2_desc {
106673 	unsigned int elem_size;
106674 	unsigned int array_len;
106675 	unsigned int array_maxlen;
106676 	xdr_xcode_elem_t xcode;
106677 };
106678 
106679 struct gss_cl_ctx {
106680 	refcount_t count;
106681 	enum rpc_gss_proc gc_proc;
106682 	u32 gc_seq;
106683 	u32 gc_seq_xmit;
106684 	spinlock_t gc_seq_lock;
106685 	struct gss_ctx *gc_gss_ctx;
106686 	struct xdr_netobj gc_wire_ctx;
106687 	struct xdr_netobj gc_acceptor;
106688 	u32 gc_win;
106689 	long unsigned int gc_expiry;
106690 	struct callback_head gc_rcu;
106691 };
106692 
106693 struct gss_upcall_msg;
106694 
106695 struct gss_cred {
106696 	struct rpc_cred gc_base;
106697 	enum rpc_gss_svc gc_service;
106698 	struct gss_cl_ctx *gc_ctx;
106699 	struct gss_upcall_msg *gc_upcall;
106700 	const char *gc_principal;
106701 	long unsigned int gc_upcall_timestamp;
106702 };
106703 
106704 struct trace_event_raw_rpcgss_gssapi_event {
106705 	struct trace_entry ent;
106706 	unsigned int task_id;
106707 	unsigned int client_id;
106708 	u32 maj_stat;
106709 	char __data[0];
106710 };
106711 
106712 struct trace_event_raw_rpcgss_import_ctx {
106713 	struct trace_entry ent;
106714 	int status;
106715 	char __data[0];
106716 };
106717 
106718 struct trace_event_raw_rpcgss_ctx_class {
106719 	struct trace_entry ent;
106720 	const void *cred;
106721 	long unsigned int service;
106722 	u32 __data_loc_principal;
106723 	char __data[0];
106724 };
106725 
106726 struct trace_event_raw_rpcgss_svc_gssapi_class {
106727 	struct trace_entry ent;
106728 	u32 xid;
106729 	u32 maj_stat;
106730 	u32 __data_loc_addr;
106731 	char __data[0];
106732 };
106733 
106734 struct trace_event_raw_rpcgss_svc_unwrap_failed {
106735 	struct trace_entry ent;
106736 	u32 xid;
106737 	u32 __data_loc_addr;
106738 	char __data[0];
106739 };
106740 
106741 struct trace_event_raw_rpcgss_svc_seqno_bad {
106742 	struct trace_entry ent;
106743 	u32 expected;
106744 	u32 received;
106745 	u32 xid;
106746 	u32 __data_loc_addr;
106747 	char __data[0];
106748 };
106749 
106750 struct trace_event_raw_rpcgss_svc_accept_upcall {
106751 	struct trace_entry ent;
106752 	u32 minor_status;
106753 	long unsigned int major_status;
106754 	u32 xid;
106755 	u32 __data_loc_addr;
106756 	char __data[0];
106757 };
106758 
106759 struct trace_event_raw_rpcgss_svc_authenticate {
106760 	struct trace_entry ent;
106761 	u32 seqno;
106762 	u32 xid;
106763 	u32 __data_loc_addr;
106764 	char __data[0];
106765 };
106766 
106767 struct trace_event_raw_rpcgss_unwrap_failed {
106768 	struct trace_entry ent;
106769 	unsigned int task_id;
106770 	unsigned int client_id;
106771 	char __data[0];
106772 };
106773 
106774 struct trace_event_raw_rpcgss_bad_seqno {
106775 	struct trace_entry ent;
106776 	unsigned int task_id;
106777 	unsigned int client_id;
106778 	u32 expected;
106779 	u32 received;
106780 	char __data[0];
106781 };
106782 
106783 struct trace_event_raw_rpcgss_seqno {
106784 	struct trace_entry ent;
106785 	unsigned int task_id;
106786 	unsigned int client_id;
106787 	u32 xid;
106788 	u32 seqno;
106789 	char __data[0];
106790 };
106791 
106792 struct trace_event_raw_rpcgss_need_reencode {
106793 	struct trace_entry ent;
106794 	unsigned int task_id;
106795 	unsigned int client_id;
106796 	u32 xid;
106797 	u32 seq_xmit;
106798 	u32 seqno;
106799 	bool ret;
106800 	char __data[0];
106801 };
106802 
106803 struct trace_event_raw_rpcgss_update_slack {
106804 	struct trace_entry ent;
106805 	unsigned int task_id;
106806 	unsigned int client_id;
106807 	u32 xid;
106808 	const void *auth;
106809 	unsigned int rslack;
106810 	unsigned int ralign;
106811 	unsigned int verfsize;
106812 	char __data[0];
106813 };
106814 
106815 struct trace_event_raw_rpcgss_svc_seqno_class {
106816 	struct trace_entry ent;
106817 	u32 xid;
106818 	u32 seqno;
106819 	char __data[0];
106820 };
106821 
106822 struct trace_event_raw_rpcgss_svc_seqno_low {
106823 	struct trace_entry ent;
106824 	u32 xid;
106825 	u32 seqno;
106826 	u32 min;
106827 	u32 max;
106828 	char __data[0];
106829 };
106830 
106831 struct trace_event_raw_rpcgss_upcall_msg {
106832 	struct trace_entry ent;
106833 	u32 __data_loc_msg;
106834 	char __data[0];
106835 };
106836 
106837 struct trace_event_raw_rpcgss_upcall_result {
106838 	struct trace_entry ent;
106839 	u32 uid;
106840 	int result;
106841 	char __data[0];
106842 };
106843 
106844 struct trace_event_raw_rpcgss_context {
106845 	struct trace_entry ent;
106846 	long unsigned int expiry;
106847 	long unsigned int now;
106848 	unsigned int timeout;
106849 	u32 window_size;
106850 	int len;
106851 	u32 __data_loc_acceptor;
106852 	char __data[0];
106853 };
106854 
106855 struct trace_event_raw_rpcgss_createauth {
106856 	struct trace_entry ent;
106857 	unsigned int flavor;
106858 	int error;
106859 	char __data[0];
106860 };
106861 
106862 struct trace_event_raw_rpcgss_oid_to_mech {
106863 	struct trace_entry ent;
106864 	u32 __data_loc_oid;
106865 	char __data[0];
106866 };
106867 
106868 struct trace_event_data_offsets_rpcgss_gssapi_event {};
106869 
106870 struct trace_event_data_offsets_rpcgss_import_ctx {};
106871 
106872 struct trace_event_data_offsets_rpcgss_ctx_class {
106873 	u32 principal;
106874 };
106875 
106876 struct trace_event_data_offsets_rpcgss_svc_gssapi_class {
106877 	u32 addr;
106878 };
106879 
106880 struct trace_event_data_offsets_rpcgss_svc_unwrap_failed {
106881 	u32 addr;
106882 };
106883 
106884 struct trace_event_data_offsets_rpcgss_svc_seqno_bad {
106885 	u32 addr;
106886 };
106887 
106888 struct trace_event_data_offsets_rpcgss_svc_accept_upcall {
106889 	u32 addr;
106890 };
106891 
106892 struct trace_event_data_offsets_rpcgss_svc_authenticate {
106893 	u32 addr;
106894 };
106895 
106896 struct trace_event_data_offsets_rpcgss_unwrap_failed {};
106897 
106898 struct trace_event_data_offsets_rpcgss_bad_seqno {};
106899 
106900 struct trace_event_data_offsets_rpcgss_seqno {};
106901 
106902 struct trace_event_data_offsets_rpcgss_need_reencode {};
106903 
106904 struct trace_event_data_offsets_rpcgss_update_slack {};
106905 
106906 struct trace_event_data_offsets_rpcgss_svc_seqno_class {};
106907 
106908 struct trace_event_data_offsets_rpcgss_svc_seqno_low {};
106909 
106910 struct trace_event_data_offsets_rpcgss_upcall_msg {
106911 	u32 msg;
106912 };
106913 
106914 struct trace_event_data_offsets_rpcgss_upcall_result {};
106915 
106916 struct trace_event_data_offsets_rpcgss_context {
106917 	u32 acceptor;
106918 };
106919 
106920 struct trace_event_data_offsets_rpcgss_createauth {};
106921 
106922 struct trace_event_data_offsets_rpcgss_oid_to_mech {
106923 	u32 oid;
106924 };
106925 
106926 typedef void (*btf_trace_rpcgss_import_ctx)(void *, int);
106927 
106928 typedef void (*btf_trace_rpcgss_get_mic)(void *, const struct rpc_task *, u32);
106929 
106930 typedef void (*btf_trace_rpcgss_verify_mic)(void *, const struct rpc_task *, u32);
106931 
106932 typedef void (*btf_trace_rpcgss_wrap)(void *, const struct rpc_task *, u32);
106933 
106934 typedef void (*btf_trace_rpcgss_unwrap)(void *, const struct rpc_task *, u32);
106935 
106936 typedef void (*btf_trace_rpcgss_ctx_init)(void *, const struct gss_cred *);
106937 
106938 typedef void (*btf_trace_rpcgss_ctx_destroy)(void *, const struct gss_cred *);
106939 
106940 typedef void (*btf_trace_rpcgss_svc_unwrap)(void *, const struct svc_rqst *, u32);
106941 
106942 typedef void (*btf_trace_rpcgss_svc_mic)(void *, const struct svc_rqst *, u32);
106943 
106944 typedef void (*btf_trace_rpcgss_svc_unwrap_failed)(void *, const struct svc_rqst *);
106945 
106946 typedef void (*btf_trace_rpcgss_svc_seqno_bad)(void *, const struct svc_rqst *, u32, u32);
106947 
106948 typedef void (*btf_trace_rpcgss_svc_accept_upcall)(void *, const struct svc_rqst *, u32, u32);
106949 
106950 typedef void (*btf_trace_rpcgss_svc_authenticate)(void *, const struct svc_rqst *, const struct rpc_gss_wire_cred *);
106951 
106952 typedef void (*btf_trace_rpcgss_unwrap_failed)(void *, const struct rpc_task *);
106953 
106954 typedef void (*btf_trace_rpcgss_bad_seqno)(void *, const struct rpc_task *, u32, u32);
106955 
106956 typedef void (*btf_trace_rpcgss_seqno)(void *, const struct rpc_task *);
106957 
106958 typedef void (*btf_trace_rpcgss_need_reencode)(void *, const struct rpc_task *, u32, bool);
106959 
106960 typedef void (*btf_trace_rpcgss_update_slack)(void *, const struct rpc_task *, const struct rpc_auth *);
106961 
106962 typedef void (*btf_trace_rpcgss_svc_seqno_large)(void *, const struct svc_rqst *, u32);
106963 
106964 typedef void (*btf_trace_rpcgss_svc_seqno_seen)(void *, const struct svc_rqst *, u32);
106965 
106966 typedef void (*btf_trace_rpcgss_svc_seqno_low)(void *, const struct svc_rqst *, u32, u32, u32);
106967 
106968 typedef void (*btf_trace_rpcgss_upcall_msg)(void *, const char *);
106969 
106970 typedef void (*btf_trace_rpcgss_upcall_result)(void *, u32, int);
106971 
106972 typedef void (*btf_trace_rpcgss_context)(void *, u32, long unsigned int, long unsigned int, unsigned int, unsigned int, const u8 *);
106973 
106974 typedef void (*btf_trace_rpcgss_createauth)(void *, unsigned int, int);
106975 
106976 typedef void (*btf_trace_rpcgss_oid_to_mech)(void *, const char *);
106977 
106978 struct interrupt_nmi_state {
106979 	u8 irq_soft_mask;
106980 	u8 irq_happened;
106981 	u8 ftrace_enabled;
106982 	u64 softe;
106983 };
106984 
106985 enum {
106986 	DTRIG_UNKNOWN = 0,
106987 	DTRIG_VECTOR_CI = 1,
106988 	DTRIG_SUSPEND_ESCAPE = 2,
106989 };
106990 
106991 struct eeh_event {
106992 	struct list_head list;
106993 	struct eeh_pe *pe;
106994 };
106995 
106996 struct psr_attr {
106997 	u32 handle;
106998 	struct kobj_attribute attr;
106999 };
107000 
107001 struct cxl_irq_ranges {
107002 	irq_hw_number_t offset[4];
107003 	irq_hw_number_t range[4];
107004 };
107005 
107006 struct dtl {
107007 	struct dtl_entry *buf;
107008 	int cpu;
107009 	int buf_entries;
107010 	u64 last_idx;
107011 	spinlock_t lock;
107012 };
107013 
107014 struct dtl_ring {
107015 	u64 write_index;
107016 	struct dtl_entry *write_ptr;
107017 	struct dtl_entry *buf;
107018 	struct dtl_entry *buf_end;
107019 };
107020 
107021 struct rlimit64 {
107022 	__u64 rlim_cur;
107023 	__u64 rlim_max;
107024 };
107025 
107026 struct oldold_utsname {
107027 	char sysname[9];
107028 	char nodename[9];
107029 	char release[9];
107030 	char version[9];
107031 	char machine[9];
107032 };
107033 
107034 struct old_utsname {
107035 	char sysname[65];
107036 	char nodename[65];
107037 	char release[65];
107038 	char version[65];
107039 	char machine[65];
107040 };
107041 
107042 enum uts_proc {
107043 	UTS_PROC_OSTYPE = 0,
107044 	UTS_PROC_OSRELEASE = 1,
107045 	UTS_PROC_VERSION = 2,
107046 	UTS_PROC_HOSTNAME = 3,
107047 	UTS_PROC_DOMAINNAME = 4,
107048 };
107049 
107050 struct prctl_mm_map {
107051 	__u64 start_code;
107052 	__u64 end_code;
107053 	__u64 start_data;
107054 	__u64 end_data;
107055 	__u64 start_brk;
107056 	__u64 brk;
107057 	__u64 start_stack;
107058 	__u64 arg_start;
107059 	__u64 arg_end;
107060 	__u64 env_start;
107061 	__u64 env_end;
107062 	__u64 *auxv;
107063 	__u32 auxv_size;
107064 	__u32 exe_fd;
107065 };
107066 
107067 struct tms {
107068 	__kernel_clock_t tms_utime;
107069 	__kernel_clock_t tms_stime;
107070 	__kernel_clock_t tms_cutime;
107071 	__kernel_clock_t tms_cstime;
107072 };
107073 
107074 struct getcpu_cache {
107075 	long unsigned int blob[16];
107076 };
107077 
107078 struct pin_cookie {};
107079 
107080 struct dl_bw {
107081 	raw_spinlock_t lock;
107082 	u64 bw;
107083 	u64 total_bw;
107084 };
107085 
107086 struct cpudl_item;
107087 
107088 struct cpudl {
107089 	raw_spinlock_t lock;
107090 	int size;
107091 	cpumask_var_t free_cpus;
107092 	struct cpudl_item *elements;
107093 };
107094 
107095 struct cpupri_vec {
107096 	atomic_t count;
107097 	cpumask_var_t mask;
107098 };
107099 
107100 struct cpupri {
107101 	struct cpupri_vec pri_to_cpu[101];
107102 	int *cpu_to_pri;
107103 };
107104 
107105 struct perf_domain;
107106 
107107 struct root_domain {
107108 	atomic_t refcount;
107109 	atomic_t rto_count;
107110 	struct callback_head rcu;
107111 	cpumask_var_t span;
107112 	cpumask_var_t online;
107113 	int overload;
107114 	int overutilized;
107115 	cpumask_var_t dlo_mask;
107116 	atomic_t dlo_count;
107117 	struct dl_bw dl_bw;
107118 	struct cpudl cpudl;
107119 	u64 visit_gen;
107120 	struct irq_work rto_push_work;
107121 	raw_spinlock_t rto_lock;
107122 	int rto_loop;
107123 	int rto_cpu;
107124 	atomic_t rto_loop_next;
107125 	atomic_t rto_loop_start;
107126 	cpumask_var_t rto_mask;
107127 	struct cpupri cpupri;
107128 	long unsigned int max_cpu_capacity;
107129 	struct perf_domain *pd;
107130 };
107131 
107132 struct cfs_rq {
107133 	struct load_weight load;
107134 	unsigned int nr_running;
107135 	unsigned int h_nr_running;
107136 	unsigned int idle_nr_running;
107137 	unsigned int idle_h_nr_running;
107138 	u64 exec_clock;
107139 	u64 min_vruntime;
107140 	struct rb_root_cached tasks_timeline;
107141 	struct sched_entity *curr;
107142 	struct sched_entity *next;
107143 	struct sched_entity *last;
107144 	struct sched_entity *skip;
107145 	unsigned int nr_spread_over;
107146 	long: 64;
107147 	long: 64;
107148 	long: 64;
107149 	struct sched_avg avg;
107150 	struct {
107151 		raw_spinlock_t lock;
107152 		int nr;
107153 		long unsigned int load_avg;
107154 		long unsigned int util_avg;
107155 		long unsigned int runnable_avg;
107156 		long: 64;
107157 		long: 64;
107158 		long: 64;
107159 		long: 64;
107160 		long: 64;
107161 		long: 64;
107162 		long: 64;
107163 		long: 64;
107164 		long: 64;
107165 		long: 64;
107166 		long: 64;
107167 		long: 64;
107168 	} removed;
107169 	long unsigned int tg_load_avg_contrib;
107170 	long int propagate;
107171 	long int prop_runnable_sum;
107172 	long unsigned int h_load;
107173 	u64 last_h_load_update;
107174 	struct sched_entity *h_load_next;
107175 	struct rq *rq;
107176 	int on_list;
107177 	struct list_head leaf_cfs_rq_list;
107178 	struct task_group *tg;
107179 	int idle;
107180 	long: 64;
107181 	long: 64;
107182 	long: 64;
107183 	long: 64;
107184 };
107185 
107186 struct cfs_bandwidth {};
107187 
107188 struct task_group {
107189 	struct cgroup_subsys_state css;
107190 	struct sched_entity **se;
107191 	struct cfs_rq **cfs_rq;
107192 	long unsigned int shares;
107193 	int idle;
107194 	long: 64;
107195 	long: 64;
107196 	long: 64;
107197 	atomic_long_t load_avg;
107198 	struct callback_head rcu;
107199 	struct list_head list;
107200 	struct task_group *parent;
107201 	struct list_head siblings;
107202 	struct list_head children;
107203 	struct cfs_bandwidth cfs_bandwidth;
107204 	long: 64;
107205 	long: 64;
107206 	long: 64;
107207 	long: 64;
107208 	long: 64;
107209 	long: 64;
107210 };
107211 
107212 struct numa_group {
107213 	refcount_t refcount;
107214 	spinlock_t lock;
107215 	int nr_tasks;
107216 	pid_t gid;
107217 	int active_nodes;
107218 	struct callback_head rcu;
107219 	long unsigned int total_faults;
107220 	long unsigned int max_faults_cpu;
107221 	long unsigned int faults[0];
107222 };
107223 
107224 enum cpu_idle_type {
107225 	CPU_IDLE = 0,
107226 	CPU_NOT_IDLE = 1,
107227 	CPU_NEWLY_IDLE = 2,
107228 	CPU_MAX_IDLE_TYPES = 3,
107229 };
107230 
107231 enum {
107232 	SD_BALANCE_NEWIDLE = 1,
107233 	SD_BALANCE_EXEC = 2,
107234 	SD_BALANCE_FORK = 4,
107235 	SD_BALANCE_WAKE = 8,
107236 	SD_WAKE_AFFINE = 16,
107237 	SD_ASYM_CPUCAPACITY = 32,
107238 	SD_ASYM_CPUCAPACITY_FULL = 64,
107239 	SD_SHARE_CPUCAPACITY = 128,
107240 	SD_SHARE_PKG_RESOURCES = 256,
107241 	SD_SERIALIZE = 512,
107242 	SD_ASYM_PACKING = 1024,
107243 	SD_PREFER_SIBLING = 2048,
107244 	SD_OVERLAP = 4096,
107245 	SD_NUMA = 8192,
107246 };
107247 
107248 struct sched_domain_shared {
107249 	atomic_t ref;
107250 	atomic_t nr_busy_cpus;
107251 	int has_idle_cores;
107252 	int nr_idle_scan;
107253 };
107254 
107255 struct sched_group;
107256 
107257 struct sched_domain {
107258 	struct sched_domain *parent;
107259 	struct sched_domain *child;
107260 	struct sched_group *groups;
107261 	long unsigned int min_interval;
107262 	long unsigned int max_interval;
107263 	unsigned int busy_factor;
107264 	unsigned int imbalance_pct;
107265 	unsigned int cache_nice_tries;
107266 	unsigned int imb_numa_nr;
107267 	int nohz_idle;
107268 	int flags;
107269 	int level;
107270 	long unsigned int last_balance;
107271 	unsigned int balance_interval;
107272 	unsigned int nr_balance_failed;
107273 	u64 max_newidle_lb_cost;
107274 	long unsigned int last_decay_max_lb_cost;
107275 	u64 avg_scan_cost;
107276 	char *name;
107277 	union {
107278 		void *private;
107279 		struct callback_head rcu;
107280 	};
107281 	struct sched_domain_shared *shared;
107282 	unsigned int span_weight;
107283 	long unsigned int span[0];
107284 };
107285 
107286 struct sched_group_capacity;
107287 
107288 struct sched_group {
107289 	struct sched_group *next;
107290 	atomic_t ref;
107291 	unsigned int group_weight;
107292 	struct sched_group_capacity *sgc;
107293 	int asym_prefer_cpu;
107294 	int flags;
107295 	long unsigned int cpumask[0];
107296 };
107297 
107298 struct sched_group_capacity {
107299 	atomic_t ref;
107300 	long unsigned int capacity;
107301 	long unsigned int min_capacity;
107302 	long unsigned int max_capacity;
107303 	long unsigned int next_update;
107304 	int imbalance;
107305 	int id;
107306 	long unsigned int cpumask[0];
107307 };
107308 
107309 struct em_perf_state {
107310 	long unsigned int frequency;
107311 	long unsigned int power;
107312 	long unsigned int cost;
107313 	long unsigned int flags;
107314 };
107315 
107316 struct em_perf_domain {
107317 	struct em_perf_state *table;
107318 	int nr_perf_states;
107319 	long unsigned int flags;
107320 	long unsigned int cpus[0];
107321 };
107322 
107323 enum sched_tunable_scaling {
107324 	SCHED_TUNABLESCALING_NONE = 0,
107325 	SCHED_TUNABLESCALING_LOG = 1,
107326 	SCHED_TUNABLESCALING_LINEAR = 2,
107327 	SCHED_TUNABLESCALING_END = 3,
107328 };
107329 
107330 struct cpudl_item {
107331 	u64 dl;
107332 	int cpu;
107333 	int idx;
107334 };
107335 
107336 struct rt_prio_array {
107337 	long unsigned int bitmap[2];
107338 	struct list_head queue[100];
107339 };
107340 
107341 struct rt_rq {
107342 	struct rt_prio_array active;
107343 	unsigned int rt_nr_running;
107344 	unsigned int rr_nr_running;
107345 	struct {
107346 		int curr;
107347 		int next;
107348 	} highest_prio;
107349 	unsigned int rt_nr_migratory;
107350 	unsigned int rt_nr_total;
107351 	int overloaded;
107352 	struct plist_head pushable_tasks;
107353 	int rt_queued;
107354 	int rt_throttled;
107355 	u64 rt_time;
107356 	u64 rt_runtime;
107357 	raw_spinlock_t rt_runtime_lock;
107358 };
107359 
107360 struct dl_rq {
107361 	struct rb_root_cached root;
107362 	unsigned int dl_nr_running;
107363 	struct {
107364 		u64 curr;
107365 		u64 next;
107366 	} earliest_dl;
107367 	unsigned int dl_nr_migratory;
107368 	int overloaded;
107369 	struct rb_root_cached pushable_dl_tasks_root;
107370 	u64 running_bw;
107371 	u64 this_bw;
107372 	u64 extra_bw;
107373 	u64 bw_ratio;
107374 };
107375 
107376 struct rq {
107377 	raw_spinlock_t __lock;
107378 	unsigned int nr_running;
107379 	unsigned int nr_numa_running;
107380 	unsigned int nr_preferred_running;
107381 	unsigned int numa_migrate_on;
107382 	long unsigned int last_blocked_load_update_tick;
107383 	unsigned int has_blocked_load;
107384 	long: 64;
107385 	long: 64;
107386 	long: 64;
107387 	call_single_data_t nohz_csd;
107388 	unsigned int nohz_tick_stopped;
107389 	atomic_t nohz_flags;
107390 	unsigned int ttwu_pending;
107391 	u64 nr_switches;
107392 	long: 64;
107393 	struct cfs_rq cfs;
107394 	struct rt_rq rt;
107395 	struct dl_rq dl;
107396 	struct list_head leaf_cfs_rq_list;
107397 	struct list_head *tmp_alone_branch;
107398 	unsigned int nr_uninterruptible;
107399 	struct task_struct *curr;
107400 	struct task_struct *idle;
107401 	struct task_struct *stop;
107402 	long unsigned int next_balance;
107403 	struct mm_struct *prev_mm;
107404 	unsigned int clock_update_flags;
107405 	u64 clock;
107406 	long: 64;
107407 	long: 64;
107408 	long: 64;
107409 	long: 64;
107410 	long: 64;
107411 	u64 clock_task;
107412 	u64 clock_pelt;
107413 	long unsigned int lost_idle_time;
107414 	u64 clock_pelt_idle;
107415 	u64 clock_idle;
107416 	atomic_t nr_iowait;
107417 	u64 last_seen_need_resched_ns;
107418 	int ticks_without_resched;
107419 	int membarrier_state;
107420 	struct root_domain *rd;
107421 	struct sched_domain *sd;
107422 	long unsigned int cpu_capacity;
107423 	long unsigned int cpu_capacity_orig;
107424 	struct callback_head *balance_callback;
107425 	unsigned char nohz_idle_balance;
107426 	unsigned char idle_balance;
107427 	long unsigned int misfit_task_load;
107428 	int active_balance;
107429 	int push_cpu;
107430 	struct cpu_stop_work active_balance_work;
107431 	int cpu;
107432 	int online;
107433 	struct list_head cfs_tasks;
107434 	long: 64;
107435 	long: 64;
107436 	long: 64;
107437 	long: 64;
107438 	long: 64;
107439 	long: 64;
107440 	long: 64;
107441 	struct sched_avg avg_rt;
107442 	struct sched_avg avg_dl;
107443 	u64 idle_stamp;
107444 	u64 avg_idle;
107445 	long unsigned int wake_stamp;
107446 	u64 wake_avg_idle;
107447 	u64 max_idle_balance_cost;
107448 	struct rcuwait hotplug_wait;
107449 	long unsigned int calc_load_update;
107450 	long int calc_load_active;
107451 	call_single_data_t hrtick_csd;
107452 	struct hrtimer hrtick_timer;
107453 	ktime_t hrtick_time;
107454 	struct cpuidle_state *idle_state;
107455 	unsigned int nr_pinned;
107456 	unsigned int push_busy;
107457 	struct cpu_stop_work push_work;
107458 	long: 64;
107459 	long: 64;
107460 	long: 64;
107461 };
107462 
107463 struct perf_domain {
107464 	struct em_perf_domain *em_pd;
107465 	struct perf_domain *next;
107466 	struct callback_head rcu;
107467 };
107468 
107469 struct rq_flags {
107470 	long unsigned int flags;
107471 	struct pin_cookie cookie;
107472 	unsigned int clock_update_flags;
107473 };
107474 
107475 enum numa_topology_type {
107476 	NUMA_DIRECT = 0,
107477 	NUMA_GLUELESS_MESH = 1,
107478 	NUMA_BACKPLANE = 2,
107479 };
107480 
107481 enum numa_faults_stats {
107482 	NUMA_MEM = 0,
107483 	NUMA_CPU = 1,
107484 	NUMA_MEMBUF = 2,
107485 	NUMA_CPUBUF = 3,
107486 };
107487 
107488 enum {
107489 	__SCHED_FEAT_GENTLE_FAIR_SLEEPERS = 0,
107490 	__SCHED_FEAT_START_DEBIT = 1,
107491 	__SCHED_FEAT_NEXT_BUDDY = 2,
107492 	__SCHED_FEAT_LAST_BUDDY = 3,
107493 	__SCHED_FEAT_CACHE_HOT_BUDDY = 4,
107494 	__SCHED_FEAT_WAKEUP_PREEMPTION = 5,
107495 	__SCHED_FEAT_HRTICK = 6,
107496 	__SCHED_FEAT_HRTICK_DL = 7,
107497 	__SCHED_FEAT_DOUBLE_TICK = 8,
107498 	__SCHED_FEAT_NONTASK_CAPACITY = 9,
107499 	__SCHED_FEAT_TTWU_QUEUE = 10,
107500 	__SCHED_FEAT_SIS_PROP = 11,
107501 	__SCHED_FEAT_SIS_UTIL = 12,
107502 	__SCHED_FEAT_WARN_DOUBLE_CLOCK = 13,
107503 	__SCHED_FEAT_RT_PUSH_IPI = 14,
107504 	__SCHED_FEAT_RT_RUNTIME_SHARE = 15,
107505 	__SCHED_FEAT_LB_MIN = 16,
107506 	__SCHED_FEAT_ATTACH_AGE_LOAD = 17,
107507 	__SCHED_FEAT_WA_IDLE = 18,
107508 	__SCHED_FEAT_WA_WEIGHT = 19,
107509 	__SCHED_FEAT_WA_BIAS = 20,
107510 	__SCHED_FEAT_UTIL_EST = 21,
107511 	__SCHED_FEAT_UTIL_EST_FASTUP = 22,
107512 	__SCHED_FEAT_LATENCY_WARN = 23,
107513 	__SCHED_FEAT_ALT_PERIOD = 24,
107514 	__SCHED_FEAT_BASE_SLICE = 25,
107515 	__SCHED_FEAT_NR = 26,
107516 };
107517 
107518 enum cpu_util_type {
107519 	FREQUENCY_UTIL = 0,
107520 	ENERGY_UTIL = 1,
107521 };
107522 
107523 enum numa_type {
107524 	node_has_spare = 0,
107525 	node_fully_busy = 1,
107526 	node_overloaded = 2,
107527 };
107528 
107529 struct numa_stats {
107530 	long unsigned int load;
107531 	long unsigned int runnable;
107532 	long unsigned int util;
107533 	long unsigned int compute_capacity;
107534 	unsigned int nr_running;
107535 	unsigned int weight;
107536 	enum numa_type node_type;
107537 	int idle_cpu;
107538 };
107539 
107540 struct task_numa_env {
107541 	struct task_struct *p;
107542 	int src_cpu;
107543 	int src_nid;
107544 	int dst_cpu;
107545 	int dst_nid;
107546 	int imb_numa_nr;
107547 	struct numa_stats src_stats;
107548 	struct numa_stats dst_stats;
107549 	int imbalance_pct;
107550 	int dist;
107551 	struct task_struct *best_task;
107552 	long int best_imp;
107553 	int best_cpu;
107554 };
107555 
107556 struct energy_env {
107557 	long unsigned int task_busy_time;
107558 	long unsigned int pd_busy_time;
107559 	long unsigned int cpu_cap;
107560 	long unsigned int pd_cap;
107561 };
107562 
107563 enum fbq_type {
107564 	regular = 0,
107565 	remote = 1,
107566 	all = 2,
107567 };
107568 
107569 enum group_type {
107570 	group_has_spare = 0,
107571 	group_fully_busy = 1,
107572 	group_misfit_task = 2,
107573 	group_asym_packing = 3,
107574 	group_imbalanced = 4,
107575 	group_overloaded = 5,
107576 };
107577 
107578 enum migration_type {
107579 	migrate_load = 0,
107580 	migrate_util = 1,
107581 	migrate_task = 2,
107582 	migrate_misfit = 3,
107583 };
107584 
107585 struct lb_env {
107586 	struct sched_domain *sd;
107587 	struct rq *src_rq;
107588 	int src_cpu;
107589 	int dst_cpu;
107590 	struct rq *dst_rq;
107591 	struct cpumask *dst_grpmask;
107592 	int new_dst_cpu;
107593 	enum cpu_idle_type idle;
107594 	long int imbalance;
107595 	struct cpumask *cpus;
107596 	unsigned int flags;
107597 	unsigned int loop;
107598 	unsigned int loop_break;
107599 	unsigned int loop_max;
107600 	enum fbq_type fbq_type;
107601 	enum migration_type migration_type;
107602 	struct list_head tasks;
107603 };
107604 
107605 struct sg_lb_stats {
107606 	long unsigned int avg_load;
107607 	long unsigned int group_load;
107608 	long unsigned int group_capacity;
107609 	long unsigned int group_util;
107610 	long unsigned int group_runnable;
107611 	unsigned int sum_nr_running;
107612 	unsigned int sum_h_nr_running;
107613 	unsigned int idle_cpus;
107614 	unsigned int group_weight;
107615 	enum group_type group_type;
107616 	unsigned int group_asym_packing;
107617 	long unsigned int group_misfit_task_load;
107618 	unsigned int nr_numa_running;
107619 	unsigned int nr_preferred_running;
107620 };
107621 
107622 struct sd_lb_stats {
107623 	struct sched_group *busiest;
107624 	struct sched_group *local;
107625 	long unsigned int total_load;
107626 	long unsigned int total_capacity;
107627 	long unsigned int avg_load;
107628 	unsigned int prefer_sibling;
107629 	struct sg_lb_stats busiest_stat;
107630 	struct sg_lb_stats local_stat;
107631 };
107632 
107633 struct taint_flag {
107634 	char c_true;
107635 	char c_false;
107636 	bool module;
107637 };
107638 
107639 enum kernel_load_data_id {
107640 	LOADING_UNKNOWN = 0,
107641 	LOADING_FIRMWARE = 1,
107642 	LOADING_MODULE = 2,
107643 	LOADING_KEXEC_IMAGE = 3,
107644 	LOADING_KEXEC_INITRAMFS = 4,
107645 	LOADING_POLICY = 5,
107646 	LOADING_X509_CERTIFICATE = 6,
107647 	LOADING_MAX_ID = 7,
107648 };
107649 
107650 struct _ddebug {
107651 	const char *modname;
107652 	const char *function;
107653 	const char *filename;
107654 	const char *format;
107655 	unsigned int lineno: 18;
107656 	unsigned int flags: 8;
107657 	union {
107658 		struct static_key_true dd_key_true;
107659 		struct static_key_false dd_key_false;
107660 	} key;
107661 };
107662 
107663 enum mod_license {
107664 	NOT_GPL_ONLY = 0,
107665 	GPL_ONLY = 1,
107666 };
107667 
107668 struct find_symbol_arg {
107669 	const char *name;
107670 	bool gplok;
107671 	bool warn;
107672 	struct module *owner;
107673 	const s32 *crc;
107674 	const struct kernel_symbol *sym;
107675 	enum mod_license license;
107676 };
107677 
107678 struct trace_event_raw_module_load {
107679 	struct trace_entry ent;
107680 	unsigned int taints;
107681 	u32 __data_loc_name;
107682 	char __data[0];
107683 };
107684 
107685 struct trace_event_raw_module_free {
107686 	struct trace_entry ent;
107687 	u32 __data_loc_name;
107688 	char __data[0];
107689 };
107690 
107691 struct trace_event_raw_module_refcnt {
107692 	struct trace_entry ent;
107693 	long unsigned int ip;
107694 	int refcnt;
107695 	u32 __data_loc_name;
107696 	char __data[0];
107697 };
107698 
107699 struct trace_event_raw_module_request {
107700 	struct trace_entry ent;
107701 	long unsigned int ip;
107702 	bool wait;
107703 	u32 __data_loc_name;
107704 	char __data[0];
107705 };
107706 
107707 struct trace_event_data_offsets_module_load {
107708 	u32 name;
107709 };
107710 
107711 struct trace_event_data_offsets_module_free {
107712 	u32 name;
107713 };
107714 
107715 struct trace_event_data_offsets_module_refcnt {
107716 	u32 name;
107717 };
107718 
107719 struct trace_event_data_offsets_module_request {
107720 	u32 name;
107721 };
107722 
107723 typedef void (*btf_trace_module_load)(void *, struct module *);
107724 
107725 typedef void (*btf_trace_module_free)(void *, struct module *);
107726 
107727 typedef void (*btf_trace_module_get)(void *, struct module *, long unsigned int);
107728 
107729 typedef void (*btf_trace_module_put)(void *, struct module *, long unsigned int);
107730 
107731 typedef void (*btf_trace_module_request)(void *, char *, bool, long unsigned int);
107732 
107733 struct symsearch {
107734 	const struct kernel_symbol *start;
107735 	const struct kernel_symbol *stop;
107736 	const s32 *crcs;
107737 	enum mod_license license;
107738 };
107739 
107740 struct mod_initfree {
107741 	struct llist_node node;
107742 	void *module_init;
107743 };
107744 
107745 struct ce_unbind {
107746 	struct clock_event_device *ce;
107747 	int res;
107748 };
107749 
107750 struct kprobe_blacklist_entry {
107751 	struct list_head list;
107752 	long unsigned int start_addr;
107753 	long unsigned int end_addr;
107754 };
107755 
107756 struct kprobe_insn_page {
107757 	struct list_head list;
107758 	kprobe_opcode_t *insns;
107759 	struct kprobe_insn_cache *cache;
107760 	int nused;
107761 	int ngarbage;
107762 	char slot_used[0];
107763 };
107764 
107765 enum kprobe_slot_state {
107766 	SLOT_CLEAN = 0,
107767 	SLOT_DIRTY = 1,
107768 	SLOT_USED = 2,
107769 };
107770 
107771 enum {
107772 	FTRACE_ITER_FILTER = 1,
107773 	FTRACE_ITER_NOTRACE = 2,
107774 	FTRACE_ITER_PRINTALL = 4,
107775 	FTRACE_ITER_DO_PROBES = 8,
107776 	FTRACE_ITER_PROBE = 16,
107777 	FTRACE_ITER_MOD = 32,
107778 	FTRACE_ITER_ENABLED = 64,
107779 };
107780 
107781 enum error_detector {
107782 	ERROR_DETECTOR_KFENCE = 0,
107783 	ERROR_DETECTOR_KASAN = 1,
107784 	ERROR_DETECTOR_WARN = 2,
107785 };
107786 
107787 struct trace_event_raw_error_report_template {
107788 	struct trace_entry ent;
107789 	enum error_detector error_detector;
107790 	long unsigned int id;
107791 	char __data[0];
107792 };
107793 
107794 struct trace_event_data_offsets_error_report_template {};
107795 
107796 typedef void (*btf_trace_error_report_end)(void *, enum error_detector, long unsigned int);
107797 
107798 struct bpf_spin_lock {
107799 	__u32 val;
107800 };
107801 
107802 struct bpf_timer {
107803 	long: 64;
107804 	long: 64;
107805 };
107806 
107807 struct bpf_pidns_info {
107808 	__u32 pid;
107809 	__u32 tgid;
107810 };
107811 
107812 struct bpf_cg_run_ctx {
107813 	struct bpf_run_ctx run_ctx;
107814 	const struct bpf_prog_array_item *prog_item;
107815 	int retval;
107816 };
107817 
107818 typedef u64 (*btf_bpf_map_lookup_elem)(struct bpf_map *, void *);
107819 
107820 typedef u64 (*btf_bpf_map_update_elem)(struct bpf_map *, void *, void *, u64);
107821 
107822 typedef u64 (*btf_bpf_map_delete_elem)(struct bpf_map *, void *);
107823 
107824 typedef u64 (*btf_bpf_map_push_elem)(struct bpf_map *, void *, u64);
107825 
107826 typedef u64 (*btf_bpf_map_pop_elem)(struct bpf_map *, void *);
107827 
107828 typedef u64 (*btf_bpf_map_peek_elem)(struct bpf_map *, void *);
107829 
107830 typedef u64 (*btf_bpf_map_lookup_percpu_elem)(struct bpf_map *, void *, u32);
107831 
107832 typedef u64 (*btf_bpf_get_smp_processor_id)();
107833 
107834 typedef u64 (*btf_bpf_get_numa_node_id)();
107835 
107836 typedef u64 (*btf_bpf_ktime_get_ns)();
107837 
107838 typedef u64 (*btf_bpf_ktime_get_boot_ns)();
107839 
107840 typedef u64 (*btf_bpf_ktime_get_coarse_ns)();
107841 
107842 typedef u64 (*btf_bpf_get_current_pid_tgid)();
107843 
107844 typedef u64 (*btf_bpf_get_current_uid_gid)();
107845 
107846 typedef u64 (*btf_bpf_get_current_comm)(char *, u32);
107847 
107848 typedef u64 (*btf_bpf_spin_lock)(struct bpf_spin_lock *);
107849 
107850 typedef u64 (*btf_bpf_spin_unlock)(struct bpf_spin_lock *);
107851 
107852 typedef u64 (*btf_bpf_jiffies64)();
107853 
107854 typedef u64 (*btf_bpf_get_current_cgroup_id)();
107855 
107856 typedef u64 (*btf_bpf_get_current_ancestor_cgroup_id)(int);
107857 
107858 typedef u64 (*btf_bpf_get_local_storage)(struct bpf_map *, u64);
107859 
107860 typedef u64 (*btf_bpf_strtol)(const char *, size_t, u64, long int *);
107861 
107862 typedef u64 (*btf_bpf_strtoul)(const char *, size_t, u64, long unsigned int *);
107863 
107864 typedef u64 (*btf_bpf_strncmp)(const char *, u32, const char *);
107865 
107866 typedef u64 (*btf_bpf_get_ns_current_pid_tgid)(u64, u64, struct bpf_pidns_info *, u32);
107867 
107868 typedef u64 (*btf_bpf_event_output_data)(void *, struct bpf_map *, u64, void *, u64);
107869 
107870 typedef u64 (*btf_bpf_copy_from_user)(void *, u32, const void *);
107871 
107872 typedef u64 (*btf_bpf_copy_from_user_task)(void *, u32, const void *, struct task_struct *, u64);
107873 
107874 typedef u64 (*btf_bpf_per_cpu_ptr)(const void *, u32);
107875 
107876 typedef u64 (*btf_bpf_this_cpu_ptr)(const void *);
107877 
107878 struct bpf_bprintf_buffers {
107879 	char tmp_bufs[1536];
107880 };
107881 
107882 typedef u64 (*btf_bpf_snprintf)(char *, u32, char *, const void *, u32);
107883 
107884 struct bpf_hrtimer {
107885 	struct hrtimer timer;
107886 	struct bpf_map *map;
107887 	struct bpf_prog *prog;
107888 	void *callback_fn;
107889 	void *value;
107890 };
107891 
107892 struct bpf_timer_kern {
107893 	struct bpf_hrtimer *timer;
107894 	struct bpf_spin_lock lock;
107895 };
107896 
107897 typedef u64 (*btf_bpf_timer_init)(struct bpf_timer_kern *, struct bpf_map *, u64);
107898 
107899 typedef u64 (*btf_bpf_timer_set_callback)(struct bpf_timer_kern *, void *, struct bpf_prog_aux *);
107900 
107901 typedef u64 (*btf_bpf_timer_start)(struct bpf_timer_kern *, u64, u64);
107902 
107903 typedef u64 (*btf_bpf_timer_cancel)(struct bpf_timer_kern *);
107904 
107905 typedef u64 (*btf_bpf_kptr_xchg)(void *, void *);
107906 
107907 typedef u64 (*btf_bpf_dynptr_from_mem)(void *, u32, u64, struct bpf_dynptr_kern *);
107908 
107909 typedef u64 (*btf_bpf_dynptr_read)(void *, u32, struct bpf_dynptr_kern *, u32, u64);
107910 
107911 typedef u64 (*btf_bpf_dynptr_write)(struct bpf_dynptr_kern *, u32, void *, u32, u64);
107912 
107913 typedef u64 (*btf_bpf_dynptr_data)(struct bpf_dynptr_kern *, u32, u32);
107914 
107915 struct bpf_devmap_val {
107916 	__u32 ifindex;
107917 	union {
107918 		int fd;
107919 		__u32 id;
107920 	} bpf_prog;
107921 };
107922 
107923 struct xdp_dev_bulk_queue {
107924 	struct xdp_frame *q[16];
107925 	struct list_head flush_node;
107926 	struct net_device *dev;
107927 	struct net_device *dev_rx;
107928 	struct bpf_prog *xdp_prog;
107929 	unsigned int count;
107930 };
107931 
107932 struct bpf_dtab;
107933 
107934 struct bpf_dtab_netdev {
107935 	struct net_device *dev;
107936 	struct hlist_node index_hlist;
107937 	struct bpf_dtab *dtab;
107938 	struct bpf_prog *xdp_prog;
107939 	struct callback_head rcu;
107940 	unsigned int idx;
107941 	struct bpf_devmap_val val;
107942 };
107943 
107944 struct bpf_dtab {
107945 	struct bpf_map map;
107946 	struct bpf_dtab_netdev **netdev_map;
107947 	struct list_head list;
107948 	struct hlist_head *dev_index_head;
107949 	spinlock_t index_lock;
107950 	unsigned int items;
107951 	u32 n_buckets;
107952 	long: 64;
107953 	long: 64;
107954 	long: 64;
107955 	long: 64;
107956 	long: 64;
107957 	long: 64;
107958 	long: 64;
107959 	long: 64;
107960 	long: 64;
107961 	long: 64;
107962 };
107963 
107964 enum ctx_state {
107965 	CONTEXT_DISABLED = -1,
107966 	CONTEXT_KERNEL = 0,
107967 	CONTEXT_IDLE = 1,
107968 	CONTEXT_USER = 2,
107969 	CONTEXT_GUEST = 3,
107970 	CONTEXT_MAX = 4,
107971 };
107972 
107973 struct context_tracking {
107974 	atomic_t state;
107975 	long int dynticks_nesting;
107976 	long int dynticks_nmi_nesting;
107977 };
107978 
107979 struct alloc_context {
107980 	struct zonelist *zonelist;
107981 	nodemask_t *nodemask;
107982 	struct zoneref *preferred_zoneref;
107983 	int migratetype;
107984 	enum zone_type highest_zoneidx;
107985 	bool spread_dirty_pages;
107986 };
107987 
107988 struct trace_event_raw_mm_compaction_isolate_template {
107989 	struct trace_entry ent;
107990 	long unsigned int start_pfn;
107991 	long unsigned int end_pfn;
107992 	long unsigned int nr_scanned;
107993 	long unsigned int nr_taken;
107994 	char __data[0];
107995 };
107996 
107997 struct trace_event_raw_mm_compaction_migratepages {
107998 	struct trace_entry ent;
107999 	long unsigned int nr_migrated;
108000 	long unsigned int nr_failed;
108001 	char __data[0];
108002 };
108003 
108004 struct trace_event_raw_mm_compaction_begin {
108005 	struct trace_entry ent;
108006 	long unsigned int zone_start;
108007 	long unsigned int migrate_pfn;
108008 	long unsigned int free_pfn;
108009 	long unsigned int zone_end;
108010 	bool sync;
108011 	char __data[0];
108012 };
108013 
108014 struct trace_event_raw_mm_compaction_end {
108015 	struct trace_entry ent;
108016 	long unsigned int zone_start;
108017 	long unsigned int migrate_pfn;
108018 	long unsigned int free_pfn;
108019 	long unsigned int zone_end;
108020 	bool sync;
108021 	int status;
108022 	char __data[0];
108023 };
108024 
108025 struct trace_event_raw_mm_compaction_try_to_compact_pages {
108026 	struct trace_entry ent;
108027 	int order;
108028 	long unsigned int gfp_mask;
108029 	int prio;
108030 	char __data[0];
108031 };
108032 
108033 struct trace_event_raw_mm_compaction_suitable_template {
108034 	struct trace_entry ent;
108035 	int nid;
108036 	enum zone_type idx;
108037 	int order;
108038 	int ret;
108039 	char __data[0];
108040 };
108041 
108042 struct trace_event_raw_mm_compaction_defer_template {
108043 	struct trace_entry ent;
108044 	int nid;
108045 	enum zone_type idx;
108046 	int order;
108047 	unsigned int considered;
108048 	unsigned int defer_shift;
108049 	int order_failed;
108050 	char __data[0];
108051 };
108052 
108053 struct trace_event_raw_mm_compaction_kcompactd_sleep {
108054 	struct trace_entry ent;
108055 	int nid;
108056 	char __data[0];
108057 };
108058 
108059 struct trace_event_raw_kcompactd_wake_template {
108060 	struct trace_entry ent;
108061 	int nid;
108062 	int order;
108063 	enum zone_type highest_zoneidx;
108064 	char __data[0];
108065 };
108066 
108067 struct trace_event_data_offsets_mm_compaction_isolate_template {};
108068 
108069 struct trace_event_data_offsets_mm_compaction_migratepages {};
108070 
108071 struct trace_event_data_offsets_mm_compaction_begin {};
108072 
108073 struct trace_event_data_offsets_mm_compaction_end {};
108074 
108075 struct trace_event_data_offsets_mm_compaction_try_to_compact_pages {};
108076 
108077 struct trace_event_data_offsets_mm_compaction_suitable_template {};
108078 
108079 struct trace_event_data_offsets_mm_compaction_defer_template {};
108080 
108081 struct trace_event_data_offsets_mm_compaction_kcompactd_sleep {};
108082 
108083 struct trace_event_data_offsets_kcompactd_wake_template {};
108084 
108085 typedef void (*btf_trace_mm_compaction_isolate_migratepages)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
108086 
108087 typedef void (*btf_trace_mm_compaction_isolate_freepages)(void *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
108088 
108089 typedef void (*btf_trace_mm_compaction_migratepages)(void *, struct compact_control *, unsigned int);
108090 
108091 typedef void (*btf_trace_mm_compaction_begin)(void *, struct compact_control *, long unsigned int, long unsigned int, bool);
108092 
108093 typedef void (*btf_trace_mm_compaction_end)(void *, struct compact_control *, long unsigned int, long unsigned int, bool, int);
108094 
108095 typedef void (*btf_trace_mm_compaction_try_to_compact_pages)(void *, int, gfp_t, int);
108096 
108097 typedef void (*btf_trace_mm_compaction_finished)(void *, struct zone *, int, int);
108098 
108099 typedef void (*btf_trace_mm_compaction_suitable)(void *, struct zone *, int, int);
108100 
108101 typedef void (*btf_trace_mm_compaction_deferred)(void *, struct zone *, int);
108102 
108103 typedef void (*btf_trace_mm_compaction_defer_compaction)(void *, struct zone *, int);
108104 
108105 typedef void (*btf_trace_mm_compaction_defer_reset)(void *, struct zone *, int);
108106 
108107 typedef void (*btf_trace_mm_compaction_kcompactd_sleep)(void *, int);
108108 
108109 typedef void (*btf_trace_mm_compaction_wakeup_kcompactd)(void *, int, int, enum zone_type);
108110 
108111 typedef void (*btf_trace_mm_compaction_kcompactd_wake)(void *, int, int, enum zone_type);
108112 
108113 typedef enum {
108114 	ISOLATE_ABORT = 0,
108115 	ISOLATE_NONE = 1,
108116 	ISOLATE_SUCCESS = 2,
108117 } isolate_migrate_t;
108118 
108119 struct dma_pool {
108120 	struct list_head page_list;
108121 	spinlock_t lock;
108122 	size_t size;
108123 	struct device *dev;
108124 	size_t allocation;
108125 	size_t boundary;
108126 	char name[32];
108127 	struct list_head pools;
108128 };
108129 
108130 struct dma_page {
108131 	struct list_head page_list;
108132 	void *vaddr;
108133 	dma_addr_t dma;
108134 	unsigned int in_use;
108135 	unsigned int offset;
108136 };
108137 
108138 struct demotion_nodes {
108139 	short unsigned int nr;
108140 	short int nodes[15];
108141 };
108142 
108143 struct saved {
108144 	struct path link;
108145 	struct delayed_call done;
108146 	const char *name;
108147 	unsigned int seq;
108148 };
108149 
108150 struct nameidata {
108151 	struct path path;
108152 	struct qstr last;
108153 	struct path root;
108154 	struct inode *inode;
108155 	unsigned int flags;
108156 	unsigned int state;
108157 	unsigned int seq;
108158 	unsigned int next_seq;
108159 	unsigned int m_seq;
108160 	unsigned int r_seq;
108161 	int last_type;
108162 	unsigned int depth;
108163 	int total_link_count;
108164 	struct saved *stack;
108165 	struct saved internal[2];
108166 	struct filename *name;
108167 	struct nameidata *saved;
108168 	unsigned int root_seq;
108169 	int dfd;
108170 	kuid_t dir_uid;
108171 	umode_t dir_mode;
108172 };
108173 
108174 struct renamedata {
108175 	struct user_namespace *old_mnt_userns;
108176 	struct inode *old_dir;
108177 	struct dentry *old_dentry;
108178 	struct user_namespace *new_mnt_userns;
108179 	struct inode *new_dir;
108180 	struct dentry *new_dentry;
108181 	struct inode **delegated_inode;
108182 	unsigned int flags;
108183 };
108184 
108185 enum {
108186 	LAST_NORM = 0,
108187 	LAST_ROOT = 1,
108188 	LAST_DOT = 2,
108189 	LAST_DOTDOT = 3,
108190 };
108191 
108192 enum {
108193 	WALK_TRAILING = 1,
108194 	WALK_MORE = 2,
108195 	WALK_NOFOLLOW = 4,
108196 };
108197 
108198 struct signalfd_siginfo {
108199 	__u32 ssi_signo;
108200 	__s32 ssi_errno;
108201 	__s32 ssi_code;
108202 	__u32 ssi_pid;
108203 	__u32 ssi_uid;
108204 	__s32 ssi_fd;
108205 	__u32 ssi_tid;
108206 	__u32 ssi_band;
108207 	__u32 ssi_overrun;
108208 	__u32 ssi_trapno;
108209 	__s32 ssi_status;
108210 	__s32 ssi_int;
108211 	__u64 ssi_ptr;
108212 	__u64 ssi_utime;
108213 	__u64 ssi_stime;
108214 	__u64 ssi_addr;
108215 	__u16 ssi_addr_lsb;
108216 	__u16 __pad2;
108217 	__s32 ssi_syscall;
108218 	__u64 ssi_call_addr;
108219 	__u32 ssi_arch;
108220 	__u8 __pad[28];
108221 };
108222 
108223 struct signalfd_ctx {
108224 	sigset_t sigmask;
108225 };
108226 
108227 struct file_handle {
108228 	__u32 handle_bytes;
108229 	int handle_type;
108230 	unsigned char f_handle[0];
108231 };
108232 
108233 enum kcore_type {
108234 	KCORE_TEXT = 0,
108235 	KCORE_VMALLOC = 1,
108236 	KCORE_RAM = 2,
108237 	KCORE_VMEMMAP = 3,
108238 	KCORE_USER = 4,
108239 };
108240 
108241 struct kcore_list {
108242 	struct list_head list;
108243 	long unsigned int addr;
108244 	size_t size;
108245 	int type;
108246 };
108247 
108248 struct pts_mount_opts {
108249 	int setuid;
108250 	int setgid;
108251 	kuid_t uid;
108252 	kgid_t gid;
108253 	umode_t mode;
108254 	umode_t ptmxmode;
108255 	int reserve;
108256 	int max;
108257 };
108258 
108259 enum {
108260 	Opt_uid___5 = 0,
108261 	Opt_gid___6 = 1,
108262 	Opt_mode___4 = 2,
108263 	Opt_ptmxmode = 3,
108264 	Opt_newinstance = 4,
108265 	Opt_max = 5,
108266 	Opt_err___4 = 6,
108267 };
108268 
108269 struct pts_fs_info {
108270 	struct ida allocated_ptys;
108271 	struct pts_mount_opts mount_opts;
108272 	struct super_block *sb;
108273 	struct dentry *ptmx_dentry;
108274 };
108275 
108276 struct ext4_xattr_ibody_header {
108277 	__le32 h_magic;
108278 };
108279 
108280 struct ext4_xattr_inode_array {
108281 	unsigned int count;
108282 	struct inode *inodes[0];
108283 };
108284 
108285 struct mpage_da_data {
108286 	struct inode *inode;
108287 	struct writeback_control *wbc;
108288 	long unsigned int first_page;
108289 	long unsigned int next_page;
108290 	long unsigned int last_page;
108291 	struct ext4_map_blocks map;
108292 	struct ext4_io_submit io_submit;
108293 	unsigned int do_map: 1;
108294 	unsigned int scanned_until_end: 1;
108295 };
108296 
108297 struct fscrypt_info;
108298 
108299 struct ext2_mount_options {
108300 	long unsigned int s_mount_opt;
108301 	kuid_t s_resuid;
108302 	kgid_t s_resgid;
108303 };
108304 
108305 enum {
108306 	Opt_bsd_df___2 = 0,
108307 	Opt_minix_df___2 = 1,
108308 	Opt_grpid___2 = 2,
108309 	Opt_nogrpid___2 = 3,
108310 	Opt_resgid___2 = 4,
108311 	Opt_resuid___2 = 5,
108312 	Opt_sb___3 = 6,
108313 	Opt_err_cont___2 = 7,
108314 	Opt_err_panic___2 = 8,
108315 	Opt_err_ro___2 = 9,
108316 	Opt_nouid32___2 = 10,
108317 	Opt_debug___3 = 11,
108318 	Opt_oldalloc = 12,
108319 	Opt_orlov = 13,
108320 	Opt_nobh = 14,
108321 	Opt_user_xattr___2 = 15,
108322 	Opt_nouser_xattr___2 = 16,
108323 	Opt_acl___3 = 17,
108324 	Opt_noacl___2 = 18,
108325 	Opt_xip = 19,
108326 	Opt_dax___2 = 20,
108327 	Opt_ignore___2 = 21,
108328 	Opt_err___5 = 22,
108329 	Opt_quota___2 = 23,
108330 	Opt_usrquota___2 = 24,
108331 	Opt_grpquota___2 = 25,
108332 	Opt_reservation = 26,
108333 	Opt_noreservation = 27,
108334 };
108335 
108336 enum {
108337 	NFS_DELEGATION_NEED_RECLAIM = 0,
108338 	NFS_DELEGATION_RETURN = 1,
108339 	NFS_DELEGATION_RETURN_IF_CLOSED = 2,
108340 	NFS_DELEGATION_REFERENCED = 3,
108341 	NFS_DELEGATION_RETURNING = 4,
108342 	NFS_DELEGATION_REVOKED = 5,
108343 	NFS_DELEGATION_TEST_EXPIRED = 6,
108344 	NFS_DELEGATION_INODE_FREEING = 7,
108345 	NFS_DELEGATION_RETURN_DELAYED = 8,
108346 };
108347 
108348 struct xfs_iext_rec {
108349 	uint64_t lo;
108350 	uint64_t hi;
108351 };
108352 
108353 struct xfs_iext_leaf {
108354 	struct xfs_iext_rec recs[15];
108355 	struct xfs_iext_leaf *prev;
108356 	struct xfs_iext_leaf *next;
108357 };
108358 
108359 enum {
108360 	NODE_SIZE = 256,
108361 	KEYS_PER_NODE = 16,
108362 	RECS_PER_LEAF = 15,
108363 };
108364 
108365 struct xfs_iext_node {
108366 	uint64_t keys[16];
108367 	void *ptrs[16];
108368 };
108369 
108370 typedef uint32_t xfs_aextnum_t;
108371 
108372 struct xfs_legacy_timestamp {
108373 	__be32 t_sec;
108374 	__be32 t_nsec;
108375 };
108376 
108377 struct sem;
108378 
108379 struct sem_queue;
108380 
108381 struct sem_undo;
108382 
108383 struct semid_ds {
108384 	struct ipc_perm sem_perm;
108385 	__kernel_old_time_t sem_otime;
108386 	__kernel_old_time_t sem_ctime;
108387 	struct sem *sem_base;
108388 	struct sem_queue *sem_pending;
108389 	struct sem_queue **sem_pending_last;
108390 	struct sem_undo *undo;
108391 	short unsigned int sem_nsems;
108392 };
108393 
108394 struct sem {
108395 	int semval;
108396 	struct pid *sempid;
108397 	spinlock_t lock;
108398 	struct list_head pending_alter;
108399 	struct list_head pending_const;
108400 	time64_t sem_otime;
108401 	long: 64;
108402 	long: 64;
108403 	long: 64;
108404 	long: 64;
108405 	long: 64;
108406 	long: 64;
108407 	long: 64;
108408 	long: 64;
108409 };
108410 
108411 struct sembuf;
108412 
108413 struct sem_queue {
108414 	struct list_head list;
108415 	struct task_struct *sleeper;
108416 	struct sem_undo *undo;
108417 	struct pid *pid;
108418 	int status;
108419 	struct sembuf *sops;
108420 	struct sembuf *blocking;
108421 	int nsops;
108422 	bool alter;
108423 	bool dupsop;
108424 };
108425 
108426 struct sem_undo {
108427 	struct list_head list_proc;
108428 	struct callback_head rcu;
108429 	struct sem_undo_list *ulp;
108430 	struct list_head list_id;
108431 	int semid;
108432 	short int *semadj;
108433 };
108434 
108435 struct semid64_ds {
108436 	struct ipc64_perm sem_perm;
108437 	long int sem_otime;
108438 	long int sem_ctime;
108439 	long unsigned int sem_nsems;
108440 	long unsigned int __unused3;
108441 	long unsigned int __unused4;
108442 };
108443 
108444 struct sembuf {
108445 	short unsigned int sem_num;
108446 	short int sem_op;
108447 	short int sem_flg;
108448 };
108449 
108450 struct seminfo {
108451 	int semmap;
108452 	int semmni;
108453 	int semmns;
108454 	int semmnu;
108455 	int semmsl;
108456 	int semopm;
108457 	int semume;
108458 	int semusz;
108459 	int semvmx;
108460 	int semaem;
108461 };
108462 
108463 struct sem_undo_list {
108464 	refcount_t refcnt;
108465 	spinlock_t lock;
108466 	struct list_head list_proc;
108467 };
108468 
108469 struct sem_array {
108470 	struct kern_ipc_perm sem_perm;
108471 	time64_t sem_ctime;
108472 	struct list_head pending_alter;
108473 	struct list_head pending_const;
108474 	struct list_head list_id;
108475 	int sem_nsems;
108476 	int complex_count;
108477 	unsigned int use_global_lock;
108478 	long: 64;
108479 	long: 64;
108480 	long: 64;
108481 	long: 64;
108482 	long: 64;
108483 	long: 64;
108484 	long: 64;
108485 	struct sem sems[0];
108486 };
108487 
108488 struct rtattr {
108489 	short unsigned int rta_len;
108490 	short unsigned int rta_type;
108491 };
108492 
108493 struct crypto_cipher_spawn {
108494 	struct crypto_spawn base;
108495 };
108496 
108497 struct skcipher_instance {
108498 	void (*free)(struct skcipher_instance *);
108499 	union {
108500 		struct {
108501 			char head[64];
108502 			struct crypto_instance base;
108503 		} s;
108504 		struct skcipher_alg alg;
108505 	};
108506 };
108507 
108508 struct crypto_skcipher_spawn {
108509 	struct crypto_spawn base;
108510 };
108511 
108512 struct skcipher_ctx_simple {
108513 	struct crypto_cipher *cipher;
108514 };
108515 
108516 struct crypto_report_blkcipher {
108517 	char type[64];
108518 	char geniv[64];
108519 	unsigned int blocksize;
108520 	unsigned int min_keysize;
108521 	unsigned int max_keysize;
108522 	unsigned int ivsize;
108523 };
108524 
108525 enum {
108526 	SKCIPHER_WALK_PHYS = 1,
108527 	SKCIPHER_WALK_SLOW = 2,
108528 	SKCIPHER_WALK_COPY = 4,
108529 	SKCIPHER_WALK_DIFF = 8,
108530 	SKCIPHER_WALK_SLEEP = 16,
108531 };
108532 
108533 struct skcipher_walk_buffer {
108534 	struct list_head entry;
108535 	struct scatter_walk dst;
108536 	unsigned int len;
108537 	u8 *data;
108538 	u8 buffer[0];
108539 };
108540 
108541 struct mq_inflight {
108542 	struct block_device *part;
108543 	unsigned int inflight[2];
108544 };
108545 
108546 struct blk_rq_wait {
108547 	struct completion done;
108548 	blk_status_t ret;
108549 };
108550 
108551 struct flush_busy_ctx_data {
108552 	struct blk_mq_hw_ctx *hctx;
108553 	struct list_head *list;
108554 };
108555 
108556 struct dispatch_rq_data {
108557 	struct blk_mq_hw_ctx *hctx;
108558 	struct request *rq;
108559 };
108560 
108561 enum prep_dispatch {
108562 	PREP_DISPATCH_OK = 0,
108563 	PREP_DISPATCH_NO_TAG = 1,
108564 	PREP_DISPATCH_NO_BUDGET = 2,
108565 };
108566 
108567 struct rq_iter_data {
108568 	struct blk_mq_hw_ctx *hctx;
108569 	bool has_rq;
108570 };
108571 
108572 struct blk_mq_qe_pair {
108573 	struct list_head node;
108574 	struct request_queue *q;
108575 	struct elevator_type *type;
108576 };
108577 
108578 struct io_rename {
108579 	struct file *file;
108580 	int old_dfd;
108581 	int new_dfd;
108582 	struct filename *oldpath;
108583 	struct filename *newpath;
108584 	int flags;
108585 };
108586 
108587 struct io_unlink {
108588 	struct file *file;
108589 	int dfd;
108590 	int flags;
108591 	struct filename *filename;
108592 };
108593 
108594 struct io_mkdir {
108595 	struct file *file;
108596 	int dfd;
108597 	umode_t mode;
108598 	struct filename *filename;
108599 };
108600 
108601 struct io_link {
108602 	struct file *file;
108603 	int old_dfd;
108604 	int new_dfd;
108605 	struct filename *oldpath;
108606 	struct filename *newpath;
108607 	int flags;
108608 };
108609 
108610 struct io_overflow_cqe {
108611 	struct list_head list;
108612 	struct io_uring_cqe cqe;
108613 };
108614 
108615 struct once_work {
108616 	struct work_struct work;
108617 	struct static_key_true *key;
108618 	struct module *module;
108619 };
108620 
108621 struct strarray {
108622 	char **array;
108623 	size_t n;
108624 };
108625 
108626 typedef struct {
108627 	BYTE maxTableLog;
108628 	BYTE tableType;
108629 	BYTE tableLog;
108630 	BYTE reserved;
108631 } DTableDesc;
108632 
108633 typedef struct {
108634 	BYTE byte;
108635 	BYTE nbBits;
108636 } HUF_DEltX1;
108637 
108638 typedef struct {
108639 	U32 rankVal[16];
108640 	U32 rankStart[16];
108641 	U32 statsWksp[218];
108642 	BYTE symbols[256];
108643 	BYTE huffWeight[256];
108644 } HUF_ReadDTableX1_Workspace;
108645 
108646 typedef struct {
108647 	U16 sequence;
108648 	BYTE nbBits;
108649 	BYTE length;
108650 } HUF_DEltX2;
108651 
108652 typedef struct {
108653 	BYTE symbol;
108654 	BYTE weight;
108655 } sortedSymbol_t;
108656 
108657 typedef U32 rankValCol_t[13];
108658 
108659 typedef struct {
108660 	U32 rankVal[156];
108661 	U32 rankStats[13];
108662 	U32 rankStart0[14];
108663 	sortedSymbol_t sortedSymbol[256];
108664 	BYTE weightList[256];
108665 	U32 calleeWksp[218];
108666 } HUF_ReadDTableX2_Workspace;
108667 
108668 typedef struct {
108669 	U32 tableTime;
108670 	U32 decode256Time;
108671 } algo_time_t;
108672 
108673 enum {
108674 	NVME_REG_CAP = 0,
108675 	NVME_REG_VS = 8,
108676 	NVME_REG_INTMS = 12,
108677 	NVME_REG_INTMC = 16,
108678 	NVME_REG_CC = 20,
108679 	NVME_REG_CSTS = 28,
108680 	NVME_REG_NSSR = 32,
108681 	NVME_REG_AQA = 36,
108682 	NVME_REG_ASQ = 40,
108683 	NVME_REG_ACQ = 48,
108684 	NVME_REG_CMBLOC = 56,
108685 	NVME_REG_CMBSZ = 60,
108686 	NVME_REG_BPINFO = 64,
108687 	NVME_REG_BPRSEL = 68,
108688 	NVME_REG_BPMBL = 72,
108689 	NVME_REG_CMBMSC = 80,
108690 	NVME_REG_CRTO = 104,
108691 	NVME_REG_PMRCAP = 3584,
108692 	NVME_REG_PMRCTL = 3588,
108693 	NVME_REG_PMRSTS = 3592,
108694 	NVME_REG_PMREBS = 3596,
108695 	NVME_REG_PMRSWTP = 3600,
108696 	NVME_REG_DBS = 4096,
108697 };
108698 
108699 enum {
108700 	NVME_CC_ENABLE = 1,
108701 	NVME_CC_EN_SHIFT = 0,
108702 	NVME_CC_CSS_SHIFT = 4,
108703 	NVME_CC_MPS_SHIFT = 7,
108704 	NVME_CC_AMS_SHIFT = 11,
108705 	NVME_CC_SHN_SHIFT = 14,
108706 	NVME_CC_IOSQES_SHIFT = 16,
108707 	NVME_CC_IOCQES_SHIFT = 20,
108708 	NVME_CC_CSS_NVM = 0,
108709 	NVME_CC_CSS_CSI = 96,
108710 	NVME_CC_CSS_MASK = 112,
108711 	NVME_CC_AMS_RR = 0,
108712 	NVME_CC_AMS_WRRU = 2048,
108713 	NVME_CC_AMS_VS = 14336,
108714 	NVME_CC_SHN_NONE = 0,
108715 	NVME_CC_SHN_NORMAL = 16384,
108716 	NVME_CC_SHN_ABRUPT = 32768,
108717 	NVME_CC_SHN_MASK = 49152,
108718 	NVME_CC_IOSQES = 393216,
108719 	NVME_CC_IOCQES = 4194304,
108720 	NVME_CC_CRIME = 16777216,
108721 };
108722 
108723 enum {
108724 	NVME_CSTS_RDY = 1,
108725 	NVME_CSTS_CFS = 2,
108726 	NVME_CSTS_NSSRO = 16,
108727 	NVME_CSTS_PP = 32,
108728 	NVME_CSTS_SHST_NORMAL = 0,
108729 	NVME_CSTS_SHST_OCCUR = 4,
108730 	NVME_CSTS_SHST_CMPLT = 8,
108731 	NVME_CSTS_SHST_MASK = 12,
108732 };
108733 
108734 enum {
108735 	NVME_AEN_BIT_NS_ATTR = 8,
108736 	NVME_AEN_BIT_FW_ACT = 9,
108737 	NVME_AEN_BIT_ANA_CHANGE = 11,
108738 	NVME_AEN_BIT_DISC_CHANGE = 31,
108739 };
108740 
108741 enum {
108742 	SWITCHTEC_GAS_MRPC_OFFSET = 0,
108743 	SWITCHTEC_GAS_TOP_CFG_OFFSET = 4096,
108744 	SWITCHTEC_GAS_SW_EVENT_OFFSET = 6144,
108745 	SWITCHTEC_GAS_SYS_INFO_OFFSET = 8192,
108746 	SWITCHTEC_GAS_FLASH_INFO_OFFSET = 8704,
108747 	SWITCHTEC_GAS_PART_CFG_OFFSET = 16384,
108748 	SWITCHTEC_GAS_NTB_OFFSET = 65536,
108749 	SWITCHTEC_GAS_PFF_CSR_OFFSET = 1261568,
108750 };
108751 
108752 enum {
108753 	SWITCHTEC_NTB_REG_INFO_OFFSET = 0,
108754 	SWITCHTEC_NTB_REG_CTRL_OFFSET = 16384,
108755 	SWITCHTEC_NTB_REG_DBMSG_OFFSET = 409600,
108756 };
108757 
108758 struct nt_partition_info {
108759 	u32 xlink_enabled;
108760 	u32 target_part_low;
108761 	u32 target_part_high;
108762 	u32 reserved;
108763 };
108764 
108765 struct ntb_info_regs {
108766 	u8 partition_count;
108767 	u8 partition_id;
108768 	u16 reserved1;
108769 	u64 ep_map;
108770 	u16 requester_id;
108771 	u16 reserved2;
108772 	u32 reserved3[4];
108773 	struct nt_partition_info ntp_info[48];
108774 } __attribute__((packed));
108775 
108776 struct ntb_ctrl_regs {
108777 	u32 partition_status;
108778 	u32 partition_op;
108779 	u32 partition_ctrl;
108780 	u32 bar_setup;
108781 	u32 bar_error;
108782 	u16 lut_table_entries;
108783 	u16 lut_table_offset;
108784 	u32 lut_error;
108785 	u16 req_id_table_size;
108786 	u16 req_id_table_offset;
108787 	u32 req_id_error;
108788 	u32 reserved1[7];
108789 	struct {
108790 		u32 ctl;
108791 		u32 win_size;
108792 		u64 xlate_addr;
108793 	} bar_entry[6];
108794 	struct {
108795 		u32 win_size;
108796 		u32 reserved[3];
108797 	} bar_ext_entry[6];
108798 	u32 reserved2[192];
108799 	u32 req_id_table[512];
108800 	u32 reserved3[256];
108801 	u64 lut_entry[512];
108802 };
108803 
108804 struct pci_dev_reset_methods {
108805 	u16 vendor;
108806 	u16 device;
108807 	int (*reset)(struct pci_dev *, bool);
108808 };
108809 
108810 struct pci_dev_acs_enabled {
108811 	u16 vendor;
108812 	u16 device;
108813 	int (*acs_enabled)(struct pci_dev *, u16);
108814 };
108815 
108816 struct pci_dev_acs_ops {
108817 	u16 vendor;
108818 	u16 device;
108819 	int (*enable_acs)(struct pci_dev *);
108820 	int (*disable_acs_redir)(struct pci_dev *);
108821 };
108822 
108823 struct ldsem_waiter {
108824 	struct list_head list;
108825 	struct task_struct *task;
108826 };
108827 
108828 enum gpiod_flags {
108829 	GPIOD_ASIS = 0,
108830 	GPIOD_IN = 1,
108831 	GPIOD_OUT_LOW = 3,
108832 	GPIOD_OUT_HIGH = 7,
108833 	GPIOD_OUT_LOW_OPEN_DRAIN = 11,
108834 	GPIOD_OUT_HIGH_OPEN_DRAIN = 15,
108835 };
108836 
108837 struct uart_match {
108838 	struct uart_port *port;
108839 	struct uart_driver *driver;
108840 };
108841 
108842 struct fwnode_link {
108843 	struct fwnode_handle *supplier;
108844 	struct list_head s_hook;
108845 	struct fwnode_handle *consumer;
108846 	struct list_head c_hook;
108847 };
108848 
108849 enum dpm_order {
108850 	DPM_ORDER_NONE = 0,
108851 	DPM_ORDER_DEV_AFTER_PARENT = 1,
108852 	DPM_ORDER_PARENT_BEFORE_DEV = 2,
108853 	DPM_ORDER_DEV_LAST = 3,
108854 };
108855 
108856 union device_attr_group_devres {
108857 	const struct attribute_group *group;
108858 	const struct attribute_group **groups;
108859 };
108860 
108861 struct class_dir {
108862 	struct kobject kobj;
108863 	struct class *class;
108864 };
108865 
108866 struct root_device {
108867 	struct device dev;
108868 	struct module *owner;
108869 };
108870 
108871 typedef void (*irq_write_msi_msg_t)(struct msi_desc *, struct msi_msg *);
108872 
108873 struct platform_msi_priv_data {
108874 	struct device *dev;
108875 	void *host_data;
108876 	msi_alloc_info_t arg;
108877 	irq_write_msi_msg_t write_msg;
108878 	int devid;
108879 };
108880 
108881 struct nd_namespace_pmem {
108882 	struct nd_namespace_io nsio;
108883 	long unsigned int lbasize;
108884 	char *alt_name;
108885 	uuid_t *uuid;
108886 	int id;
108887 };
108888 
108889 enum nd_label_flags {
108890 	ND_LABEL_REAP = 0,
108891 };
108892 
108893 struct scsi_host_busy_iter_data {
108894 	bool (*fn)(struct scsi_cmnd *, void *);
108895 	void *priv;
108896 };
108897 
108898 struct ata_internal {
108899 	struct scsi_transport_template t;
108900 	struct device_attribute private_port_attrs[3];
108901 	struct device_attribute private_link_attrs[3];
108902 	struct device_attribute private_dev_attrs[9];
108903 	struct transport_container link_attr_cont;
108904 	struct transport_container dev_attr_cont;
108905 	struct device_attribute *link_attrs[4];
108906 	struct device_attribute *port_attrs[4];
108907 	struct device_attribute *dev_attrs[10];
108908 };
108909 
108910 struct ata_show_ering_arg {
108911 	char *buf;
108912 	int written;
108913 };
108914 
108915 struct usb_device_driver {
108916 	const char *name;
108917 	bool (*match)(struct usb_device *);
108918 	int (*probe)(struct usb_device *);
108919 	void (*disconnect)(struct usb_device *);
108920 	int (*suspend)(struct usb_device *, pm_message_t);
108921 	int (*resume)(struct usb_device *, pm_message_t);
108922 	const struct attribute_group **dev_groups;
108923 	struct usbdrv_wrap drvwrap;
108924 	const struct usb_device_id *id_table;
108925 	unsigned int supports_autosuspend: 1;
108926 	unsigned int generic_subclass: 1;
108927 };
108928 
108929 struct find_interface_arg {
108930 	int minor;
108931 	struct device_driver *drv;
108932 };
108933 
108934 struct each_dev_arg {
108935 	void *data;
108936 	int (*fn)(struct usb_device *, void *);
108937 };
108938 
108939 struct amd_smbus {
108940 	struct pci_dev *dev;
108941 	struct i2c_adapter adapter;
108942 	int base;
108943 	int size;
108944 };
108945 
108946 enum dm_uevent_type {
108947 	DM_UEVENT_PATH_FAILED = 0,
108948 	DM_UEVENT_PATH_REINSTATED = 1,
108949 };
108950 
108951 struct mapped_device;
108952 
108953 struct dm_uevent {
108954 	struct mapped_device *md;
108955 	enum kobject_action action;
108956 	struct kobj_uevent_env ku_env;
108957 	struct list_head elist;
108958 	char name[128];
108959 	char uuid[129];
108960 };
108961 
108962 struct menu_device {
108963 	int needs_update;
108964 	int tick_wakeup;
108965 	u64 next_timer_ns;
108966 	unsigned int bucket;
108967 	unsigned int correction_factor[12];
108968 	unsigned int intervals[8];
108969 	int interval_ptr;
108970 };
108971 
108972 struct a4tech_sc {
108973 	long unsigned int quirks;
108974 	unsigned int hw_wheel;
108975 	__s32 delayed_value;
108976 };
108977 
108978 struct cper_sec_proc_arm {
108979 	u32 validation_bits;
108980 	u16 err_info_num;
108981 	u16 context_info_num;
108982 	u32 section_length;
108983 	u8 affinity_level;
108984 	u8 reserved[3];
108985 	u64 mpidr;
108986 	u64 midr;
108987 	u32 running_state;
108988 	u32 psci_state;
108989 };
108990 
108991 struct aer_header_log_regs {
108992 	unsigned int dw0;
108993 	unsigned int dw1;
108994 	unsigned int dw2;
108995 	unsigned int dw3;
108996 };
108997 
108998 struct trace_event_raw_mc_event {
108999 	struct trace_entry ent;
109000 	unsigned int error_type;
109001 	u32 __data_loc_msg;
109002 	u32 __data_loc_label;
109003 	u16 error_count;
109004 	u8 mc_index;
109005 	s8 top_layer;
109006 	s8 middle_layer;
109007 	s8 lower_layer;
109008 	long int address;
109009 	u8 grain_bits;
109010 	long int syndrome;
109011 	u32 __data_loc_driver_detail;
109012 	char __data[0];
109013 };
109014 
109015 struct trace_event_raw_arm_event {
109016 	struct trace_entry ent;
109017 	u64 mpidr;
109018 	u64 midr;
109019 	u32 running_state;
109020 	u32 psci_state;
109021 	u8 affinity;
109022 	char __data[0];
109023 };
109024 
109025 struct trace_event_raw_non_standard_event {
109026 	struct trace_entry ent;
109027 	char sec_type[16];
109028 	char fru_id[16];
109029 	u32 __data_loc_fru_text;
109030 	u8 sev;
109031 	u32 len;
109032 	u32 __data_loc_buf;
109033 	char __data[0];
109034 };
109035 
109036 struct trace_event_raw_aer_event {
109037 	struct trace_entry ent;
109038 	u32 __data_loc_dev_name;
109039 	u32 status;
109040 	u8 severity;
109041 	u8 tlp_header_valid;
109042 	u32 tlp_header[4];
109043 	char __data[0];
109044 };
109045 
109046 struct trace_event_data_offsets_mc_event {
109047 	u32 msg;
109048 	u32 label;
109049 	u32 driver_detail;
109050 };
109051 
109052 struct trace_event_data_offsets_arm_event {};
109053 
109054 struct trace_event_data_offsets_non_standard_event {
109055 	u32 fru_text;
109056 	u32 buf;
109057 };
109058 
109059 struct trace_event_data_offsets_aer_event {
109060 	u32 dev_name;
109061 };
109062 
109063 typedef void (*btf_trace_mc_event)(void *, const unsigned int, const char *, const char *, const int, const u8, const s8, const s8, const s8, long unsigned int, const u8, long unsigned int, const char *);
109064 
109065 typedef void (*btf_trace_arm_event)(void *, const struct cper_sec_proc_arm *);
109066 
109067 typedef void (*btf_trace_non_standard_event)(void *, const guid_t *, const guid_t *, const char *, const u8, const u8 *, const u32);
109068 
109069 typedef void (*btf_trace_aer_event)(void *, const char *, const u32, const u8, const u8, struct aer_header_log_regs *);
109070 
109071 struct bpf_stab {
109072 	struct bpf_map map;
109073 	struct sock **sks;
109074 	struct sk_psock_progs progs;
109075 	raw_spinlock_t lock;
109076 	long: 64;
109077 	long: 64;
109078 	long: 64;
109079 	long: 64;
109080 	long: 64;
109081 	long: 64;
109082 	long: 64;
109083 	long: 64;
109084 	long: 64;
109085 	long: 64;
109086 };
109087 
109088 typedef u64 (*btf_bpf_sock_map_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
109089 
109090 typedef u64 (*btf_bpf_sk_redirect_map)(struct sk_buff *, struct bpf_map *, u32, u64);
109091 
109092 typedef u64 (*btf_bpf_msg_redirect_map)(struct sk_msg *, struct bpf_map *, u32, u64);
109093 
109094 struct sock_map_seq_info {
109095 	struct bpf_map *map;
109096 	struct sock *sk;
109097 	u32 index;
109098 };
109099 
109100 struct bpf_iter__sockmap {
109101 	union {
109102 		struct bpf_iter_meta *meta;
109103 	};
109104 	union {
109105 		struct bpf_map *map;
109106 	};
109107 	union {
109108 		void *key;
109109 	};
109110 	union {
109111 		struct sock *sk;
109112 	};
109113 };
109114 
109115 struct bpf_shtab_elem {
109116 	struct callback_head rcu;
109117 	u32 hash;
109118 	struct sock *sk;
109119 	struct hlist_node node;
109120 	u8 key[0];
109121 };
109122 
109123 struct bpf_shtab_bucket {
109124 	struct hlist_head head;
109125 	raw_spinlock_t lock;
109126 };
109127 
109128 struct bpf_shtab {
109129 	struct bpf_map map;
109130 	struct bpf_shtab_bucket *buckets;
109131 	u32 buckets_num;
109132 	u32 elem_size;
109133 	struct sk_psock_progs progs;
109134 	atomic_t count;
109135 	long: 64;
109136 	long: 64;
109137 	long: 64;
109138 	long: 64;
109139 	long: 64;
109140 	long: 64;
109141 	long: 64;
109142 	long: 64;
109143 	long: 64;
109144 };
109145 
109146 typedef u64 (*btf_bpf_sock_hash_update)(struct bpf_sock_ops_kern *, struct bpf_map *, void *, u64);
109147 
109148 typedef u64 (*btf_bpf_sk_redirect_hash)(struct sk_buff *, struct bpf_map *, void *, u64);
109149 
109150 typedef u64 (*btf_bpf_msg_redirect_hash)(struct sk_msg *, struct bpf_map *, void *, u64);
109151 
109152 struct sock_hash_seq_info {
109153 	struct bpf_map *map;
109154 	struct bpf_shtab *htab;
109155 	u32 bucket_id;
109156 };
109157 
109158 struct phc_vclocks_reply_data {
109159 	struct ethnl_reply_data base;
109160 	int num;
109161 	int *index;
109162 };
109163 
109164 struct netdev_notifier_info_ext {
109165 	struct netdev_notifier_info info;
109166 	union {
109167 		u32 mtu;
109168 	} ext;
109169 };
109170 
109171 struct fib_result_nl {
109172 	__be32 fl_addr;
109173 	u32 fl_mark;
109174 	unsigned char fl_tos;
109175 	unsigned char fl_scope;
109176 	unsigned char tb_id_in;
109177 	unsigned char tb_id;
109178 	unsigned char prefixlen;
109179 	unsigned char nh_sel;
109180 	unsigned char type;
109181 	unsigned char scope;
109182 	int err;
109183 };
109184 
109185 struct xfrm_input_afinfo {
109186 	u8 family;
109187 	bool is_ipip;
109188 	int (*callback)(struct sk_buff *, u8, int);
109189 };
109190 
109191 struct xfrm_spi_skb_cb {
109192 	struct xfrm_tunnel_skb_cb header;
109193 	unsigned int daddroff;
109194 	unsigned int family;
109195 	__be32 seq;
109196 };
109197 
109198 struct hop_jumbo_hdr {
109199 	u8 nexthdr;
109200 	u8 hdrlen;
109201 	u8 tlv_type;
109202 	u8 tlv_len;
109203 	__be32 jumbo_payload_len;
109204 };
109205 
109206 enum {
109207 	LWTUNNEL_XMIT_DONE = 0,
109208 	LWTUNNEL_XMIT_CONTINUE = 1,
109209 };
109210 
109211 enum {
109212 	IP6_FH_F_FRAG = 1,
109213 	IP6_FH_F_AUTH = 2,
109214 	IP6_FH_F_SKIP_RH = 4,
109215 };
109216 
109217 struct svc_sock {
109218 	struct svc_xprt sk_xprt;
109219 	struct socket *sk_sock;
109220 	struct sock *sk_sk;
109221 	void (*sk_ostate)(struct sock *);
109222 	void (*sk_odata)(struct sock *);
109223 	void (*sk_owspace)(struct sock *);
109224 	__be32 sk_marker;
109225 	u32 sk_tcplen;
109226 	u32 sk_datalen;
109227 	atomic_t sk_sendqlen;
109228 	struct page *sk_pages[19];
109229 };
109230 
109231 struct gss_auth;
109232 
109233 struct gss_upcall_msg {
109234 	refcount_t count;
109235 	kuid_t uid;
109236 	const char *service_name;
109237 	struct rpc_pipe_msg msg;
109238 	struct list_head list;
109239 	struct gss_auth *auth;
109240 	struct rpc_pipe *pipe;
109241 	struct rpc_wait_queue rpc_waitqueue;
109242 	wait_queue_head_t waitqueue;
109243 	struct gss_cl_ctx *ctx;
109244 	char databuf[256];
109245 };
109246 
109247 struct gss_pipe {
109248 	struct rpc_pipe_dir_object pdo;
109249 	struct rpc_pipe *pipe;
109250 	struct rpc_clnt *clnt;
109251 	const char *name;
109252 	struct kref kref;
109253 };
109254 
109255 struct gss_auth {
109256 	struct kref kref;
109257 	struct hlist_node hash;
109258 	struct rpc_auth rpc_auth;
109259 	struct gss_api_mech *mech;
109260 	enum rpc_gss_svc service;
109261 	struct rpc_clnt *client;
109262 	struct net *net;
109263 	netns_tracker ns_tracker;
109264 	struct gss_pipe *gss_pipe[2];
109265 	const char *target_name;
109266 };
109267 
109268 struct gss_alloc_pdo {
109269 	struct rpc_clnt *clnt;
109270 	const char *name;
109271 	const struct rpc_pipe_ops *upcall_ops;
109272 };
109273 
109274 struct hash {
109275 	int ino;
109276 	int minor;
109277 	int major;
109278 	umode_t mode;
109279 	struct hash *next;
109280 	char name[4098];
109281 };
109282 
109283 struct dir_entry {
109284 	struct list_head list;
109285 	time64_t mtime;
109286 	char name[0];
109287 };
109288 
109289 enum state {
109290 	Start = 0,
109291 	Collect = 1,
109292 	GotHeader = 2,
109293 	SkipIt = 3,
109294 	GotName = 4,
109295 	CopyFile = 5,
109296 	GotSymlink = 6,
109297 	Reset = 7,
109298 };
109299 
109300 typedef int pcpu_fc_cpu_to_node_fn_t(int);
109301 
109302 typedef int pcpu_fc_cpu_distance_fn_t(unsigned int, unsigned int);
109303 
109304 struct pci_io_addr_range {
109305 	struct rb_node rb_node;
109306 	resource_size_t addr_lo;
109307 	resource_size_t addr_hi;
109308 	struct eeh_dev *edev;
109309 	struct pci_dev *pcidev;
109310 	long unsigned int flags;
109311 };
109312 
109313 struct pci_io_addr_cache {
109314 	struct rb_root rb_root;
109315 	spinlock_t piar_lock;
109316 };
109317 
109318 typedef const struct cpumask * (*sched_domain_mask_f)(int);
109319 
109320 typedef int (*sched_domain_flags_f)();
109321 
109322 struct sd_data {
109323 	struct sched_domain **sd;
109324 	struct sched_domain_shared **sds;
109325 	struct sched_group **sg;
109326 	struct sched_group_capacity **sgc;
109327 };
109328 
109329 struct sched_domain_topology_level {
109330 	sched_domain_mask_f mask;
109331 	sched_domain_flags_f sd_flags;
109332 	int flags;
109333 	int numa_level;
109334 	struct sd_data data;
109335 	char *name;
109336 };
109337 
109338 enum {
109339 	smt_idx = 0,
109340 	cache_idx = 1,
109341 	mc_idx = 2,
109342 	die_idx = 3,
109343 };
109344 
109345 struct thread_groups {
109346 	unsigned int property;
109347 	unsigned int nr_groups;
109348 	unsigned int threads_per_group;
109349 	unsigned int thread_list[8];
109350 };
109351 
109352 struct thread_groups_list {
109353 	unsigned int nr_properties;
109354 	struct thread_groups property_tgs[2];
109355 };
109356 
109357 struct cpu_messages {
109358 	long int messages;
109359 };
109360 
109361 struct change_memory_parms {
109362 	long unsigned int start;
109363 	long unsigned int end;
109364 	long unsigned int newpp;
109365 	unsigned int step;
109366 	unsigned int nr_cpus;
109367 	unsigned int master_cpu;
109368 	atomic_t cpu_counter;
109369 };
109370 
109371 struct fixup_entry {
109372 	long unsigned int mask;
109373 	long unsigned int value;
109374 	long int start_off;
109375 	long int end_off;
109376 	long int alt_start_off;
109377 	long int alt_end_off;
109378 };
109379 
109380 enum OpalLPCAddressType {
109381 	OPAL_LPC_MEM = 0,
109382 	OPAL_LPC_IO = 1,
109383 	OPAL_LPC_FW = 2,
109384 };
109385 
109386 struct lpc_debugfs_entry {
109387 	enum OpalLPCAddressType lpc_type;
109388 };
109389 
109390 struct kvm_device_attr {
109391 	__u32 flags;
109392 	__u32 group;
109393 	__u64 attr;
109394 	__u64 addr;
109395 };
109396 
109397 struct kvm_device;
109398 
109399 struct kvm_device_ops {
109400 	const char *name;
109401 	int (*create)(struct kvm_device *, u32);
109402 	void (*init)(struct kvm_device *);
109403 	void (*destroy)(struct kvm_device *);
109404 	void (*release)(struct kvm_device *);
109405 	int (*set_attr)(struct kvm_device *, struct kvm_device_attr *);
109406 	int (*get_attr)(struct kvm_device *, struct kvm_device_attr *);
109407 	int (*has_attr)(struct kvm_device *, struct kvm_device_attr *);
109408 	long int (*ioctl)(struct kvm_device *, unsigned int, long unsigned int);
109409 	int (*mmap)(struct kvm_device *, struct vm_area_struct *);
109410 };
109411 
109412 struct kvmppc_ics;
109413 
109414 struct kvmppc_xics {
109415 	struct kvm *kvm;
109416 	struct kvm_device *dev;
109417 	struct dentry *dentry;
109418 	u32 max_icsid;
109419 	bool real_mode;
109420 	bool real_mode_dbg;
109421 	u32 err_noics;
109422 	u32 err_noicp;
109423 	struct kvmppc_ics *ics[1024];
109424 };
109425 
109426 union kvmppc_icp_state {
109427 	long unsigned int raw;
109428 	struct {
109429 		u8 out_ee: 1;
109430 		u8 need_resend: 1;
109431 		u8 cppr;
109432 		u8 mfrr;
109433 		u8 pending_pri;
109434 		u32 xisr;
109435 	};
109436 };
109437 
109438 struct kvmppc_icp {
109439 	struct kvm_vcpu *vcpu;
109440 	long unsigned int server_num;
109441 	union kvmppc_icp_state state;
109442 	long unsigned int resend_map[16];
109443 	u32 rm_action;
109444 	struct kvm_vcpu *rm_kick_target;
109445 	struct kvmppc_icp *rm_resend_icp;
109446 	u32 rm_reject;
109447 	u32 rm_eoied_irq;
109448 	long unsigned int n_rm_kick_vcpu;
109449 	long unsigned int n_rm_check_resend;
109450 	long unsigned int n_rm_notify_eoi;
109451 	long unsigned int n_check_resend;
109452 	long unsigned int n_reject;
109453 	union kvmppc_icp_state rm_dbgstate;
109454 	struct kvm_vcpu *rm_dbgtgt;
109455 };
109456 
109457 struct kvm_device {
109458 	const struct kvm_device_ops *ops;
109459 	struct kvm *kvm;
109460 	void *private;
109461 	struct list_head vm_node;
109462 };
109463 
109464 union kvmppc_rm_state {
109465 	long unsigned int raw;
109466 	struct {
109467 		u32 in_host;
109468 		u32 rm_action;
109469 	};
109470 };
109471 
109472 struct kvmppc_host_rm_core {
109473 	union kvmppc_rm_state rm_state;
109474 	void *rm_data;
109475 	char pad[112];
109476 };
109477 
109478 struct kvmppc_host_rm_ops {
109479 	struct kvmppc_host_rm_core *rm_core;
109480 	void (*vcpu_kick)(struct kvm_vcpu *);
109481 };
109482 
109483 struct ics_irq_state {
109484 	u32 number;
109485 	u32 server;
109486 	u32 pq_state;
109487 	u8 priority;
109488 	u8 saved_priority;
109489 	u8 resend;
109490 	u8 masked_pending;
109491 	u8 lsi;
109492 	u8 exists;
109493 	int intr_cpu;
109494 	u32 host_irq;
109495 };
109496 
109497 struct kvmppc_ics {
109498 	arch_spinlock_t lock;
109499 	u16 icsid;
109500 	struct ics_irq_state irq_state[1024];
109501 };
109502 
109503 enum {
109504 	PM_CYC___5 = 393460,
109505 };
109506 
109507 enum {
109508 	PM_INST_CMPL___5 = 327930,
109509 };
109510 
109511 enum {
109512 	PM_BR_CMPL___2 = 315486,
109513 };
109514 
109515 enum {
109516 	PM_BR_MPRED_CMPL___4 = 262390,
109517 };
109518 
109519 enum {
109520 	PM_BR_FIN = 192586,
109521 };
109522 
109523 enum {
109524 	PM_MPRED_BR_FIN = 254104,
109525 };
109526 
109527 enum {
109528 	PM_LD_DEMAND_MISS_L1_FIN = 262384,
109529 };
109530 
109531 enum {
109532 	PM_LD_REF_L1___4 = 65788,
109533 };
109534 
109535 enum {
109536 	PM_LD_MISS_L1___5 = 254036,
109537 };
109538 
109539 enum {
109540 	PM_ST_MISS_L1___5 = 196848,
109541 };
109542 
109543 enum {
109544 	PM_LD_PREFETCH_CACHE_LINE_MISS = 65580,
109545 };
109546 
109547 enum {
109548 	PM_L1_ICACHE_MISS___5 = 131324,
109549 };
109550 
109551 enum {
109552 	PM_INST_FROM_L1___4 = 16512,
109553 };
109554 
109555 enum {
109556 	PM_INST_FROM_L1MISS = 17732923532886080ULL,
109557 };
109558 
109559 enum {
109560 	PM_IC_PREF_REQ___2 = 16544,
109561 };
109562 
109563 enum {
109564 	PM_DATA_FROM_L3___4 = 5418393301794880ULL,
109565 };
109566 
109567 enum {
109568 	PM_DATA_FROM_L3MISS___5 = 196862,
109569 };
109570 
109571 enum {
109572 	PM_L2_ST___4 = 1099511914624ULL,
109573 };
109574 
109575 enum {
109576 	PM_L2_ST_MISS___4 = 157824,
109577 };
109578 
109579 enum {
109580 	PM_L3_PF_MISS_L3 = 17592186134656ULL,
109581 };
109582 
109583 enum {
109584 	PM_DTLB_MISS___5 = 196860,
109585 };
109586 
109587 enum {
109588 	PM_ITLB_MISS___5 = 262396,
109589 };
109590 
109591 enum {
109592 	PM_CYC_ALT___2 = 30,
109593 };
109594 
109595 enum {
109596 	PM_INST_CMPL_ALT___2 = 2,
109597 };
109598 
109599 enum {
109600 	MEM_LOADS___2 = 228505944544ULL,
109601 };
109602 
109603 enum {
109604 	MEM_STORES___2 = 228640162272ULL,
109605 };
109606 
109607 struct ptrace_peeksiginfo_args {
109608 	__u64 off;
109609 	__u32 flags;
109610 	__s32 nr;
109611 };
109612 
109613 struct ptrace_syscall_info {
109614 	__u8 op;
109615 	__u8 pad[3];
109616 	__u32 arch;
109617 	__u64 instruction_pointer;
109618 	__u64 stack_pointer;
109619 	union {
109620 		struct {
109621 			__u64 nr;
109622 			__u64 args[6];
109623 		} entry;
109624 		struct {
109625 			__s64 rval;
109626 			__u8 is_error;
109627 		} exit;
109628 		struct {
109629 			__u64 nr;
109630 			__u64 args[6];
109631 			__u32 ret_data;
109632 		} seccomp;
109633 	};
109634 };
109635 
109636 struct ptrace_rseq_configuration {
109637 	__u64 rseq_abi_pointer;
109638 	__u32 rseq_abi_size;
109639 	__u32 signature;
109640 	__u32 flags;
109641 	__u32 pad;
109642 };
109643 
109644 struct die_args {
109645 	struct pt_regs *regs;
109646 	const char *str;
109647 	long int err;
109648 	int trapnr;
109649 	int signr;
109650 };
109651 
109652 enum {
109653 	MEMBARRIER_STATE_PRIVATE_EXPEDITED_READY = 1,
109654 	MEMBARRIER_STATE_PRIVATE_EXPEDITED = 2,
109655 	MEMBARRIER_STATE_GLOBAL_EXPEDITED_READY = 4,
109656 	MEMBARRIER_STATE_GLOBAL_EXPEDITED = 8,
109657 	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE_READY = 16,
109658 	MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE = 32,
109659 	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ_READY = 64,
109660 	MEMBARRIER_STATE_PRIVATE_EXPEDITED_RSEQ = 128,
109661 };
109662 
109663 enum {
109664 	MEMBARRIER_FLAG_SYNC_CORE = 1,
109665 	MEMBARRIER_FLAG_RSEQ = 2,
109666 };
109667 
109668 struct sd_flag_debug {
109669 	unsigned int meta_flags;
109670 	char *name;
109671 };
109672 
109673 enum membarrier_cmd {
109674 	MEMBARRIER_CMD_QUERY = 0,
109675 	MEMBARRIER_CMD_GLOBAL = 1,
109676 	MEMBARRIER_CMD_GLOBAL_EXPEDITED = 2,
109677 	MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED = 4,
109678 	MEMBARRIER_CMD_PRIVATE_EXPEDITED = 8,
109679 	MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED = 16,
109680 	MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE = 32,
109681 	MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE = 64,
109682 	MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ = 128,
109683 	MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ = 256,
109684 	MEMBARRIER_CMD_SHARED = 1,
109685 };
109686 
109687 enum membarrier_cmd_flag {
109688 	MEMBARRIER_CMD_FLAG_CPU = 1,
109689 };
109690 
109691 enum cpuacct_stat_index {
109692 	CPUACCT_STAT_USER = 0,
109693 	CPUACCT_STAT_SYSTEM = 1,
109694 	CPUACCT_STAT_NSTATS = 2,
109695 };
109696 
109697 struct cpuacct {
109698 	struct cgroup_subsys_state css;
109699 	u64 *cpuusage;
109700 	struct kernel_cpustat *cpustat;
109701 };
109702 
109703 struct s_data {
109704 	struct sched_domain **sd;
109705 	struct root_domain *rd;
109706 };
109707 
109708 enum s_alloc {
109709 	sa_rootdomain = 0,
109710 	sa_sd = 1,
109711 	sa_sd_storage = 2,
109712 	sa_none = 3,
109713 };
109714 
109715 struct asym_cap_data {
109716 	struct list_head link;
109717 	long unsigned int capacity;
109718 	long unsigned int cpus[0];
109719 };
109720 
109721 enum hk_flags {
109722 	HK_FLAG_TIMER = 1,
109723 	HK_FLAG_RCU = 2,
109724 	HK_FLAG_MISC = 4,
109725 	HK_FLAG_SCHED = 8,
109726 	HK_FLAG_TICK = 16,
109727 	HK_FLAG_DOMAIN = 32,
109728 	HK_FLAG_WQ = 64,
109729 	HK_FLAG_MANAGED_IRQ = 128,
109730 	HK_FLAG_KTHREAD = 256,
109731 };
109732 
109733 struct housekeeping {
109734 	struct cpumask cpumasks[9];
109735 	long unsigned int flags;
109736 };
109737 
109738 struct sched_param {
109739 	int sched_priority;
109740 };
109741 
109742 struct rcu_exp_work {
109743 	long unsigned int rew_s;
109744 	struct work_struct rew_work;
109745 };
109746 
109747 struct rcu_node {
109748 	raw_spinlock_t lock;
109749 	long unsigned int gp_seq;
109750 	long unsigned int gp_seq_needed;
109751 	long unsigned int completedqs;
109752 	long unsigned int qsmask;
109753 	long unsigned int rcu_gp_init_mask;
109754 	long unsigned int qsmaskinit;
109755 	long unsigned int qsmaskinitnext;
109756 	long unsigned int expmask;
109757 	long unsigned int expmaskinit;
109758 	long unsigned int expmaskinitnext;
109759 	long unsigned int cbovldmask;
109760 	long unsigned int ffmask;
109761 	long unsigned int grpmask;
109762 	int grplo;
109763 	int grphi;
109764 	u8 grpnum;
109765 	u8 level;
109766 	bool wait_blkd_tasks;
109767 	struct rcu_node *parent;
109768 	struct list_head blkd_tasks;
109769 	struct list_head *gp_tasks;
109770 	struct list_head *exp_tasks;
109771 	struct list_head *boost_tasks;
109772 	struct rt_mutex boost_mtx;
109773 	long unsigned int boost_time;
109774 	struct mutex boost_kthread_mutex;
109775 	struct task_struct *boost_kthread_task;
109776 	unsigned int boost_kthread_status;
109777 	long unsigned int n_boosts;
109778 	long: 64;
109779 	long: 64;
109780 	long: 64;
109781 	long: 64;
109782 	long: 64;
109783 	long: 64;
109784 	long: 64;
109785 	long: 64;
109786 	long: 64;
109787 	long: 64;
109788 	long: 64;
109789 	long: 64;
109790 	long: 64;
109791 	raw_spinlock_t fqslock;
109792 	long: 64;
109793 	long: 64;
109794 	long: 64;
109795 	long: 64;
109796 	long: 64;
109797 	long: 64;
109798 	long: 64;
109799 	long: 64;
109800 	long: 64;
109801 	long: 64;
109802 	long: 64;
109803 	long: 64;
109804 	long: 64;
109805 	long: 64;
109806 	long: 64;
109807 	spinlock_t exp_lock;
109808 	long unsigned int exp_seq_rq;
109809 	wait_queue_head_t exp_wq[4];
109810 	struct rcu_exp_work rew;
109811 	bool exp_need_flush;
109812 	raw_spinlock_t exp_poll_lock;
109813 	long unsigned int exp_seq_poll_rq;
109814 	struct work_struct exp_poll_wq;
109815 	long: 64;
109816 	long: 64;
109817 	long: 64;
109818 	long: 64;
109819 	long: 64;
109820 	long: 64;
109821 	long: 64;
109822 };
109823 
109824 union rcu_noqs {
109825 	struct {
109826 		u8 norm;
109827 		u8 exp;
109828 	} b;
109829 	u16 s;
109830 };
109831 
109832 struct rcu_data {
109833 	long unsigned int gp_seq;
109834 	long unsigned int gp_seq_needed;
109835 	union rcu_noqs cpu_no_qs;
109836 	bool core_needs_qs;
109837 	bool beenonline;
109838 	bool gpwrap;
109839 	bool cpu_started;
109840 	struct rcu_node *mynode;
109841 	long unsigned int grpmask;
109842 	long unsigned int ticks_this_gp;
109843 	struct irq_work defer_qs_iw;
109844 	bool defer_qs_iw_pending;
109845 	struct work_struct strict_work;
109846 	struct rcu_segcblist cblist;
109847 	long int qlen_last_fqs_check;
109848 	long unsigned int n_cbs_invoked;
109849 	long unsigned int n_force_qs_snap;
109850 	long int blimit;
109851 	int dynticks_snap;
109852 	bool rcu_need_heavy_qs;
109853 	bool rcu_urgent_qs;
109854 	bool rcu_forced_tick;
109855 	bool rcu_forced_tick_exp;
109856 	long unsigned int barrier_seq_snap;
109857 	struct callback_head barrier_head;
109858 	int exp_dynticks_snap;
109859 	struct task_struct *rcu_cpu_kthread_task;
109860 	unsigned int rcu_cpu_kthread_status;
109861 	char rcu_cpu_has_work;
109862 	long unsigned int rcuc_activity;
109863 	unsigned int softirq_snap;
109864 	struct irq_work rcu_iw;
109865 	bool rcu_iw_pending;
109866 	long unsigned int rcu_iw_gp_seq;
109867 	long unsigned int rcu_ofl_gp_seq;
109868 	short int rcu_ofl_gp_flags;
109869 	long unsigned int rcu_onl_gp_seq;
109870 	short int rcu_onl_gp_flags;
109871 	long unsigned int last_fqs_resched;
109872 	long unsigned int last_sched_clock;
109873 	int cpu;
109874 };
109875 
109876 struct rcu_state {
109877 	struct rcu_node node[131];
109878 	struct rcu_node *level[4];
109879 	int ncpus;
109880 	int n_online_cpus;
109881 	long: 64;
109882 	long: 64;
109883 	long: 64;
109884 	long: 64;
109885 	long: 64;
109886 	long: 64;
109887 	long: 64;
109888 	long: 64;
109889 	long: 64;
109890 	long: 64;
109891 	long: 64;
109892 	long unsigned int gp_seq;
109893 	long unsigned int gp_max;
109894 	struct task_struct *gp_kthread;
109895 	struct swait_queue_head gp_wq;
109896 	short int gp_flags;
109897 	short int gp_state;
109898 	long unsigned int gp_wake_time;
109899 	long unsigned int gp_wake_seq;
109900 	long unsigned int gp_seq_polled;
109901 	long unsigned int gp_seq_polled_snap;
109902 	long unsigned int gp_seq_polled_exp_snap;
109903 	struct mutex barrier_mutex;
109904 	atomic_t barrier_cpu_count;
109905 	struct completion barrier_completion;
109906 	long unsigned int barrier_sequence;
109907 	raw_spinlock_t barrier_lock;
109908 	struct mutex exp_mutex;
109909 	struct mutex exp_wake_mutex;
109910 	long unsigned int expedited_sequence;
109911 	atomic_t expedited_need_qs;
109912 	struct swait_queue_head expedited_wq;
109913 	int ncpus_snap;
109914 	u8 cbovld;
109915 	u8 cbovldnext;
109916 	long unsigned int jiffies_force_qs;
109917 	long unsigned int jiffies_kick_kthreads;
109918 	long unsigned int n_force_qs;
109919 	long unsigned int gp_start;
109920 	long unsigned int gp_end;
109921 	long unsigned int gp_activity;
109922 	long unsigned int gp_req_activity;
109923 	long unsigned int jiffies_stall;
109924 	long unsigned int jiffies_resched;
109925 	long unsigned int n_force_qs_gpstart;
109926 	const char *name;
109927 	char abbr;
109928 	long: 64;
109929 	long: 64;
109930 	long: 64;
109931 	long: 64;
109932 	long: 64;
109933 	long: 64;
109934 	long: 64;
109935 	long: 64;
109936 	long: 64;
109937 	long: 64;
109938 	long: 64;
109939 	long: 64;
109940 	arch_spinlock_t ofl_lock;
109941 	int nocb_is_setup;
109942 	long: 64;
109943 	long: 64;
109944 	long: 64;
109945 	long: 64;
109946 	long: 64;
109947 	long: 64;
109948 	long: 64;
109949 	long: 64;
109950 	long: 64;
109951 	long: 64;
109952 	long: 64;
109953 	long: 64;
109954 	long: 64;
109955 	long: 64;
109956 	long: 64;
109957 };
109958 
109959 enum rcutorture_type {
109960 	RCU_FLAVOR = 0,
109961 	RCU_TASKS_FLAVOR = 1,
109962 	RCU_TASKS_RUDE_FLAVOR = 2,
109963 	RCU_TASKS_TRACING_FLAVOR = 3,
109964 	RCU_TRIVIAL_FLAVOR = 4,
109965 	SRCU_FLAVOR = 5,
109966 	INVALID_RCU_FLAVOR = 6,
109967 };
109968 
109969 struct kvfree_rcu_bulk_data {
109970 	long unsigned int nr_records;
109971 	struct kvfree_rcu_bulk_data *next;
109972 	void *records[0];
109973 };
109974 
109975 struct kfree_rcu_cpu;
109976 
109977 struct kfree_rcu_cpu_work {
109978 	struct rcu_work rcu_work;
109979 	struct callback_head *head_free;
109980 	struct kvfree_rcu_bulk_data *bkvhead_free[2];
109981 	struct kfree_rcu_cpu *krcp;
109982 };
109983 
109984 struct kfree_rcu_cpu {
109985 	struct callback_head *head;
109986 	struct kvfree_rcu_bulk_data *bkvhead[2];
109987 	struct kfree_rcu_cpu_work krw_arr[2];
109988 	raw_spinlock_t lock;
109989 	struct delayed_work monitor_work;
109990 	bool initialized;
109991 	int count;
109992 	struct delayed_work page_cache_work;
109993 	atomic_t backoff_page_cache_fill;
109994 	atomic_t work_in_progress;
109995 	struct hrtimer hrtimer;
109996 	struct llist_head bkvcache;
109997 	int nr_bkv_objs;
109998 };
109999 
110000 struct proc_timens_offset {
110001 	int clockid;
110002 	struct timespec64 val;
110003 };
110004 
110005 struct rchan_percpu_buf_dispatcher {
110006 	struct rchan_buf *buf;
110007 	struct dentry *dentry;
110008 };
110009 
110010 struct filter_pred;
110011 
110012 struct prog_entry {
110013 	int target;
110014 	int when_to_branch;
110015 	struct filter_pred *pred;
110016 };
110017 
110018 typedef int (*filter_pred_fn_t)(struct filter_pred *, void *);
110019 
110020 struct regex;
110021 
110022 typedef int (*regex_match_func)(char *, struct regex *, int);
110023 
110024 struct regex {
110025 	char pattern[256];
110026 	int len;
110027 	int field_len;
110028 	regex_match_func match;
110029 };
110030 
110031 struct filter_pred {
110032 	filter_pred_fn_t fn;
110033 	u64 val;
110034 	struct regex regex;
110035 	short unsigned int *ops;
110036 	struct ftrace_event_field *field;
110037 	int offset;
110038 	int not;
110039 	int op;
110040 };
110041 
110042 enum regex_type {
110043 	MATCH_FULL = 0,
110044 	MATCH_FRONT_ONLY = 1,
110045 	MATCH_MIDDLE_ONLY = 2,
110046 	MATCH_END_ONLY = 3,
110047 	MATCH_GLOB = 4,
110048 	MATCH_INDEX = 5,
110049 };
110050 
110051 enum filter_op_ids {
110052 	OP_GLOB = 0,
110053 	OP_NE = 1,
110054 	OP_EQ = 2,
110055 	OP_LE = 3,
110056 	OP_LT = 4,
110057 	OP_GE = 5,
110058 	OP_GT = 6,
110059 	OP_BAND = 7,
110060 	OP_MAX = 8,
110061 };
110062 
110063 enum {
110064 	FILT_ERR_NONE = 0,
110065 	FILT_ERR_INVALID_OP = 1,
110066 	FILT_ERR_TOO_MANY_OPEN = 2,
110067 	FILT_ERR_TOO_MANY_CLOSE = 3,
110068 	FILT_ERR_MISSING_QUOTE = 4,
110069 	FILT_ERR_OPERAND_TOO_LONG = 5,
110070 	FILT_ERR_EXPECT_STRING = 6,
110071 	FILT_ERR_EXPECT_DIGIT = 7,
110072 	FILT_ERR_ILLEGAL_FIELD_OP = 8,
110073 	FILT_ERR_FIELD_NOT_FOUND = 9,
110074 	FILT_ERR_ILLEGAL_INTVAL = 10,
110075 	FILT_ERR_BAD_SUBSYS_FILTER = 11,
110076 	FILT_ERR_TOO_MANY_PREDS = 12,
110077 	FILT_ERR_INVALID_FILTER = 13,
110078 	FILT_ERR_IP_FIELD_ONLY = 14,
110079 	FILT_ERR_INVALID_VALUE = 15,
110080 	FILT_ERR_ERRNO = 16,
110081 	FILT_ERR_NO_FILTER = 17,
110082 };
110083 
110084 struct filter_parse_error {
110085 	int lasterr;
110086 	int lasterr_pos;
110087 };
110088 
110089 typedef int (*parse_pred_fn)(const char *, void *, int, struct filter_parse_error *, struct filter_pred **);
110090 
110091 enum {
110092 	INVERT = 1,
110093 	PROCESS_AND = 2,
110094 	PROCESS_OR = 4,
110095 };
110096 
110097 struct ustring_buffer {
110098 	char buffer[1024];
110099 };
110100 
110101 enum {
110102 	TOO_MANY_CLOSE = -1,
110103 	TOO_MANY_OPEN = -2,
110104 	MISSING_QUOTE = -3,
110105 };
110106 
110107 struct filter_list {
110108 	struct list_head list;
110109 	struct event_filter *filter;
110110 };
110111 
110112 struct function_filter_data {
110113 	struct ftrace_ops *ops;
110114 	int first_filter;
110115 	int first_notrace;
110116 };
110117 
110118 struct bpf_preload_info {
110119 	char link_name[16];
110120 	struct bpf_link *link;
110121 };
110122 
110123 struct bpf_preload_ops {
110124 	int (*preload)(struct bpf_preload_info *);
110125 	struct module *owner;
110126 };
110127 
110128 enum bpf_type {
110129 	BPF_TYPE_UNSPEC = 0,
110130 	BPF_TYPE_PROG = 1,
110131 	BPF_TYPE_MAP = 2,
110132 	BPF_TYPE_LINK = 3,
110133 };
110134 
110135 struct map_iter {
110136 	void *key;
110137 	bool done;
110138 };
110139 
110140 enum {
110141 	OPT_MODE = 0,
110142 };
110143 
110144 struct bpf_mount_opts {
110145 	umode_t mode;
110146 };
110147 
110148 struct bpf_cgroup_storage_map {
110149 	struct bpf_map map;
110150 	spinlock_t lock;
110151 	struct rb_root root;
110152 	struct list_head list;
110153 	long: 64;
110154 	long: 64;
110155 	long: 64;
110156 	long: 64;
110157 	long: 64;
110158 	long: 64;
110159 	long: 64;
110160 	long: 64;
110161 	long: 64;
110162 	long: 64;
110163 	long: 64;
110164 	long: 64;
110165 };
110166 
110167 struct pcpu_group_info {
110168 	int nr_units;
110169 	long unsigned int base_offset;
110170 	unsigned int *cpu_map;
110171 };
110172 
110173 struct pcpu_alloc_info {
110174 	size_t static_size;
110175 	size_t reserved_size;
110176 	size_t dyn_size;
110177 	size_t unit_size;
110178 	size_t atom_size;
110179 	size_t alloc_size;
110180 	size_t __ai_size;
110181 	int nr_groups;
110182 	struct pcpu_group_info groups[0];
110183 };
110184 
110185 struct trace_event_raw_percpu_alloc_percpu {
110186 	struct trace_entry ent;
110187 	long unsigned int call_site;
110188 	bool reserved;
110189 	bool is_atomic;
110190 	size_t size;
110191 	size_t align;
110192 	void *base_addr;
110193 	int off;
110194 	void *ptr;
110195 	size_t bytes_alloc;
110196 	long unsigned int gfp_flags;
110197 	char __data[0];
110198 };
110199 
110200 struct trace_event_raw_percpu_free_percpu {
110201 	struct trace_entry ent;
110202 	void *base_addr;
110203 	int off;
110204 	void *ptr;
110205 	char __data[0];
110206 };
110207 
110208 struct trace_event_raw_percpu_alloc_percpu_fail {
110209 	struct trace_entry ent;
110210 	bool reserved;
110211 	bool is_atomic;
110212 	size_t size;
110213 	size_t align;
110214 	char __data[0];
110215 };
110216 
110217 struct trace_event_raw_percpu_create_chunk {
110218 	struct trace_entry ent;
110219 	void *base_addr;
110220 	char __data[0];
110221 };
110222 
110223 struct trace_event_raw_percpu_destroy_chunk {
110224 	struct trace_entry ent;
110225 	void *base_addr;
110226 	char __data[0];
110227 };
110228 
110229 struct trace_event_data_offsets_percpu_alloc_percpu {};
110230 
110231 struct trace_event_data_offsets_percpu_free_percpu {};
110232 
110233 struct trace_event_data_offsets_percpu_alloc_percpu_fail {};
110234 
110235 struct trace_event_data_offsets_percpu_create_chunk {};
110236 
110237 struct trace_event_data_offsets_percpu_destroy_chunk {};
110238 
110239 typedef void (*btf_trace_percpu_alloc_percpu)(void *, long unsigned int, bool, bool, size_t, size_t, void *, int, void *, size_t, gfp_t);
110240 
110241 typedef void (*btf_trace_percpu_free_percpu)(void *, void *, int, void *);
110242 
110243 typedef void (*btf_trace_percpu_alloc_percpu_fail)(void *, bool, bool, size_t, size_t);
110244 
110245 typedef void (*btf_trace_percpu_create_chunk)(void *, void *);
110246 
110247 typedef void (*btf_trace_percpu_destroy_chunk)(void *, void *);
110248 
110249 struct pcpu_block_md {
110250 	int scan_hint;
110251 	int scan_hint_start;
110252 	int contig_hint;
110253 	int contig_hint_start;
110254 	int left_free;
110255 	int right_free;
110256 	int first_free;
110257 	int nr_bits;
110258 };
110259 
110260 struct pcpu_chunk {
110261 	struct list_head list;
110262 	int free_bytes;
110263 	struct pcpu_block_md chunk_md;
110264 	void *base_addr;
110265 	long unsigned int *alloc_map;
110266 	long unsigned int *bound_map;
110267 	struct pcpu_block_md *md_blocks;
110268 	void *data;
110269 	bool immutable;
110270 	bool isolated;
110271 	int start_offset;
110272 	int end_offset;
110273 	struct obj_cgroup **obj_cgroups;
110274 	int nr_pages;
110275 	int nr_populated;
110276 	int nr_empty_pop_pages;
110277 	long unsigned int populated[0];
110278 };
110279 
110280 union swap_header {
110281 	struct {
110282 		char reserved[65526];
110283 		char magic[10];
110284 	} magic;
110285 	struct {
110286 		char bootbits[1024];
110287 		__u32 version;
110288 		__u32 last_page;
110289 		__u32 nr_badpages;
110290 		unsigned char sws_uuid[16];
110291 		unsigned char sws_volume[16];
110292 		__u32 padding[117];
110293 		__u32 badpages[1];
110294 	} info;
110295 };
110296 
110297 struct swap_extent {
110298 	struct rb_node rb_node;
110299 	long unsigned int start_page;
110300 	long unsigned int nr_pages;
110301 	sector_t start_block;
110302 };
110303 
110304 struct posix_acl_xattr_entry {
110305 	__le16 e_tag;
110306 	__le16 e_perm;
110307 	__le32 e_id;
110308 };
110309 
110310 struct posix_acl_xattr_header {
110311 	__le32 a_version;
110312 };
110313 
110314 typedef __kernel_mode_t mode_t;
110315 
110316 struct orlov_stats {
110317 	__u64 free_clusters;
110318 	__u32 free_inodes;
110319 	__u32 used_dirs;
110320 };
110321 
110322 struct nfs_open_dir_context {
110323 	struct list_head list;
110324 	atomic_t cache_hits;
110325 	atomic_t cache_misses;
110326 	long unsigned int attr_gencount;
110327 	__be32 verf[2];
110328 	__u64 dir_cookie;
110329 	__u64 last_cookie;
110330 	long unsigned int page_index;
110331 	unsigned int dtsize;
110332 	bool force_clear;
110333 	bool eof;
110334 	struct callback_head callback_head;
110335 };
110336 
110337 struct nfs_cache_array_entry {
110338 	u64 cookie;
110339 	u64 ino;
110340 	const char *name;
110341 	unsigned int name_len;
110342 	unsigned char d_type;
110343 };
110344 
110345 struct nfs_cache_array {
110346 	u64 change_attr;
110347 	u64 last_cookie;
110348 	unsigned int size;
110349 	unsigned char page_full: 1;
110350 	unsigned char page_is_eof: 1;
110351 	unsigned char cookies_are_ordered: 1;
110352 	struct nfs_cache_array_entry array[0];
110353 };
110354 
110355 struct nfs_readdir_descriptor {
110356 	struct file *file;
110357 	struct page *page;
110358 	struct dir_context *ctx;
110359 	long unsigned int page_index;
110360 	long unsigned int page_index_max;
110361 	u64 dir_cookie;
110362 	u64 last_cookie;
110363 	loff_t current_index;
110364 	__be32 verf[2];
110365 	long unsigned int dir_verifier;
110366 	long unsigned int timestamp;
110367 	long unsigned int gencount;
110368 	long unsigned int attr_gencount;
110369 	unsigned int cache_entry_index;
110370 	unsigned int buffer_fills;
110371 	unsigned int dtsize;
110372 	bool clear_cache;
110373 	bool plus;
110374 	bool eob;
110375 	bool eof;
110376 };
110377 
110378 enum {
110379 	NSMPROC_NULL = 0,
110380 	NSMPROC_STAT = 1,
110381 	NSMPROC_MON = 2,
110382 	NSMPROC_UNMON = 3,
110383 	NSMPROC_UNMON_ALL = 4,
110384 	NSMPROC_SIMU_CRASH = 5,
110385 	NSMPROC_NOTIFY = 6,
110386 };
110387 
110388 struct nsm_args {
110389 	struct nsm_private *priv;
110390 	u32 prog;
110391 	u32 vers;
110392 	u32 proc;
110393 	char *mon_name;
110394 	const char *nodename;
110395 };
110396 
110397 struct nsm_res {
110398 	u32 status;
110399 	u32 state;
110400 };
110401 
110402 typedef int (*xfs_agfl_walk_fn)(struct xfs_mount *, xfs_agblock_t, void *);
110403 
110404 struct xfs_alloc_cur {
110405 	struct xfs_btree_cur *cnt;
110406 	struct xfs_btree_cur *bnolt;
110407 	struct xfs_btree_cur *bnogt;
110408 	xfs_extlen_t cur_len;
110409 	xfs_agblock_t rec_bno;
110410 	xfs_extlen_t rec_len;
110411 	xfs_agblock_t bno;
110412 	xfs_extlen_t len;
110413 	xfs_extlen_t diff;
110414 	unsigned int busy_gen;
110415 	bool busy;
110416 };
110417 
110418 struct xfs_alloc_query_range_info {
110419 	xfs_alloc_query_range_fn fn;
110420 	void *priv;
110421 };
110422 
110423 struct xfs_mru_cache {
110424 	struct xarray store;
110425 	struct list_head *lists;
110426 	struct list_head reap_list;
110427 	spinlock_t lock;
110428 	unsigned int grp_count;
110429 	unsigned int grp_time;
110430 	unsigned int lru_grp;
110431 	long unsigned int time_zero;
110432 	xfs_mru_cache_free_func_t free_func;
110433 	struct delayed_work work;
110434 	unsigned int queued;
110435 	void *data;
110436 };
110437 
110438 struct xfs_disk_dquot {
110439 	__be16 d_magic;
110440 	__u8 d_version;
110441 	__u8 d_type;
110442 	__be32 d_id;
110443 	__be64 d_blk_hardlimit;
110444 	__be64 d_blk_softlimit;
110445 	__be64 d_ino_hardlimit;
110446 	__be64 d_ino_softlimit;
110447 	__be64 d_bcount;
110448 	__be64 d_icount;
110449 	__be32 d_itimer;
110450 	__be32 d_btimer;
110451 	__be16 d_iwarns;
110452 	__be16 d_bwarns;
110453 	__be32 d_pad0;
110454 	__be64 d_rtb_hardlimit;
110455 	__be64 d_rtb_softlimit;
110456 	__be64 d_rtbcount;
110457 	__be32 d_rtbtimer;
110458 	__be16 d_rtbwarns;
110459 	__be16 d_pad;
110460 };
110461 
110462 struct xfs_dsymlink_hdr {
110463 	__be32 sl_magic;
110464 	__be32 sl_offset;
110465 	__be32 sl_bytes;
110466 	__be32 sl_crc;
110467 	uuid_t sl_uuid;
110468 	__be64 sl_owner;
110469 	__be64 sl_blkno;
110470 	__be64 sl_lsn;
110471 };
110472 
110473 struct xfs_buf_cancel {
110474 	xfs_daddr_t bc_blkno;
110475 	uint bc_len;
110476 	int bc_refcount;
110477 	struct list_head bc_list;
110478 };
110479 
110480 struct debugfs_blob_wrapper {
110481 	void *data;
110482 	long unsigned int size;
110483 };
110484 
110485 struct debugfs_reg32 {
110486 	char *name;
110487 	long unsigned int offset;
110488 };
110489 
110490 struct debugfs_regset32 {
110491 	const struct debugfs_reg32 *regs;
110492 	int nregs;
110493 	void *base;
110494 	struct device *dev;
110495 };
110496 
110497 struct debugfs_u32_array {
110498 	u32 *array;
110499 	u32 n_elements;
110500 };
110501 
110502 struct debugfs_fsdata {
110503 	const struct file_operations *real_fops;
110504 	refcount_t active_users;
110505 	struct completion active_users_drained;
110506 };
110507 
110508 struct debugfs_devm_entry {
110509 	int (*read)(struct seq_file *, void *);
110510 	struct device *dev;
110511 };
110512 
110513 struct keyring_read_iterator_context {
110514 	size_t buflen;
110515 	size_t count;
110516 	key_serial_t *buffer;
110517 };
110518 
110519 struct crypto_report_kpp {
110520 	char type[64];
110521 };
110522 
110523 struct kpp_request {
110524 	struct crypto_async_request base;
110525 	struct scatterlist *src;
110526 	struct scatterlist *dst;
110527 	unsigned int src_len;
110528 	unsigned int dst_len;
110529 	void *__ctx[0];
110530 };
110531 
110532 struct crypto_kpp {
110533 	struct crypto_tfm base;
110534 };
110535 
110536 struct kpp_alg {
110537 	int (*set_secret)(struct crypto_kpp *, const void *, unsigned int);
110538 	int (*generate_public_key)(struct kpp_request *);
110539 	int (*compute_shared_secret)(struct kpp_request *);
110540 	unsigned int (*max_size)(struct crypto_kpp *);
110541 	int (*init)(struct crypto_kpp *);
110542 	void (*exit)(struct crypto_kpp *);
110543 	unsigned int reqsize;
110544 	struct crypto_alg base;
110545 };
110546 
110547 struct kpp_instance {
110548 	void (*free)(struct kpp_instance *);
110549 	union {
110550 		struct {
110551 			char head[56];
110552 			struct crypto_instance base;
110553 		} s;
110554 		struct kpp_alg alg;
110555 	};
110556 };
110557 
110558 struct crypto_kpp_spawn {
110559 	struct crypto_spawn base;
110560 };
110561 
110562 struct blk_integrity_profile;
110563 
110564 struct blk_integrity {
110565 	const struct blk_integrity_profile *profile;
110566 	unsigned char flags;
110567 	unsigned char tuple_size;
110568 	unsigned char interval_exp;
110569 	unsigned char tag_size;
110570 };
110571 
110572 struct blk_integrity_iter;
110573 
110574 typedef blk_status_t integrity_processing_fn(struct blk_integrity_iter *);
110575 
110576 typedef void integrity_prepare_fn(struct request *);
110577 
110578 typedef void integrity_complete_fn(struct request *, unsigned int);
110579 
110580 struct blk_integrity_profile {
110581 	integrity_processing_fn *generate_fn;
110582 	integrity_processing_fn *verify_fn;
110583 	integrity_prepare_fn *prepare_fn;
110584 	integrity_complete_fn *complete_fn;
110585 	const char *name;
110586 };
110587 
110588 struct blk_integrity_iter {
110589 	void *prot_buf;
110590 	void *data_buf;
110591 	sector_t seed;
110592 	unsigned int data_size;
110593 	short unsigned int interval;
110594 	unsigned char tuple_size;
110595 	const char *disk_name;
110596 };
110597 
110598 struct bdev_inode {
110599 	struct block_device bdev;
110600 	struct inode vfs_inode;
110601 };
110602 
110603 struct blkpg_ioctl_arg {
110604 	int op;
110605 	int flags;
110606 	int datalen;
110607 	void *data;
110608 };
110609 
110610 struct blkpg_partition {
110611 	long long int start;
110612 	long long int length;
110613 	int pno;
110614 	char devname[64];
110615 	char volname[64];
110616 };
110617 
110618 struct pr_reservation {
110619 	__u64 key;
110620 	__u32 type;
110621 	__u32 flags;
110622 };
110623 
110624 struct pr_registration {
110625 	__u64 old_key;
110626 	__u64 new_key;
110627 	__u32 flags;
110628 	__u32 __pad;
110629 };
110630 
110631 struct pr_preempt {
110632 	__u64 old_key;
110633 	__u64 new_key;
110634 	__u32 type;
110635 	__u32 flags;
110636 };
110637 
110638 struct pr_clear {
110639 	__u64 key;
110640 	__u32 flags;
110641 	__u32 __pad;
110642 };
110643 
110644 struct io_notif_data {
110645 	struct file *file;
110646 	struct ubuf_info uarg;
110647 	long unsigned int account_pages;
110648 };
110649 
110650 typedef struct {
110651 	U32 f1c;
110652 	U32 f1d;
110653 	U32 f7b;
110654 	U32 f7c;
110655 } ZSTD_cpuid_t;
110656 
110657 typedef struct {
110658 	size_t error;
110659 	int lowerBound;
110660 	int upperBound;
110661 } ZSTD_bounds;
110662 
110663 typedef enum {
110664 	ZSTD_reset_session_only = 1,
110665 	ZSTD_reset_parameters = 2,
110666 	ZSTD_reset_session_and_parameters = 3,
110667 } ZSTD_ResetDirective;
110668 
110669 typedef enum {
110670 	ZSTD_d_windowLogMax = 100,
110671 	ZSTD_d_experimentalParam1 = 1000,
110672 	ZSTD_d_experimentalParam2 = 1001,
110673 	ZSTD_d_experimentalParam3 = 1002,
110674 	ZSTD_d_experimentalParam4 = 1003,
110675 } ZSTD_dParameter;
110676 
110677 typedef ZSTD_DCtx ZSTD_DStream___2;
110678 
110679 typedef enum {
110680 	ZSTDnit_frameHeader = 0,
110681 	ZSTDnit_blockHeader = 1,
110682 	ZSTDnit_block = 2,
110683 	ZSTDnit_lastBlock = 3,
110684 	ZSTDnit_checksum = 4,
110685 	ZSTDnit_skippableFrame = 5,
110686 } ZSTD_nextInputType_e;
110687 
110688 typedef struct {
110689 	size_t compressedSize;
110690 	long long unsigned int decompressedBound;
110691 } ZSTD_frameSizeInfo;
110692 
110693 struct dim_cq_moder {
110694 	u16 usec;
110695 	u16 pkts;
110696 	u16 comps;
110697 	u8 cq_period_mode;
110698 };
110699 
110700 enum dim_cq_period_mode {
110701 	DIM_CQ_PERIOD_MODE_START_FROM_EQE = 0,
110702 	DIM_CQ_PERIOD_MODE_START_FROM_CQE = 1,
110703 	DIM_CQ_PERIOD_NUM_MODES = 2,
110704 };
110705 
110706 struct dmt_videomode {
110707 	u32 dmt_id;
110708 	u32 std_2byte_code;
110709 	u32 cvt_3byte_code;
110710 	const struct fb_videomode *mode;
110711 };
110712 
110713 struct broken_edid {
110714 	u8 manufacturer[4];
110715 	u32 model;
110716 	u32 fix;
110717 };
110718 
110719 struct __fb_timings {
110720 	u32 dclk;
110721 	u32 hfreq;
110722 	u32 vfreq;
110723 	u32 hactive;
110724 	u32 vactive;
110725 	u32 hblank;
110726 	u32 vblank;
110727 	u32 htotal;
110728 	u32 vtotal;
110729 };
110730 
110731 enum translation_map {
110732 	LAT1_MAP = 0,
110733 	GRAF_MAP = 1,
110734 	IBMPC_MAP = 2,
110735 	USER_MAP = 3,
110736 	FIRST_MAP = 0,
110737 	LAST_MAP = 3,
110738 };
110739 
110740 struct uni_pagedict {
110741 	u16 **uni_pgdir[32];
110742 	long unsigned int refcount;
110743 	long unsigned int sum;
110744 	unsigned char *inverse_translations[4];
110745 	u16 *inverse_trans_unicode;
110746 };
110747 
110748 struct exar8250_platform {
110749 	int (*rs485_config)(struct uart_port *, struct ktermios *, struct serial_rs485 *);
110750 	const struct serial_rs485 *rs485_supported;
110751 	int (*register_gpio)(struct pci_dev *, struct uart_8250_port *);
110752 	void (*unregister_gpio)(struct uart_8250_port *);
110753 };
110754 
110755 struct exar8250;
110756 
110757 struct exar8250_board {
110758 	unsigned int num_ports;
110759 	unsigned int reg_shift;
110760 	int (*setup)(struct exar8250 *, struct pci_dev *, struct uart_8250_port *, int);
110761 	void (*exit)(struct pci_dev *);
110762 };
110763 
110764 struct exar8250 {
110765 	unsigned int nr;
110766 	struct exar8250_board *board;
110767 	void *virt;
110768 	int line[0];
110769 };
110770 
110771 struct cpu_attr {
110772 	struct device_attribute attr;
110773 	const struct cpumask * const map;
110774 };
110775 
110776 struct trace_event_raw_devres {
110777 	struct trace_entry ent;
110778 	u32 __data_loc_devname;
110779 	struct device *dev;
110780 	const char *op;
110781 	void *node;
110782 	const char *name;
110783 	size_t size;
110784 	char __data[0];
110785 };
110786 
110787 struct trace_event_data_offsets_devres {
110788 	u32 devname;
110789 };
110790 
110791 typedef void (*btf_trace_devres_log)(void *, struct device *, const char *, void *, const char *, size_t);
110792 
110793 struct request_sense;
110794 
110795 struct cdrom_generic_command {
110796 	unsigned char cmd[12];
110797 	unsigned char *buffer;
110798 	unsigned int buflen;
110799 	int stat;
110800 	struct request_sense *sense;
110801 	unsigned char data_direction;
110802 	int quiet;
110803 	int timeout;
110804 	union {
110805 		void *reserved[1];
110806 		void *unused;
110807 	};
110808 };
110809 
110810 struct request_sense {
110811 	__u8 error_code: 7;
110812 	__u8 valid: 1;
110813 	__u8 segment_number;
110814 	__u8 sense_key: 4;
110815 	__u8 reserved2: 1;
110816 	__u8 ili: 1;
110817 	__u8 reserved1: 2;
110818 	__u8 information[4];
110819 	__u8 add_sense_len;
110820 	__u8 command_info[4];
110821 	__u8 asc;
110822 	__u8 ascq;
110823 	__u8 fruc;
110824 	__u8 sks[3];
110825 	__u8 asb[46];
110826 };
110827 
110828 struct scsi_ioctl_command {
110829 	unsigned int inlen;
110830 	unsigned int outlen;
110831 	unsigned char data[0];
110832 };
110833 
110834 struct scsi_idlun {
110835 	__u32 dev_id;
110836 	__u32 host_unique_id;
110837 };
110838 
110839 enum {
110840 	mechtype_caddy = 0,
110841 	mechtype_tray = 1,
110842 	mechtype_popup = 2,
110843 	mechtype_individual_changer = 4,
110844 	mechtype_cartridge_changer = 5,
110845 };
110846 
110847 struct event_header {
110848 	__be16 data_len;
110849 	__u8 notification_class: 3;
110850 	__u8 reserved1: 4;
110851 	__u8 nea: 1;
110852 	__u8 supp_event_class;
110853 };
110854 
110855 enum {
110856 	AHCI_MAX_PORTS = 32LL,
110857 	AHCI_MAX_CLKS = 5LL,
110858 	AHCI_MAX_SG = 168LL,
110859 	AHCI_DMA_BOUNDARY = 4294967295LL,
110860 	AHCI_MAX_CMDS = 32LL,
110861 	AHCI_CMD_SZ = 32LL,
110862 	AHCI_CMD_SLOT_SZ = 1024LL,
110863 	AHCI_RX_FIS_SZ = 256LL,
110864 	AHCI_CMD_TBL_CDB = 64LL,
110865 	AHCI_CMD_TBL_HDR_SZ = 128LL,
110866 	AHCI_CMD_TBL_SZ = 2816LL,
110867 	AHCI_CMD_TBL_AR_SZ = 90112LL,
110868 	AHCI_PORT_PRIV_DMA_SZ = 91392LL,
110869 	AHCI_PORT_PRIV_FBS_DMA_SZ = 95232LL,
110870 	AHCI_IRQ_ON_SG = -2147483648LL,
110871 	AHCI_CMD_ATAPI = 32LL,
110872 	AHCI_CMD_WRITE = 64LL,
110873 	AHCI_CMD_PREFETCH = 128LL,
110874 	AHCI_CMD_RESET = 256LL,
110875 	AHCI_CMD_CLR_BUSY = 1024LL,
110876 	RX_FIS_PIO_SETUP = 32LL,
110877 	RX_FIS_D2H_REG = 64LL,
110878 	RX_FIS_SDB = 88LL,
110879 	RX_FIS_UNK = 96LL,
110880 	HOST_CAP = 0LL,
110881 	HOST_CTL = 4LL,
110882 	HOST_IRQ_STAT___2 = 8LL,
110883 	HOST_PORTS_IMPL = 12LL,
110884 	HOST_VERSION = 16LL,
110885 	HOST_EM_LOC = 28LL,
110886 	HOST_EM_CTL = 32LL,
110887 	HOST_CAP2 = 36LL,
110888 	HOST_RESET = 1LL,
110889 	HOST_IRQ_EN = 2LL,
110890 	HOST_MRSM = 4LL,
110891 	HOST_AHCI_EN = -2147483648LL,
110892 	HOST_CAP_SXS = 32LL,
110893 	HOST_CAP_EMS = 64LL,
110894 	HOST_CAP_CCC = 128LL,
110895 	HOST_CAP_PART = 8192LL,
110896 	HOST_CAP_SSC = 16384LL,
110897 	HOST_CAP_PIO_MULTI = 32768LL,
110898 	HOST_CAP_FBS = 65536LL,
110899 	HOST_CAP_PMP = 131072LL,
110900 	HOST_CAP_ONLY = 262144LL,
110901 	HOST_CAP_CLO = 16777216LL,
110902 	HOST_CAP_LED = 33554432LL,
110903 	HOST_CAP_ALPM = 67108864LL,
110904 	HOST_CAP_SSS = 134217728LL,
110905 	HOST_CAP_MPS = 268435456LL,
110906 	HOST_CAP_SNTF = 536870912LL,
110907 	HOST_CAP_NCQ = 1073741824LL,
110908 	HOST_CAP_64 = -2147483648LL,
110909 	HOST_CAP2_BOH = 1LL,
110910 	HOST_CAP2_NVMHCI = 2LL,
110911 	HOST_CAP2_APST = 4LL,
110912 	HOST_CAP2_SDS = 8LL,
110913 	HOST_CAP2_SADM = 16LL,
110914 	HOST_CAP2_DESO = 32LL,
110915 	PORT_LST_ADDR = 0LL,
110916 	PORT_LST_ADDR_HI = 4LL,
110917 	PORT_FIS_ADDR = 8LL,
110918 	PORT_FIS_ADDR_HI = 12LL,
110919 	PORT_IRQ_STAT___2 = 16LL,
110920 	PORT_IRQ_MASK = 20LL,
110921 	PORT_CMD = 24LL,
110922 	PORT_TFDATA = 32LL,
110923 	PORT_SIG = 36LL,
110924 	PORT_CMD_ISSUE = 56LL,
110925 	PORT_SCR_STAT = 40LL,
110926 	PORT_SCR_CTL = 44LL,
110927 	PORT_SCR_ERR = 48LL,
110928 	PORT_SCR_ACT = 52LL,
110929 	PORT_SCR_NTF = 60LL,
110930 	PORT_FBS = 64LL,
110931 	PORT_DEVSLP = 68LL,
110932 	PORT_IRQ_COLD_PRES = -2147483648LL,
110933 	PORT_IRQ_TF_ERR = 1073741824LL,
110934 	PORT_IRQ_HBUS_ERR = 536870912LL,
110935 	PORT_IRQ_HBUS_DATA_ERR = 268435456LL,
110936 	PORT_IRQ_IF_ERR = 134217728LL,
110937 	PORT_IRQ_IF_NONFATAL = 67108864LL,
110938 	PORT_IRQ_OVERFLOW = 16777216LL,
110939 	PORT_IRQ_BAD_PMP = 8388608LL,
110940 	PORT_IRQ_PHYRDY = 4194304LL,
110941 	PORT_IRQ_DEV_ILCK = 128LL,
110942 	PORT_IRQ_CONNECT = 64LL,
110943 	PORT_IRQ_SG_DONE = 32LL,
110944 	PORT_IRQ_UNK_FIS___2 = 16LL,
110945 	PORT_IRQ_SDB_FIS = 8LL,
110946 	PORT_IRQ_DMAS_FIS = 4LL,
110947 	PORT_IRQ_PIOS_FIS = 2LL,
110948 	PORT_IRQ_D2H_REG_FIS = 1LL,
110949 	PORT_IRQ_FREEZE = 683671632LL,
110950 	PORT_IRQ_ERROR___2 = 2025848912LL,
110951 	DEF_PORT_IRQ___2 = 2025848959LL,
110952 	PORT_CMD_ASP = 134217728LL,
110953 	PORT_CMD_ALPE = 67108864LL,
110954 	PORT_CMD_ATAPI = 16777216LL,
110955 	PORT_CMD_FBSCP = 4194304LL,
110956 	PORT_CMD_ESP = 2097152LL,
110957 	PORT_CMD_HPCP = 262144LL,
110958 	PORT_CMD_PMP = 131072LL,
110959 	PORT_CMD_LIST_ON = 32768LL,
110960 	PORT_CMD_FIS_ON = 16384LL,
110961 	PORT_CMD_FIS_RX = 16LL,
110962 	PORT_CMD_CLO = 8LL,
110963 	PORT_CMD_POWER_ON = 4LL,
110964 	PORT_CMD_SPIN_UP = 2LL,
110965 	PORT_CMD_START = 1LL,
110966 	PORT_CMD_ICC_MASK = -268435456LL,
110967 	PORT_CMD_ICC_ACTIVE = 268435456LL,
110968 	PORT_CMD_ICC_PARTIAL = 536870912LL,
110969 	PORT_CMD_ICC_SLUMBER = 1610612736LL,
110970 	PORT_FBS_DWE_OFFSET = 16LL,
110971 	PORT_FBS_ADO_OFFSET = 12LL,
110972 	PORT_FBS_DEV_OFFSET = 8LL,
110973 	PORT_FBS_DEV_MASK = 3840LL,
110974 	PORT_FBS_SDE = 4LL,
110975 	PORT_FBS_DEC = 2LL,
110976 	PORT_FBS_EN = 1LL,
110977 	PORT_DEVSLP_DM_OFFSET = 25LL,
110978 	PORT_DEVSLP_DM_MASK = 503316480LL,
110979 	PORT_DEVSLP_DITO_OFFSET = 15LL,
110980 	PORT_DEVSLP_MDAT_OFFSET = 10LL,
110981 	PORT_DEVSLP_DETO_OFFSET = 2LL,
110982 	PORT_DEVSLP_DSP = 2LL,
110983 	PORT_DEVSLP_ADSE = 1LL,
110984 	AHCI_HFLAG_NO_NCQ = 1LL,
110985 	AHCI_HFLAG_IGN_IRQ_IF_ERR = 2LL,
110986 	AHCI_HFLAG_IGN_SERR_INTERNAL = 4LL,
110987 	AHCI_HFLAG_32BIT_ONLY = 8LL,
110988 	AHCI_HFLAG_MV_PATA = 16LL,
110989 	AHCI_HFLAG_NO_MSI = 32LL,
110990 	AHCI_HFLAG_NO_PMP = 64LL,
110991 	AHCI_HFLAG_SECT255 = 256LL,
110992 	AHCI_HFLAG_YES_NCQ = 512LL,
110993 	AHCI_HFLAG_NO_SUSPEND = 1024LL,
110994 	AHCI_HFLAG_SRST_TOUT_IS_OFFLINE = 2048LL,
110995 	AHCI_HFLAG_NO_SNTF = 4096LL,
110996 	AHCI_HFLAG_NO_FPDMA_AA = 8192LL,
110997 	AHCI_HFLAG_YES_FBS = 16384LL,
110998 	AHCI_HFLAG_DELAY_ENGINE = 32768LL,
110999 	AHCI_HFLAG_NO_DEVSLP = 131072LL,
111000 	AHCI_HFLAG_NO_FBS = 262144LL,
111001 	AHCI_HFLAG_MULTI_MSI = 1048576LL,
111002 	AHCI_HFLAG_WAKE_BEFORE_STOP = 4194304LL,
111003 	AHCI_HFLAG_YES_ALPM = 8388608LL,
111004 	AHCI_HFLAG_NO_WRITE_TO_RO = 16777216LL,
111005 	AHCI_HFLAG_USE_LPM_POLICY = 33554432LL,
111006 	AHCI_HFLAG_SUSPEND_PHYS = 67108864LL,
111007 	AHCI_HFLAG_NO_SXS = 268435456LL,
111008 	AHCI_FLAG_COMMON = 393346LL,
111009 	ICH_MAP = 144LL,
111010 	PCS_6 = 146LL,
111011 	PCS_7 = 148LL,
111012 	EM_MAX_SLOTS = 8LL,
111013 	EM_MAX_RETRY = 5LL,
111014 	EM_CTL_RST = 512LL,
111015 	EM_CTL_TM = 256LL,
111016 	EM_CTL_MR = 1LL,
111017 	EM_CTL_ALHD = 67108864LL,
111018 	EM_CTL_XMT = 33554432LL,
111019 	EM_CTL_SMB = 16777216LL,
111020 	EM_CTL_SGPIO = 524288LL,
111021 	EM_CTL_SES = 262144LL,
111022 	EM_CTL_SAFTE = 131072LL,
111023 	EM_CTL_LED = 65536LL,
111024 	EM_MSG_TYPE_LED = 1LL,
111025 	EM_MSG_TYPE_SAFTE = 2LL,
111026 	EM_MSG_TYPE_SES2 = 4LL,
111027 	EM_MSG_TYPE_SGPIO = 8LL,
111028 };
111029 
111030 struct ahci_cmd_hdr {
111031 	__le32 opts;
111032 	__le32 status;
111033 	__le32 tbl_addr;
111034 	__le32 tbl_addr_hi;
111035 	__le32 reserved[4];
111036 };
111037 
111038 struct ahci_em_priv {
111039 	enum sw_activity blink_policy;
111040 	struct timer_list timer;
111041 	long unsigned int saved_activity;
111042 	long unsigned int activity;
111043 	long unsigned int led_state;
111044 	struct ata_link *link;
111045 };
111046 
111047 struct ahci_port_priv {
111048 	struct ata_link *active_link;
111049 	struct ahci_cmd_hdr *cmd_slot;
111050 	dma_addr_t cmd_slot_dma;
111051 	void *cmd_tbl;
111052 	dma_addr_t cmd_tbl_dma;
111053 	void *rx_fis;
111054 	dma_addr_t rx_fis_dma;
111055 	unsigned int ncq_saw_d2h: 1;
111056 	unsigned int ncq_saw_dmas: 1;
111057 	unsigned int ncq_saw_sdb: 1;
111058 	spinlock_t lock;
111059 	u32 intr_mask;
111060 	bool fbs_supported;
111061 	bool fbs_enabled;
111062 	int fbs_last_dev;
111063 	struct ahci_em_priv em_priv[8];
111064 	char *irq_desc;
111065 };
111066 
111067 struct ahci_host_priv {
111068 	unsigned int flags;
111069 	u32 force_port_map;
111070 	u32 mask_port_map;
111071 	void *mmio;
111072 	u32 cap;
111073 	u32 cap2;
111074 	u32 version;
111075 	u32 port_map;
111076 	u32 saved_cap;
111077 	u32 saved_cap2;
111078 	u32 saved_port_map;
111079 	u32 em_loc;
111080 	u32 em_buf_sz;
111081 	u32 em_msg_type;
111082 	u32 remapped_nvme;
111083 	bool got_runtime_pm;
111084 	struct clk *clks[5];
111085 	struct reset_control *rsts;
111086 	struct regulator **target_pwrs;
111087 	struct regulator *ahci_regulator;
111088 	struct regulator *phy_regulator;
111089 	struct phy___2 **phys;
111090 	unsigned int nports;
111091 	void *plat_data;
111092 	unsigned int irq;
111093 	void (*start_engine)(struct ata_port *);
111094 	int (*stop_engine)(struct ata_port *);
111095 	irqreturn_t (*irq_handler)(int, void *);
111096 	int (*get_irq_vector)(struct ata_host *, int);
111097 };
111098 
111099 enum {
111100 	AHCI_PCI_BAR_STA2X11 = 0,
111101 	AHCI_PCI_BAR_CAVIUM = 0,
111102 	AHCI_PCI_BAR_LOONGSON = 0,
111103 	AHCI_PCI_BAR_ENMOTUS = 2,
111104 	AHCI_PCI_BAR_CAVIUM_GEN5 = 4,
111105 	AHCI_PCI_BAR_STANDARD = 5,
111106 };
111107 
111108 enum board_ids {
111109 	board_ahci = 0,
111110 	board_ahci_ign_iferr = 1,
111111 	board_ahci_low_power = 2,
111112 	board_ahci_no_debounce_delay = 3,
111113 	board_ahci_nomsi = 4,
111114 	board_ahci_noncq = 5,
111115 	board_ahci_nosntf = 6,
111116 	board_ahci_yes_fbs = 7,
111117 	board_ahci_al = 8,
111118 	board_ahci_avn = 9,
111119 	board_ahci_mcp65 = 10,
111120 	board_ahci_mcp77 = 11,
111121 	board_ahci_mcp89 = 12,
111122 	board_ahci_mv = 13,
111123 	board_ahci_sb600 = 14,
111124 	board_ahci_sb700 = 15,
111125 	board_ahci_vt8251 = 16,
111126 	board_ahci_pcs7 = 17,
111127 	board_ahci_mcp_linux = 10,
111128 	board_ahci_mcp67 = 10,
111129 	board_ahci_mcp73 = 10,
111130 	board_ahci_mcp79 = 11,
111131 };
111132 
111133 struct mdio_driver {
111134 	struct mdio_driver_common mdiodrv;
111135 	int (*probe)(struct mdio_device *);
111136 	void (*remove)(struct mdio_device *);
111137 	void (*shutdown)(struct mdio_device *);
111138 };
111139 
111140 struct trace_event_raw_mdio_access {
111141 	struct trace_entry ent;
111142 	char busid[61];
111143 	char read;
111144 	u8 addr;
111145 	u16 val;
111146 	unsigned int regnum;
111147 	char __data[0];
111148 };
111149 
111150 struct trace_event_data_offsets_mdio_access {};
111151 
111152 typedef void (*btf_trace_mdio_access)(void *, struct mii_bus *, char, u8, unsigned int, u16, int);
111153 
111154 struct mdio_bus_stat_attr {
111155 	int addr;
111156 	unsigned int field_offset;
111157 };
111158 
111159 struct e1000_opt_list {
111160 	int i;
111161 	char *str;
111162 };
111163 
111164 struct e1000_option {
111165 	enum {
111166 		enable_option = 0,
111167 		range_option = 1,
111168 		list_option = 2,
111169 	} type;
111170 	const char *name;
111171 	const char *err;
111172 	int def;
111173 	union {
111174 		struct {
111175 			int min;
111176 			int max;
111177 		} r;
111178 		struct {
111179 			int nr;
111180 			struct e1000_opt_list *p;
111181 		} l;
111182 	} arg;
111183 };
111184 
111185 struct pcmcia_cfg_mem {
111186 	struct pcmcia_device *p_dev;
111187 	int (*conf_check)(struct pcmcia_device *, void *);
111188 	void *priv_data;
111189 	cisparse_t parse;
111190 	cistpl_cftable_entry_t dflt;
111191 };
111192 
111193 struct pcmcia_loop_mem {
111194 	struct pcmcia_device *p_dev;
111195 	void *priv_data;
111196 	int (*loop_tuple)(struct pcmcia_device *, tuple_t *, void *);
111197 };
111198 
111199 struct pcmcia_loop_get {
111200 	size_t len;
111201 	cisdata_t **buf;
111202 };
111203 
111204 struct quirk_entry {
111205 	u16 vid;
111206 	u16 pid;
111207 	u32 flags;
111208 };
111209 
111210 union input_seq_state {
111211 	struct {
111212 		short unsigned int pos;
111213 		bool mutex_acquired;
111214 	};
111215 	void *p;
111216 };
111217 
111218 struct input_devres {
111219 	struct input_dev *input;
111220 };
111221 
111222 struct i2c_device_identity {
111223 	u16 manufacturer_id;
111224 	u16 part_id;
111225 	u8 die_revision;
111226 };
111227 
111228 struct i2c_timings {
111229 	u32 bus_freq_hz;
111230 	u32 scl_rise_ns;
111231 	u32 scl_fall_ns;
111232 	u32 scl_int_delay_ns;
111233 	u32 sda_fall_ns;
111234 	u32 sda_hold_ns;
111235 	u32 digital_filter_width_ns;
111236 	u32 analog_filter_cutoff_freq_hz;
111237 };
111238 
111239 struct trace_event_raw_i2c_write {
111240 	struct trace_entry ent;
111241 	int adapter_nr;
111242 	__u16 msg_nr;
111243 	__u16 addr;
111244 	__u16 flags;
111245 	__u16 len;
111246 	u32 __data_loc_buf;
111247 	char __data[0];
111248 };
111249 
111250 struct trace_event_raw_i2c_read {
111251 	struct trace_entry ent;
111252 	int adapter_nr;
111253 	__u16 msg_nr;
111254 	__u16 addr;
111255 	__u16 flags;
111256 	__u16 len;
111257 	char __data[0];
111258 };
111259 
111260 struct trace_event_raw_i2c_reply {
111261 	struct trace_entry ent;
111262 	int adapter_nr;
111263 	__u16 msg_nr;
111264 	__u16 addr;
111265 	__u16 flags;
111266 	__u16 len;
111267 	u32 __data_loc_buf;
111268 	char __data[0];
111269 };
111270 
111271 struct trace_event_raw_i2c_result {
111272 	struct trace_entry ent;
111273 	int adapter_nr;
111274 	__u16 nr_msgs;
111275 	__s16 ret;
111276 	char __data[0];
111277 };
111278 
111279 struct trace_event_data_offsets_i2c_write {
111280 	u32 buf;
111281 };
111282 
111283 struct trace_event_data_offsets_i2c_read {};
111284 
111285 struct trace_event_data_offsets_i2c_reply {
111286 	u32 buf;
111287 };
111288 
111289 struct trace_event_data_offsets_i2c_result {};
111290 
111291 typedef void (*btf_trace_i2c_write)(void *, const struct i2c_adapter *, const struct i2c_msg *, int);
111292 
111293 typedef void (*btf_trace_i2c_read)(void *, const struct i2c_adapter *, const struct i2c_msg *, int);
111294 
111295 typedef void (*btf_trace_i2c_reply)(void *, const struct i2c_adapter *, const struct i2c_msg *, int);
111296 
111297 typedef void (*btf_trace_i2c_result)(void *, const struct i2c_adapter *, int, int);
111298 
111299 struct class_compat;
111300 
111301 struct i2c_cmd_arg {
111302 	unsigned int cmd;
111303 	void *arg;
111304 };
111305 
111306 struct stripe {
111307 	struct dm_dev *dev;
111308 	sector_t physical_start;
111309 	atomic_t error_count;
111310 };
111311 
111312 struct stripe_c {
111313 	uint32_t stripes;
111314 	int stripes_shift;
111315 	sector_t stripe_width;
111316 	uint32_t chunk_size;
111317 	int chunk_size_shift;
111318 	struct dm_target *ti;
111319 	struct work_struct trigger_event;
111320 	struct stripe stripe[0];
111321 };
111322 
111323 struct fib_notifier_net {
111324 	struct list_head fib_notifier_ops;
111325 	struct atomic_notifier_head fib_chain;
111326 };
111327 
111328 enum {
111329 	CTRL_CMD_UNSPEC = 0,
111330 	CTRL_CMD_NEWFAMILY = 1,
111331 	CTRL_CMD_DELFAMILY = 2,
111332 	CTRL_CMD_GETFAMILY = 3,
111333 	CTRL_CMD_NEWOPS = 4,
111334 	CTRL_CMD_DELOPS = 5,
111335 	CTRL_CMD_GETOPS = 6,
111336 	CTRL_CMD_NEWMCAST_GRP = 7,
111337 	CTRL_CMD_DELMCAST_GRP = 8,
111338 	CTRL_CMD_GETMCAST_GRP = 9,
111339 	CTRL_CMD_GETPOLICY = 10,
111340 	__CTRL_CMD_MAX = 11,
111341 };
111342 
111343 enum {
111344 	CTRL_ATTR_UNSPEC = 0,
111345 	CTRL_ATTR_FAMILY_ID = 1,
111346 	CTRL_ATTR_FAMILY_NAME = 2,
111347 	CTRL_ATTR_VERSION = 3,
111348 	CTRL_ATTR_HDRSIZE = 4,
111349 	CTRL_ATTR_MAXATTR = 5,
111350 	CTRL_ATTR_OPS = 6,
111351 	CTRL_ATTR_MCAST_GROUPS = 7,
111352 	CTRL_ATTR_POLICY = 8,
111353 	CTRL_ATTR_OP_POLICY = 9,
111354 	CTRL_ATTR_OP = 10,
111355 	__CTRL_ATTR_MAX = 11,
111356 };
111357 
111358 enum {
111359 	CTRL_ATTR_OP_UNSPEC = 0,
111360 	CTRL_ATTR_OP_ID = 1,
111361 	CTRL_ATTR_OP_FLAGS = 2,
111362 	__CTRL_ATTR_OP_MAX = 3,
111363 };
111364 
111365 enum {
111366 	CTRL_ATTR_MCAST_GRP_UNSPEC = 0,
111367 	CTRL_ATTR_MCAST_GRP_NAME = 1,
111368 	CTRL_ATTR_MCAST_GRP_ID = 2,
111369 	__CTRL_ATTR_MCAST_GRP_MAX = 3,
111370 };
111371 
111372 enum {
111373 	CTRL_ATTR_POLICY_UNSPEC = 0,
111374 	CTRL_ATTR_POLICY_DO = 1,
111375 	CTRL_ATTR_POLICY_DUMP = 2,
111376 	__CTRL_ATTR_POLICY_DUMP_MAX = 3,
111377 	CTRL_ATTR_POLICY_DUMP_MAX = 2,
111378 };
111379 
111380 struct genl_start_context {
111381 	const struct genl_family *family;
111382 	struct nlmsghdr *nlh;
111383 	struct netlink_ext_ack *extack;
111384 	const struct genl_ops *ops;
111385 	int hdrlen;
111386 };
111387 
111388 struct netlink_policy_dump_state;
111389 
111390 struct ctrl_dump_policy_ctx {
111391 	struct netlink_policy_dump_state *state;
111392 	const struct genl_family *rt;
111393 	unsigned int opidx;
111394 	u32 op;
111395 	u16 fam_id;
111396 	u8 policies: 1;
111397 	u8 single_op: 1;
111398 };
111399 
111400 struct nf_sockopt_ops {
111401 	struct list_head list;
111402 	u_int8_t pf;
111403 	int set_optmin;
111404 	int set_optmax;
111405 	int (*set)(struct sock *, int, sockptr_t, unsigned int);
111406 	int get_optmin;
111407 	int get_optmax;
111408 	int (*get)(struct sock *, int, void *, int *);
111409 	struct module *owner;
111410 };
111411 
111412 struct tcp_sack_block_wire {
111413 	__be32 start_seq;
111414 	__be32 end_seq;
111415 };
111416 
111417 enum tcp_ca_ack_event_flags {
111418 	CA_ACK_SLOWPATH = 1,
111419 	CA_ACK_WIN_UPDATE = 2,
111420 	CA_ACK_ECE = 4,
111421 };
111422 
111423 struct tcp_sacktag_state {
111424 	u64 first_sackt;
111425 	u64 last_sackt;
111426 	u32 reord;
111427 	u32 sack_delivered;
111428 	int flag;
111429 	unsigned int mss_now;
111430 	struct rate_sample *rate;
111431 };
111432 
111433 enum flowlabel_reflect {
111434 	FLOWLABEL_REFLECT_ESTABLISHED = 1,
111435 	FLOWLABEL_REFLECT_TCP_RESET = 2,
111436 	FLOWLABEL_REFLECT_ICMPV6_ECHO_REPLIES = 4,
111437 };
111438 
111439 struct in6_rtmsg {
111440 	struct in6_addr rtmsg_dst;
111441 	struct in6_addr rtmsg_src;
111442 	struct in6_addr rtmsg_gateway;
111443 	__u32 rtmsg_type;
111444 	__u16 rtmsg_dst_len;
111445 	__u16 rtmsg_src_len;
111446 	__u32 rtmsg_metric;
111447 	long unsigned int rtmsg_info;
111448 	__u32 rtmsg_flags;
111449 	int rtmsg_ifindex;
111450 };
111451 
111452 enum ip6_defrag_users {
111453 	IP6_DEFRAG_LOCAL_DELIVER = 0,
111454 	IP6_DEFRAG_CONNTRACK_IN = 1,
111455 	__IP6_DEFRAG_CONNTRACK_IN = 65536,
111456 	IP6_DEFRAG_CONNTRACK_OUT = 65537,
111457 	__IP6_DEFRAG_CONNTRACK_OUT = 131072,
111458 	IP6_DEFRAG_CONNTRACK_BRIDGE_IN = 131073,
111459 	__IP6_DEFRAG_CONNTRACK_BRIDGE_IN = 196608,
111460 };
111461 
111462 struct frag_queue {
111463 	struct inet_frag_queue q;
111464 	int iif;
111465 	__u16 nhoffset;
111466 	u8 ecn;
111467 };
111468 
111469 struct unix_domain {
111470 	struct auth_domain h;
111471 };
111472 
111473 struct ip_map {
111474 	struct cache_head h;
111475 	char m_class[8];
111476 	struct in6_addr m_addr;
111477 	struct unix_domain *m_client;
111478 	struct callback_head m_rcu;
111479 };
111480 
111481 struct unix_gid {
111482 	struct cache_head h;
111483 	kuid_t uid;
111484 	struct group_info *gi;
111485 	struct callback_head rcu;
111486 };
111487 
111488 typedef struct xdr_netobj gssx_buffer;
111489 
111490 typedef struct xdr_netobj utf8string;
111491 
111492 typedef struct xdr_netobj gssx_OID;
111493 
111494 struct gssx_option {
111495 	gssx_buffer option;
111496 	gssx_buffer value;
111497 };
111498 
111499 struct gssx_option_array {
111500 	u32 count;
111501 	struct gssx_option *data;
111502 };
111503 
111504 struct gssx_status {
111505 	u64 major_status;
111506 	gssx_OID mech;
111507 	u64 minor_status;
111508 	utf8string major_status_string;
111509 	utf8string minor_status_string;
111510 	gssx_buffer server_ctx;
111511 	struct gssx_option_array options;
111512 };
111513 
111514 struct gssx_call_ctx {
111515 	utf8string locale;
111516 	gssx_buffer server_ctx;
111517 	struct gssx_option_array options;
111518 };
111519 
111520 struct gssx_name_attr {
111521 	gssx_buffer attr;
111522 	gssx_buffer value;
111523 	struct gssx_option_array extensions;
111524 };
111525 
111526 struct gssx_name_attr_array {
111527 	u32 count;
111528 	struct gssx_name_attr *data;
111529 };
111530 
111531 struct gssx_name {
111532 	gssx_buffer display_name;
111533 };
111534 
111535 typedef struct gssx_name gssx_name;
111536 
111537 struct gssx_cred_element {
111538 	gssx_name MN;
111539 	gssx_OID mech;
111540 	u32 cred_usage;
111541 	u64 initiator_time_rec;
111542 	u64 acceptor_time_rec;
111543 	struct gssx_option_array options;
111544 };
111545 
111546 struct gssx_cred_element_array {
111547 	u32 count;
111548 	struct gssx_cred_element *data;
111549 };
111550 
111551 struct gssx_cred {
111552 	gssx_name desired_name;
111553 	struct gssx_cred_element_array elements;
111554 	gssx_buffer cred_handle_reference;
111555 	u32 needs_release;
111556 };
111557 
111558 struct gssx_ctx {
111559 	gssx_buffer exported_context_token;
111560 	gssx_buffer state;
111561 	u32 need_release;
111562 	gssx_OID mech;
111563 	gssx_name src_name;
111564 	gssx_name targ_name;
111565 	u64 lifetime;
111566 	u64 ctx_flags;
111567 	u32 locally_initiated;
111568 	u32 open;
111569 	struct gssx_option_array options;
111570 };
111571 
111572 struct gssx_cb {
111573 	u64 initiator_addrtype;
111574 	gssx_buffer initiator_address;
111575 	u64 acceptor_addrtype;
111576 	gssx_buffer acceptor_address;
111577 	gssx_buffer application_data;
111578 };
111579 
111580 struct gssx_arg_accept_sec_context {
111581 	struct gssx_call_ctx call_ctx;
111582 	struct gssx_ctx *context_handle;
111583 	struct gssx_cred *cred_handle;
111584 	struct gssp_in_token input_token;
111585 	struct gssx_cb *input_cb;
111586 	u32 ret_deleg_cred;
111587 	struct gssx_option_array options;
111588 	struct page **pages;
111589 	unsigned int npages;
111590 };
111591 
111592 struct gssx_res_accept_sec_context {
111593 	struct gssx_status status;
111594 	struct gssx_ctx *context_handle;
111595 	gssx_buffer *output_token;
111596 	struct gssx_option_array options;
111597 };
111598 
111599 struct uuidcmp {
111600 	const char *uuid;
111601 	int len;
111602 };
111603 
111604 struct trace_event_raw_sys_enter {
111605 	struct trace_entry ent;
111606 	long int id;
111607 	long unsigned int args[6];
111608 	char __data[0];
111609 };
111610 
111611 struct trace_event_raw_sys_exit {
111612 	struct trace_entry ent;
111613 	long int id;
111614 	long int ret;
111615 	char __data[0];
111616 };
111617 
111618 struct trace_event_data_offsets_sys_enter {};
111619 
111620 struct trace_event_data_offsets_sys_exit {};
111621 
111622 typedef void (*btf_trace_sys_enter)(void *, struct pt_regs *, long int);
111623 
111624 typedef void (*btf_trace_sys_exit)(void *, struct pt_regs *, long int);
111625 
111626 enum pgtable_index {
111627 	PTE_INDEX = 0,
111628 	PMD_INDEX = 1,
111629 	PUD_INDEX = 2,
111630 	PGD_INDEX = 3,
111631 	HTLB_16M_INDEX = 4,
111632 	HTLB_16G_INDEX = 5,
111633 };
111634 
111635 struct xive_irq_data {
111636 	u64 flags;
111637 	u64 eoi_page;
111638 	void *eoi_mmio;
111639 	u64 trig_page;
111640 	void *trig_mmio;
111641 	u32 esb_shift;
111642 	int src_chip;
111643 	u32 hw_irq;
111644 	int target;
111645 	bool saved_p;
111646 	bool stale_p;
111647 };
111648 
111649 struct xive_q {
111650 	__be32 *qpage;
111651 	u32 msk;
111652 	u32 idx;
111653 	u32 toggle;
111654 	u64 eoi_phys;
111655 	u32 esc_irq;
111656 	atomic_t count;
111657 	atomic_t pending_count;
111658 	u64 guest_qaddr;
111659 	u32 guest_qshift;
111660 };
111661 
111662 struct xive_cpu {
111663 	u32 hw_ipi;
111664 	struct xive_irq_data ipi_data;
111665 	int chip_id;
111666 	struct xive_q queue[8];
111667 	u8 pending_prio;
111668 	u8 cppr;
111669 };
111670 
111671 struct xive_ops {
111672 	int (*populate_irq_data)(u32, struct xive_irq_data *);
111673 	int (*configure_irq)(u32, u32, u8, u32);
111674 	int (*get_irq_config)(u32, u32 *, u8 *, u32 *);
111675 	int (*setup_queue)(unsigned int, struct xive_cpu *, u8);
111676 	void (*cleanup_queue)(unsigned int, struct xive_cpu *, u8);
111677 	void (*prepare_cpu)(unsigned int, struct xive_cpu *);
111678 	void (*setup_cpu)(unsigned int, struct xive_cpu *);
111679 	void (*teardown_cpu)(unsigned int, struct xive_cpu *);
111680 	bool (*match)(struct device_node *);
111681 	void (*shutdown)();
111682 	void (*update_pending)(struct xive_cpu *);
111683 	void (*sync_source)(u32);
111684 	u64 (*esb_rw)(u32, u32, u64, bool);
111685 	int (*get_ipi)(unsigned int, struct xive_cpu *);
111686 	void (*put_ipi)(unsigned int, struct xive_cpu *);
111687 	int (*debug_show)(struct seq_file *, void *);
111688 	int (*debug_create)(struct dentry *);
111689 	const char *name;
111690 };
111691 
111692 struct xive_ipi_desc {
111693 	unsigned int irq;
111694 	char name[16];
111695 	atomic_t started;
111696 };
111697 
111698 struct xive_ipi_alloc_info {
111699 	irq_hw_number_t hwirq;
111700 };
111701 
111702 struct memcons {
111703 	__be64 magic;
111704 	__be64 obuf_phys;
111705 	__be64 ibuf_phys;
111706 	__be32 obuf_size;
111707 	__be32 ibuf_size;
111708 	__be32 out_pos;
111709 	__be32 in_prod;
111710 	__be32 in_cons;
111711 };
111712 
111713 struct pseries_mc_errorlog {
111714 	__be32 fru_id;
111715 	__be32 proc_id;
111716 	u8 error_type;
111717 	u8 sub_err_type;
111718 	u8 reserved_1[6];
111719 	__be64 effective_address;
111720 	__be64 logical_address;
111721 };
111722 
111723 struct epow_errorlog {
111724 	unsigned char sensor_value;
111725 	unsigned char event_modifier;
111726 	unsigned char extended_modifier;
111727 	unsigned char reserved;
111728 	unsigned char platform_reason;
111729 };
111730 
111731 struct powerpc64_jit_data {
111732 	struct bpf_binary_header *header;
111733 	u32 *addrs;
111734 	u8 *image;
111735 	u32 proglen;
111736 	struct codegen_context ctx;
111737 };
111738 
111739 enum reboot_mode {
111740 	REBOOT_UNDEFINED = -1,
111741 	REBOOT_COLD = 0,
111742 	REBOOT_WARM = 1,
111743 	REBOOT_HARD = 2,
111744 	REBOOT_SOFT = 3,
111745 	REBOOT_GPIO = 4,
111746 };
111747 
111748 enum reboot_type {
111749 	BOOT_TRIPLE = 116,
111750 	BOOT_KBD = 107,
111751 	BOOT_BIOS = 98,
111752 	BOOT_ACPI = 97,
111753 	BOOT_EFI = 101,
111754 	BOOT_CF9_FORCE = 112,
111755 	BOOT_CF9_SAFE = 113,
111756 };
111757 
111758 enum sys_off_mode {
111759 	SYS_OFF_MODE_POWER_OFF_PREPARE = 0,
111760 	SYS_OFF_MODE_POWER_OFF = 1,
111761 	SYS_OFF_MODE_RESTART = 2,
111762 };
111763 
111764 struct sys_off_data {
111765 	int mode;
111766 	void *cb_data;
111767 	const char *cmd;
111768 };
111769 
111770 struct sys_off_handler {
111771 	struct notifier_block nb;
111772 	int (*sys_off_cb)(struct sys_off_data *);
111773 	void *cb_data;
111774 	enum sys_off_mode mode;
111775 	bool blocking;
111776 	void *list;
111777 };
111778 
111779 enum {
111780 	IRQ_STARTUP_NORMAL = 0,
111781 	IRQ_STARTUP_MANAGED = 1,
111782 	IRQ_STARTUP_ABORT = 2,
111783 };
111784 
111785 struct profile_hit {
111786 	u32 pc;
111787 	u32 hits;
111788 };
111789 
111790 struct posix_clock_desc {
111791 	struct file *fp;
111792 	struct posix_clock *clk;
111793 };
111794 
111795 struct cfd_percpu {
111796 	call_single_data_t csd;
111797 };
111798 
111799 struct call_function_data {
111800 	struct cfd_percpu *pcpu;
111801 	cpumask_var_t cpumask;
111802 	cpumask_var_t cpumask_ipi;
111803 };
111804 
111805 struct smp_call_on_cpu_struct {
111806 	struct work_struct work;
111807 	struct completion done;
111808 	int (*func)(void *);
111809 	void *data;
111810 	int ret;
111811 	int cpu;
111812 };
111813 
111814 enum {
111815 	TASKSTATS_TYPE_UNSPEC = 0,
111816 	TASKSTATS_TYPE_PID = 1,
111817 	TASKSTATS_TYPE_TGID = 2,
111818 	TASKSTATS_TYPE_STATS = 3,
111819 	TASKSTATS_TYPE_AGGR_PID = 4,
111820 	TASKSTATS_TYPE_AGGR_TGID = 5,
111821 	TASKSTATS_TYPE_NULL = 6,
111822 	__TASKSTATS_TYPE_MAX = 7,
111823 };
111824 
111825 enum {
111826 	TASKSTATS_CMD_ATTR_UNSPEC = 0,
111827 	TASKSTATS_CMD_ATTR_PID = 1,
111828 	TASKSTATS_CMD_ATTR_TGID = 2,
111829 	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 3,
111830 	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 4,
111831 	__TASKSTATS_CMD_ATTR_MAX = 5,
111832 };
111833 
111834 enum {
111835 	CGROUPSTATS_CMD_UNSPEC = 3,
111836 	CGROUPSTATS_CMD_GET = 4,
111837 	CGROUPSTATS_CMD_NEW = 5,
111838 	__CGROUPSTATS_CMD_MAX = 6,
111839 };
111840 
111841 enum {
111842 	CGROUPSTATS_TYPE_UNSPEC = 0,
111843 	CGROUPSTATS_TYPE_CGROUP_STATS = 1,
111844 	__CGROUPSTATS_TYPE_MAX = 2,
111845 };
111846 
111847 enum {
111848 	CGROUPSTATS_CMD_ATTR_UNSPEC = 0,
111849 	CGROUPSTATS_CMD_ATTR_FD = 1,
111850 	__CGROUPSTATS_CMD_ATTR_MAX = 2,
111851 };
111852 
111853 struct listener {
111854 	struct list_head list;
111855 	pid_t pid;
111856 	char valid;
111857 };
111858 
111859 struct listener_list {
111860 	struct rw_semaphore sem;
111861 	struct list_head list;
111862 };
111863 
111864 enum actions {
111865 	REGISTER = 0,
111866 	DEREGISTER = 1,
111867 	CPU_DONT_CARE = 2,
111868 };
111869 
111870 enum blktrace_cat {
111871 	BLK_TC_READ = 1,
111872 	BLK_TC_WRITE = 2,
111873 	BLK_TC_FLUSH = 4,
111874 	BLK_TC_SYNC = 8,
111875 	BLK_TC_SYNCIO = 8,
111876 	BLK_TC_QUEUE = 16,
111877 	BLK_TC_REQUEUE = 32,
111878 	BLK_TC_ISSUE = 64,
111879 	BLK_TC_COMPLETE = 128,
111880 	BLK_TC_FS = 256,
111881 	BLK_TC_PC = 512,
111882 	BLK_TC_NOTIFY = 1024,
111883 	BLK_TC_AHEAD = 2048,
111884 	BLK_TC_META = 4096,
111885 	BLK_TC_DISCARD = 8192,
111886 	BLK_TC_DRV_DATA = 16384,
111887 	BLK_TC_FUA = 32768,
111888 	BLK_TC_END = 32768,
111889 };
111890 
111891 enum blktrace_notify {
111892 	__BLK_TN_PROCESS = 0,
111893 	__BLK_TN_TIMESTAMP = 1,
111894 	__BLK_TN_MESSAGE = 2,
111895 	__BLK_TN_CGROUP = 256,
111896 };
111897 
111898 struct blk_io_trace {
111899 	__u32 magic;
111900 	__u32 sequence;
111901 	__u64 time;
111902 	__u64 sector;
111903 	__u32 bytes;
111904 	__u32 action;
111905 	__u32 pid;
111906 	__u32 device;
111907 	__u32 cpu;
111908 	__u16 error;
111909 	__u16 pdu_len;
111910 };
111911 
111912 struct blk_io_trace_remap {
111913 	__be32 device_from;
111914 	__be32 device_to;
111915 	__be64 sector_from;
111916 };
111917 
111918 enum {
111919 	Blktrace_setup = 1,
111920 	Blktrace_running = 2,
111921 	Blktrace_stopped = 3,
111922 };
111923 
111924 struct blk_user_trace_setup {
111925 	char name[32];
111926 	__u16 act_mask;
111927 	__u32 buf_size;
111928 	__u32 buf_nr;
111929 	__u64 start_lba;
111930 	__u64 end_lba;
111931 	__u32 pid;
111932 };
111933 
111934 typedef void blk_log_action_t(struct trace_iterator *, const char *, bool);
111935 
111936 struct bpf_event_entry {
111937 	struct perf_event *event;
111938 	struct file *perf_file;
111939 	struct file *map_file;
111940 	struct callback_head rcu;
111941 };
111942 
111943 struct bpf_iter_seq_array_map_info {
111944 	struct bpf_map *map;
111945 	void *percpu_value_buf;
111946 	u32 index;
111947 };
111948 
111949 struct prog_poke_elem {
111950 	struct list_head list;
111951 	struct bpf_prog_aux *aux;
111952 };
111953 
111954 struct bpf_link_primer {
111955 	struct bpf_link *link;
111956 	struct file *file;
111957 	int fd;
111958 	u32 id;
111959 };
111960 
111961 struct bpf_netns_link {
111962 	struct bpf_link link;
111963 	enum bpf_attach_type type;
111964 	enum netns_bpf_attach_type netns_type;
111965 	struct net *net;
111966 	struct list_head node;
111967 };
111968 
111969 struct static_key_mod {
111970 	struct static_key_mod *next;
111971 	struct jump_entry *entries;
111972 	struct module *mod;
111973 };
111974 
111975 struct static_key_deferred {
111976 	struct static_key key;
111977 	long unsigned int timeout;
111978 	struct delayed_work work;
111979 };
111980 
111981 struct trace_event_raw_oom_score_adj_update {
111982 	struct trace_entry ent;
111983 	pid_t pid;
111984 	char comm[16];
111985 	short int oom_score_adj;
111986 	char __data[0];
111987 };
111988 
111989 struct trace_event_raw_reclaim_retry_zone {
111990 	struct trace_entry ent;
111991 	int node;
111992 	int zone_idx;
111993 	int order;
111994 	long unsigned int reclaimable;
111995 	long unsigned int available;
111996 	long unsigned int min_wmark;
111997 	int no_progress_loops;
111998 	bool wmark_check;
111999 	char __data[0];
112000 };
112001 
112002 struct trace_event_raw_mark_victim {
112003 	struct trace_entry ent;
112004 	int pid;
112005 	char __data[0];
112006 };
112007 
112008 struct trace_event_raw_wake_reaper {
112009 	struct trace_entry ent;
112010 	int pid;
112011 	char __data[0];
112012 };
112013 
112014 struct trace_event_raw_start_task_reaping {
112015 	struct trace_entry ent;
112016 	int pid;
112017 	char __data[0];
112018 };
112019 
112020 struct trace_event_raw_finish_task_reaping {
112021 	struct trace_entry ent;
112022 	int pid;
112023 	char __data[0];
112024 };
112025 
112026 struct trace_event_raw_skip_task_reaping {
112027 	struct trace_entry ent;
112028 	int pid;
112029 	char __data[0];
112030 };
112031 
112032 struct trace_event_raw_compact_retry {
112033 	struct trace_entry ent;
112034 	int order;
112035 	int priority;
112036 	int result;
112037 	int retries;
112038 	int max_retries;
112039 	bool ret;
112040 	char __data[0];
112041 };
112042 
112043 struct trace_event_data_offsets_oom_score_adj_update {};
112044 
112045 struct trace_event_data_offsets_reclaim_retry_zone {};
112046 
112047 struct trace_event_data_offsets_mark_victim {};
112048 
112049 struct trace_event_data_offsets_wake_reaper {};
112050 
112051 struct trace_event_data_offsets_start_task_reaping {};
112052 
112053 struct trace_event_data_offsets_finish_task_reaping {};
112054 
112055 struct trace_event_data_offsets_skip_task_reaping {};
112056 
112057 struct trace_event_data_offsets_compact_retry {};
112058 
112059 typedef void (*btf_trace_oom_score_adj_update)(void *, struct task_struct *);
112060 
112061 typedef void (*btf_trace_reclaim_retry_zone)(void *, struct zoneref *, int, long unsigned int, long unsigned int, long unsigned int, int, bool);
112062 
112063 typedef void (*btf_trace_mark_victim)(void *, int);
112064 
112065 typedef void (*btf_trace_wake_reaper)(void *, int);
112066 
112067 typedef void (*btf_trace_start_task_reaping)(void *, int);
112068 
112069 typedef void (*btf_trace_finish_task_reaping)(void *, int);
112070 
112071 typedef void (*btf_trace_skip_task_reaping)(void *, int);
112072 
112073 typedef void (*btf_trace_compact_retry)(void *, int, enum compact_priority, enum compact_result, int, int, bool);
112074 
112075 struct zap_details;
112076 
112077 struct vma_swap_readahead {
112078 	short unsigned int win;
112079 	short unsigned int offset;
112080 	short unsigned int nr_pte;
112081 	pte_t *ptes;
112082 };
112083 
112084 struct swap_cgroup_ctrl {
112085 	struct page **map;
112086 	long unsigned int length;
112087 	spinlock_t lock;
112088 };
112089 
112090 struct swap_cgroup {
112091 	short unsigned int id;
112092 };
112093 
112094 struct mount_attr {
112095 	__u64 attr_set;
112096 	__u64 attr_clr;
112097 	__u64 propagation;
112098 	__u64 userns_fd;
112099 };
112100 
112101 struct proc_mounts {
112102 	struct mnt_namespace *ns;
112103 	struct path root;
112104 	int (*show)(struct seq_file *, struct vfsmount *);
112105 	struct mount cursor;
112106 };
112107 
112108 struct mount_kattr {
112109 	unsigned int attr_set;
112110 	unsigned int attr_clr;
112111 	unsigned int propagation;
112112 	unsigned int lookup_flags;
112113 	bool recurse;
112114 	struct user_namespace *mnt_userns;
112115 };
112116 
112117 enum umount_tree_flags {
112118 	UMOUNT_SYNC = 1,
112119 	UMOUNT_PROPAGATE = 2,
112120 	UMOUNT_CONNECTED = 4,
112121 };
112122 
112123 struct genradix_root;
112124 
112125 struct __genradix {
112126 	struct genradix_root *root;
112127 };
112128 
112129 enum resctrl_conf_type {
112130 	CDP_NONE = 0,
112131 	CDP_CODE = 1,
112132 	CDP_DATA = 2,
112133 };
112134 
112135 struct pid_entry {
112136 	const char *name;
112137 	unsigned int len;
112138 	umode_t mode;
112139 	const struct inode_operations *iop;
112140 	const struct file_operations *fop;
112141 	union proc_op op;
112142 };
112143 
112144 struct limit_names {
112145 	const char *name;
112146 	const char *unit;
112147 };
112148 
112149 struct map_files_info {
112150 	long unsigned int start;
112151 	long unsigned int end;
112152 	fmode_t mode;
112153 };
112154 
112155 struct tgid_iter {
112156 	unsigned int tgid;
112157 	struct task_struct *task;
112158 };
112159 
112160 struct fname {
112161 	__u32 hash;
112162 	__u32 minor_hash;
112163 	struct rb_node rb_hash;
112164 	struct fname *next;
112165 	__u32 inode;
112166 	__u8 name_len;
112167 	__u8 file_type;
112168 	char name[0];
112169 };
112170 
112171 enum bio_post_read_step {
112172 	STEP_INITIAL = 0,
112173 	STEP_DECRYPT = 1,
112174 	STEP_VERITY = 2,
112175 	STEP_MAX = 3,
112176 };
112177 
112178 struct bio_post_read_ctx {
112179 	struct bio *bio;
112180 	struct work_struct work;
112181 	unsigned int cur_step;
112182 	unsigned int enabled_steps;
112183 };
112184 
112185 typedef struct {
112186 	__le16 e_tag;
112187 	__le16 e_perm;
112188 	__le32 e_id;
112189 } ext4_acl_entry;
112190 
112191 typedef struct {
112192 	__le32 a_version;
112193 } ext4_acl_header;
112194 
112195 struct __fat_dirent {
112196 	long int d_ino;
112197 	__kernel_off_t d_off;
112198 	short unsigned int d_reclen;
112199 	char d_name[256];
112200 };
112201 
112202 struct msdos_dir_slot {
112203 	__u8 id;
112204 	__u8 name0_4[10];
112205 	__u8 attr;
112206 	__u8 reserved;
112207 	__u8 alias_checksum;
112208 	__u8 name5_10[12];
112209 	__le16 start;
112210 	__u8 name11_12[4];
112211 };
112212 
112213 enum {
112214 	PARSE_INVALID = 1,
112215 	PARSE_NOT_LONGNAME = 2,
112216 	PARSE_EOF = 3,
112217 };
112218 
112219 struct fat_ioctl_filldir_callback {
112220 	struct dir_context ctx;
112221 	void *dirent;
112222 	int result;
112223 	const char *longname;
112224 	int long_len;
112225 	const char *shortname;
112226 	int short_len;
112227 };
112228 
112229 struct nfs_find_desc {
112230 	struct nfs_fh *fh;
112231 	struct nfs_fattr *fattr;
112232 };
112233 
112234 enum nfs3_createmode {
112235 	NFS3_CREATE_UNCHECKED = 0,
112236 	NFS3_CREATE_GUARDED = 1,
112237 	NFS3_CREATE_EXCLUSIVE = 2,
112238 };
112239 
112240 enum nfs3_ftype {
112241 	NF3NON = 0,
112242 	NF3REG = 1,
112243 	NF3DIR = 2,
112244 	NF3BLK = 3,
112245 	NF3CHR = 4,
112246 	NF3LNK = 5,
112247 	NF3SOCK = 6,
112248 	NF3FIFO = 7,
112249 	NF3BAD = 8,
112250 };
112251 
112252 struct nfs3_sattrargs {
112253 	struct nfs_fh *fh;
112254 	struct iattr *sattr;
112255 	unsigned int guard;
112256 	struct timespec64 guardtime;
112257 };
112258 
112259 struct nfs3_diropargs {
112260 	struct nfs_fh *fh;
112261 	const char *name;
112262 	unsigned int len;
112263 };
112264 
112265 struct nfs3_accessargs {
112266 	struct nfs_fh *fh;
112267 	__u32 access;
112268 };
112269 
112270 struct nfs3_createargs {
112271 	struct nfs_fh *fh;
112272 	const char *name;
112273 	unsigned int len;
112274 	struct iattr *sattr;
112275 	enum nfs3_createmode createmode;
112276 	__be32 verifier[2];
112277 };
112278 
112279 struct nfs3_mkdirargs {
112280 	struct nfs_fh *fh;
112281 	const char *name;
112282 	unsigned int len;
112283 	struct iattr *sattr;
112284 };
112285 
112286 struct nfs3_symlinkargs {
112287 	struct nfs_fh *fromfh;
112288 	const char *fromname;
112289 	unsigned int fromlen;
112290 	struct page **pages;
112291 	unsigned int pathlen;
112292 	struct iattr *sattr;
112293 };
112294 
112295 struct nfs3_mknodargs {
112296 	struct nfs_fh *fh;
112297 	const char *name;
112298 	unsigned int len;
112299 	enum nfs3_ftype type;
112300 	struct iattr *sattr;
112301 	dev_t rdev;
112302 };
112303 
112304 struct nfs3_linkargs {
112305 	struct nfs_fh *fromfh;
112306 	struct nfs_fh *tofh;
112307 	const char *toname;
112308 	unsigned int tolen;
112309 };
112310 
112311 struct nfs3_readdirargs {
112312 	struct nfs_fh *fh;
112313 	__u64 cookie;
112314 	__be32 verf[2];
112315 	bool plus;
112316 	unsigned int count;
112317 	struct page **pages;
112318 };
112319 
112320 struct nfs3_diropres {
112321 	struct nfs_fattr *dir_attr;
112322 	struct nfs_fh *fh;
112323 	struct nfs_fattr *fattr;
112324 };
112325 
112326 struct nfs3_accessres {
112327 	struct nfs_fattr *fattr;
112328 	__u32 access;
112329 };
112330 
112331 struct nfs3_readlinkargs {
112332 	struct nfs_fh *fh;
112333 	unsigned int pgbase;
112334 	unsigned int pglen;
112335 	struct page **pages;
112336 };
112337 
112338 struct nfs3_linkres {
112339 	struct nfs_fattr *dir_attr;
112340 	struct nfs_fattr *fattr;
112341 };
112342 
112343 struct nfs3_readdirres {
112344 	struct nfs_fattr *dir_attr;
112345 	__be32 *verf;
112346 	bool plus;
112347 };
112348 
112349 struct nfs3_createdata {
112350 	struct rpc_message msg;
112351 	union {
112352 		struct nfs3_createargs create;
112353 		struct nfs3_mkdirargs mkdir;
112354 		struct nfs3_symlinkargs symlink;
112355 		struct nfs3_mknodargs mknod;
112356 	} arg;
112357 	struct nfs3_diropres res;
112358 	struct nfs_fh fh;
112359 	struct nfs_fattr fattr;
112360 	struct nfs_fattr dir_attr;
112361 };
112362 
112363 struct xfs_attr3_rmt_hdr {
112364 	__be32 rm_magic;
112365 	__be32 rm_offset;
112366 	__be32 rm_bytes;
112367 	__be32 rm_crc;
112368 	uuid_t rm_uuid;
112369 	__be64 rm_owner;
112370 	__be64 rm_blkno;
112371 	__be64 rm_lsn;
112372 };
112373 
112374 struct xfs_attri_log_nameval;
112375 
112376 struct xfs_attr_intent {
112377 	struct list_head xattri_list;
112378 	struct xfs_da_state *xattri_da_state;
112379 	struct xfs_da_args *xattri_da_args;
112380 	struct xfs_attri_log_nameval *xattri_nameval;
112381 	enum xfs_delattr_state xattri_dela_state;
112382 	unsigned int xattri_op_flags;
112383 	xfs_dablk_t xattri_lblkno;
112384 	int xattri_blkcnt;
112385 	struct xfs_bmbt_irec xattri_map;
112386 };
112387 
112388 typedef struct xfs_sb xfs_sb_t;
112389 
112390 enum xfs_dax_mode {
112391 	XFS_DAX_INODE = 0,
112392 	XFS_DAX_ALWAYS = 1,
112393 	XFS_DAX_NEVER = 2,
112394 };
112395 
112396 enum {
112397 	Opt_logbufs = 0,
112398 	Opt_logbsize = 1,
112399 	Opt_logdev = 2,
112400 	Opt_rtdev = 3,
112401 	Opt_wsync = 4,
112402 	Opt_noalign = 5,
112403 	Opt_swalloc = 6,
112404 	Opt_sunit = 7,
112405 	Opt_swidth = 8,
112406 	Opt_nouuid = 9,
112407 	Opt_grpid___3 = 10,
112408 	Opt_nogrpid___3 = 11,
112409 	Opt_bsdgroups = 12,
112410 	Opt_sysvgroups = 13,
112411 	Opt_allocsize = 14,
112412 	Opt_norecovery = 15,
112413 	Opt_inode64___2 = 16,
112414 	Opt_inode32___2 = 17,
112415 	Opt_ikeep = 18,
112416 	Opt_noikeep = 19,
112417 	Opt_largeio = 20,
112418 	Opt_nolargeio = 21,
112419 	Opt_attr2 = 22,
112420 	Opt_noattr2 = 23,
112421 	Opt_filestreams = 24,
112422 	Opt_quota___3 = 25,
112423 	Opt_noquota___2 = 26,
112424 	Opt_usrquota___3 = 27,
112425 	Opt_grpquota___3 = 28,
112426 	Opt_prjquota___2 = 29,
112427 	Opt_uquota = 30,
112428 	Opt_gquota = 31,
112429 	Opt_pquota = 32,
112430 	Opt_uqnoenforce = 33,
112431 	Opt_gqnoenforce = 34,
112432 	Opt_pqnoenforce = 35,
112433 	Opt_qnoenforce = 36,
112434 	Opt_discard___3 = 37,
112435 	Opt_nodiscard___2 = 38,
112436 	Opt_dax___3 = 39,
112437 	Opt_dax_enum = 40,
112438 };
112439 
112440 struct proc_xfs_info {
112441 	uint64_t flag;
112442 	char *str;
112443 };
112444 
112445 struct xfs_rui_log_format {
112446 	uint16_t rui_type;
112447 	uint16_t rui_size;
112448 	uint32_t rui_nextents;
112449 	uint64_t rui_id;
112450 	struct xfs_map_extent rui_extents[0];
112451 };
112452 
112453 struct xfs_rud_log_format {
112454 	uint16_t rud_type;
112455 	uint16_t rud_size;
112456 	uint32_t __pad;
112457 	uint64_t rud_rui_id;
112458 };
112459 
112460 struct xfs_rui_log_item {
112461 	struct xfs_log_item rui_item;
112462 	atomic_t rui_refcount;
112463 	atomic_t rui_next_extent;
112464 	struct xfs_rui_log_format rui_format;
112465 };
112466 
112467 struct xfs_rud_log_item {
112468 	struct xfs_log_item rud_item;
112469 	struct xfs_rui_log_item *rud_ruip;
112470 	struct xfs_rud_log_format rud_format;
112471 };
112472 
112473 enum xfs_rmap_intent_type {
112474 	XFS_RMAP_MAP = 0,
112475 	XFS_RMAP_MAP_SHARED = 1,
112476 	XFS_RMAP_UNMAP = 2,
112477 	XFS_RMAP_UNMAP_SHARED = 3,
112478 	XFS_RMAP_CONVERT = 4,
112479 	XFS_RMAP_CONVERT_SHARED = 5,
112480 	XFS_RMAP_ALLOC = 6,
112481 	XFS_RMAP_FREE = 7,
112482 };
112483 
112484 struct xfs_rmap_intent {
112485 	struct list_head ri_list;
112486 	enum xfs_rmap_intent_type ri_type;
112487 	int ri_whichfork;
112488 	uint64_t ri_owner;
112489 	struct xfs_bmbt_irec ri_bmap;
112490 };
112491 
112492 typedef int __kernel_mqd_t;
112493 
112494 typedef __kernel_mqd_t mqd_t;
112495 
112496 struct mq_attr {
112497 	__kernel_long_t mq_flags;
112498 	__kernel_long_t mq_maxmsg;
112499 	__kernel_long_t mq_msgsize;
112500 	__kernel_long_t mq_curmsgs;
112501 	__kernel_long_t __reserved[4];
112502 };
112503 
112504 struct mqueue_fs_context {
112505 	struct ipc_namespace *ipc_ns;
112506 	bool newns;
112507 };
112508 
112509 struct posix_msg_tree_node {
112510 	struct rb_node rb_node;
112511 	struct list_head msg_list;
112512 	int priority;
112513 };
112514 
112515 struct ext_wait_queue {
112516 	struct task_struct *task;
112517 	struct list_head list;
112518 	struct msg_msg *msg;
112519 	int state;
112520 };
112521 
112522 struct mqueue_inode_info {
112523 	spinlock_t lock;
112524 	struct inode vfs_inode;
112525 	wait_queue_head_t wait_q;
112526 	struct rb_root msg_tree;
112527 	struct rb_node *msg_tree_rightmost;
112528 	struct posix_msg_tree_node *node_cache;
112529 	struct mq_attr attr;
112530 	struct sigevent notify;
112531 	struct pid *notify_owner;
112532 	u32 notify_self_exec_id;
112533 	struct user_namespace *notify_user_ns;
112534 	struct ucounts *ucounts;
112535 	struct sock *notify_sock;
112536 	struct sk_buff *notify_cookie;
112537 	struct ext_wait_queue e_wait_q[2];
112538 	long unsigned int qsize;
112539 };
112540 
112541 struct hmac_ctx {
112542 	struct crypto_shash *hash;
112543 };
112544 
112545 struct genradix_iter {
112546 	size_t offset;
112547 	size_t pos;
112548 };
112549 
112550 struct genradix_node {
112551 	union {
112552 		struct genradix_node *children[8192];
112553 		u8 data[65536];
112554 	};
112555 };
112556 
112557 struct ei_entry {
112558 	struct list_head list;
112559 	long unsigned int start_addr;
112560 	long unsigned int end_addr;
112561 	int etype;
112562 	void *priv;
112563 };
112564 
112565 struct fb_event {
112566 	struct fb_info *info;
112567 	void *data;
112568 };
112569 
112570 struct lcd_properties {
112571 	int max_contrast;
112572 };
112573 
112574 struct lcd_device;
112575 
112576 struct lcd_ops {
112577 	int (*get_power)(struct lcd_device *);
112578 	int (*set_power)(struct lcd_device *, int);
112579 	int (*get_contrast)(struct lcd_device *);
112580 	int (*set_contrast)(struct lcd_device *, int);
112581 	int (*set_mode)(struct lcd_device *, struct fb_videomode *);
112582 	int (*check_fb)(struct lcd_device *, struct fb_info *);
112583 };
112584 
112585 struct lcd_device {
112586 	struct lcd_properties props;
112587 	struct mutex ops_lock;
112588 	struct lcd_ops *ops;
112589 	struct mutex update_lock;
112590 	struct notifier_block fb_notif;
112591 	struct device dev;
112592 };
112593 
112594 struct radeon_bl_privdata {
112595 	struct radeonfb_info *rinfo;
112596 	uint8_t negative;
112597 };
112598 
112599 struct pts_fs_info;
112600 
112601 struct serial8250_config {
112602 	const char *name;
112603 	short unsigned int fifo_size;
112604 	short unsigned int tx_loadsz;
112605 	unsigned char fcr;
112606 	unsigned char rxtrig_bytes[4];
112607 	unsigned int flags;
112608 };
112609 
112610 typedef void *acpi_handle;
112611 
112612 struct irq_affinity_devres {
112613 	unsigned int count;
112614 	unsigned int irq[0];
112615 };
112616 
112617 struct platform_object {
112618 	struct platform_device pdev;
112619 	char name[0];
112620 };
112621 
112622 struct regmap_debugfs_off_cache {
112623 	struct list_head list;
112624 	off_t min;
112625 	off_t max;
112626 	unsigned int base_reg;
112627 	unsigned int max_reg;
112628 };
112629 
112630 struct regmap_range_node {
112631 	struct rb_node node;
112632 	const char *name;
112633 	struct regmap *map;
112634 	unsigned int range_min;
112635 	unsigned int range_max;
112636 	unsigned int selector_reg;
112637 	unsigned int selector_mask;
112638 	int selector_shift;
112639 	unsigned int window_start;
112640 	unsigned int window_len;
112641 };
112642 
112643 struct regmap_debugfs_node {
112644 	struct regmap *map;
112645 	struct list_head link;
112646 };
112647 
112648 enum {
112649 	ND_MIN_NAMESPACE_SIZE = 65536,
112650 };
112651 
112652 enum alloc_loc {
112653 	ALLOC_ERR = 0,
112654 	ALLOC_BEFORE = 1,
112655 	ALLOC_MID = 2,
112656 	ALLOC_AFTER = 3,
112657 };
112658 
112659 enum scsi_vpd_parameters {
112660 	SCSI_VPD_HEADER_SIZE = 4,
112661 };
112662 
112663 struct trace_event_raw_scsi_dispatch_cmd_start {
112664 	struct trace_entry ent;
112665 	unsigned int host_no;
112666 	unsigned int channel;
112667 	unsigned int id;
112668 	unsigned int lun;
112669 	unsigned int opcode;
112670 	unsigned int cmd_len;
112671 	int driver_tag;
112672 	int scheduler_tag;
112673 	unsigned int data_sglen;
112674 	unsigned int prot_sglen;
112675 	unsigned char prot_op;
112676 	u32 __data_loc_cmnd;
112677 	char __data[0];
112678 };
112679 
112680 struct trace_event_raw_scsi_dispatch_cmd_error {
112681 	struct trace_entry ent;
112682 	unsigned int host_no;
112683 	unsigned int channel;
112684 	unsigned int id;
112685 	unsigned int lun;
112686 	int rtn;
112687 	unsigned int opcode;
112688 	unsigned int cmd_len;
112689 	int driver_tag;
112690 	int scheduler_tag;
112691 	unsigned int data_sglen;
112692 	unsigned int prot_sglen;
112693 	unsigned char prot_op;
112694 	u32 __data_loc_cmnd;
112695 	char __data[0];
112696 };
112697 
112698 struct trace_event_raw_scsi_cmd_done_timeout_template {
112699 	struct trace_entry ent;
112700 	unsigned int host_no;
112701 	unsigned int channel;
112702 	unsigned int id;
112703 	unsigned int lun;
112704 	int result;
112705 	unsigned int opcode;
112706 	unsigned int cmd_len;
112707 	int driver_tag;
112708 	int scheduler_tag;
112709 	unsigned int data_sglen;
112710 	unsigned int prot_sglen;
112711 	unsigned char prot_op;
112712 	u32 __data_loc_cmnd;
112713 	char __data[0];
112714 };
112715 
112716 struct trace_event_raw_scsi_eh_wakeup {
112717 	struct trace_entry ent;
112718 	unsigned int host_no;
112719 	char __data[0];
112720 };
112721 
112722 struct trace_event_data_offsets_scsi_dispatch_cmd_start {
112723 	u32 cmnd;
112724 };
112725 
112726 struct trace_event_data_offsets_scsi_dispatch_cmd_error {
112727 	u32 cmnd;
112728 };
112729 
112730 struct trace_event_data_offsets_scsi_cmd_done_timeout_template {
112731 	u32 cmnd;
112732 };
112733 
112734 struct trace_event_data_offsets_scsi_eh_wakeup {};
112735 
112736 typedef void (*btf_trace_scsi_dispatch_cmd_start)(void *, struct scsi_cmnd *);
112737 
112738 typedef void (*btf_trace_scsi_dispatch_cmd_error)(void *, struct scsi_cmnd *, int);
112739 
112740 typedef void (*btf_trace_scsi_dispatch_cmd_done)(void *, struct scsi_cmnd *);
112741 
112742 typedef void (*btf_trace_scsi_dispatch_cmd_timeout)(void *, struct scsi_cmnd *);
112743 
112744 typedef void (*btf_trace_scsi_eh_wakeup)(void *, struct Scsi_Host *);
112745 
112746 struct ipr_res_addr {
112747 	u8 reserved;
112748 	u8 bus;
112749 	u8 target;
112750 	u8 lun;
112751 };
112752 
112753 struct ipr_std_inq_vpids {
112754 	u8 vendor_id[8];
112755 	u8 product_id[16];
112756 };
112757 
112758 struct ipr_vpd {
112759 	struct ipr_std_inq_vpids vpids;
112760 	u8 sn[8];
112761 };
112762 
112763 struct ipr_ext_vpd {
112764 	struct ipr_vpd vpd;
112765 	__be32 wwid[2];
112766 };
112767 
112768 struct ipr_ext_vpd64 {
112769 	struct ipr_vpd vpd;
112770 	__be32 wwid[4];
112771 };
112772 
112773 struct ipr_std_inq_data {
112774 	u8 peri_qual_dev_type;
112775 	u8 removeable_medium_rsvd;
112776 	u8 version;
112777 	u8 aen_naca_fmt;
112778 	u8 additional_len;
112779 	u8 sccs_rsvd;
112780 	u8 bq_enc_multi;
112781 	u8 sync_cmdq_flags;
112782 	struct ipr_std_inq_vpids vpids;
112783 	u8 ros_rsvd_ram_rsvd[4];
112784 	u8 serial_num[8];
112785 };
112786 
112787 struct ipr_config_table_entry {
112788 	u8 proto;
112789 	u8 array_id;
112790 	u8 flags;
112791 	u8 rsvd_subtype;
112792 	struct ipr_res_addr res_addr;
112793 	__be32 res_handle;
112794 	__be32 lun_wwn[2];
112795 	struct ipr_std_inq_data std_inq_data;
112796 };
112797 
112798 struct ipr_config_table_entry64 {
112799 	u8 res_type;
112800 	u8 proto;
112801 	u8 vset_num;
112802 	u8 array_id;
112803 	__be16 flags;
112804 	__be16 res_flags;
112805 	__be32 res_handle;
112806 	u8 dev_id_type;
112807 	u8 reserved[3];
112808 	__be64 dev_id;
112809 	__be64 lun;
112810 	__be64 lun_wwn[2];
112811 	__be64 res_path;
112812 	struct ipr_std_inq_data std_inq_data;
112813 	u8 reserved2[4];
112814 	__be64 reserved3[2];
112815 	u8 reserved4[8];
112816 };
112817 
112818 struct ipr_config_table_hdr {
112819 	u8 num_entries;
112820 	u8 flags;
112821 	__be16 reserved;
112822 };
112823 
112824 struct ipr_config_table_hdr64 {
112825 	__be16 num_entries;
112826 	__be16 reserved;
112827 	u8 flags;
112828 	u8 reserved2[11];
112829 };
112830 
112831 struct ipr_config_table {
112832 	struct ipr_config_table_hdr hdr;
112833 	struct ipr_config_table_entry dev[0];
112834 };
112835 
112836 struct ipr_config_table64 {
112837 	struct ipr_config_table_hdr64 hdr64;
112838 	struct ipr_config_table_entry64 dev[0];
112839 };
112840 
112841 struct ipr_config_table_entry_wrapper {
112842 	union {
112843 		struct ipr_config_table_entry *cfgte;
112844 		struct ipr_config_table_entry64 *cfgte64;
112845 	} u;
112846 };
112847 
112848 struct ipr_hostrcb_cfg_ch_not {
112849 	union {
112850 		struct ipr_config_table_entry cfgte;
112851 		struct ipr_config_table_entry64 cfgte64;
112852 	} u;
112853 	u8 reserved[936];
112854 };
112855 
112856 struct ipr_supported_device {
112857 	__be16 data_length;
112858 	u8 reserved;
112859 	u8 num_records;
112860 	struct ipr_std_inq_vpids vpids;
112861 	u8 reserved2[16];
112862 };
112863 
112864 struct ipr_ioa_cfg;
112865 
112866 struct ipr_hrr_queue {
112867 	struct ipr_ioa_cfg *ioa_cfg;
112868 	__be32 *host_rrq;
112869 	dma_addr_t host_rrq_dma;
112870 	volatile __be32 *hrrq_start;
112871 	volatile __be32 *hrrq_end;
112872 	volatile __be32 *hrrq_curr;
112873 	struct list_head hrrq_free_q;
112874 	struct list_head hrrq_pending_q;
112875 	spinlock_t _lock;
112876 	spinlock_t *lock;
112877 	volatile u32 toggle_bit;
112878 	u32 size;
112879 	u32 min_cmd_id;
112880 	u32 max_cmd_id;
112881 	u8 allow_interrupts: 1;
112882 	u8 ioa_is_dead: 1;
112883 	u8 allow_cmds: 1;
112884 	u8 removing_ioa: 1;
112885 	struct irq_poll iopoll;
112886 };
112887 
112888 struct ipr_bus_attributes {
112889 	u8 bus;
112890 	u8 qas_enabled;
112891 	u8 bus_width;
112892 	u8 reserved;
112893 	u32 max_xfer_rate;
112894 };
112895 
112896 struct ipr_interrupts {
112897 	void *set_interrupt_mask_reg;
112898 	void *clr_interrupt_mask_reg;
112899 	void *clr_interrupt_mask_reg32;
112900 	void *sense_interrupt_mask_reg;
112901 	void *sense_interrupt_mask_reg32;
112902 	void *clr_interrupt_reg;
112903 	void *clr_interrupt_reg32;
112904 	void *sense_interrupt_reg;
112905 	void *sense_interrupt_reg32;
112906 	void *ioarrin_reg;
112907 	void *sense_uproc_interrupt_reg;
112908 	void *sense_uproc_interrupt_reg32;
112909 	void *set_uproc_interrupt_reg;
112910 	void *set_uproc_interrupt_reg32;
112911 	void *clr_uproc_interrupt_reg;
112912 	void *clr_uproc_interrupt_reg32;
112913 	void *init_feedback_reg;
112914 	void *dump_addr_reg;
112915 	void *dump_data_reg;
112916 	void *endian_swap_reg;
112917 };
112918 
112919 enum ipr_sdt_state {
112920 	INACTIVE = 0,
112921 	WAIT_FOR_DUMP = 1,
112922 	GET_DUMP = 2,
112923 	READ_DUMP = 3,
112924 	ABORT_DUMP = 4,
112925 	DUMP_OBTAINED = 5,
112926 };
112927 
112928 struct ipr_trace_entry;
112929 
112930 struct ipr_resource_entry;
112931 
112932 struct ipr_hostrcb;
112933 
112934 struct ipr_chip_cfg_t;
112935 
112936 struct ipr_chip_t;
112937 
112938 struct ipr_sglist;
112939 
112940 struct ipr_dump;
112941 
112942 struct ipr_misc_cbs;
112943 
112944 struct ipr_cmnd;
112945 
112946 struct ipr_ioa_cfg {
112947 	char eye_catcher[8];
112948 	struct list_head queue;
112949 	u8 in_reset_reload: 1;
112950 	u8 in_ioa_bringdown: 1;
112951 	u8 ioa_unit_checked: 1;
112952 	u8 dump_taken: 1;
112953 	u8 scan_enabled: 1;
112954 	u8 scan_done: 1;
112955 	u8 needs_hard_reset: 1;
112956 	u8 dual_raid: 1;
112957 	u8 needs_warm_reset: 1;
112958 	u8 msi_received: 1;
112959 	u8 sis64: 1;
112960 	u8 dump_timeout: 1;
112961 	u8 cfg_locked: 1;
112962 	u8 clear_isr: 1;
112963 	u8 probe_done: 1;
112964 	u8 scsi_unblock: 1;
112965 	u8 scsi_blocked: 1;
112966 	u8 revid;
112967 	long unsigned int target_ids[64];
112968 	long unsigned int array_ids[64];
112969 	long unsigned int vset_ids[64];
112970 	u16 type;
112971 	u8 log_level;
112972 	char trace_start[8];
112973 	struct ipr_trace_entry *trace;
112974 	atomic_t trace_index;
112975 	char cfg_table_start[8];
112976 	union {
112977 		struct ipr_config_table *cfg_table;
112978 		struct ipr_config_table64 *cfg_table64;
112979 	} u;
112980 	dma_addr_t cfg_table_dma;
112981 	u32 cfg_table_size;
112982 	u32 max_devs_supported;
112983 	char resource_table_label[8];
112984 	struct ipr_resource_entry *res_entries;
112985 	struct list_head free_res_q;
112986 	struct list_head used_res_q;
112987 	char ipr_hcam_label[8];
112988 	struct ipr_hostrcb *hostrcb[16];
112989 	dma_addr_t hostrcb_dma[16];
112990 	struct list_head hostrcb_free_q;
112991 	struct list_head hostrcb_pending_q;
112992 	struct list_head hostrcb_report_q;
112993 	struct ipr_hrr_queue hrrq[16];
112994 	u32 hrrq_num;
112995 	atomic_t hrrq_index;
112996 	u16 identify_hrrq_index;
112997 	struct ipr_bus_attributes bus_attr[16];
112998 	unsigned int transop_timeout;
112999 	const struct ipr_chip_cfg_t *chip_cfg;
113000 	const struct ipr_chip_t *ipr_chip;
113001 	void *hdw_dma_regs;
113002 	long unsigned int hdw_dma_regs_pci;
113003 	void *ioa_mailbox;
113004 	struct ipr_interrupts regs;
113005 	u16 saved_pcix_cmd_reg;
113006 	u16 reset_retries;
113007 	u32 errors_logged;
113008 	u32 doorbell;
113009 	struct Scsi_Host *host;
113010 	struct pci_dev *pdev;
113011 	struct ipr_sglist *ucode_sglist;
113012 	u8 saved_mode_page_len;
113013 	struct work_struct work_q;
113014 	struct work_struct scsi_add_work_q;
113015 	struct workqueue_struct *reset_work_q;
113016 	wait_queue_head_t reset_wait_q;
113017 	wait_queue_head_t msi_wait_q;
113018 	wait_queue_head_t eeh_wait_q;
113019 	struct ipr_dump *dump;
113020 	enum ipr_sdt_state sdt_state;
113021 	struct ipr_misc_cbs *vpd_cbs;
113022 	dma_addr_t vpd_cbs_dma;
113023 	struct dma_pool *ipr_cmd_pool;
113024 	struct ipr_cmnd *reset_cmd;
113025 	int (*reset)(struct ipr_cmnd *);
113026 	struct ata_host ata_host;
113027 	char ipr_cmd_label[8];
113028 	u32 max_cmds;
113029 	struct ipr_cmnd **ipr_cmnd_list;
113030 	dma_addr_t *ipr_cmnd_list_dma;
113031 	unsigned int nvectors;
113032 	struct {
113033 		char desc[22];
113034 	} vectors_info[16];
113035 	u32 iopoll_weight;
113036 };
113037 
113038 struct ipr_cmd_pkt {
113039 	u8 reserved;
113040 	u8 hrrq_id;
113041 	u8 request_type;
113042 	u8 reserved2;
113043 	u8 flags_hi;
113044 	u8 flags_lo;
113045 	u8 cdb[16];
113046 	__be16 timeout;
113047 };
113048 
113049 struct ipr_ioarcb_ata_regs {
113050 	u8 flags;
113051 	u8 reserved[3];
113052 	__be16 data;
113053 	u8 feature;
113054 	u8 nsect;
113055 	u8 lbal;
113056 	u8 lbam;
113057 	u8 lbah;
113058 	u8 device;
113059 	u8 command;
113060 	u8 reserved2[3];
113061 	u8 hob_feature;
113062 	u8 hob_nsect;
113063 	u8 hob_lbal;
113064 	u8 hob_lbam;
113065 	u8 hob_lbah;
113066 	u8 ctl;
113067 };
113068 
113069 struct ipr_ioadl_desc {
113070 	__be32 flags_and_data_len;
113071 	__be32 address;
113072 };
113073 
113074 struct ipr_ioadl64_desc {
113075 	__be32 flags;
113076 	__be32 data_len;
113077 	__be64 address;
113078 };
113079 
113080 struct ipr_ata64_ioadl {
113081 	struct ipr_ioarcb_ata_regs regs;
113082 	u16 reserved[5];
113083 	struct ipr_ioadl64_desc ioadl64[64];
113084 };
113085 
113086 struct ipr_ioarcb_add_data {
113087 	union {
113088 		struct ipr_ioarcb_ata_regs regs;
113089 		struct ipr_ioadl_desc ioadl[5];
113090 		__be32 add_cmd_parms[10];
113091 	} u;
113092 };
113093 
113094 struct ipr_ioarcb_sis64_add_addr_ecb {
113095 	__be64 ioasa_host_pci_addr;
113096 	__be64 data_ioadl_addr;
113097 	__be64 reserved;
113098 	__be32 ext_control_buf[4];
113099 };
113100 
113101 struct ipr_ioarcb {
113102 	union {
113103 		__be32 ioarcb_host_pci_addr;
113104 		__be64 ioarcb_host_pci_addr64;
113105 	} a;
113106 	__be32 res_handle;
113107 	__be32 host_response_handle;
113108 	__be32 reserved1;
113109 	__be32 reserved2;
113110 	__be32 reserved3;
113111 	__be32 data_transfer_length;
113112 	__be32 read_data_transfer_length;
113113 	__be32 write_ioadl_addr;
113114 	__be32 ioadl_len;
113115 	__be32 read_ioadl_addr;
113116 	__be32 read_ioadl_len;
113117 	__be32 ioasa_host_pci_addr;
113118 	__be16 ioasa_len;
113119 	__be16 reserved4;
113120 	struct ipr_cmd_pkt cmd_pkt;
113121 	__be16 add_cmd_parms_offset;
113122 	__be16 add_cmd_parms_len;
113123 	union {
113124 		struct ipr_ioarcb_add_data add_data;
113125 		struct ipr_ioarcb_sis64_add_addr_ecb sis64_addr_data;
113126 	} u;
113127 };
113128 
113129 struct ipr_ioasa_vset {
113130 	__be32 failing_lba_hi;
113131 	__be32 failing_lba_lo;
113132 	__be32 reserved;
113133 };
113134 
113135 struct ipr_ioasa_af_dasd {
113136 	__be32 failing_lba;
113137 	__be32 reserved[2];
113138 };
113139 
113140 struct ipr_ioasa_gpdd {
113141 	u8 end_state;
113142 	u8 bus_phase;
113143 	__be16 reserved;
113144 	__be32 ioa_data[2];
113145 };
113146 
113147 struct ipr_ioasa_gata {
113148 	u8 error;
113149 	u8 nsect;
113150 	u8 lbal;
113151 	u8 lbam;
113152 	u8 lbah;
113153 	u8 device;
113154 	u8 status;
113155 	u8 alt_status;
113156 	u8 hob_nsect;
113157 	u8 hob_lbal;
113158 	u8 hob_lbam;
113159 	u8 hob_lbah;
113160 };
113161 
113162 struct ipr_auto_sense {
113163 	__be16 auto_sense_len;
113164 	__be16 ioa_data_len;
113165 	__be32 data[24];
113166 };
113167 
113168 struct ipr_ioasa_hdr {
113169 	__be32 ioasc;
113170 	__be16 ret_stat_len;
113171 	__be16 avail_stat_len;
113172 	__be32 residual_data_len;
113173 	__be32 ilid;
113174 	__be32 fd_ioasc;
113175 	__be32 fd_phys_locator;
113176 	__be32 fd_res_handle;
113177 	__be32 ioasc_specific;
113178 };
113179 
113180 struct ipr_ioasa {
113181 	struct ipr_ioasa_hdr hdr;
113182 	union {
113183 		struct ipr_ioasa_vset vset;
113184 		struct ipr_ioasa_af_dasd dasd;
113185 		struct ipr_ioasa_gpdd gpdd;
113186 		struct ipr_ioasa_gata gata;
113187 	} u;
113188 	struct ipr_auto_sense auto_sense;
113189 };
113190 
113191 struct ipr_ioasa64 {
113192 	struct ipr_ioasa_hdr hdr;
113193 	u8 fd_res_path[8];
113194 	union {
113195 		struct ipr_ioasa_vset vset;
113196 		struct ipr_ioasa_af_dasd dasd;
113197 		struct ipr_ioasa_gpdd gpdd;
113198 		struct ipr_ioasa_gata gata;
113199 	} u;
113200 	struct ipr_auto_sense auto_sense;
113201 };
113202 
113203 struct ipr_mode_parm_hdr {
113204 	u8 length;
113205 	u8 medium_type;
113206 	u8 device_spec_parms;
113207 	u8 block_desc_len;
113208 };
113209 
113210 struct ipr_mode_pages {
113211 	struct ipr_mode_parm_hdr hdr;
113212 	u8 data[251];
113213 };
113214 
113215 struct ipr_mode_page_hdr {
113216 	u8 ps_page_code;
113217 	u8 page_length;
113218 };
113219 
113220 struct ipr_dev_bus_entry {
113221 	struct ipr_res_addr res_addr;
113222 	u8 flags;
113223 	u8 scsi_id;
113224 	u8 bus_width;
113225 	u8 extended_reset_delay;
113226 	__be32 max_xfer_rate;
113227 	u8 spinup_delay;
113228 	u8 reserved3;
113229 	__be16 reserved4;
113230 };
113231 
113232 struct ipr_mode_page28 {
113233 	struct ipr_mode_page_hdr hdr;
113234 	u8 num_entries;
113235 	u8 entry_length;
113236 	struct ipr_dev_bus_entry bus[0];
113237 };
113238 
113239 struct ipr_mode_page24 {
113240 	struct ipr_mode_page_hdr hdr;
113241 	u8 flags;
113242 };
113243 
113244 struct ipr_ioa_vpd {
113245 	struct ipr_std_inq_data std_inq_data;
113246 	u8 ascii_part_num[12];
113247 	u8 reserved[40];
113248 	u8 ascii_plant_code[4];
113249 };
113250 
113251 struct ipr_inquiry_page3 {
113252 	u8 peri_qual_dev_type;
113253 	u8 page_code;
113254 	u8 reserved1;
113255 	u8 page_length;
113256 	u8 ascii_len;
113257 	u8 reserved2[3];
113258 	u8 load_id[4];
113259 	u8 major_release;
113260 	u8 card_type;
113261 	u8 minor_release[2];
113262 	u8 ptf_number[4];
113263 	u8 patch_number[4];
113264 };
113265 
113266 struct ipr_inquiry_cap {
113267 	u8 peri_qual_dev_type;
113268 	u8 page_code;
113269 	u8 reserved1;
113270 	u8 page_length;
113271 	u8 ascii_len;
113272 	u8 reserved2;
113273 	u8 sis_version[2];
113274 	u8 cap;
113275 	u8 reserved3[15];
113276 };
113277 
113278 struct ipr_inquiry_page0 {
113279 	u8 peri_qual_dev_type;
113280 	u8 page_code;
113281 	u8 reserved1;
113282 	u8 len;
113283 	u8 page[20];
113284 };
113285 
113286 struct ipr_inquiry_pageC4 {
113287 	u8 peri_qual_dev_type;
113288 	u8 page_code;
113289 	u8 reserved1;
113290 	u8 len;
113291 	u8 cache_cap[4];
113292 	u8 reserved2[20];
113293 };
113294 
113295 struct ipr_hostrcb_device_data_entry {
113296 	struct ipr_vpd vpd;
113297 	struct ipr_res_addr dev_res_addr;
113298 	struct ipr_vpd new_vpd;
113299 	struct ipr_vpd ioa_last_with_dev_vpd;
113300 	struct ipr_vpd cfc_last_with_dev_vpd;
113301 	__be32 ioa_data[5];
113302 };
113303 
113304 struct ipr_hostrcb_device_data_entry_enhanced {
113305 	struct ipr_ext_vpd vpd;
113306 	u8 ccin[4];
113307 	struct ipr_res_addr dev_res_addr;
113308 	struct ipr_ext_vpd new_vpd;
113309 	u8 new_ccin[4];
113310 	struct ipr_ext_vpd ioa_last_with_dev_vpd;
113311 	struct ipr_ext_vpd cfc_last_with_dev_vpd;
113312 };
113313 
113314 struct ipr_hostrcb64_device_data_entry_enhanced {
113315 	struct ipr_ext_vpd vpd;
113316 	u8 ccin[4];
113317 	u8 res_path[8];
113318 	struct ipr_ext_vpd new_vpd;
113319 	u8 new_ccin[4];
113320 	struct ipr_ext_vpd ioa_last_with_dev_vpd;
113321 	struct ipr_ext_vpd cfc_last_with_dev_vpd;
113322 };
113323 
113324 struct ipr_hostrcb_array_data_entry {
113325 	struct ipr_vpd vpd;
113326 	struct ipr_res_addr expected_dev_res_addr;
113327 	struct ipr_res_addr dev_res_addr;
113328 };
113329 
113330 struct ipr_hostrcb64_array_data_entry {
113331 	struct ipr_ext_vpd vpd;
113332 	u8 ccin[4];
113333 	u8 expected_res_path[8];
113334 	u8 res_path[8];
113335 };
113336 
113337 struct ipr_hostrcb_array_data_entry_enhanced {
113338 	struct ipr_ext_vpd vpd;
113339 	u8 ccin[4];
113340 	struct ipr_res_addr expected_dev_res_addr;
113341 	struct ipr_res_addr dev_res_addr;
113342 };
113343 
113344 struct ipr_hostrcb_type_ff_error {
113345 	__be32 ioa_data[758];
113346 };
113347 
113348 struct ipr_hostrcb_type_01_error {
113349 	__be32 seek_counter;
113350 	__be32 read_counter;
113351 	u8 sense_data[32];
113352 	__be32 ioa_data[236];
113353 };
113354 
113355 struct ipr_hostrcb_type_21_error {
113356 	__be32 wwn[4];
113357 	u8 res_path[8];
113358 	u8 primary_problem_desc[32];
113359 	u8 second_problem_desc[32];
113360 	__be32 sense_data[8];
113361 	__be32 cdb[4];
113362 	__be32 residual_trans_length;
113363 	__be32 length_of_error;
113364 	__be32 ioa_data[236];
113365 };
113366 
113367 struct ipr_hostrcb_type_02_error {
113368 	struct ipr_vpd ioa_vpd;
113369 	struct ipr_vpd cfc_vpd;
113370 	struct ipr_vpd ioa_last_attached_to_cfc_vpd;
113371 	struct ipr_vpd cfc_last_attached_to_ioa_vpd;
113372 	__be32 ioa_data[3];
113373 };
113374 
113375 struct ipr_hostrcb_type_12_error {
113376 	struct ipr_ext_vpd ioa_vpd;
113377 	struct ipr_ext_vpd cfc_vpd;
113378 	struct ipr_ext_vpd ioa_last_attached_to_cfc_vpd;
113379 	struct ipr_ext_vpd cfc_last_attached_to_ioa_vpd;
113380 	__be32 ioa_data[3];
113381 };
113382 
113383 struct ipr_hostrcb_type_03_error {
113384 	struct ipr_vpd ioa_vpd;
113385 	struct ipr_vpd cfc_vpd;
113386 	__be32 errors_detected;
113387 	__be32 errors_logged;
113388 	u8 ioa_data[12];
113389 	struct ipr_hostrcb_device_data_entry dev[3];
113390 };
113391 
113392 struct ipr_hostrcb_type_13_error {
113393 	struct ipr_ext_vpd ioa_vpd;
113394 	struct ipr_ext_vpd cfc_vpd;
113395 	__be32 errors_detected;
113396 	__be32 errors_logged;
113397 	struct ipr_hostrcb_device_data_entry_enhanced dev[3];
113398 };
113399 
113400 struct ipr_hostrcb_type_23_error {
113401 	struct ipr_ext_vpd ioa_vpd;
113402 	struct ipr_ext_vpd cfc_vpd;
113403 	__be32 errors_detected;
113404 	__be32 errors_logged;
113405 	struct ipr_hostrcb64_device_data_entry_enhanced dev[3];
113406 };
113407 
113408 struct ipr_hostrcb_type_04_error {
113409 	struct ipr_vpd ioa_vpd;
113410 	struct ipr_vpd cfc_vpd;
113411 	u8 ioa_data[12];
113412 	struct ipr_hostrcb_array_data_entry array_member[10];
113413 	__be32 exposed_mode_adn;
113414 	__be32 array_id;
113415 	struct ipr_vpd incomp_dev_vpd;
113416 	__be32 ioa_data2;
113417 	struct ipr_hostrcb_array_data_entry array_member2[8];
113418 	struct ipr_res_addr last_func_vset_res_addr;
113419 	u8 vset_serial_num[8];
113420 	u8 protection_level[8];
113421 };
113422 
113423 struct ipr_hostrcb_type_14_error {
113424 	struct ipr_ext_vpd ioa_vpd;
113425 	struct ipr_ext_vpd cfc_vpd;
113426 	__be32 exposed_mode_adn;
113427 	__be32 array_id;
113428 	struct ipr_res_addr last_func_vset_res_addr;
113429 	u8 vset_serial_num[8];
113430 	u8 protection_level[8];
113431 	__be32 num_entries;
113432 	struct ipr_hostrcb_array_data_entry_enhanced array_member[18];
113433 };
113434 
113435 struct ipr_hostrcb_type_24_error {
113436 	struct ipr_ext_vpd ioa_vpd;
113437 	struct ipr_ext_vpd cfc_vpd;
113438 	u8 reserved[2];
113439 	u8 exposed_mode_adn;
113440 	u8 array_id;
113441 	u8 last_res_path[8];
113442 	u8 protection_level[8];
113443 	struct ipr_ext_vpd64 array_vpd;
113444 	u8 description[16];
113445 	u8 reserved2[3];
113446 	u8 num_entries;
113447 	struct ipr_hostrcb64_array_data_entry array_member[32];
113448 };
113449 
113450 struct ipr_hostrcb_type_07_error {
113451 	u8 failure_reason[64];
113452 	struct ipr_vpd vpd;
113453 	__be32 data[222];
113454 };
113455 
113456 struct ipr_hostrcb_type_17_error {
113457 	u8 failure_reason[64];
113458 	struct ipr_ext_vpd vpd;
113459 	__be32 data[476];
113460 };
113461 
113462 struct ipr_hostrcb_config_element {
113463 	u8 type_status;
113464 	u8 cascaded_expander;
113465 	u8 phy;
113466 	u8 link_rate;
113467 	__be32 wwid[2];
113468 };
113469 
113470 struct ipr_hostrcb64_config_element {
113471 	__be16 length;
113472 	u8 descriptor_id;
113473 	u8 reserved;
113474 	u8 type_status;
113475 	u8 reserved2[2];
113476 	u8 link_rate;
113477 	u8 res_path[8];
113478 	__be32 wwid[2];
113479 };
113480 
113481 struct ipr_hostrcb_fabric_desc {
113482 	__be16 length;
113483 	u8 ioa_port;
113484 	u8 cascaded_expander;
113485 	u8 phy;
113486 	u8 path_state;
113487 	__be16 num_entries;
113488 	struct ipr_hostrcb_config_element elem[1];
113489 };
113490 
113491 struct ipr_hostrcb64_fabric_desc {
113492 	__be16 length;
113493 	u8 descriptor_id;
113494 	u8 reserved[2];
113495 	u8 path_state;
113496 	u8 reserved2[2];
113497 	u8 res_path[8];
113498 	u8 reserved3[6];
113499 	__be16 num_entries;
113500 	struct ipr_hostrcb64_config_element elem[1];
113501 };
113502 
113503 struct ipr_hostrcb_type_20_error {
113504 	u8 failure_reason[64];
113505 	u8 reserved[3];
113506 	u8 num_entries;
113507 	struct ipr_hostrcb_fabric_desc desc[1];
113508 };
113509 
113510 struct ipr_hostrcb_type_30_error {
113511 	u8 failure_reason[64];
113512 	u8 reserved[3];
113513 	u8 num_entries;
113514 	struct ipr_hostrcb64_fabric_desc desc[1];
113515 };
113516 
113517 struct ipr_hostrcb_type_41_error {
113518 	u8 failure_reason[64];
113519 	__be32 data[200];
113520 };
113521 
113522 struct ipr_hostrcb_error {
113523 	__be32 fd_ioasc;
113524 	struct ipr_res_addr fd_res_addr;
113525 	__be32 fd_res_handle;
113526 	__be32 prc;
113527 	union {
113528 		struct ipr_hostrcb_type_ff_error type_ff_error;
113529 		struct ipr_hostrcb_type_01_error type_01_error;
113530 		struct ipr_hostrcb_type_02_error type_02_error;
113531 		struct ipr_hostrcb_type_03_error type_03_error;
113532 		struct ipr_hostrcb_type_04_error type_04_error;
113533 		struct ipr_hostrcb_type_07_error type_07_error;
113534 		struct ipr_hostrcb_type_12_error type_12_error;
113535 		struct ipr_hostrcb_type_13_error type_13_error;
113536 		struct ipr_hostrcb_type_14_error type_14_error;
113537 		struct ipr_hostrcb_type_17_error type_17_error;
113538 		struct ipr_hostrcb_type_20_error type_20_error;
113539 	} u;
113540 };
113541 
113542 struct ipr_hostrcb64_error {
113543 	__be32 fd_ioasc;
113544 	__be32 ioa_fw_level;
113545 	__be32 fd_res_handle;
113546 	__be32 prc;
113547 	__be64 fd_dev_id;
113548 	__be64 fd_lun;
113549 	u8 fd_res_path[8];
113550 	__be64 time_stamp;
113551 	u8 reserved[16];
113552 	union {
113553 		struct ipr_hostrcb_type_ff_error type_ff_error;
113554 		struct ipr_hostrcb_type_12_error type_12_error;
113555 		struct ipr_hostrcb_type_17_error type_17_error;
113556 		struct ipr_hostrcb_type_21_error type_21_error;
113557 		struct ipr_hostrcb_type_23_error type_23_error;
113558 		struct ipr_hostrcb_type_24_error type_24_error;
113559 		struct ipr_hostrcb_type_30_error type_30_error;
113560 		struct ipr_hostrcb_type_41_error type_41_error;
113561 	} u;
113562 };
113563 
113564 struct ipr_hostrcb_raw {
113565 	__be32 data[762];
113566 };
113567 
113568 struct ipr_hcam {
113569 	u8 op_code;
113570 	u8 notify_type;
113571 	u8 notifications_lost;
113572 	u8 flags;
113573 	u8 overlay_id;
113574 	u8 reserved1[3];
113575 	__be32 ilid;
113576 	__be32 time_since_last_ioa_reset;
113577 	__be32 reserved2;
113578 	__be32 length;
113579 	union {
113580 		struct ipr_hostrcb_error error;
113581 		struct ipr_hostrcb64_error error64;
113582 		struct ipr_hostrcb_cfg_ch_not ccn;
113583 		struct ipr_hostrcb_raw raw;
113584 	} u;
113585 };
113586 
113587 struct ipr_hostrcb {
113588 	struct ipr_hcam hcam;
113589 	dma_addr_t hostrcb_dma;
113590 	struct list_head queue;
113591 	struct ipr_ioa_cfg *ioa_cfg;
113592 	char rp_buffer[48];
113593 };
113594 
113595 struct ipr_sdt_entry {
113596 	__be32 start_token;
113597 	__be32 end_token;
113598 	u8 reserved[4];
113599 	u8 flags;
113600 	u8 resv;
113601 	__be16 priority;
113602 };
113603 
113604 struct ipr_sdt_header {
113605 	__be32 state;
113606 	__be32 num_entries;
113607 	__be32 num_entries_used;
113608 	__be32 dump_size;
113609 };
113610 
113611 struct ipr_sdt {
113612 	struct ipr_sdt_header hdr;
113613 	struct ipr_sdt_entry entry[4095];
113614 };
113615 
113616 struct ipr_uc_sdt {
113617 	struct ipr_sdt_header hdr;
113618 	struct ipr_sdt_entry entry[1];
113619 };
113620 
113621 struct ipr_sata_port {
113622 	struct ipr_ioa_cfg *ioa_cfg;
113623 	struct ata_port *ap;
113624 	struct ipr_resource_entry *res;
113625 	struct ipr_ioasa_gata ioasa;
113626 };
113627 
113628 struct ipr_resource_entry {
113629 	u8 needs_sync_complete: 1;
113630 	u8 in_erp: 1;
113631 	u8 add_to_ml: 1;
113632 	u8 del_from_ml: 1;
113633 	u8 resetting_device: 1;
113634 	u8 reset_occurred: 1;
113635 	u8 raw_mode: 1;
113636 	u32 bus;
113637 	u32 target;
113638 	u32 lun;
113639 	u8 ata_class;
113640 	u8 type;
113641 	u16 flags;
113642 	u16 res_flags;
113643 	u8 qmodel;
113644 	struct ipr_std_inq_data std_inq_data;
113645 	__be32 res_handle;
113646 	__be64 dev_id;
113647 	u64 lun_wwn;
113648 	struct scsi_lun dev_lun;
113649 	u8 res_path[8];
113650 	struct ipr_ioa_cfg *ioa_cfg;
113651 	struct scsi_device *sdev;
113652 	struct ipr_sata_port *sata_port;
113653 	struct list_head queue;
113654 };
113655 
113656 struct ipr_misc_cbs {
113657 	struct ipr_ioa_vpd ioa_vpd;
113658 	struct ipr_inquiry_page0 page0_data;
113659 	struct ipr_inquiry_page3 page3_data;
113660 	struct ipr_inquiry_cap cap;
113661 	struct ipr_inquiry_pageC4 pageC4_data;
113662 	struct ipr_mode_pages mode_pages;
113663 	struct ipr_supported_device supp_dev;
113664 };
113665 
113666 struct ipr_interrupt_offsets {
113667 	long unsigned int set_interrupt_mask_reg;
113668 	long unsigned int clr_interrupt_mask_reg;
113669 	long unsigned int clr_interrupt_mask_reg32;
113670 	long unsigned int sense_interrupt_mask_reg;
113671 	long unsigned int sense_interrupt_mask_reg32;
113672 	long unsigned int clr_interrupt_reg;
113673 	long unsigned int clr_interrupt_reg32;
113674 	long unsigned int sense_interrupt_reg;
113675 	long unsigned int sense_interrupt_reg32;
113676 	long unsigned int ioarrin_reg;
113677 	long unsigned int sense_uproc_interrupt_reg;
113678 	long unsigned int sense_uproc_interrupt_reg32;
113679 	long unsigned int set_uproc_interrupt_reg;
113680 	long unsigned int set_uproc_interrupt_reg32;
113681 	long unsigned int clr_uproc_interrupt_reg;
113682 	long unsigned int clr_uproc_interrupt_reg32;
113683 	long unsigned int init_feedback_reg;
113684 	long unsigned int dump_addr_reg;
113685 	long unsigned int dump_data_reg;
113686 	long unsigned int endian_swap_reg;
113687 };
113688 
113689 struct ipr_chip_cfg_t {
113690 	u32 mailbox;
113691 	u16 max_cmds;
113692 	u8 cache_line_size;
113693 	u8 clear_isr;
113694 	u32 iopoll_weight;
113695 	struct ipr_interrupt_offsets regs;
113696 };
113697 
113698 struct ipr_chip_t {
113699 	u16 vendor;
113700 	u16 device;
113701 	bool has_msi;
113702 	u16 sis_type;
113703 	u16 bist_method;
113704 	const struct ipr_chip_cfg_t *cfg;
113705 };
113706 
113707 enum ipr_shutdown_type {
113708 	IPR_SHUTDOWN_NORMAL = 0,
113709 	IPR_SHUTDOWN_PREPARE_FOR_NORMAL = 64,
113710 	IPR_SHUTDOWN_ABBREV = 128,
113711 	IPR_SHUTDOWN_NONE = 256,
113712 	IPR_SHUTDOWN_QUIESCE = 257,
113713 };
113714 
113715 struct ipr_trace_entry {
113716 	u32 time;
113717 	u8 op_code;
113718 	u8 ata_op_code;
113719 	u8 type;
113720 	u8 cmd_index;
113721 	__be32 res_handle;
113722 	union {
113723 		u32 ioasc;
113724 		u32 add_data;
113725 		u32 res_addr;
113726 	} u;
113727 };
113728 
113729 struct ipr_sglist {
113730 	u32 order;
113731 	u32 num_sg;
113732 	u32 num_dma_sg;
113733 	u32 buffer_len;
113734 	struct scatterlist *scatterlist;
113735 };
113736 
113737 struct ipr_dump_header {
113738 	u32 eye_catcher;
113739 	u32 len;
113740 	u32 num_entries;
113741 	u32 first_entry_offset;
113742 	u32 status;
113743 	u32 os;
113744 	u32 driver_name;
113745 };
113746 
113747 struct ipr_dump_entry_header {
113748 	u32 eye_catcher;
113749 	u32 len;
113750 	u32 num_elems;
113751 	u32 offset;
113752 	u32 data_type;
113753 	u32 id;
113754 	u32 status;
113755 };
113756 
113757 struct ipr_dump_version_entry {
113758 	struct ipr_dump_entry_header hdr;
113759 	u8 version[6];
113760 };
113761 
113762 struct ipr_dump_location_entry {
113763 	struct ipr_dump_entry_header hdr;
113764 	u8 location[20];
113765 };
113766 
113767 struct ipr_dump_ioa_type_entry {
113768 	struct ipr_dump_entry_header hdr;
113769 	u32 type;
113770 	u32 fw_version;
113771 };
113772 
113773 struct ipr_dump_trace_entry {
113774 	struct ipr_dump_entry_header hdr;
113775 	u32 trace[1024];
113776 };
113777 
113778 struct ipr_driver_dump {
113779 	struct ipr_dump_header hdr;
113780 	struct ipr_dump_version_entry version_entry;
113781 	struct ipr_dump_location_entry location_entry;
113782 	struct ipr_dump_ioa_type_entry ioa_type_entry;
113783 	struct ipr_dump_trace_entry trace_entry;
113784 };
113785 
113786 struct ipr_ioa_dump {
113787 	struct ipr_dump_entry_header hdr;
113788 	struct ipr_sdt sdt;
113789 	__be32 **ioa_data;
113790 	u32 reserved;
113791 	u32 next_page_index;
113792 	u32 page_offset;
113793 	u32 format;
113794 } __attribute__((packed));
113795 
113796 struct ipr_dump {
113797 	struct kref kref;
113798 	struct ipr_ioa_cfg *ioa_cfg;
113799 	struct ipr_driver_dump driver_dump;
113800 	struct ipr_ioa_dump ioa_dump;
113801 };
113802 
113803 struct ipr_cmnd {
113804 	struct ipr_ioarcb ioarcb;
113805 	union {
113806 		struct ipr_ioadl_desc ioadl[64];
113807 		struct ipr_ioadl64_desc ioadl64[64];
113808 		struct ipr_ata64_ioadl ata_ioadl;
113809 	} i;
113810 	union {
113811 		struct ipr_ioasa ioasa;
113812 		struct ipr_ioasa64 ioasa64;
113813 	} s;
113814 	struct list_head queue;
113815 	struct scsi_cmnd *scsi_cmd;
113816 	struct ata_queued_cmd *qc;
113817 	struct completion completion;
113818 	struct timer_list timer;
113819 	struct work_struct work;
113820 	void (*fast_done)(struct ipr_cmnd *);
113821 	void (*done)(struct ipr_cmnd *);
113822 	int (*job_step)(struct ipr_cmnd *);
113823 	int (*job_step_failed)(struct ipr_cmnd *);
113824 	u16 cmd_index;
113825 	u8 sense_buffer[96];
113826 	dma_addr_t sense_buffer_dma;
113827 	short unsigned int dma_use_sg;
113828 	dma_addr_t dma_addr;
113829 	struct ipr_cmnd *sibling;
113830 	union {
113831 		enum ipr_shutdown_type shutdown_type;
113832 		struct ipr_hostrcb *hostrcb;
113833 		long unsigned int time_left;
113834 		long unsigned int scratch;
113835 		struct ipr_resource_entry *res;
113836 		struct scsi_device *sdev;
113837 	} u;
113838 	struct completion *eh_comp;
113839 	struct ipr_hrr_queue *hrrq;
113840 	struct ipr_ioa_cfg *ioa_cfg;
113841 	long: 64;
113842 };
113843 
113844 struct ipr_ses_table_entry {
113845 	char product_id[17];
113846 	char compare_product_id_byte[17];
113847 	u32 max_bus_speed_limit;
113848 };
113849 
113850 struct ipr_error_table_t {
113851 	u32 ioasc;
113852 	int log_ioasa;
113853 	int log_hcam;
113854 	char *error;
113855 };
113856 
113857 struct ipr_software_inq_lid_info {
113858 	__be32 load_id;
113859 	__be32 timestamp[3];
113860 };
113861 
113862 struct ipr_ucode_image_header {
113863 	__be32 header_length;
113864 	__be32 lid_table_offset;
113865 	u8 major_release;
113866 	u8 card_type;
113867 	u8 minor_release[2];
113868 	u8 reserved[20];
113869 	char eyecatcher[16];
113870 	__be32 num_lids;
113871 	struct ipr_software_inq_lid_info lid[1];
113872 };
113873 
113874 enum {
113875 	e1000_igp_cable_length_10 = 10,
113876 	e1000_igp_cable_length_20 = 20,
113877 	e1000_igp_cable_length_30 = 30,
113878 	e1000_igp_cable_length_40 = 40,
113879 	e1000_igp_cable_length_50 = 50,
113880 	e1000_igp_cable_length_60 = 60,
113881 	e1000_igp_cable_length_70 = 70,
113882 	e1000_igp_cable_length_80 = 80,
113883 	e1000_igp_cable_length_90 = 90,
113884 	e1000_igp_cable_length_100 = 100,
113885 	e1000_igp_cable_length_110 = 110,
113886 	e1000_igp_cable_length_115 = 115,
113887 	e1000_igp_cable_length_120 = 120,
113888 	e1000_igp_cable_length_130 = 130,
113889 	e1000_igp_cable_length_140 = 140,
113890 	e1000_igp_cable_length_150 = 150,
113891 	e1000_igp_cable_length_160 = 160,
113892 	e1000_igp_cable_length_170 = 170,
113893 	e1000_igp_cable_length_180 = 180,
113894 };
113895 
113896 typedef struct pccard_io_map pccard_io_map;
113897 
113898 struct ep_device {
113899 	struct usb_endpoint_descriptor *desc;
113900 	struct usb_device *udev;
113901 	struct device dev;
113902 };
113903 
113904 struct urb_priv {
113905 	struct ed *ed;
113906 	u16 length;
113907 	u16 td_cnt;
113908 	struct list_head pending;
113909 	struct td *td[0];
113910 };
113911 
113912 typedef struct urb_priv urb_priv_t;
113913 
113914 struct debug_buffer {
113915 	ssize_t (*fill_func)(struct debug_buffer *);
113916 	struct ohci_hcd *ohci;
113917 	struct mutex mutex;
113918 	size_t count;
113919 	char *page;
113920 };
113921 
113922 struct pps_event_time {
113923 	struct timespec64 ts_real;
113924 };
113925 
113926 enum ptp_clock_events {
113927 	PTP_CLOCK_ALARM = 0,
113928 	PTP_CLOCK_EXTTS = 1,
113929 	PTP_CLOCK_PPS = 2,
113930 	PTP_CLOCK_PPSUSR = 3,
113931 };
113932 
113933 struct ptp_clock_event {
113934 	int type;
113935 	int index;
113936 	union {
113937 		u64 timestamp;
113938 		struct pps_event_time pps_times;
113939 	};
113940 };
113941 
113942 struct dm_io_region {
113943 	struct block_device *bdev;
113944 	sector_t sector;
113945 	sector_t count;
113946 };
113947 
113948 struct page_list {
113949 	struct page_list *next;
113950 	struct page *page;
113951 };
113952 
113953 typedef void (*io_notify_fn)(long unsigned int, void *);
113954 
113955 enum dm_io_mem_type {
113956 	DM_IO_PAGE_LIST = 0,
113957 	DM_IO_BIO = 1,
113958 	DM_IO_VMA = 2,
113959 	DM_IO_KMEM = 3,
113960 };
113961 
113962 struct dm_io_memory {
113963 	enum dm_io_mem_type type;
113964 	unsigned int offset;
113965 	union {
113966 		struct page_list *pl;
113967 		struct bio *bio;
113968 		void *vma;
113969 		void *addr;
113970 	} ptr;
113971 };
113972 
113973 struct dm_io_notify {
113974 	io_notify_fn fn;
113975 	void *context;
113976 };
113977 
113978 struct dm_io_client;
113979 
113980 struct dm_io_request {
113981 	blk_opf_t bi_opf;
113982 	struct dm_io_memory mem;
113983 	struct dm_io_notify notify;
113984 	struct dm_io_client *client;
113985 };
113986 
113987 struct dm_io_client {
113988 	mempool_t pool;
113989 	struct bio_set bios;
113990 };
113991 
113992 struct io {
113993 	long unsigned int error_bits;
113994 	atomic_t count;
113995 	struct dm_io_client *client;
113996 	io_notify_fn callback;
113997 	void *context;
113998 	void *vma_invalidate_address;
113999 	long unsigned int vma_invalidate_size;
114000 	long: 64;
114001 };
114002 
114003 struct dpages {
114004 	void (*get_page)(struct dpages *, struct page **, long unsigned int *, unsigned int *);
114005 	void (*next_page)(struct dpages *);
114006 	union {
114007 		unsigned int context_u;
114008 		struct bvec_iter context_bi;
114009 	};
114010 	void *context_ptr;
114011 	void *vma_invalidate_address;
114012 	long unsigned int vma_invalidate_size;
114013 };
114014 
114015 struct sync_io {
114016 	long unsigned int error_bits;
114017 	struct completion wait;
114018 };
114019 
114020 struct of_changeset_entry {
114021 	struct list_head node;
114022 	long unsigned int action;
114023 	struct device_node *np;
114024 	struct property *prop;
114025 	struct property *old_prop;
114026 };
114027 
114028 struct of_changeset {
114029 	struct list_head entries;
114030 };
114031 
114032 struct old_timeval32 {
114033 	old_time32_t tv_sec;
114034 	s32 tv_usec;
114035 };
114036 
114037 struct linger {
114038 	int l_onoff;
114039 	int l_linger;
114040 };
114041 
114042 struct so_timestamping {
114043 	int flags;
114044 	int bind_phc;
114045 };
114046 
114047 enum txtime_flags {
114048 	SOF_TXTIME_DEADLINE_MODE = 1,
114049 	SOF_TXTIME_REPORT_ERRORS = 2,
114050 	SOF_TXTIME_FLAGS_LAST = 2,
114051 	SOF_TXTIME_FLAGS_MASK = 3,
114052 };
114053 
114054 struct sock_txtime {
114055 	__kernel_clockid_t clockid;
114056 	__u32 flags;
114057 };
114058 
114059 enum sknetlink_groups {
114060 	SKNLGRP_NONE = 0,
114061 	SKNLGRP_INET_TCP_DESTROY = 1,
114062 	SKNLGRP_INET_UDP_DESTROY = 2,
114063 	SKNLGRP_INET6_TCP_DESTROY = 3,
114064 	SKNLGRP_INET6_UDP_DESTROY = 4,
114065 	__SKNLGRP_MAX = 5,
114066 };
114067 
114068 struct rx_queue_attribute {
114069 	struct attribute attr;
114070 	ssize_t (*show)(struct netdev_rx_queue *, char *);
114071 	ssize_t (*store)(struct netdev_rx_queue *, const char *, size_t);
114072 };
114073 
114074 struct netdev_queue_attribute {
114075 	struct attribute attr;
114076 	ssize_t (*show)(struct netdev_queue *, char *);
114077 	ssize_t (*store)(struct netdev_queue *, const char *, size_t);
114078 };
114079 
114080 enum tc_mq_command {
114081 	TC_MQ_CREATE = 0,
114082 	TC_MQ_DESTROY = 1,
114083 	TC_MQ_STATS = 2,
114084 	TC_MQ_GRAFT = 3,
114085 };
114086 
114087 struct tc_mq_opt_offload_graft_params {
114088 	long unsigned int queue;
114089 	u32 child_handle;
114090 };
114091 
114092 struct tc_mq_qopt_offload {
114093 	enum tc_mq_command command;
114094 	u32 handle;
114095 	union {
114096 		struct tc_qopt_offload_stats stats;
114097 		struct tc_mq_opt_offload_graft_params graft_params;
114098 	};
114099 };
114100 
114101 struct mq_sched {
114102 	struct Qdisc **qdiscs;
114103 };
114104 
114105 enum ethtool_multicast_groups {
114106 	ETHNL_MCGRP_MONITOR = 0,
114107 };
114108 
114109 struct ethnl_dump_ctx {
114110 	const struct ethnl_request_ops *ops;
114111 	struct ethnl_req_info *req_info;
114112 	struct ethnl_reply_data *reply_data;
114113 	int pos_hash;
114114 	int pos_idx;
114115 };
114116 
114117 typedef void (*ethnl_notify_handler_t)(struct net_device *, unsigned int, const void *);
114118 
114119 struct channels_reply_data {
114120 	struct ethnl_reply_data base;
114121 	struct ethtool_channels channels;
114122 };
114123 
114124 struct ip_reply_arg {
114125 	struct kvec iov[1];
114126 	int flags;
114127 	__wsum csum;
114128 	int csumoffset;
114129 	int bound_dev_if;
114130 	u8 tos;
114131 	kuid_t uid;
114132 };
114133 
114134 struct icmp_err {
114135 	int errno;
114136 	unsigned int fatal: 1;
114137 };
114138 
114139 enum tcp_seq_states {
114140 	TCP_SEQ_STATE_LISTENING = 0,
114141 	TCP_SEQ_STATE_ESTABLISHED = 1,
114142 };
114143 
114144 struct tcp_seq_afinfo {
114145 	sa_family_t family;
114146 };
114147 
114148 struct tcp_iter_state {
114149 	struct seq_net_private p;
114150 	enum tcp_seq_states state;
114151 	struct sock *syn_wait_sk;
114152 	int bucket;
114153 	int offset;
114154 	int sbucket;
114155 	int num;
114156 	loff_t last_pos;
114157 };
114158 
114159 struct bpf_tcp_iter_state {
114160 	struct tcp_iter_state state;
114161 	unsigned int cur_sk;
114162 	unsigned int end_sk;
114163 	unsigned int max_sk;
114164 	struct sock **batch;
114165 	bool st_bucket_done;
114166 };
114167 
114168 struct bpf_iter__tcp {
114169 	union {
114170 		struct bpf_iter_meta *meta;
114171 	};
114172 	union {
114173 		struct sock_common *sk_common;
114174 	};
114175 	uid_t uid;
114176 };
114177 
114178 struct nhmsg {
114179 	unsigned char nh_family;
114180 	unsigned char nh_scope;
114181 	unsigned char nh_protocol;
114182 	unsigned char resvd;
114183 	unsigned int nh_flags;
114184 };
114185 
114186 struct nexthop_grp {
114187 	__u32 id;
114188 	__u8 weight;
114189 	__u8 resvd1;
114190 	__u16 resvd2;
114191 };
114192 
114193 enum {
114194 	NEXTHOP_GRP_TYPE_MPATH = 0,
114195 	NEXTHOP_GRP_TYPE_RES = 1,
114196 	__NEXTHOP_GRP_TYPE_MAX = 2,
114197 };
114198 
114199 enum {
114200 	NHA_UNSPEC = 0,
114201 	NHA_ID = 1,
114202 	NHA_GROUP = 2,
114203 	NHA_GROUP_TYPE = 3,
114204 	NHA_BLACKHOLE = 4,
114205 	NHA_OIF = 5,
114206 	NHA_GATEWAY = 6,
114207 	NHA_ENCAP_TYPE = 7,
114208 	NHA_ENCAP = 8,
114209 	NHA_GROUPS = 9,
114210 	NHA_MASTER = 10,
114211 	NHA_FDB = 11,
114212 	NHA_RES_GROUP = 12,
114213 	NHA_RES_BUCKET = 13,
114214 	__NHA_MAX = 14,
114215 };
114216 
114217 enum {
114218 	NHA_RES_GROUP_UNSPEC = 0,
114219 	NHA_RES_GROUP_PAD = 0,
114220 	NHA_RES_GROUP_BUCKETS = 1,
114221 	NHA_RES_GROUP_IDLE_TIMER = 2,
114222 	NHA_RES_GROUP_UNBALANCED_TIMER = 3,
114223 	NHA_RES_GROUP_UNBALANCED_TIME = 4,
114224 	__NHA_RES_GROUP_MAX = 5,
114225 };
114226 
114227 enum {
114228 	NHA_RES_BUCKET_UNSPEC = 0,
114229 	NHA_RES_BUCKET_PAD = 0,
114230 	NHA_RES_BUCKET_INDEX = 1,
114231 	NHA_RES_BUCKET_IDLE_TIME = 2,
114232 	NHA_RES_BUCKET_NH_ID = 3,
114233 	__NHA_RES_BUCKET_MAX = 4,
114234 };
114235 
114236 struct nh_config {
114237 	u32 nh_id;
114238 	u8 nh_family;
114239 	u8 nh_protocol;
114240 	u8 nh_blackhole;
114241 	u8 nh_fdb;
114242 	u32 nh_flags;
114243 	int nh_ifindex;
114244 	struct net_device *dev;
114245 	union {
114246 		__be32 ipv4;
114247 		struct in6_addr ipv6;
114248 	} gw;
114249 	struct nlattr *nh_grp;
114250 	u16 nh_grp_type;
114251 	u16 nh_grp_res_num_buckets;
114252 	long unsigned int nh_grp_res_idle_timer;
114253 	long unsigned int nh_grp_res_unbalanced_timer;
114254 	bool nh_grp_res_has_num_buckets;
114255 	bool nh_grp_res_has_idle_timer;
114256 	bool nh_grp_res_has_unbalanced_timer;
114257 	struct nlattr *nh_encap;
114258 	u16 nh_encap_type;
114259 	u32 nlflags;
114260 	struct nl_info nlinfo;
114261 };
114262 
114263 enum nexthop_event_type {
114264 	NEXTHOP_EVENT_DEL = 0,
114265 	NEXTHOP_EVENT_REPLACE = 1,
114266 	NEXTHOP_EVENT_RES_TABLE_PRE_REPLACE = 2,
114267 	NEXTHOP_EVENT_BUCKET_REPLACE = 3,
114268 };
114269 
114270 enum nh_notifier_info_type {
114271 	NH_NOTIFIER_INFO_TYPE_SINGLE = 0,
114272 	NH_NOTIFIER_INFO_TYPE_GRP = 1,
114273 	NH_NOTIFIER_INFO_TYPE_RES_TABLE = 2,
114274 	NH_NOTIFIER_INFO_TYPE_RES_BUCKET = 3,
114275 };
114276 
114277 struct nh_notifier_single_info {
114278 	struct net_device *dev;
114279 	u8 gw_family;
114280 	union {
114281 		__be32 ipv4;
114282 		struct in6_addr ipv6;
114283 	};
114284 	u8 is_reject: 1;
114285 	u8 is_fdb: 1;
114286 	u8 has_encap: 1;
114287 };
114288 
114289 struct nh_notifier_grp_entry_info {
114290 	u8 weight;
114291 	u32 id;
114292 	struct nh_notifier_single_info nh;
114293 };
114294 
114295 struct nh_notifier_grp_info {
114296 	u16 num_nh;
114297 	bool is_fdb;
114298 	struct nh_notifier_grp_entry_info nh_entries[0];
114299 };
114300 
114301 struct nh_notifier_res_bucket_info {
114302 	u16 bucket_index;
114303 	unsigned int idle_timer_ms;
114304 	bool force;
114305 	struct nh_notifier_single_info old_nh;
114306 	struct nh_notifier_single_info new_nh;
114307 };
114308 
114309 struct nh_notifier_res_table_info {
114310 	u16 num_nh_buckets;
114311 	struct nh_notifier_single_info nhs[0];
114312 };
114313 
114314 struct nh_notifier_info {
114315 	struct net *net;
114316 	struct netlink_ext_ack *extack;
114317 	u32 id;
114318 	enum nh_notifier_info_type type;
114319 	union {
114320 		struct nh_notifier_single_info *nh;
114321 		struct nh_notifier_grp_info *nh_grp;
114322 		struct nh_notifier_res_table_info *nh_res_table;
114323 		struct nh_notifier_res_bucket_info *nh_res_bucket;
114324 	};
114325 };
114326 
114327 struct nh_dump_filter {
114328 	u32 nh_id;
114329 	int dev_idx;
114330 	int master_idx;
114331 	bool group_filter;
114332 	bool fdb_filter;
114333 	u32 res_bucket_nh_id;
114334 };
114335 
114336 struct rtm_dump_nh_ctx {
114337 	u32 idx;
114338 };
114339 
114340 struct rtm_dump_res_bucket_ctx {
114341 	struct rtm_dump_nh_ctx nh;
114342 	u16 bucket_index;
114343 	u32 done_nh_idx;
114344 };
114345 
114346 struct rtm_dump_nexthop_bucket_data {
114347 	struct rtm_dump_res_bucket_ctx *ctx;
114348 	struct nh_dump_filter filter;
114349 };
114350 
114351 struct xfrm_skb_cb {
114352 	struct xfrm_tunnel_skb_cb header;
114353 	union {
114354 		struct {
114355 			__u32 low;
114356 			__u32 hi;
114357 		} output;
114358 		struct {
114359 			__be32 low;
114360 			__be32 hi;
114361 		} input;
114362 	} seq;
114363 };
114364 
114365 struct fib6_gc_args {
114366 	int timeout;
114367 	int more;
114368 };
114369 
114370 enum fib6_walk_state {
114371 	FWS_L = 0,
114372 	FWS_R = 1,
114373 	FWS_C = 2,
114374 	FWS_U = 3,
114375 };
114376 
114377 struct fib6_walker {
114378 	struct list_head lh;
114379 	struct fib6_node *root;
114380 	struct fib6_node *node;
114381 	struct fib6_info *leaf;
114382 	enum fib6_walk_state state;
114383 	unsigned int skip;
114384 	unsigned int count;
114385 	unsigned int skip_in_node;
114386 	int (*func)(struct fib6_walker *);
114387 	void *args;
114388 };
114389 
114390 typedef struct rt6_info * (*pol_lookup_t)(struct net *, struct fib6_table *, struct flowi6 *, const struct sk_buff *, int);
114391 
114392 struct fib6_entry_notifier_info {
114393 	struct fib_notifier_info info;
114394 	struct fib6_info *rt;
114395 	unsigned int nsiblings;
114396 };
114397 
114398 struct ipv6_route_iter {
114399 	struct seq_net_private p;
114400 	struct fib6_walker w;
114401 	loff_t skip;
114402 	struct fib6_table *tbl;
114403 	int sernum;
114404 };
114405 
114406 struct bpf_iter__ipv6_route {
114407 	union {
114408 		struct bpf_iter_meta *meta;
114409 	};
114410 	union {
114411 		struct fib6_info *rt;
114412 	};
114413 };
114414 
114415 struct rt6_rtnl_dump_arg {
114416 	struct sk_buff *skb;
114417 	struct netlink_callback *cb;
114418 	struct net *net;
114419 	struct fib_dump_filter filter;
114420 };
114421 
114422 struct fib6_cleaner {
114423 	struct fib6_walker w;
114424 	struct net *net;
114425 	int (*func)(struct fib6_info *, void *);
114426 	int sernum;
114427 	void *arg;
114428 	bool skip_notify;
114429 };
114430 
114431 enum {
114432 	FIB6_NO_SERNUM_CHANGE = 0,
114433 };
114434 
114435 struct fib6_dump_arg {
114436 	struct net *net;
114437 	struct notifier_block *nb;
114438 	struct netlink_ext_ack *extack;
114439 };
114440 
114441 struct fib6_nh_pcpu_arg {
114442 	struct fib6_info *from;
114443 	const struct fib6_table *table;
114444 };
114445 
114446 struct lookup_args {
114447 	int offset;
114448 	const struct in6_addr *addr;
114449 };
114450 
114451 struct ip6fl_iter_state {
114452 	struct seq_net_private p;
114453 	struct pid_namespace *pid_ns;
114454 	int bucket;
114455 };
114456 
114457 struct ip_tunnel_prl {
114458 	__be32 addr;
114459 	__u16 flags;
114460 	__u16 __reserved;
114461 	__u32 datalen;
114462 	__u32 __reserved2;
114463 };
114464 
114465 struct sit_net {
114466 	struct ip_tunnel *tunnels_r_l[16];
114467 	struct ip_tunnel *tunnels_r[16];
114468 	struct ip_tunnel *tunnels_l[16];
114469 	struct ip_tunnel *tunnels_wc[1];
114470 	struct ip_tunnel **tunnels[4];
114471 	struct net_device *fb_tunnel_dev;
114472 };
114473 
114474 struct metadata_dst;
114475 
114476 enum dns_payload_content_type {
114477 	DNS_PAYLOAD_IS_SERVER_LIST = 0,
114478 };
114479 
114480 struct dns_payload_header {
114481 	__u8 zero;
114482 	__u8 content;
114483 	__u8 version;
114484 };
114485 
114486 struct eeh_rmv_data {
114487 	struct list_head removed_vf_list;
114488 	int removed_dev_count;
114489 };
114490 
114491 typedef enum pci_ers_result (*eeh_report_fn)(struct eeh_dev *, struct pci_dev *, struct pci_driver *);
114492 
114493 enum {
114494 	IMAGE_INVALID = 0,
114495 	IMAGE_LOADING = 1,
114496 	IMAGE_READY = 2,
114497 };
114498 
114499 struct image_data_t {
114500 	int status;
114501 	void *data;
114502 	uint32_t size;
114503 };
114504 
114505 struct image_header_t {
114506 	uint16_t magic;
114507 	uint16_t version;
114508 	uint32_t size;
114509 };
114510 
114511 struct validate_flash_t {
114512 	int status;
114513 	void *buf;
114514 	uint32_t buf_size;
114515 	uint32_t result;
114516 };
114517 
114518 struct manage_flash_t {
114519 	int status;
114520 };
114521 
114522 struct update_flash_t {
114523 	int status;
114524 };
114525 
114526 enum OpalThreadStatus {
114527 	OPAL_THREAD_INACTIVE = 0,
114528 	OPAL_THREAD_STARTED = 1,
114529 	OPAL_THREAD_UNAVAILABLE = 2,
114530 };
114531 
114532 enum {
114533 	DDW_QUERY_PE_DMA_WIN = 0,
114534 	DDW_CREATE_PE_DMA_WIN = 1,
114535 	DDW_REMOVE_PE_DMA_WIN = 2,
114536 	DDW_APPLICABLE_SIZE = 3,
114537 };
114538 
114539 enum {
114540 	DDW_EXT_SIZE = 0,
114541 	DDW_EXT_RESET_DMA_WIN = 1,
114542 	DDW_EXT_QUERY_OUT_SIZE = 2,
114543 };
114544 
114545 struct dynamic_dma_window_prop {
114546 	__be32 liobn;
114547 	__be64 dma_base;
114548 	__be32 tce_shift;
114549 	__be32 window_shift;
114550 };
114551 
114552 struct dma_win {
114553 	struct device_node *device;
114554 	const struct dynamic_dma_window_prop *prop;
114555 	struct list_head list;
114556 };
114557 
114558 struct ddw_query_response {
114559 	u32 windows_available;
114560 	u64 largest_available_block;
114561 	u32 page_size;
114562 	u32 migration_capable;
114563 };
114564 
114565 struct ddw_create_response {
114566 	u32 liobn;
114567 	u32 addr_hi;
114568 	u32 addr_lo;
114569 };
114570 
114571 struct failed_ddw_pdn {
114572 	struct device_node *pdn;
114573 	struct list_head list;
114574 };
114575 
114576 struct rtas_fadump_section {
114577 	__be32 request_flag;
114578 	__be16 source_data_type;
114579 	__be16 error_flags;
114580 	__be64 source_address;
114581 	__be64 source_len;
114582 	__be64 bytes_dumped;
114583 	__be64 destination_address;
114584 };
114585 
114586 struct rtas_fadump_section_header {
114587 	__be32 dump_format_version;
114588 	__be16 dump_num_sections;
114589 	__be16 dump_status_flag;
114590 	__be32 offset_first_dump_section;
114591 	__be32 dd_block_size;
114592 	__be64 dd_block_offset;
114593 	__be64 dd_num_blocks;
114594 	__be32 dd_offset_disk_path;
114595 	__be32 max_time_auto;
114596 };
114597 
114598 struct rtas_fadump_mem_struct {
114599 	struct rtas_fadump_section_header header;
114600 	struct rtas_fadump_section cpu_state_data;
114601 	struct rtas_fadump_section hpte_region;
114602 	struct rtas_fadump_section rmr_region;
114603 };
114604 
114605 struct rtas_fadump_reg_save_area_header {
114606 	__be64 magic_number;
114607 	__be32 version;
114608 	__be32 num_cpu_offset;
114609 };
114610 
114611 struct rtas_fadump_reg_entry {
114612 	__be64 reg_id;
114613 	__be64 reg_value;
114614 };
114615 
114616 struct kvmppc_xive_src_block;
114617 
114618 struct kvmppc_xive_ops;
114619 
114620 struct kvmppc_xive {
114621 	struct kvm *kvm;
114622 	struct kvm_device *dev;
114623 	struct dentry *dentry;
114624 	u32 vp_base;
114625 	struct kvmppc_xive_src_block *src_blocks[1024];
114626 	u32 max_sbid;
114627 	u32 src_count;
114628 	u32 saved_src_count;
114629 	u32 delayed_irqs;
114630 	u8 qmap;
114631 	u32 q_order;
114632 	u32 q_page_order;
114633 	u8 flags;
114634 	u32 nr_servers;
114635 	struct kvmppc_xive_ops *ops;
114636 	struct address_space *mapping;
114637 	struct mutex mapping_lock;
114638 	struct mutex lock;
114639 };
114640 
114641 struct kvmppc_xive_vcpu {
114642 	struct kvmppc_xive *xive;
114643 	struct kvm_vcpu *vcpu;
114644 	bool valid;
114645 	u32 server_num;
114646 	u32 vp_id;
114647 	u32 vp_chip_id;
114648 	u32 vp_cam;
114649 	u32 vp_ipi;
114650 	struct xive_irq_data vp_ipi_data;
114651 	uint8_t cppr;
114652 	uint8_t hw_cppr;
114653 	uint8_t mfrr;
114654 	uint8_t pending;
114655 	struct xive_q queues[8];
114656 	u32 esc_virq[8];
114657 	char *esc_virq_names[8];
114658 	u32 delayed_irq;
114659 	u64 stat_rm_h_xirr;
114660 	u64 stat_rm_h_ipoll;
114661 	u64 stat_rm_h_cppr;
114662 	u64 stat_rm_h_eoi;
114663 	u64 stat_rm_h_ipi;
114664 	u64 stat_vm_h_xirr;
114665 	u64 stat_vm_h_ipoll;
114666 	u64 stat_vm_h_cppr;
114667 	u64 stat_vm_h_eoi;
114668 	u64 stat_vm_h_ipi;
114669 };
114670 
114671 struct kvmppc_xive_irq_state {
114672 	bool valid;
114673 	u32 number;
114674 	u32 ipi_number;
114675 	struct xive_irq_data ipi_data;
114676 	u32 pt_number;
114677 	struct xive_irq_data *pt_data;
114678 	u8 guest_priority;
114679 	u8 saved_priority;
114680 	u32 act_server;
114681 	u8 act_priority;
114682 	bool in_eoi;
114683 	bool old_p;
114684 	bool old_q;
114685 	bool lsi;
114686 	bool asserted;
114687 	bool in_queue;
114688 	bool saved_p;
114689 	bool saved_q;
114690 	u8 saved_scan_prio;
114691 	u32 eisn;
114692 };
114693 
114694 struct kvmppc_xive_src_block {
114695 	arch_spinlock_t lock;
114696 	u16 id;
114697 	struct kvmppc_xive_irq_state irq_state[1024];
114698 };
114699 
114700 struct kvmppc_xive_ops {
114701 	int (*reset_mapped)(struct kvm *, long unsigned int);
114702 };
114703 
114704 struct resource_constraint {
114705 	resource_size_t min;
114706 	resource_size_t max;
114707 	resource_size_t align;
114708 	resource_size_t (*alignf)(void *, const struct resource *, resource_size_t, resource_size_t);
114709 	void *alignf_data;
114710 };
114711 
114712 enum {
114713 	MAX_IORES_LEVEL = 5,
114714 };
114715 
114716 struct region_devres {
114717 	struct resource *parent;
114718 	resource_size_t start;
114719 	resource_size_t n;
114720 };
114721 
114722 enum {
114723 	KTW_FREEZABLE = 1,
114724 };
114725 
114726 struct kthread_create_info {
114727 	int (*threadfn)(void *);
114728 	void *data;
114729 	int node;
114730 	struct task_struct *result;
114731 	struct completion *done;
114732 	struct list_head list;
114733 };
114734 
114735 struct kthread {
114736 	long unsigned int flags;
114737 	unsigned int cpu;
114738 	int result;
114739 	int (*threadfn)(void *);
114740 	void *data;
114741 	struct completion parked;
114742 	struct completion exited;
114743 	char *full_name;
114744 };
114745 
114746 enum KTHREAD_BITS {
114747 	KTHREAD_IS_PER_CPU = 0,
114748 	KTHREAD_SHOULD_STOP = 1,
114749 	KTHREAD_SHOULD_PARK = 2,
114750 };
114751 
114752 struct kthread_flush_work {
114753 	struct kthread_work work;
114754 	struct completion done;
114755 };
114756 
114757 struct trace_event_raw_contention_begin {
114758 	struct trace_entry ent;
114759 	void *lock_addr;
114760 	unsigned int flags;
114761 	char __data[0];
114762 };
114763 
114764 struct trace_event_raw_contention_end {
114765 	struct trace_entry ent;
114766 	void *lock_addr;
114767 	int ret;
114768 	char __data[0];
114769 };
114770 
114771 struct trace_event_data_offsets_contention_begin {};
114772 
114773 struct trace_event_data_offsets_contention_end {};
114774 
114775 typedef void (*btf_trace_contention_begin)(void *, void *, unsigned int);
114776 
114777 typedef void (*btf_trace_contention_end)(void *, void *, int);
114778 
114779 enum {
114780 	GP_IDLE = 0,
114781 	GP_ENTER = 1,
114782 	GP_PASSED = 2,
114783 	GP_EXIT = 3,
114784 	GP_REPLAY = 4,
114785 };
114786 
114787 enum pci_p2pdma_map_type {
114788 	PCI_P2PDMA_MAP_UNKNOWN = 0,
114789 	PCI_P2PDMA_MAP_NOT_SUPPORTED = 1,
114790 	PCI_P2PDMA_MAP_BUS_ADDR = 2,
114791 	PCI_P2PDMA_MAP_THRU_HOST_BRIDGE = 3,
114792 };
114793 
114794 struct pci_p2pdma_map_state {
114795 	struct dev_pagemap *pgmap;
114796 	int map;
114797 	u64 bus_off;
114798 };
114799 
114800 typedef __kernel_long_t __kernel_suseconds_t;
114801 
114802 typedef __kernel_suseconds_t suseconds_t;
114803 
114804 struct old_itimerspec32 {
114805 	struct old_timespec32 it_interval;
114806 	struct old_timespec32 it_value;
114807 };
114808 
114809 struct seccomp_notif_sizes {
114810 	__u16 seccomp_notif;
114811 	__u16 seccomp_notif_resp;
114812 	__u16 seccomp_data;
114813 };
114814 
114815 struct seccomp_notif {
114816 	__u64 id;
114817 	__u32 pid;
114818 	__u32 flags;
114819 	struct seccomp_data data;
114820 };
114821 
114822 struct seccomp_notif_resp {
114823 	__u64 id;
114824 	__s64 val;
114825 	__s32 error;
114826 	__u32 flags;
114827 };
114828 
114829 struct seccomp_notif_addfd {
114830 	__u64 id;
114831 	__u32 flags;
114832 	__u32 srcfd;
114833 	__u32 newfd;
114834 	__u32 newfd_flags;
114835 };
114836 
114837 struct action_cache {
114838 	long unsigned int allow_native[8];
114839 };
114840 
114841 struct notification;
114842 
114843 struct seccomp_filter {
114844 	refcount_t refs;
114845 	refcount_t users;
114846 	bool log;
114847 	bool wait_killable_recv;
114848 	struct action_cache cache;
114849 	struct seccomp_filter *prev;
114850 	struct bpf_prog *prog;
114851 	struct notification *notif;
114852 	struct mutex notify_lock;
114853 	wait_queue_head_t wqh;
114854 };
114855 
114856 enum notify_state {
114857 	SECCOMP_NOTIFY_INIT = 0,
114858 	SECCOMP_NOTIFY_SENT = 1,
114859 	SECCOMP_NOTIFY_REPLIED = 2,
114860 };
114861 
114862 struct seccomp_knotif {
114863 	struct task_struct *task;
114864 	u64 id;
114865 	const struct seccomp_data *data;
114866 	enum notify_state state;
114867 	int error;
114868 	long int val;
114869 	u32 flags;
114870 	struct completion ready;
114871 	struct list_head list;
114872 	struct list_head addfd;
114873 };
114874 
114875 struct seccomp_kaddfd {
114876 	struct file *file;
114877 	int fd;
114878 	unsigned int flags;
114879 	__u32 ioctl_flags;
114880 	union {
114881 		bool setfd;
114882 		int ret;
114883 	};
114884 	struct completion completion;
114885 	struct list_head list;
114886 };
114887 
114888 struct notification {
114889 	struct semaphore request;
114890 	u64 next_id;
114891 	struct list_head notifications;
114892 };
114893 
114894 struct seccomp_log_name {
114895 	u32 log;
114896 	const char *name;
114897 };
114898 
114899 struct syscall_trace_enter {
114900 	struct trace_entry ent;
114901 	int nr;
114902 	long unsigned int args[0];
114903 };
114904 
114905 struct syscall_trace_exit {
114906 	struct trace_entry ent;
114907 	int nr;
114908 	long int ret;
114909 };
114910 
114911 struct syscall_tp_t {
114912 	long long unsigned int regs;
114913 	long unsigned int syscall_nr;
114914 	long unsigned int ret;
114915 };
114916 
114917 struct syscall_tp_t___2 {
114918 	long long unsigned int regs;
114919 	long unsigned int syscall_nr;
114920 	long unsigned int args[6];
114921 };
114922 
114923 enum bpf_cmd {
114924 	BPF_MAP_CREATE = 0,
114925 	BPF_MAP_LOOKUP_ELEM = 1,
114926 	BPF_MAP_UPDATE_ELEM = 2,
114927 	BPF_MAP_DELETE_ELEM = 3,
114928 	BPF_MAP_GET_NEXT_KEY = 4,
114929 	BPF_PROG_LOAD = 5,
114930 	BPF_OBJ_PIN = 6,
114931 	BPF_OBJ_GET = 7,
114932 	BPF_PROG_ATTACH = 8,
114933 	BPF_PROG_DETACH = 9,
114934 	BPF_PROG_TEST_RUN = 10,
114935 	BPF_PROG_RUN = 10,
114936 	BPF_PROG_GET_NEXT_ID = 11,
114937 	BPF_MAP_GET_NEXT_ID = 12,
114938 	BPF_PROG_GET_FD_BY_ID = 13,
114939 	BPF_MAP_GET_FD_BY_ID = 14,
114940 	BPF_OBJ_GET_INFO_BY_FD = 15,
114941 	BPF_PROG_QUERY = 16,
114942 	BPF_RAW_TRACEPOINT_OPEN = 17,
114943 	BPF_BTF_LOAD = 18,
114944 	BPF_BTF_GET_FD_BY_ID = 19,
114945 	BPF_TASK_FD_QUERY = 20,
114946 	BPF_MAP_LOOKUP_AND_DELETE_ELEM = 21,
114947 	BPF_MAP_FREEZE = 22,
114948 	BPF_BTF_GET_NEXT_ID = 23,
114949 	BPF_MAP_LOOKUP_BATCH = 24,
114950 	BPF_MAP_LOOKUP_AND_DELETE_BATCH = 25,
114951 	BPF_MAP_UPDATE_BATCH = 26,
114952 	BPF_MAP_DELETE_BATCH = 27,
114953 	BPF_LINK_CREATE = 28,
114954 	BPF_LINK_UPDATE = 29,
114955 	BPF_LINK_GET_FD_BY_ID = 30,
114956 	BPF_LINK_GET_NEXT_ID = 31,
114957 	BPF_ENABLE_STATS = 32,
114958 	BPF_ITER_CREATE = 33,
114959 	BPF_LINK_DETACH = 34,
114960 	BPF_PROG_BIND_MAP = 35,
114961 };
114962 
114963 enum bpf_stats_type {
114964 	BPF_STATS_RUN_TIME = 0,
114965 };
114966 
114967 struct bpf_tracing_link {
114968 	struct bpf_tramp_link link;
114969 	enum bpf_attach_type attach_type;
114970 	struct bpf_trampoline *trampoline;
114971 	struct bpf_prog *tgt_prog;
114972 };
114973 
114974 enum bpf_audit {
114975 	BPF_AUDIT_LOAD = 0,
114976 	BPF_AUDIT_UNLOAD = 1,
114977 	BPF_AUDIT_MAX = 2,
114978 };
114979 
114980 struct bpf_prog_kstats {
114981 	u64 nsecs;
114982 	u64 cnt;
114983 	u64 misses;
114984 };
114985 
114986 struct bpf_raw_tp_link {
114987 	struct bpf_link link;
114988 	struct bpf_raw_event_map *btp;
114989 };
114990 
114991 struct bpf_perf_link {
114992 	struct bpf_link link;
114993 	struct file *perf_file;
114994 };
114995 
114996 typedef u64 (*btf_bpf_sys_bpf)(int, union bpf_attr *, u32);
114997 
114998 typedef u64 (*btf_bpf_sys_close)(u32);
114999 
115000 typedef u64 (*btf_bpf_kallsyms_lookup_name)(const char *, int, int, u64 *);
115001 
115002 struct audit_buffer;
115003 
115004 typedef void compound_page_dtor(struct page *);
115005 
115006 typedef int fpi_t;
115007 
115008 struct mminit_pfnnid_cache {
115009 	long unsigned int last_start;
115010 	long unsigned int last_end;
115011 	int last_nid;
115012 };
115013 
115014 typedef struct {
115015 	long unsigned int fds_bits[16];
115016 } __kernel_fd_set;
115017 
115018 typedef __kernel_fd_set fd_set;
115019 
115020 struct poll_table_entry {
115021 	struct file *filp;
115022 	__poll_t key;
115023 	wait_queue_entry_t wait;
115024 	wait_queue_head_t *wait_address;
115025 };
115026 
115027 struct poll_table_page;
115028 
115029 struct poll_wqueues {
115030 	poll_table pt;
115031 	struct poll_table_page *table;
115032 	struct task_struct *polling_task;
115033 	int triggered;
115034 	int error;
115035 	int inline_index;
115036 	struct poll_table_entry inline_entries[9];
115037 };
115038 
115039 struct poll_table_page {
115040 	struct poll_table_page *next;
115041 	struct poll_table_entry *entry;
115042 	struct poll_table_entry entries[0];
115043 };
115044 
115045 enum poll_time_type {
115046 	PT_TIMEVAL = 0,
115047 	PT_OLD_TIMEVAL = 1,
115048 	PT_TIMESPEC = 2,
115049 	PT_OLD_TIMESPEC = 3,
115050 };
115051 
115052 typedef struct {
115053 	long unsigned int *in;
115054 	long unsigned int *out;
115055 	long unsigned int *ex;
115056 	long unsigned int *res_in;
115057 	long unsigned int *res_out;
115058 	long unsigned int *res_ex;
115059 } fd_set_bits;
115060 
115061 struct sigset_argpack {
115062 	sigset_t *p;
115063 	size_t size;
115064 };
115065 
115066 struct poll_list {
115067 	struct poll_list *next;
115068 	int len;
115069 	struct pollfd entries[0];
115070 };
115071 
115072 struct mpage_readpage_args {
115073 	struct bio *bio;
115074 	struct folio *folio;
115075 	unsigned int nr_pages;
115076 	bool is_readahead;
115077 	sector_t last_block_in_bio;
115078 	struct buffer_head map_bh;
115079 	long unsigned int first_logical_block;
115080 	get_block_t *get_block;
115081 };
115082 
115083 struct mpage_data {
115084 	struct bio *bio;
115085 	sector_t last_block_in_bio;
115086 	get_block_t *get_block;
115087 };
115088 
115089 struct kernfs_open_node {
115090 	struct callback_head callback_head;
115091 	atomic_t event;
115092 	wait_queue_head_t poll;
115093 	struct list_head files;
115094 };
115095 
115096 struct ext4_getfsmap_info {
115097 	struct ext4_fsmap_head *gfi_head;
115098 	ext4_fsmap_format_t gfi_formatter;
115099 	void *gfi_format_arg;
115100 	ext4_fsblk_t gfi_next_fsblk;
115101 	u32 gfi_dev;
115102 	ext4_group_t gfi_agno;
115103 	struct ext4_fsmap gfi_low;
115104 	struct ext4_fsmap gfi_high;
115105 	struct ext4_fsmap gfi_lastfree;
115106 	struct list_head gfi_meta_list;
115107 	bool gfi_last;
115108 };
115109 
115110 struct ext4_getfsmap_dev {
115111 	int (*gfd_fn)(struct super_block *, struct ext4_fsmap *, struct ext4_getfsmap_info *);
115112 	u32 gfd_dev;
115113 };
115114 
115115 struct fatent_ra {
115116 	sector_t cur;
115117 	sector_t limit;
115118 	unsigned int ra_blocks;
115119 	sector_t ra_advance;
115120 	sector_t ra_next;
115121 	sector_t ra_limit;
115122 };
115123 
115124 struct isofs_fid {
115125 	u32 block;
115126 	u16 offset;
115127 	u16 parent_offset;
115128 	u32 generation;
115129 	u32 parent_block;
115130 	u32 parent_generation;
115131 };
115132 
115133 enum pnfs_iomode {
115134 	IOMODE_READ = 1,
115135 	IOMODE_RW = 2,
115136 	IOMODE_ANY = 3,
115137 };
115138 
115139 struct trace_event_raw_nfs_inode_event {
115140 	struct trace_entry ent;
115141 	dev_t dev;
115142 	u32 fhandle;
115143 	u64 fileid;
115144 	u64 version;
115145 	char __data[0];
115146 };
115147 
115148 struct trace_event_raw_nfs_inode_event_done {
115149 	struct trace_entry ent;
115150 	long unsigned int error;
115151 	dev_t dev;
115152 	u32 fhandle;
115153 	unsigned char type;
115154 	u64 fileid;
115155 	u64 version;
115156 	loff_t size;
115157 	long unsigned int nfsi_flags;
115158 	long unsigned int cache_validity;
115159 	char __data[0];
115160 };
115161 
115162 struct trace_event_raw_nfs_access_exit {
115163 	struct trace_entry ent;
115164 	long unsigned int error;
115165 	dev_t dev;
115166 	u32 fhandle;
115167 	unsigned char type;
115168 	u64 fileid;
115169 	u64 version;
115170 	loff_t size;
115171 	long unsigned int nfsi_flags;
115172 	long unsigned int cache_validity;
115173 	unsigned int mask;
115174 	unsigned int permitted;
115175 	char __data[0];
115176 };
115177 
115178 struct trace_event_raw_nfs_update_size_class {
115179 	struct trace_entry ent;
115180 	dev_t dev;
115181 	u32 fhandle;
115182 	u64 fileid;
115183 	u64 version;
115184 	loff_t cur_size;
115185 	loff_t new_size;
115186 	char __data[0];
115187 };
115188 
115189 struct trace_event_raw_nfs_inode_range_event {
115190 	struct trace_entry ent;
115191 	dev_t dev;
115192 	u32 fhandle;
115193 	u64 fileid;
115194 	u64 version;
115195 	loff_t range_start;
115196 	loff_t range_end;
115197 	char __data[0];
115198 };
115199 
115200 struct trace_event_raw_nfs_readdir_event {
115201 	struct trace_entry ent;
115202 	dev_t dev;
115203 	u32 fhandle;
115204 	u64 fileid;
115205 	u64 version;
115206 	char verifier[8];
115207 	u64 cookie;
115208 	long unsigned int index;
115209 	unsigned int dtsize;
115210 	char __data[0];
115211 };
115212 
115213 struct trace_event_raw_nfs_lookup_event {
115214 	struct trace_entry ent;
115215 	long unsigned int flags;
115216 	dev_t dev;
115217 	u64 dir;
115218 	u32 __data_loc_name;
115219 	char __data[0];
115220 };
115221 
115222 struct trace_event_raw_nfs_lookup_event_done {
115223 	struct trace_entry ent;
115224 	long unsigned int error;
115225 	long unsigned int flags;
115226 	dev_t dev;
115227 	u64 dir;
115228 	u32 __data_loc_name;
115229 	char __data[0];
115230 };
115231 
115232 struct trace_event_raw_nfs_atomic_open_enter {
115233 	struct trace_entry ent;
115234 	long unsigned int flags;
115235 	long unsigned int fmode;
115236 	dev_t dev;
115237 	u64 dir;
115238 	u32 __data_loc_name;
115239 	char __data[0];
115240 };
115241 
115242 struct trace_event_raw_nfs_atomic_open_exit {
115243 	struct trace_entry ent;
115244 	long unsigned int error;
115245 	long unsigned int flags;
115246 	long unsigned int fmode;
115247 	dev_t dev;
115248 	u64 dir;
115249 	u32 __data_loc_name;
115250 	char __data[0];
115251 };
115252 
115253 struct trace_event_raw_nfs_create_enter {
115254 	struct trace_entry ent;
115255 	long unsigned int flags;
115256 	dev_t dev;
115257 	u64 dir;
115258 	u32 __data_loc_name;
115259 	char __data[0];
115260 };
115261 
115262 struct trace_event_raw_nfs_create_exit {
115263 	struct trace_entry ent;
115264 	long unsigned int error;
115265 	long unsigned int flags;
115266 	dev_t dev;
115267 	u64 dir;
115268 	u32 __data_loc_name;
115269 	char __data[0];
115270 };
115271 
115272 struct trace_event_raw_nfs_directory_event {
115273 	struct trace_entry ent;
115274 	dev_t dev;
115275 	u64 dir;
115276 	u32 __data_loc_name;
115277 	char __data[0];
115278 };
115279 
115280 struct trace_event_raw_nfs_directory_event_done {
115281 	struct trace_entry ent;
115282 	long unsigned int error;
115283 	dev_t dev;
115284 	u64 dir;
115285 	u32 __data_loc_name;
115286 	char __data[0];
115287 };
115288 
115289 struct trace_event_raw_nfs_link_enter {
115290 	struct trace_entry ent;
115291 	dev_t dev;
115292 	u64 fileid;
115293 	u64 dir;
115294 	u32 __data_loc_name;
115295 	char __data[0];
115296 };
115297 
115298 struct trace_event_raw_nfs_link_exit {
115299 	struct trace_entry ent;
115300 	long unsigned int error;
115301 	dev_t dev;
115302 	u64 fileid;
115303 	u64 dir;
115304 	u32 __data_loc_name;
115305 	char __data[0];
115306 };
115307 
115308 struct trace_event_raw_nfs_rename_event {
115309 	struct trace_entry ent;
115310 	dev_t dev;
115311 	u64 old_dir;
115312 	u64 new_dir;
115313 	u32 __data_loc_old_name;
115314 	u32 __data_loc_new_name;
115315 	char __data[0];
115316 };
115317 
115318 struct trace_event_raw_nfs_rename_event_done {
115319 	struct trace_entry ent;
115320 	dev_t dev;
115321 	long unsigned int error;
115322 	u64 old_dir;
115323 	u32 __data_loc_old_name;
115324 	u64 new_dir;
115325 	u32 __data_loc_new_name;
115326 	char __data[0];
115327 };
115328 
115329 struct trace_event_raw_nfs_sillyrename_unlink {
115330 	struct trace_entry ent;
115331 	dev_t dev;
115332 	long unsigned int error;
115333 	u64 dir;
115334 	u32 __data_loc_name;
115335 	char __data[0];
115336 };
115337 
115338 struct trace_event_raw_nfs_aop_readpage {
115339 	struct trace_entry ent;
115340 	dev_t dev;
115341 	u32 fhandle;
115342 	u64 fileid;
115343 	u64 version;
115344 	loff_t offset;
115345 	char __data[0];
115346 };
115347 
115348 struct trace_event_raw_nfs_aop_readpage_done {
115349 	struct trace_entry ent;
115350 	dev_t dev;
115351 	u32 fhandle;
115352 	int ret;
115353 	u64 fileid;
115354 	u64 version;
115355 	loff_t offset;
115356 	char __data[0];
115357 };
115358 
115359 struct trace_event_raw_nfs_aop_readahead {
115360 	struct trace_entry ent;
115361 	dev_t dev;
115362 	u32 fhandle;
115363 	u64 fileid;
115364 	u64 version;
115365 	loff_t offset;
115366 	unsigned int nr_pages;
115367 	char __data[0];
115368 };
115369 
115370 struct trace_event_raw_nfs_aop_readahead_done {
115371 	struct trace_entry ent;
115372 	dev_t dev;
115373 	u32 fhandle;
115374 	int ret;
115375 	u64 fileid;
115376 	u64 version;
115377 	loff_t offset;
115378 	unsigned int nr_pages;
115379 	char __data[0];
115380 };
115381 
115382 struct trace_event_raw_nfs_initiate_read {
115383 	struct trace_entry ent;
115384 	dev_t dev;
115385 	u32 fhandle;
115386 	u64 fileid;
115387 	loff_t offset;
115388 	u32 count;
115389 	char __data[0];
115390 };
115391 
115392 struct trace_event_raw_nfs_readpage_done {
115393 	struct trace_entry ent;
115394 	dev_t dev;
115395 	u32 fhandle;
115396 	u64 fileid;
115397 	loff_t offset;
115398 	u32 arg_count;
115399 	u32 res_count;
115400 	bool eof;
115401 	int error;
115402 	char __data[0];
115403 };
115404 
115405 struct trace_event_raw_nfs_readpage_short {
115406 	struct trace_entry ent;
115407 	dev_t dev;
115408 	u32 fhandle;
115409 	u64 fileid;
115410 	loff_t offset;
115411 	u32 arg_count;
115412 	u32 res_count;
115413 	bool eof;
115414 	int error;
115415 	char __data[0];
115416 };
115417 
115418 struct trace_event_raw_nfs_fscache_page_event {
115419 	struct trace_entry ent;
115420 	dev_t dev;
115421 	u32 fhandle;
115422 	u64 fileid;
115423 	loff_t offset;
115424 	char __data[0];
115425 };
115426 
115427 struct trace_event_raw_nfs_fscache_page_event_done {
115428 	struct trace_entry ent;
115429 	int error;
115430 	dev_t dev;
115431 	u32 fhandle;
115432 	u64 fileid;
115433 	loff_t offset;
115434 	char __data[0];
115435 };
115436 
115437 struct trace_event_raw_nfs_pgio_error {
115438 	struct trace_entry ent;
115439 	dev_t dev;
115440 	u32 fhandle;
115441 	u64 fileid;
115442 	loff_t offset;
115443 	u32 arg_count;
115444 	u32 res_count;
115445 	loff_t pos;
115446 	int error;
115447 	char __data[0];
115448 };
115449 
115450 struct trace_event_raw_nfs_initiate_write {
115451 	struct trace_entry ent;
115452 	dev_t dev;
115453 	u32 fhandle;
115454 	u64 fileid;
115455 	loff_t offset;
115456 	u32 count;
115457 	long unsigned int stable;
115458 	char __data[0];
115459 };
115460 
115461 struct trace_event_raw_nfs_writeback_done {
115462 	struct trace_entry ent;
115463 	dev_t dev;
115464 	u32 fhandle;
115465 	u64 fileid;
115466 	loff_t offset;
115467 	u32 arg_count;
115468 	u32 res_count;
115469 	int error;
115470 	long unsigned int stable;
115471 	char verifier[8];
115472 	char __data[0];
115473 };
115474 
115475 struct trace_event_raw_nfs_page_error_class {
115476 	struct trace_entry ent;
115477 	dev_t dev;
115478 	u32 fhandle;
115479 	u64 fileid;
115480 	loff_t offset;
115481 	unsigned int count;
115482 	int error;
115483 	char __data[0];
115484 };
115485 
115486 struct trace_event_raw_nfs_initiate_commit {
115487 	struct trace_entry ent;
115488 	dev_t dev;
115489 	u32 fhandle;
115490 	u64 fileid;
115491 	loff_t offset;
115492 	u32 count;
115493 	char __data[0];
115494 };
115495 
115496 struct trace_event_raw_nfs_commit_done {
115497 	struct trace_entry ent;
115498 	dev_t dev;
115499 	u32 fhandle;
115500 	u64 fileid;
115501 	loff_t offset;
115502 	int error;
115503 	long unsigned int stable;
115504 	char verifier[8];
115505 	char __data[0];
115506 };
115507 
115508 struct trace_event_raw_nfs_direct_req_class {
115509 	struct trace_entry ent;
115510 	dev_t dev;
115511 	u64 fileid;
115512 	u32 fhandle;
115513 	loff_t offset;
115514 	ssize_t count;
115515 	ssize_t bytes_left;
115516 	ssize_t error;
115517 	int flags;
115518 	char __data[0];
115519 };
115520 
115521 struct trace_event_raw_nfs_fh_to_dentry {
115522 	struct trace_entry ent;
115523 	int error;
115524 	dev_t dev;
115525 	u32 fhandle;
115526 	u64 fileid;
115527 	char __data[0];
115528 };
115529 
115530 struct trace_event_raw_nfs_mount_assign {
115531 	struct trace_entry ent;
115532 	u32 __data_loc_option;
115533 	u32 __data_loc_value;
115534 	char __data[0];
115535 };
115536 
115537 struct trace_event_raw_nfs_mount_option {
115538 	struct trace_entry ent;
115539 	u32 __data_loc_option;
115540 	char __data[0];
115541 };
115542 
115543 struct trace_event_raw_nfs_mount_path {
115544 	struct trace_entry ent;
115545 	u32 __data_loc_path;
115546 	char __data[0];
115547 };
115548 
115549 struct trace_event_raw_nfs_xdr_event {
115550 	struct trace_entry ent;
115551 	unsigned int task_id;
115552 	unsigned int client_id;
115553 	u32 xid;
115554 	int version;
115555 	long unsigned int error;
115556 	u32 __data_loc_program;
115557 	u32 __data_loc_procedure;
115558 	char __data[0];
115559 };
115560 
115561 struct trace_event_data_offsets_nfs_inode_event {};
115562 
115563 struct trace_event_data_offsets_nfs_inode_event_done {};
115564 
115565 struct trace_event_data_offsets_nfs_access_exit {};
115566 
115567 struct trace_event_data_offsets_nfs_update_size_class {};
115568 
115569 struct trace_event_data_offsets_nfs_inode_range_event {};
115570 
115571 struct trace_event_data_offsets_nfs_readdir_event {};
115572 
115573 struct trace_event_data_offsets_nfs_lookup_event {
115574 	u32 name;
115575 };
115576 
115577 struct trace_event_data_offsets_nfs_lookup_event_done {
115578 	u32 name;
115579 };
115580 
115581 struct trace_event_data_offsets_nfs_atomic_open_enter {
115582 	u32 name;
115583 };
115584 
115585 struct trace_event_data_offsets_nfs_atomic_open_exit {
115586 	u32 name;
115587 };
115588 
115589 struct trace_event_data_offsets_nfs_create_enter {
115590 	u32 name;
115591 };
115592 
115593 struct trace_event_data_offsets_nfs_create_exit {
115594 	u32 name;
115595 };
115596 
115597 struct trace_event_data_offsets_nfs_directory_event {
115598 	u32 name;
115599 };
115600 
115601 struct trace_event_data_offsets_nfs_directory_event_done {
115602 	u32 name;
115603 };
115604 
115605 struct trace_event_data_offsets_nfs_link_enter {
115606 	u32 name;
115607 };
115608 
115609 struct trace_event_data_offsets_nfs_link_exit {
115610 	u32 name;
115611 };
115612 
115613 struct trace_event_data_offsets_nfs_rename_event {
115614 	u32 old_name;
115615 	u32 new_name;
115616 };
115617 
115618 struct trace_event_data_offsets_nfs_rename_event_done {
115619 	u32 old_name;
115620 	u32 new_name;
115621 };
115622 
115623 struct trace_event_data_offsets_nfs_sillyrename_unlink {
115624 	u32 name;
115625 };
115626 
115627 struct trace_event_data_offsets_nfs_aop_readpage {};
115628 
115629 struct trace_event_data_offsets_nfs_aop_readpage_done {};
115630 
115631 struct trace_event_data_offsets_nfs_aop_readahead {};
115632 
115633 struct trace_event_data_offsets_nfs_aop_readahead_done {};
115634 
115635 struct trace_event_data_offsets_nfs_initiate_read {};
115636 
115637 struct trace_event_data_offsets_nfs_readpage_done {};
115638 
115639 struct trace_event_data_offsets_nfs_readpage_short {};
115640 
115641 struct trace_event_data_offsets_nfs_fscache_page_event {};
115642 
115643 struct trace_event_data_offsets_nfs_fscache_page_event_done {};
115644 
115645 struct trace_event_data_offsets_nfs_pgio_error {};
115646 
115647 struct trace_event_data_offsets_nfs_initiate_write {};
115648 
115649 struct trace_event_data_offsets_nfs_writeback_done {};
115650 
115651 struct trace_event_data_offsets_nfs_page_error_class {};
115652 
115653 struct trace_event_data_offsets_nfs_initiate_commit {};
115654 
115655 struct trace_event_data_offsets_nfs_commit_done {};
115656 
115657 struct trace_event_data_offsets_nfs_direct_req_class {};
115658 
115659 struct trace_event_data_offsets_nfs_fh_to_dentry {};
115660 
115661 struct trace_event_data_offsets_nfs_mount_assign {
115662 	u32 option;
115663 	u32 value;
115664 };
115665 
115666 struct trace_event_data_offsets_nfs_mount_option {
115667 	u32 option;
115668 };
115669 
115670 struct trace_event_data_offsets_nfs_mount_path {
115671 	u32 path;
115672 };
115673 
115674 struct trace_event_data_offsets_nfs_xdr_event {
115675 	u32 program;
115676 	u32 procedure;
115677 };
115678 
115679 typedef void (*btf_trace_nfs_set_inode_stale)(void *, const struct inode *);
115680 
115681 typedef void (*btf_trace_nfs_refresh_inode_enter)(void *, const struct inode *);
115682 
115683 typedef void (*btf_trace_nfs_refresh_inode_exit)(void *, const struct inode *, int);
115684 
115685 typedef void (*btf_trace_nfs_revalidate_inode_enter)(void *, const struct inode *);
115686 
115687 typedef void (*btf_trace_nfs_revalidate_inode_exit)(void *, const struct inode *, int);
115688 
115689 typedef void (*btf_trace_nfs_invalidate_mapping_enter)(void *, const struct inode *);
115690 
115691 typedef void (*btf_trace_nfs_invalidate_mapping_exit)(void *, const struct inode *, int);
115692 
115693 typedef void (*btf_trace_nfs_getattr_enter)(void *, const struct inode *);
115694 
115695 typedef void (*btf_trace_nfs_getattr_exit)(void *, const struct inode *, int);
115696 
115697 typedef void (*btf_trace_nfs_setattr_enter)(void *, const struct inode *);
115698 
115699 typedef void (*btf_trace_nfs_setattr_exit)(void *, const struct inode *, int);
115700 
115701 typedef void (*btf_trace_nfs_writeback_page_enter)(void *, const struct inode *);
115702 
115703 typedef void (*btf_trace_nfs_writeback_page_exit)(void *, const struct inode *, int);
115704 
115705 typedef void (*btf_trace_nfs_writeback_inode_enter)(void *, const struct inode *);
115706 
115707 typedef void (*btf_trace_nfs_writeback_inode_exit)(void *, const struct inode *, int);
115708 
115709 typedef void (*btf_trace_nfs_fsync_enter)(void *, const struct inode *);
115710 
115711 typedef void (*btf_trace_nfs_fsync_exit)(void *, const struct inode *, int);
115712 
115713 typedef void (*btf_trace_nfs_access_enter)(void *, const struct inode *);
115714 
115715 typedef void (*btf_trace_nfs_set_cache_invalid)(void *, const struct inode *, int);
115716 
115717 typedef void (*btf_trace_nfs_readdir_force_readdirplus)(void *, const struct inode *);
115718 
115719 typedef void (*btf_trace_nfs_readdir_cache_fill_done)(void *, const struct inode *, int);
115720 
115721 typedef void (*btf_trace_nfs_readdir_uncached_done)(void *, const struct inode *, int);
115722 
115723 typedef void (*btf_trace_nfs_access_exit)(void *, const struct inode *, unsigned int, unsigned int, int);
115724 
115725 typedef void (*btf_trace_nfs_size_truncate)(void *, const struct inode *, loff_t);
115726 
115727 typedef void (*btf_trace_nfs_size_wcc)(void *, const struct inode *, loff_t);
115728 
115729 typedef void (*btf_trace_nfs_size_update)(void *, const struct inode *, loff_t);
115730 
115731 typedef void (*btf_trace_nfs_size_grow)(void *, const struct inode *, loff_t);
115732 
115733 typedef void (*btf_trace_nfs_readdir_invalidate_cache_range)(void *, const struct inode *, loff_t, loff_t);
115734 
115735 typedef void (*btf_trace_nfs_readdir_cache_fill)(void *, const struct file *, const __be32 *, u64, long unsigned int, unsigned int);
115736 
115737 typedef void (*btf_trace_nfs_readdir_uncached)(void *, const struct file *, const __be32 *, u64, long unsigned int, unsigned int);
115738 
115739 typedef void (*btf_trace_nfs_lookup_enter)(void *, const struct inode *, const struct dentry *, unsigned int);
115740 
115741 typedef void (*btf_trace_nfs_lookup_exit)(void *, const struct inode *, const struct dentry *, unsigned int, int);
115742 
115743 typedef void (*btf_trace_nfs_lookup_revalidate_enter)(void *, const struct inode *, const struct dentry *, unsigned int);
115744 
115745 typedef void (*btf_trace_nfs_lookup_revalidate_exit)(void *, const struct inode *, const struct dentry *, unsigned int, int);
115746 
115747 typedef void (*btf_trace_nfs_readdir_lookup)(void *, const struct inode *, const struct dentry *, unsigned int);
115748 
115749 typedef void (*btf_trace_nfs_readdir_lookup_revalidate_failed)(void *, const struct inode *, const struct dentry *, unsigned int);
115750 
115751 typedef void (*btf_trace_nfs_readdir_lookup_revalidate)(void *, const struct inode *, const struct dentry *, unsigned int, int);
115752 
115753 typedef void (*btf_trace_nfs_atomic_open_enter)(void *, const struct inode *, const struct nfs_open_context *, unsigned int);
115754 
115755 typedef void (*btf_trace_nfs_atomic_open_exit)(void *, const struct inode *, const struct nfs_open_context *, unsigned int, int);
115756 
115757 typedef void (*btf_trace_nfs_create_enter)(void *, const struct inode *, const struct dentry *, unsigned int);
115758 
115759 typedef void (*btf_trace_nfs_create_exit)(void *, const struct inode *, const struct dentry *, unsigned int, int);
115760 
115761 typedef void (*btf_trace_nfs_mknod_enter)(void *, const struct inode *, const struct dentry *);
115762 
115763 typedef void (*btf_trace_nfs_mknod_exit)(void *, const struct inode *, const struct dentry *, int);
115764 
115765 typedef void (*btf_trace_nfs_mkdir_enter)(void *, const struct inode *, const struct dentry *);
115766 
115767 typedef void (*btf_trace_nfs_mkdir_exit)(void *, const struct inode *, const struct dentry *, int);
115768 
115769 typedef void (*btf_trace_nfs_rmdir_enter)(void *, const struct inode *, const struct dentry *);
115770 
115771 typedef void (*btf_trace_nfs_rmdir_exit)(void *, const struct inode *, const struct dentry *, int);
115772 
115773 typedef void (*btf_trace_nfs_remove_enter)(void *, const struct inode *, const struct dentry *);
115774 
115775 typedef void (*btf_trace_nfs_remove_exit)(void *, const struct inode *, const struct dentry *, int);
115776 
115777 typedef void (*btf_trace_nfs_unlink_enter)(void *, const struct inode *, const struct dentry *);
115778 
115779 typedef void (*btf_trace_nfs_unlink_exit)(void *, const struct inode *, const struct dentry *, int);
115780 
115781 typedef void (*btf_trace_nfs_symlink_enter)(void *, const struct inode *, const struct dentry *);
115782 
115783 typedef void (*btf_trace_nfs_symlink_exit)(void *, const struct inode *, const struct dentry *, int);
115784 
115785 typedef void (*btf_trace_nfs_link_enter)(void *, const struct inode *, const struct inode *, const struct dentry *);
115786 
115787 typedef void (*btf_trace_nfs_link_exit)(void *, const struct inode *, const struct inode *, const struct dentry *, int);
115788 
115789 typedef void (*btf_trace_nfs_rename_enter)(void *, const struct inode *, const struct dentry *, const struct inode *, const struct dentry *);
115790 
115791 typedef void (*btf_trace_nfs_rename_exit)(void *, const struct inode *, const struct dentry *, const struct inode *, const struct dentry *, int);
115792 
115793 typedef void (*btf_trace_nfs_sillyrename_rename)(void *, const struct inode *, const struct dentry *, const struct inode *, const struct dentry *, int);
115794 
115795 typedef void (*btf_trace_nfs_sillyrename_unlink)(void *, const struct nfs_unlinkdata *, int);
115796 
115797 typedef void (*btf_trace_nfs_aop_readpage)(void *, const struct inode *, struct page *);
115798 
115799 typedef void (*btf_trace_nfs_aop_readpage_done)(void *, const struct inode *, struct page *, int);
115800 
115801 typedef void (*btf_trace_nfs_aop_readahead)(void *, const struct inode *, loff_t, unsigned int);
115802 
115803 typedef void (*btf_trace_nfs_aop_readahead_done)(void *, const struct inode *, unsigned int, int);
115804 
115805 typedef void (*btf_trace_nfs_initiate_read)(void *, const struct nfs_pgio_header *);
115806 
115807 typedef void (*btf_trace_nfs_readpage_done)(void *, const struct rpc_task *, const struct nfs_pgio_header *);
115808 
115809 typedef void (*btf_trace_nfs_readpage_short)(void *, const struct rpc_task *, const struct nfs_pgio_header *);
115810 
115811 typedef void (*btf_trace_nfs_fscache_read_page)(void *, const struct inode *, struct page *);
115812 
115813 typedef void (*btf_trace_nfs_fscache_read_page_exit)(void *, const struct inode *, struct page *, int);
115814 
115815 typedef void (*btf_trace_nfs_fscache_write_page)(void *, const struct inode *, struct page *);
115816 
115817 typedef void (*btf_trace_nfs_fscache_write_page_exit)(void *, const struct inode *, struct page *, int);
115818 
115819 typedef void (*btf_trace_nfs_pgio_error)(void *, const struct nfs_pgio_header *, int, loff_t);
115820 
115821 typedef void (*btf_trace_nfs_initiate_write)(void *, const struct nfs_pgio_header *);
115822 
115823 typedef void (*btf_trace_nfs_writeback_done)(void *, const struct rpc_task *, const struct nfs_pgio_header *);
115824 
115825 typedef void (*btf_trace_nfs_write_error)(void *, const struct inode *, const struct nfs_page *, int);
115826 
115827 typedef void (*btf_trace_nfs_comp_error)(void *, const struct inode *, const struct nfs_page *, int);
115828 
115829 typedef void (*btf_trace_nfs_commit_error)(void *, const struct inode *, const struct nfs_page *, int);
115830 
115831 typedef void (*btf_trace_nfs_initiate_commit)(void *, const struct nfs_commit_data *);
115832 
115833 typedef void (*btf_trace_nfs_commit_done)(void *, const struct rpc_task *, const struct nfs_commit_data *);
115834 
115835 typedef void (*btf_trace_nfs_direct_commit_complete)(void *, const struct nfs_direct_req *);
115836 
115837 typedef void (*btf_trace_nfs_direct_resched_write)(void *, const struct nfs_direct_req *);
115838 
115839 typedef void (*btf_trace_nfs_direct_write_complete)(void *, const struct nfs_direct_req *);
115840 
115841 typedef void (*btf_trace_nfs_direct_write_completion)(void *, const struct nfs_direct_req *);
115842 
115843 typedef void (*btf_trace_nfs_direct_write_schedule_iovec)(void *, const struct nfs_direct_req *);
115844 
115845 typedef void (*btf_trace_nfs_direct_write_reschedule_io)(void *, const struct nfs_direct_req *);
115846 
115847 typedef void (*btf_trace_nfs_fh_to_dentry)(void *, const struct super_block *, const struct nfs_fh *, u64, int);
115848 
115849 typedef void (*btf_trace_nfs_mount_assign)(void *, const char *, const char *);
115850 
115851 typedef void (*btf_trace_nfs_mount_option)(void *, const struct fs_parameter *);
115852 
115853 typedef void (*btf_trace_nfs_mount_path)(void *, const char *);
115854 
115855 typedef void (*btf_trace_nfs_xdr_status)(void *, const struct xdr_stream *, int);
115856 
115857 typedef void (*btf_trace_nfs_xdr_bad_filehandle)(void *, const struct xdr_stream *, int);
115858 
115859 struct nfs_referral_count {
115860 	struct list_head list;
115861 	const struct task_struct *task;
115862 	unsigned int referral_count;
115863 };
115864 
115865 struct xfs_attri_log_nameval {
115866 	struct xfs_log_iovec name;
115867 	struct xfs_log_iovec value;
115868 	refcount_t refcount;
115869 };
115870 
115871 struct xfs_dqblk {
115872 	struct xfs_disk_dquot dd_diskdq;
115873 	char dd_fill[4];
115874 	__be32 dd_crc;
115875 	__be64 dd_lsn;
115876 	uuid_t dd_uuid;
115877 };
115878 
115879 enum {
115880 	XFS_QM_TRANS_USR = 0,
115881 	XFS_QM_TRANS_GRP = 1,
115882 	XFS_QM_TRANS_PRJ = 2,
115883 	XFS_QM_TRANS_DQTYPES = 3,
115884 };
115885 
115886 struct xfs_attri_log_format {
115887 	uint16_t alfi_type;
115888 	uint16_t alfi_size;
115889 	uint32_t __pad;
115890 	uint64_t alfi_id;
115891 	uint64_t alfi_ino;
115892 	uint32_t alfi_op_flags;
115893 	uint32_t alfi_name_len;
115894 	uint32_t alfi_value_len;
115895 	uint32_t alfi_attr_filter;
115896 };
115897 
115898 struct xfs_attrd_log_format {
115899 	uint16_t alfd_type;
115900 	uint16_t alfd_size;
115901 	uint32_t __pad;
115902 	uint64_t alfd_alf_id;
115903 };
115904 
115905 struct xfs_attri_log_item {
115906 	struct xfs_log_item attri_item;
115907 	atomic_t attri_refcount;
115908 	struct xfs_attri_log_nameval *attri_nameval;
115909 	struct xfs_attri_log_format attri_format;
115910 };
115911 
115912 struct xfs_attrd_log_item {
115913 	struct xfs_log_item attrd_item;
115914 	struct xfs_attri_log_item *attrd_attrip;
115915 	struct xfs_attrd_log_format attrd_format;
115916 };
115917 
115918 struct crypto_attr_alg {
115919 	char name[128];
115920 };
115921 
115922 struct crypto_attr_type {
115923 	u32 type;
115924 	u32 mask;
115925 };
115926 
115927 enum {
115928 	CRYPTOA_UNSPEC = 0,
115929 	CRYPTOA_ALG = 1,
115930 	CRYPTOA_TYPE = 2,
115931 	__CRYPTOA_MAX = 3,
115932 };
115933 
115934 struct cryptomgr_param {
115935 	struct rtattr *tb[34];
115936 	struct {
115937 		struct rtattr attr;
115938 		struct crypto_attr_type data;
115939 	} type;
115940 	struct {
115941 		struct rtattr attr;
115942 		struct crypto_attr_alg data;
115943 	} attrs[32];
115944 	char template[128];
115945 	struct crypto_larval *larval;
115946 	u32 otype;
115947 	u32 omask;
115948 };
115949 
115950 struct crypto_test_param {
115951 	char driver[128];
115952 	char alg[128];
115953 	u32 type;
115954 };
115955 
115956 struct io_fadvise {
115957 	struct file *file;
115958 	u64 offset;
115959 	u32 len;
115960 	u32 advice;
115961 };
115962 
115963 struct io_madvise {
115964 	struct file *file;
115965 	u64 addr;
115966 	u32 len;
115967 	u32 advice;
115968 };
115969 
115970 enum {
115971 	IORING_CQE_BUFFER_SHIFT = 16,
115972 };
115973 
115974 struct io_uring_buf_reg {
115975 	__u64 ring_addr;
115976 	__u32 ring_entries;
115977 	__u16 bgid;
115978 	__u16 pad;
115979 	__u64 resv[3];
115980 };
115981 
115982 struct io_provide_buf {
115983 	struct file *file;
115984 	__u64 addr;
115985 	__u32 len;
115986 	__u32 bgid;
115987 	__u16 nbufs;
115988 	__u16 bid;
115989 };
115990 
115991 struct logo_data {
115992 	int depth;
115993 	int needs_directpalette;
115994 	int needs_truepalette;
115995 	int needs_cmapreset;
115996 	const struct linux_logo *logo;
115997 };
115998 
115999 typedef uint32_t char32_t;
116000 
116001 struct uni_screen {
116002 	char32_t *lines[0];
116003 };
116004 
116005 struct tiocl_selection {
116006 	short unsigned int xs;
116007 	short unsigned int ys;
116008 	short unsigned int xe;
116009 	short unsigned int ye;
116010 	short unsigned int sel_mode;
116011 };
116012 
116013 struct con_driver {
116014 	const struct consw *con;
116015 	const char *desc;
116016 	struct device *dev;
116017 	int node;
116018 	int first;
116019 	int last;
116020 	int flag;
116021 };
116022 
116023 enum {
116024 	blank_off = 0,
116025 	blank_normal_wait = 1,
116026 	blank_vesa_wait = 2,
116027 };
116028 
116029 enum {
116030 	EPecma = 0,
116031 	EPdec = 1,
116032 	EPeq = 2,
116033 	EPgt = 3,
116034 	EPlt = 4,
116035 };
116036 
116037 struct rgb {
116038 	u8 r;
116039 	u8 g;
116040 	u8 b;
116041 };
116042 
116043 enum {
116044 	ESnormal = 0,
116045 	ESesc = 1,
116046 	ESsquare = 2,
116047 	ESgetpars = 3,
116048 	ESfunckey = 4,
116049 	EShash = 5,
116050 	ESsetG0 = 6,
116051 	ESsetG1 = 7,
116052 	ESpercent = 8,
116053 	EScsiignore = 9,
116054 	ESnonstd = 10,
116055 	ESpalette = 11,
116056 	ESosc = 12,
116057 	ESapc = 13,
116058 	ESpm = 14,
116059 	ESdcs = 15,
116060 };
116061 
116062 struct interval {
116063 	uint32_t first;
116064 	uint32_t last;
116065 };
116066 
116067 struct vc_draw_region {
116068 	long unsigned int from;
116069 	long unsigned int to;
116070 	int x;
116071 };
116072 
116073 struct nvdimm_pmu {
116074 	struct pmu pmu;
116075 	struct device *dev;
116076 	int cpu;
116077 	struct hlist_node node;
116078 	enum cpuhp_state cpuhp_state;
116079 	struct cpumask arch_cpumask;
116080 };
116081 
116082 enum {
116083 	CTL_RES_CNT = 1,
116084 };
116085 
116086 enum {
116087 	CTL_RES_TM = 2,
116088 };
116089 
116090 enum {
116091 	POWERON_SECS = 3,
116092 };
116093 
116094 enum {
116095 	MEM_LIFE = 4,
116096 };
116097 
116098 enum {
116099 	CRI_RES_UTIL = 5,
116100 };
116101 
116102 enum {
116103 	HOST_L_CNT = 6,
116104 };
116105 
116106 enum {
116107 	HOST_S_CNT = 7,
116108 };
116109 
116110 enum {
116111 	HOST_S_DUR = 8,
116112 };
116113 
116114 enum {
116115 	HOST_L_DUR = 9,
116116 };
116117 
116118 enum {
116119 	MED_R_CNT = 10,
116120 };
116121 
116122 enum {
116123 	MED_W_CNT = 11,
116124 };
116125 
116126 enum {
116127 	MED_R_DUR = 12,
116128 };
116129 
116130 enum {
116131 	MED_W_DUR = 13,
116132 };
116133 
116134 enum {
116135 	CACHE_RH_CNT = 14,
116136 };
116137 
116138 enum {
116139 	CACHE_WH_CNT = 15,
116140 };
116141 
116142 enum {
116143 	FAST_W_CNT = 16,
116144 };
116145 
116146 struct nvdimm_bus;
116147 
116148 struct of_pmem_private {
116149 	struct nvdimm_bus_descriptor bus_desc;
116150 	struct nvdimm_bus *bus;
116151 };
116152 
116153 struct ata_acpi_drive {
116154 	u32 pio;
116155 	u32 dma;
116156 };
116157 
116158 struct ata_acpi_gtm {
116159 	struct ata_acpi_drive drive[2];
116160 	u32 flags;
116161 };
116162 
116163 struct swmii_regs {
116164 	u16 bmsr;
116165 	u16 lpa;
116166 	u16 lpagb;
116167 	u16 estat;
116168 };
116169 
116170 enum {
116171 	SWMII_SPEED_10 = 0,
116172 	SWMII_SPEED_100 = 1,
116173 	SWMII_SPEED_1000 = 2,
116174 	SWMII_DUPLEX_HALF = 0,
116175 	SWMII_DUPLEX_FULL = 1,
116176 };
116177 
116178 struct mii_phy;
116179 
116180 struct mii_phy_ops {
116181 	int (*init)(struct mii_phy *);
116182 	int (*suspend)(struct mii_phy *);
116183 	int (*setup_aneg)(struct mii_phy *, u32);
116184 	int (*setup_forced)(struct mii_phy *, int, int);
116185 	int (*poll_link)(struct mii_phy *);
116186 	int (*read_link)(struct mii_phy *);
116187 	int (*enable_fiber)(struct mii_phy *, int);
116188 };
116189 
116190 struct mii_phy_def;
116191 
116192 struct mii_phy {
116193 	struct mii_phy_def *def;
116194 	u32 advertising;
116195 	int mii_id;
116196 	int autoneg;
116197 	int speed;
116198 	int duplex;
116199 	int pause;
116200 	struct net_device *dev;
116201 	int (*mdio_read)(struct net_device *, int, int);
116202 	void (*mdio_write)(struct net_device *, int, int, int);
116203 	void *platform_data;
116204 };
116205 
116206 struct mii_phy_def {
116207 	u32 phy_id;
116208 	u32 phy_id_mask;
116209 	u32 features;
116210 	int magic_aneg;
116211 	const char *name;
116212 	const struct mii_phy_ops *ops;
116213 };
116214 
116215 enum {
116216 	BCM54XX_COPPER = 0,
116217 	BCM54XX_FIBER = 1,
116218 	BCM54XX_GBIC = 2,
116219 	BCM54XX_SGMII = 3,
116220 	BCM54XX_UNKNOWN = 4,
116221 };
116222 
116223 struct usb_class {
116224 	struct kref kref;
116225 	struct class *class;
116226 };
116227 
116228 struct usb_phy_roothub {
116229 	struct phy___2 *phy;
116230 	struct list_head list;
116231 };
116232 
116233 struct psmouse_smbus_dev {
116234 	struct i2c_board_info board;
116235 	struct psmouse *psmouse;
116236 	struct i2c_client *client;
116237 	struct list_head node;
116238 	bool dead;
116239 	bool need_deactivate;
116240 };
116241 
116242 struct psmouse_smbus_removal_work {
116243 	struct work_struct work;
116244 	struct i2c_client *client;
116245 };
116246 
116247 struct serial_info {
116248 	struct rb_node node;
116249 	sector_t start;
116250 	sector_t last;
116251 	sector_t _subtree_last;
116252 };
116253 
116254 struct raid1_info {
116255 	struct md_rdev *rdev;
116256 	sector_t head_position;
116257 	sector_t next_seq_sect;
116258 	sector_t seq_start;
116259 };
116260 
116261 struct pool_info {
116262 	struct mddev *mddev;
116263 	int raid_disks;
116264 };
116265 
116266 struct r1conf {
116267 	struct mddev *mddev;
116268 	struct raid1_info *mirrors;
116269 	int raid_disks;
116270 	spinlock_t device_lock;
116271 	struct list_head retry_list;
116272 	struct list_head bio_end_io_list;
116273 	struct bio_list pending_bio_list;
116274 	wait_queue_head_t wait_barrier;
116275 	spinlock_t resync_lock;
116276 	atomic_t nr_sync_pending;
116277 	atomic_t *nr_pending;
116278 	atomic_t *nr_waiting;
116279 	atomic_t *nr_queued;
116280 	atomic_t *barrier;
116281 	int array_frozen;
116282 	int fullsync;
116283 	int recovery_disabled;
116284 	struct pool_info *poolinfo;
116285 	mempool_t r1bio_pool;
116286 	mempool_t r1buf_pool;
116287 	struct bio_set bio_split;
116288 	struct page *tmppage;
116289 	struct md_thread *thread;
116290 	sector_t cluster_sync_low;
116291 	sector_t cluster_sync_high;
116292 };
116293 
116294 struct r1bio {
116295 	atomic_t remaining;
116296 	atomic_t behind_remaining;
116297 	sector_t sector;
116298 	int sectors;
116299 	long unsigned int state;
116300 	long unsigned int start_time;
116301 	struct mddev *mddev;
116302 	struct bio *master_bio;
116303 	int read_disk;
116304 	struct list_head retry_list;
116305 	struct bio *behind_master_bio;
116306 	struct bio *bios[0];
116307 };
116308 
116309 enum r1bio_state {
116310 	R1BIO_Uptodate = 0,
116311 	R1BIO_IsSync = 1,
116312 	R1BIO_Degraded = 2,
116313 	R1BIO_BehindIO = 3,
116314 	R1BIO_ReadError = 4,
116315 	R1BIO_Returned = 5,
116316 	R1BIO_MadeGood = 6,
116317 	R1BIO_WriteError = 7,
116318 	R1BIO_FailFast = 8,
116319 };
116320 
116321 struct resync_pages {
116322 	void *raid_bio;
116323 	struct page *pages[1];
116324 };
116325 
116326 struct raid1_plug_cb {
116327 	struct blk_plug_cb cb;
116328 	struct bio_list pending;
116329 };
116330 
116331 struct instance_attribute {
116332 	struct attribute attr;
116333 	ssize_t (*show)(struct edac_pci_ctl_info *, char *);
116334 	ssize_t (*store)(struct edac_pci_ctl_info *, const char *, size_t);
116335 };
116336 
116337 struct edac_pci_dev_attribute {
116338 	struct attribute attr;
116339 	void *value;
116340 	ssize_t (*show)(void *, char *);
116341 	ssize_t (*store)(void *, const char *, size_t);
116342 };
116343 
116344 typedef void (*pci_parity_check_fn_t)(struct pci_dev *);
116345 
116346 struct cop_symcpb_aes_ecb {
116347 	u8 key[32];
116348 	u8 __rsvd[80];
116349 };
116350 
116351 struct cop_symcpb_aes_cbc {
116352 	u8 iv[16];
116353 	u8 key[32];
116354 	u8 cv[16];
116355 	u32 spbc;
116356 	u8 __rsvd[44];
116357 };
116358 
116359 struct cop_symcpb_aes_gca {
116360 	u8 in_pat[16];
116361 	u8 key[32];
116362 	u8 out_pat[16];
116363 	u32 spbc;
116364 	u8 __rsvd[44];
116365 };
116366 
116367 struct cop_symcpb_aes_gcm {
116368 	u8 in_pat_or_aad[16];
116369 	u8 iv_or_cnt[16];
116370 	u64 bit_length_aad;
116371 	u64 bit_length_data;
116372 	u8 in_s0[16];
116373 	u8 key[32];
116374 	u8 __rsvd1[16];
116375 	u8 out_pat_or_mac[16];
116376 	u8 out_s0[16];
116377 	u8 out_cnt[16];
116378 	u32 spbc;
116379 	u8 __rsvd2[12];
116380 };
116381 
116382 struct cop_symcpb_aes_ctr {
116383 	u8 iv[16];
116384 	u8 key[32];
116385 	u8 cv[16];
116386 	u32 spbc;
116387 	u8 __rsvd2[44];
116388 };
116389 
116390 struct cop_symcpb_aes_cca {
116391 	u8 b0[16];
116392 	u8 b1[16];
116393 	u8 key[16];
116394 	u8 out_pat_or_b0[16];
116395 	u32 spbc;
116396 	u8 __rsvd[44];
116397 };
116398 
116399 struct cop_symcpb_aes_ccm {
116400 	u8 in_pat_or_b0[16];
116401 	u8 iv_or_ctr[16];
116402 	u8 in_s0[16];
116403 	u8 key[16];
116404 	u8 __rsvd1[48];
116405 	u8 out_pat_or_mac[16];
116406 	u8 out_s0[16];
116407 	u8 out_ctr[16];
116408 	u32 spbc;
116409 	u8 __rsvd2[12];
116410 };
116411 
116412 struct cop_symcpb_aes_xcbc {
116413 	u8 cv[16];
116414 	u8 key[16];
116415 	u8 __rsvd1[16];
116416 	u8 out_cv_mac[16];
116417 	u32 spbc;
116418 	u8 __rsvd2[44];
116419 };
116420 
116421 struct cop_symcpb_sha256 {
116422 	u64 message_bit_length;
116423 	u64 __rsvd1;
116424 	u8 input_partial_digest[32];
116425 	u8 message_digest[32];
116426 	u32 spbc;
116427 	u8 __rsvd2[44];
116428 };
116429 
116430 struct cop_symcpb_sha512 {
116431 	u64 message_bit_length_hi;
116432 	u64 message_bit_length_lo;
116433 	u8 input_partial_digest[64];
116434 	u8 __rsvd1[32];
116435 	u8 message_digest[64];
116436 	u32 spbc;
116437 	u8 __rsvd2[76];
116438 };
116439 
116440 struct cop_symcpb_header {
116441 	u8 mode;
116442 	u8 fdm;
116443 	u8 ks_ds;
116444 	u8 pad_byte;
116445 	u8 __rsvd[12];
116446 };
116447 
116448 struct cop_parameter_block {
116449 	struct cop_symcpb_header hdr;
116450 	union {
116451 		struct cop_symcpb_aes_ecb aes_ecb;
116452 		struct cop_symcpb_aes_cbc aes_cbc;
116453 		struct cop_symcpb_aes_gca aes_gca;
116454 		struct cop_symcpb_aes_gcm aes_gcm;
116455 		struct cop_symcpb_aes_cca aes_cca;
116456 		struct cop_symcpb_aes_ccm aes_ccm;
116457 		struct cop_symcpb_aes_ctr aes_ctr;
116458 		struct cop_symcpb_aes_xcbc aes_xcbc;
116459 		struct cop_symcpb_sha256 sha256;
116460 		struct cop_symcpb_sha512 sha512;
116461 	};
116462 };
116463 
116464 struct cop_status_block {
116465 	u8 valid;
116466 	u8 crb_seq_number;
116467 	u8 completion_code;
116468 	u8 completion_extension;
116469 	__be32 processed_byte_count;
116470 	__be64 address;
116471 };
116472 
116473 struct nx_csbcpb {
116474 	unsigned char __rsvd[112];
116475 	struct cop_status_block csb;
116476 	struct cop_parameter_block cpb;
116477 };
116478 
116479 struct hv_nx_cop_caps {
116480 	__be64 descriptor;
116481 	__be64 req_max_processed_len;
116482 	__be64 min_compress_len;
116483 	__be64 min_decompress_len;
116484 	long: 64;
116485 	long: 64;
116486 	long: 64;
116487 	long: 64;
116488 	long: 64;
116489 	long: 64;
116490 	long: 64;
116491 	long: 64;
116492 	long: 64;
116493 	long: 64;
116494 	long: 64;
116495 	long: 64;
116496 	long: 64;
116497 	long: 64;
116498 	long: 64;
116499 	long: 64;
116500 	long: 64;
116501 	long: 64;
116502 	long: 64;
116503 	long: 64;
116504 	long: 64;
116505 	long: 64;
116506 	long: 64;
116507 	long: 64;
116508 	long: 64;
116509 	long: 64;
116510 	long: 64;
116511 	long: 64;
116512 	long: 64;
116513 	long: 64;
116514 	long: 64;
116515 	long: 64;
116516 	long: 64;
116517 	long: 64;
116518 	long: 64;
116519 	long: 64;
116520 	long: 64;
116521 	long: 64;
116522 	long: 64;
116523 	long: 64;
116524 	long: 64;
116525 	long: 64;
116526 	long: 64;
116527 	long: 64;
116528 	long: 64;
116529 	long: 64;
116530 	long: 64;
116531 	long: 64;
116532 	long: 64;
116533 	long: 64;
116534 	long: 64;
116535 	long: 64;
116536 	long: 64;
116537 	long: 64;
116538 	long: 64;
116539 	long: 64;
116540 	long: 64;
116541 	long: 64;
116542 	long: 64;
116543 	long: 64;
116544 	long: 64;
116545 	long: 64;
116546 	long: 64;
116547 	long: 64;
116548 	long: 64;
116549 	long: 64;
116550 	long: 64;
116551 	long: 64;
116552 	long: 64;
116553 	long: 64;
116554 	long: 64;
116555 	long: 64;
116556 	long: 64;
116557 	long: 64;
116558 	long: 64;
116559 	long: 64;
116560 	long: 64;
116561 	long: 64;
116562 	long: 64;
116563 	long: 64;
116564 	long: 64;
116565 	long: 64;
116566 	long: 64;
116567 	long: 64;
116568 	long: 64;
116569 	long: 64;
116570 	long: 64;
116571 	long: 64;
116572 	long: 64;
116573 	long: 64;
116574 	long: 64;
116575 	long: 64;
116576 	long: 64;
116577 	long: 64;
116578 	long: 64;
116579 	long: 64;
116580 	long: 64;
116581 	long: 64;
116582 	long: 64;
116583 	long: 64;
116584 	long: 64;
116585 	long: 64;
116586 	long: 64;
116587 	long: 64;
116588 	long: 64;
116589 	long: 64;
116590 	long: 64;
116591 	long: 64;
116592 	long: 64;
116593 	long: 64;
116594 	long: 64;
116595 	long: 64;
116596 	long: 64;
116597 	long: 64;
116598 	long: 64;
116599 	long: 64;
116600 	long: 64;
116601 	long: 64;
116602 	long: 64;
116603 	long: 64;
116604 	long: 64;
116605 	long: 64;
116606 	long: 64;
116607 	long: 64;
116608 	long: 64;
116609 	long: 64;
116610 	long: 64;
116611 	long: 64;
116612 	long: 64;
116613 	long: 64;
116614 	long: 64;
116615 	long: 64;
116616 	long: 64;
116617 	long: 64;
116618 	long: 64;
116619 	long: 64;
116620 	long: 64;
116621 	long: 64;
116622 	long: 64;
116623 	long: 64;
116624 	long: 64;
116625 	long: 64;
116626 	long: 64;
116627 	long: 64;
116628 	long: 64;
116629 	long: 64;
116630 	long: 64;
116631 	long: 64;
116632 	long: 64;
116633 	long: 64;
116634 	long: 64;
116635 	long: 64;
116636 	long: 64;
116637 	long: 64;
116638 	long: 64;
116639 	long: 64;
116640 	long: 64;
116641 	long: 64;
116642 	long: 64;
116643 	long: 64;
116644 	long: 64;
116645 	long: 64;
116646 	long: 64;
116647 	long: 64;
116648 	long: 64;
116649 	long: 64;
116650 	long: 64;
116651 	long: 64;
116652 	long: 64;
116653 	long: 64;
116654 	long: 64;
116655 	long: 64;
116656 	long: 64;
116657 	long: 64;
116658 	long: 64;
116659 	long: 64;
116660 	long: 64;
116661 	long: 64;
116662 	long: 64;
116663 	long: 64;
116664 	long: 64;
116665 	long: 64;
116666 	long: 64;
116667 	long: 64;
116668 	long: 64;
116669 	long: 64;
116670 	long: 64;
116671 	long: 64;
116672 	long: 64;
116673 	long: 64;
116674 	long: 64;
116675 	long: 64;
116676 	long: 64;
116677 	long: 64;
116678 	long: 64;
116679 	long: 64;
116680 	long: 64;
116681 	long: 64;
116682 	long: 64;
116683 	long: 64;
116684 	long: 64;
116685 	long: 64;
116686 	long: 64;
116687 	long: 64;
116688 	long: 64;
116689 	long: 64;
116690 	long: 64;
116691 	long: 64;
116692 	long: 64;
116693 	long: 64;
116694 	long: 64;
116695 	long: 64;
116696 	long: 64;
116697 	long: 64;
116698 	long: 64;
116699 	long: 64;
116700 	long: 64;
116701 	long: 64;
116702 	long: 64;
116703 	long: 64;
116704 	long: 64;
116705 	long: 64;
116706 	long: 64;
116707 	long: 64;
116708 	long: 64;
116709 	long: 64;
116710 	long: 64;
116711 	long: 64;
116712 	long: 64;
116713 	long: 64;
116714 	long: 64;
116715 	long: 64;
116716 	long: 64;
116717 	long: 64;
116718 	long: 64;
116719 	long: 64;
116720 	long: 64;
116721 	long: 64;
116722 	long: 64;
116723 	long: 64;
116724 	long: 64;
116725 	long: 64;
116726 	long: 64;
116727 	long: 64;
116728 	long: 64;
116729 	long: 64;
116730 	long: 64;
116731 	long: 64;
116732 	long: 64;
116733 	long: 64;
116734 	long: 64;
116735 	long: 64;
116736 	long: 64;
116737 	long: 64;
116738 	long: 64;
116739 	long: 64;
116740 	long: 64;
116741 	long: 64;
116742 	long: 64;
116743 	long: 64;
116744 	long: 64;
116745 	long: 64;
116746 	long: 64;
116747 	long: 64;
116748 	long: 64;
116749 	long: 64;
116750 	long: 64;
116751 	long: 64;
116752 	long: 64;
116753 	long: 64;
116754 	long: 64;
116755 	long: 64;
116756 	long: 64;
116757 	long: 64;
116758 	long: 64;
116759 	long: 64;
116760 	long: 64;
116761 	long: 64;
116762 	long: 64;
116763 	long: 64;
116764 	long: 64;
116765 	long: 64;
116766 	long: 64;
116767 	long: 64;
116768 	long: 64;
116769 	long: 64;
116770 	long: 64;
116771 	long: 64;
116772 	long: 64;
116773 	long: 64;
116774 	long: 64;
116775 	long: 64;
116776 	long: 64;
116777 	long: 64;
116778 	long: 64;
116779 	long: 64;
116780 	long: 64;
116781 	long: 64;
116782 	long: 64;
116783 	long: 64;
116784 	long: 64;
116785 	long: 64;
116786 	long: 64;
116787 	long: 64;
116788 	long: 64;
116789 	long: 64;
116790 	long: 64;
116791 	long: 64;
116792 	long: 64;
116793 	long: 64;
116794 	long: 64;
116795 	long: 64;
116796 	long: 64;
116797 	long: 64;
116798 	long: 64;
116799 	long: 64;
116800 	long: 64;
116801 	long: 64;
116802 	long: 64;
116803 	long: 64;
116804 	long: 64;
116805 	long: 64;
116806 	long: 64;
116807 	long: 64;
116808 	long: 64;
116809 	long: 64;
116810 	long: 64;
116811 	long: 64;
116812 	long: 64;
116813 	long: 64;
116814 	long: 64;
116815 	long: 64;
116816 	long: 64;
116817 	long: 64;
116818 	long: 64;
116819 	long: 64;
116820 	long: 64;
116821 	long: 64;
116822 	long: 64;
116823 	long: 64;
116824 	long: 64;
116825 	long: 64;
116826 	long: 64;
116827 	long: 64;
116828 	long: 64;
116829 	long: 64;
116830 	long: 64;
116831 	long: 64;
116832 	long: 64;
116833 	long: 64;
116834 	long: 64;
116835 	long: 64;
116836 	long: 64;
116837 	long: 64;
116838 	long: 64;
116839 	long: 64;
116840 	long: 64;
116841 	long: 64;
116842 	long: 64;
116843 	long: 64;
116844 	long: 64;
116845 	long: 64;
116846 	long: 64;
116847 	long: 64;
116848 	long: 64;
116849 	long: 64;
116850 	long: 64;
116851 	long: 64;
116852 	long: 64;
116853 	long: 64;
116854 	long: 64;
116855 	long: 64;
116856 	long: 64;
116857 	long: 64;
116858 	long: 64;
116859 	long: 64;
116860 	long: 64;
116861 	long: 64;
116862 	long: 64;
116863 	long: 64;
116864 	long: 64;
116865 	long: 64;
116866 	long: 64;
116867 	long: 64;
116868 	long: 64;
116869 	long: 64;
116870 	long: 64;
116871 	long: 64;
116872 	long: 64;
116873 	long: 64;
116874 	long: 64;
116875 	long: 64;
116876 	long: 64;
116877 	long: 64;
116878 	long: 64;
116879 	long: 64;
116880 	long: 64;
116881 	long: 64;
116882 	long: 64;
116883 	long: 64;
116884 	long: 64;
116885 	long: 64;
116886 	long: 64;
116887 	long: 64;
116888 	long: 64;
116889 	long: 64;
116890 	long: 64;
116891 	long: 64;
116892 	long: 64;
116893 	long: 64;
116894 	long: 64;
116895 	long: 64;
116896 	long: 64;
116897 	long: 64;
116898 	long: 64;
116899 	long: 64;
116900 	long: 64;
116901 	long: 64;
116902 	long: 64;
116903 	long: 64;
116904 	long: 64;
116905 	long: 64;
116906 	long: 64;
116907 	long: 64;
116908 	long: 64;
116909 	long: 64;
116910 	long: 64;
116911 	long: 64;
116912 	long: 64;
116913 	long: 64;
116914 	long: 64;
116915 	long: 64;
116916 	long: 64;
116917 	long: 64;
116918 	long: 64;
116919 	long: 64;
116920 	long: 64;
116921 	long: 64;
116922 	long: 64;
116923 	long: 64;
116924 	long: 64;
116925 	long: 64;
116926 	long: 64;
116927 	long: 64;
116928 	long: 64;
116929 	long: 64;
116930 	long: 64;
116931 	long: 64;
116932 	long: 64;
116933 	long: 64;
116934 	long: 64;
116935 	long: 64;
116936 	long: 64;
116937 	long: 64;
116938 	long: 64;
116939 	long: 64;
116940 	long: 64;
116941 	long: 64;
116942 	long: 64;
116943 	long: 64;
116944 	long: 64;
116945 	long: 64;
116946 	long: 64;
116947 	long: 64;
116948 	long: 64;
116949 	long: 64;
116950 	long: 64;
116951 	long: 64;
116952 	long: 64;
116953 	long: 64;
116954 	long: 64;
116955 	long: 64;
116956 	long: 64;
116957 	long: 64;
116958 	long: 64;
116959 	long: 64;
116960 	long: 64;
116961 	long: 64;
116962 	long: 64;
116963 	long: 64;
116964 	long: 64;
116965 	long: 64;
116966 	long: 64;
116967 	long: 64;
116968 	long: 64;
116969 	long: 64;
116970 	long: 64;
116971 	long: 64;
116972 	long: 64;
116973 	long: 64;
116974 	long: 64;
116975 	long: 64;
116976 	long: 64;
116977 	long: 64;
116978 	long: 64;
116979 	long: 64;
116980 	long: 64;
116981 	long: 64;
116982 	long: 64;
116983 	long: 64;
116984 	long: 64;
116985 	long: 64;
116986 	long: 64;
116987 	long: 64;
116988 	long: 64;
116989 	long: 64;
116990 	long: 64;
116991 	long: 64;
116992 };
116993 
116994 struct nx_cop_caps {
116995 	u64 descriptor;
116996 	u64 req_max_processed_len;
116997 	u64 min_compress_len;
116998 	u64 min_decompress_len;
116999 };
117000 
117001 struct nx842_workmem___2 {
117002 	char slin[4096];
117003 	char slout[4096];
117004 	struct nx_csbcpb csbcpb;
117005 	char padding[256];
117006 	long: 64;
117007 	long: 64;
117008 	long: 64;
117009 	long: 64;
117010 	long: 64;
117011 	long: 64;
117012 	long: 64;
117013 	long: 64;
117014 	long: 64;
117015 	long: 64;
117016 	long: 64;
117017 	long: 64;
117018 	long: 64;
117019 	long: 64;
117020 };
117021 
117022 struct ibm_nx842_counters {
117023 	atomic64_t comp_complete;
117024 	atomic64_t comp_failed;
117025 	atomic64_t decomp_complete;
117026 	atomic64_t decomp_failed;
117027 	atomic64_t swdecomp;
117028 	atomic64_t comp_times[32];
117029 	atomic64_t decomp_times[32];
117030 };
117031 
117032 struct nx842_devdata {
117033 	struct vio_dev *vdev;
117034 	struct device *dev;
117035 	struct ibm_nx842_counters *counters;
117036 	unsigned int max_sg_len;
117037 	unsigned int max_sync_size;
117038 	unsigned int max_sync_sg;
117039 };
117040 
117041 struct nx842_slentry {
117042 	__be64 ptr;
117043 	__be64 len;
117044 };
117045 
117046 struct nx842_scatterlist {
117047 	int entry_nr;
117048 	struct nx842_slentry *entries;
117049 };
117050 
117051 struct maxsynccop_t {
117052 	__be32 comp_elements;
117053 	__be32 comp_data_limit;
117054 	__be32 comp_sg_limit;
117055 	__be32 decomp_elements;
117056 	__be32 decomp_data_limit;
117057 	__be32 decomp_sg_limit;
117058 };
117059 
117060 struct ms_data {
117061 	long unsigned int quirks;
117062 	struct hid_device *hdev;
117063 	struct work_struct ff_worker;
117064 	__u8 strong;
117065 	__u8 weak;
117066 	void *output_report_dmabuf;
117067 };
117068 
117069 enum {
117070 	MAGNITUDE_STRONG = 2,
117071 	MAGNITUDE_WEAK = 3,
117072 	MAGNITUDE_NUM = 4,
117073 };
117074 
117075 struct xb1s_ff_report {
117076 	__u8 report_id;
117077 	__u8 enable;
117078 	__u8 magnitude[4];
117079 	__u8 duration_10ms;
117080 	__u8 start_delay_10ms;
117081 	__u8 loop_count;
117082 };
117083 
117084 struct of_bus___2 {
117085 	void (*count_cells)(const void *, int, int *, int *);
117086 	u64 (*map)(__be32 *, const __be32 *, int, int, int);
117087 	int (*translate)(__be32 *, u64, int);
117088 };
117089 
117090 enum {
117091 	TCA_STATS_UNSPEC = 0,
117092 	TCA_STATS_BASIC = 1,
117093 	TCA_STATS_RATE_EST = 2,
117094 	TCA_STATS_QUEUE = 3,
117095 	TCA_STATS_APP = 4,
117096 	TCA_STATS_RATE_EST64 = 5,
117097 	TCA_STATS_PAD = 6,
117098 	TCA_STATS_BASIC_HW = 7,
117099 	TCA_STATS_PKT64 = 8,
117100 	__TCA_STATS_MAX = 9,
117101 };
117102 
117103 struct gnet_stats_basic {
117104 	__u64 bytes;
117105 	__u32 packets;
117106 };
117107 
117108 struct gnet_stats_rate_est {
117109 	__u32 bps;
117110 	__u32 pps;
117111 };
117112 
117113 enum {
117114 	NDA_UNSPEC = 0,
117115 	NDA_DST = 1,
117116 	NDA_LLADDR = 2,
117117 	NDA_CACHEINFO = 3,
117118 	NDA_PROBES = 4,
117119 	NDA_VLAN = 5,
117120 	NDA_PORT = 6,
117121 	NDA_VNI = 7,
117122 	NDA_IFINDEX = 8,
117123 	NDA_MASTER = 9,
117124 	NDA_LINK_NETNSID = 10,
117125 	NDA_SRC_VNI = 11,
117126 	NDA_PROTOCOL = 12,
117127 	NDA_NH_ID = 13,
117128 	NDA_FDB_EXT_ATTRS = 14,
117129 	NDA_FLAGS_EXT = 15,
117130 	NDA_NDM_STATE_MASK = 16,
117131 	NDA_NDM_FLAGS_MASK = 17,
117132 	__NDA_MAX = 18,
117133 };
117134 
117135 struct rtnl_link_stats {
117136 	__u32 rx_packets;
117137 	__u32 tx_packets;
117138 	__u32 rx_bytes;
117139 	__u32 tx_bytes;
117140 	__u32 rx_errors;
117141 	__u32 tx_errors;
117142 	__u32 rx_dropped;
117143 	__u32 tx_dropped;
117144 	__u32 multicast;
117145 	__u32 collisions;
117146 	__u32 rx_length_errors;
117147 	__u32 rx_over_errors;
117148 	__u32 rx_crc_errors;
117149 	__u32 rx_frame_errors;
117150 	__u32 rx_fifo_errors;
117151 	__u32 rx_missed_errors;
117152 	__u32 tx_aborted_errors;
117153 	__u32 tx_carrier_errors;
117154 	__u32 tx_fifo_errors;
117155 	__u32 tx_heartbeat_errors;
117156 	__u32 tx_window_errors;
117157 	__u32 rx_compressed;
117158 	__u32 tx_compressed;
117159 	__u32 rx_nohandler;
117160 };
117161 
117162 struct rtnl_link_ifmap {
117163 	__u64 mem_start;
117164 	__u64 mem_end;
117165 	__u64 base_addr;
117166 	__u16 irq;
117167 	__u8 dma;
117168 	__u8 port;
117169 };
117170 
117171 enum {
117172 	IFLA_PROTO_DOWN_REASON_UNSPEC = 0,
117173 	IFLA_PROTO_DOWN_REASON_MASK = 1,
117174 	IFLA_PROTO_DOWN_REASON_VALUE = 2,
117175 	__IFLA_PROTO_DOWN_REASON_CNT = 3,
117176 	IFLA_PROTO_DOWN_REASON_MAX = 2,
117177 };
117178 
117179 enum {
117180 	IFLA_BRPORT_UNSPEC = 0,
117181 	IFLA_BRPORT_STATE = 1,
117182 	IFLA_BRPORT_PRIORITY = 2,
117183 	IFLA_BRPORT_COST = 3,
117184 	IFLA_BRPORT_MODE = 4,
117185 	IFLA_BRPORT_GUARD = 5,
117186 	IFLA_BRPORT_PROTECT = 6,
117187 	IFLA_BRPORT_FAST_LEAVE = 7,
117188 	IFLA_BRPORT_LEARNING = 8,
117189 	IFLA_BRPORT_UNICAST_FLOOD = 9,
117190 	IFLA_BRPORT_PROXYARP = 10,
117191 	IFLA_BRPORT_LEARNING_SYNC = 11,
117192 	IFLA_BRPORT_PROXYARP_WIFI = 12,
117193 	IFLA_BRPORT_ROOT_ID = 13,
117194 	IFLA_BRPORT_BRIDGE_ID = 14,
117195 	IFLA_BRPORT_DESIGNATED_PORT = 15,
117196 	IFLA_BRPORT_DESIGNATED_COST = 16,
117197 	IFLA_BRPORT_ID = 17,
117198 	IFLA_BRPORT_NO = 18,
117199 	IFLA_BRPORT_TOPOLOGY_CHANGE_ACK = 19,
117200 	IFLA_BRPORT_CONFIG_PENDING = 20,
117201 	IFLA_BRPORT_MESSAGE_AGE_TIMER = 21,
117202 	IFLA_BRPORT_FORWARD_DELAY_TIMER = 22,
117203 	IFLA_BRPORT_HOLD_TIMER = 23,
117204 	IFLA_BRPORT_FLUSH = 24,
117205 	IFLA_BRPORT_MULTICAST_ROUTER = 25,
117206 	IFLA_BRPORT_PAD = 26,
117207 	IFLA_BRPORT_MCAST_FLOOD = 27,
117208 	IFLA_BRPORT_MCAST_TO_UCAST = 28,
117209 	IFLA_BRPORT_VLAN_TUNNEL = 29,
117210 	IFLA_BRPORT_BCAST_FLOOD = 30,
117211 	IFLA_BRPORT_GROUP_FWD_MASK = 31,
117212 	IFLA_BRPORT_NEIGH_SUPPRESS = 32,
117213 	IFLA_BRPORT_ISOLATED = 33,
117214 	IFLA_BRPORT_BACKUP_PORT = 34,
117215 	IFLA_BRPORT_MRP_RING_OPEN = 35,
117216 	IFLA_BRPORT_MRP_IN_OPEN = 36,
117217 	IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT = 37,
117218 	IFLA_BRPORT_MCAST_EHT_HOSTS_CNT = 38,
117219 	IFLA_BRPORT_LOCKED = 39,
117220 	__IFLA_BRPORT_MAX = 40,
117221 };
117222 
117223 enum {
117224 	IFLA_INFO_UNSPEC = 0,
117225 	IFLA_INFO_KIND = 1,
117226 	IFLA_INFO_DATA = 2,
117227 	IFLA_INFO_XSTATS = 3,
117228 	IFLA_INFO_SLAVE_KIND = 4,
117229 	IFLA_INFO_SLAVE_DATA = 5,
117230 	__IFLA_INFO_MAX = 6,
117231 };
117232 
117233 enum {
117234 	IFLA_VF_INFO_UNSPEC = 0,
117235 	IFLA_VF_INFO = 1,
117236 	__IFLA_VF_INFO_MAX = 2,
117237 };
117238 
117239 enum {
117240 	IFLA_VF_UNSPEC = 0,
117241 	IFLA_VF_MAC = 1,
117242 	IFLA_VF_VLAN = 2,
117243 	IFLA_VF_TX_RATE = 3,
117244 	IFLA_VF_SPOOFCHK = 4,
117245 	IFLA_VF_LINK_STATE = 5,
117246 	IFLA_VF_RATE = 6,
117247 	IFLA_VF_RSS_QUERY_EN = 7,
117248 	IFLA_VF_STATS = 8,
117249 	IFLA_VF_TRUST = 9,
117250 	IFLA_VF_IB_NODE_GUID = 10,
117251 	IFLA_VF_IB_PORT_GUID = 11,
117252 	IFLA_VF_VLAN_LIST = 12,
117253 	IFLA_VF_BROADCAST = 13,
117254 	__IFLA_VF_MAX = 14,
117255 };
117256 
117257 struct ifla_vf_mac {
117258 	__u32 vf;
117259 	__u8 mac[32];
117260 };
117261 
117262 struct ifla_vf_broadcast {
117263 	__u8 broadcast[32];
117264 };
117265 
117266 struct ifla_vf_vlan {
117267 	__u32 vf;
117268 	__u32 vlan;
117269 	__u32 qos;
117270 };
117271 
117272 enum {
117273 	IFLA_VF_VLAN_INFO_UNSPEC = 0,
117274 	IFLA_VF_VLAN_INFO = 1,
117275 	__IFLA_VF_VLAN_INFO_MAX = 2,
117276 };
117277 
117278 struct ifla_vf_vlan_info {
117279 	__u32 vf;
117280 	__u32 vlan;
117281 	__u32 qos;
117282 	__be16 vlan_proto;
117283 };
117284 
117285 struct ifla_vf_tx_rate {
117286 	__u32 vf;
117287 	__u32 rate;
117288 };
117289 
117290 struct ifla_vf_rate {
117291 	__u32 vf;
117292 	__u32 min_tx_rate;
117293 	__u32 max_tx_rate;
117294 };
117295 
117296 struct ifla_vf_spoofchk {
117297 	__u32 vf;
117298 	__u32 setting;
117299 };
117300 
117301 struct ifla_vf_link_state {
117302 	__u32 vf;
117303 	__u32 link_state;
117304 };
117305 
117306 struct ifla_vf_rss_query_en {
117307 	__u32 vf;
117308 	__u32 setting;
117309 };
117310 
117311 enum {
117312 	IFLA_VF_STATS_RX_PACKETS = 0,
117313 	IFLA_VF_STATS_TX_PACKETS = 1,
117314 	IFLA_VF_STATS_RX_BYTES = 2,
117315 	IFLA_VF_STATS_TX_BYTES = 3,
117316 	IFLA_VF_STATS_BROADCAST = 4,
117317 	IFLA_VF_STATS_MULTICAST = 5,
117318 	IFLA_VF_STATS_PAD = 6,
117319 	IFLA_VF_STATS_RX_DROPPED = 7,
117320 	IFLA_VF_STATS_TX_DROPPED = 8,
117321 	__IFLA_VF_STATS_MAX = 9,
117322 };
117323 
117324 struct ifla_vf_trust {
117325 	__u32 vf;
117326 	__u32 setting;
117327 };
117328 
117329 enum {
117330 	IFLA_VF_PORT_UNSPEC = 0,
117331 	IFLA_VF_PORT = 1,
117332 	__IFLA_VF_PORT_MAX = 2,
117333 };
117334 
117335 enum {
117336 	IFLA_PORT_UNSPEC = 0,
117337 	IFLA_PORT_VF = 1,
117338 	IFLA_PORT_PROFILE = 2,
117339 	IFLA_PORT_VSI_TYPE = 3,
117340 	IFLA_PORT_INSTANCE_UUID = 4,
117341 	IFLA_PORT_HOST_UUID = 5,
117342 	IFLA_PORT_REQUEST = 6,
117343 	IFLA_PORT_RESPONSE = 7,
117344 	__IFLA_PORT_MAX = 8,
117345 };
117346 
117347 struct if_stats_msg {
117348 	__u8 family;
117349 	__u8 pad1;
117350 	__u16 pad2;
117351 	__u32 ifindex;
117352 	__u32 filter_mask;
117353 };
117354 
117355 enum {
117356 	IFLA_STATS_UNSPEC = 0,
117357 	IFLA_STATS_LINK_64 = 1,
117358 	IFLA_STATS_LINK_XSTATS = 2,
117359 	IFLA_STATS_LINK_XSTATS_SLAVE = 3,
117360 	IFLA_STATS_LINK_OFFLOAD_XSTATS = 4,
117361 	IFLA_STATS_AF_SPEC = 5,
117362 	__IFLA_STATS_MAX = 6,
117363 };
117364 
117365 enum {
117366 	IFLA_STATS_GETSET_UNSPEC = 0,
117367 	IFLA_STATS_GET_FILTERS = 1,
117368 	IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2,
117369 	__IFLA_STATS_GETSET_MAX = 3,
117370 };
117371 
117372 enum {
117373 	IFLA_OFFLOAD_XSTATS_UNSPEC = 0,
117374 	IFLA_OFFLOAD_XSTATS_CPU_HIT = 1,
117375 	IFLA_OFFLOAD_XSTATS_HW_S_INFO = 2,
117376 	IFLA_OFFLOAD_XSTATS_L3_STATS = 3,
117377 	__IFLA_OFFLOAD_XSTATS_MAX = 4,
117378 };
117379 
117380 enum {
117381 	IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC = 0,
117382 	IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST = 1,
117383 	IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED = 2,
117384 	__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX = 3,
117385 };
117386 
117387 enum {
117388 	XDP_ATTACHED_NONE = 0,
117389 	XDP_ATTACHED_DRV = 1,
117390 	XDP_ATTACHED_SKB = 2,
117391 	XDP_ATTACHED_HW = 3,
117392 	XDP_ATTACHED_MULTI = 4,
117393 };
117394 
117395 enum {
117396 	IFLA_XDP_UNSPEC = 0,
117397 	IFLA_XDP_FD = 1,
117398 	IFLA_XDP_ATTACHED = 2,
117399 	IFLA_XDP_FLAGS = 3,
117400 	IFLA_XDP_PROG_ID = 4,
117401 	IFLA_XDP_DRV_PROG_ID = 5,
117402 	IFLA_XDP_SKB_PROG_ID = 6,
117403 	IFLA_XDP_HW_PROG_ID = 7,
117404 	IFLA_XDP_EXPECTED_FD = 8,
117405 	__IFLA_XDP_MAX = 9,
117406 };
117407 
117408 enum {
117409 	IFLA_EVENT_NONE = 0,
117410 	IFLA_EVENT_REBOOT = 1,
117411 	IFLA_EVENT_FEATURES = 2,
117412 	IFLA_EVENT_BONDING_FAILOVER = 3,
117413 	IFLA_EVENT_NOTIFY_PEERS = 4,
117414 	IFLA_EVENT_IGMP_RESEND = 5,
117415 	IFLA_EVENT_BONDING_OPTIONS = 6,
117416 };
117417 
117418 enum netdev_offload_xstats_type {
117419 	NETDEV_OFFLOAD_XSTATS_TYPE_L3 = 1,
117420 };
117421 
117422 enum {
117423 	IFLA_BRIDGE_FLAGS = 0,
117424 	IFLA_BRIDGE_MODE = 1,
117425 	IFLA_BRIDGE_VLAN_INFO = 2,
117426 	IFLA_BRIDGE_VLAN_TUNNEL_INFO = 3,
117427 	IFLA_BRIDGE_MRP = 4,
117428 	IFLA_BRIDGE_CFM = 5,
117429 	IFLA_BRIDGE_MST = 6,
117430 	__IFLA_BRIDGE_MAX = 7,
117431 };
117432 
117433 struct rta_cacheinfo {
117434 	__u32 rta_clntref;
117435 	__u32 rta_lastuse;
117436 	__s32 rta_expires;
117437 	__u32 rta_error;
117438 	__u32 rta_used;
117439 	__u32 rta_id;
117440 	__u32 rta_ts;
117441 	__u32 rta_tsage;
117442 };
117443 
117444 enum rtnl_kinds {
117445 	RTNL_KIND_NEW = 0,
117446 	RTNL_KIND_DEL = 1,
117447 	RTNL_KIND_GET = 2,
117448 	RTNL_KIND_SET = 3,
117449 };
117450 
117451 struct rtnl_link {
117452 	rtnl_doit_func doit;
117453 	rtnl_dumpit_func dumpit;
117454 	struct module *owner;
117455 	unsigned int flags;
117456 	struct callback_head rcu;
117457 };
117458 
117459 struct rtnl_newlink_tbs {
117460 	struct nlattr *tb[61];
117461 	struct nlattr *attr[51];
117462 	struct nlattr *slave_attr[41];
117463 };
117464 
117465 struct rtnl_offload_xstats_request_used {
117466 	bool request;
117467 	bool used;
117468 };
117469 
117470 struct rtnl_stats_dump_filters {
117471 	u32 mask[6];
117472 };
117473 
117474 enum {
117475 	SK_DIAG_BPF_STORAGE_REQ_NONE = 0,
117476 	SK_DIAG_BPF_STORAGE_REQ_MAP_FD = 1,
117477 	__SK_DIAG_BPF_STORAGE_REQ_MAX = 2,
117478 };
117479 
117480 enum {
117481 	SK_DIAG_BPF_STORAGE_REP_NONE = 0,
117482 	SK_DIAG_BPF_STORAGE = 1,
117483 	__SK_DIAG_BPF_STORAGE_REP_MAX = 2,
117484 };
117485 
117486 enum {
117487 	SK_DIAG_BPF_STORAGE_NONE = 0,
117488 	SK_DIAG_BPF_STORAGE_PAD = 1,
117489 	SK_DIAG_BPF_STORAGE_MAP_ID = 2,
117490 	SK_DIAG_BPF_STORAGE_MAP_VALUE = 3,
117491 	__SK_DIAG_BPF_STORAGE_MAX = 4,
117492 };
117493 
117494 typedef u64 (*btf_bpf_sk_storage_get)(struct bpf_map *, struct sock *, void *, u64, gfp_t);
117495 
117496 typedef u64 (*btf_bpf_sk_storage_delete)(struct bpf_map *, struct sock *);
117497 
117498 typedef u64 (*btf_bpf_sk_storage_get_tracing)(struct bpf_map *, struct sock *, void *, u64, gfp_t);
117499 
117500 typedef u64 (*btf_bpf_sk_storage_delete_tracing)(struct bpf_map *, struct sock *);
117501 
117502 struct bpf_sk_storage_diag {
117503 	u32 nr_maps;
117504 	struct bpf_map *maps[0];
117505 };
117506 
117507 struct bpf_iter_seq_sk_storage_map_info {
117508 	struct bpf_map *map;
117509 	unsigned int bucket_id;
117510 	unsigned int skip_elems;
117511 };
117512 
117513 struct bpf_iter__bpf_sk_storage_map {
117514 	union {
117515 		struct bpf_iter_meta *meta;
117516 	};
117517 	union {
117518 		struct bpf_map *map;
117519 	};
117520 	union {
117521 		struct sock *sk;
117522 	};
117523 	union {
117524 		void *value;
117525 	};
117526 };
117527 
117528 struct trace_event_raw_bpf_test_finish {
117529 	struct trace_entry ent;
117530 	int err;
117531 	char __data[0];
117532 };
117533 
117534 struct trace_event_data_offsets_bpf_test_finish {};
117535 
117536 typedef void (*btf_trace_bpf_test_finish)(void *, int *);
117537 
117538 struct bpf_test_timer {
117539 	enum {
117540 		NO_PREEMPT = 0,
117541 		NO_MIGRATE = 1,
117542 	} mode;
117543 	u32 i;
117544 	u64 time_start;
117545 	u64 time_spent;
117546 };
117547 
117548 struct xdp_page_head {
117549 	struct xdp_buff orig_ctx;
117550 	struct xdp_buff ctx;
117551 	struct xdp_frame frm;
117552 	u8 data[0];
117553 };
117554 
117555 struct xdp_test_data {
117556 	struct xdp_buff *orig_ctx;
117557 	long: 64;
117558 	long: 64;
117559 	long: 64;
117560 	long: 64;
117561 	long: 64;
117562 	long: 64;
117563 	long: 64;
117564 	long: 64;
117565 	long: 64;
117566 	long: 64;
117567 	long: 64;
117568 	long: 64;
117569 	long: 64;
117570 	long: 64;
117571 	long: 64;
117572 	struct xdp_rxq_info rxq;
117573 	struct net_device *dev;
117574 	struct page_pool *pp;
117575 	struct xdp_frame **frames;
117576 	struct sk_buff **skbs;
117577 	struct xdp_mem_info mem;
117578 	u32 batch_size;
117579 	u32 frame_cnt;
117580 	long: 64;
117581 	long: 64;
117582 	long: 64;
117583 	long: 64;
117584 	long: 64;
117585 	long: 64;
117586 	long: 64;
117587 	long: 64;
117588 	long: 64;
117589 	long: 64;
117590 };
117591 
117592 struct bpf_fentry_test_t {
117593 	struct bpf_fentry_test_t *a;
117594 };
117595 
117596 struct prog_test_member1 {
117597 	int a;
117598 };
117599 
117600 struct prog_test_member {
117601 	struct prog_test_member1 m;
117602 	int c;
117603 };
117604 
117605 struct prog_test_ref_kfunc {
117606 	int a;
117607 	int b;
117608 	struct prog_test_member memb;
117609 	struct prog_test_ref_kfunc *next;
117610 	refcount_t cnt;
117611 };
117612 
117613 struct prog_test_pass1 {
117614 	int x0;
117615 	struct {
117616 		int x1;
117617 		struct {
117618 			int x2;
117619 			struct {
117620 				int x3;
117621 			};
117622 		};
117623 	};
117624 };
117625 
117626 struct prog_test_pass2 {
117627 	int len;
117628 	short int arr1[4];
117629 	struct {
117630 		char arr2[4];
117631 		long unsigned int arr3[8];
117632 	} x;
117633 };
117634 
117635 struct prog_test_fail1 {
117636 	void *p;
117637 	int x;
117638 };
117639 
117640 struct prog_test_fail2 {
117641 	int x8;
117642 	struct prog_test_pass1 x;
117643 };
117644 
117645 struct prog_test_fail3 {
117646 	int len;
117647 	char arr1[2];
117648 	char arr2[0];
117649 };
117650 
117651 struct bpf_raw_tp_test_run_info {
117652 	struct bpf_prog *prog;
117653 	void *ctx;
117654 	u32 retval;
117655 };
117656 
117657 enum {
117658 	ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC = 0,
117659 	ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT = 1,
117660 	ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE = 2,
117661 	__ETHTOOL_A_TUNNEL_UDP_ENTRY_CNT = 3,
117662 	ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = 2,
117663 };
117664 
117665 enum {
117666 	ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC = 0,
117667 	ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE = 1,
117668 	ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES = 2,
117669 	ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY = 3,
117670 	__ETHTOOL_A_TUNNEL_UDP_TABLE_CNT = 4,
117671 	ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = 3,
117672 };
117673 
117674 enum {
117675 	ETHTOOL_A_TUNNEL_UDP_UNSPEC = 0,
117676 	ETHTOOL_A_TUNNEL_UDP_TABLE = 1,
117677 	__ETHTOOL_A_TUNNEL_UDP_CNT = 2,
117678 	ETHTOOL_A_TUNNEL_UDP_MAX = 1,
117679 };
117680 
117681 enum udp_parsable_tunnel_type {
117682 	UDP_TUNNEL_TYPE_VXLAN = 1,
117683 	UDP_TUNNEL_TYPE_GENEVE = 2,
117684 	UDP_TUNNEL_TYPE_VXLAN_GPE = 4,
117685 };
117686 
117687 enum udp_tunnel_nic_info_flags {
117688 	UDP_TUNNEL_NIC_INFO_MAY_SLEEP = 1,
117689 	UDP_TUNNEL_NIC_INFO_OPEN_ONLY = 2,
117690 	UDP_TUNNEL_NIC_INFO_IPV4_ONLY = 4,
117691 	UDP_TUNNEL_NIC_INFO_STATIC_IANA_VXLAN = 8,
117692 };
117693 
117694 struct udp_tunnel_nic_ops {
117695 	void (*get_port)(struct net_device *, unsigned int, unsigned int, struct udp_tunnel_info *);
117696 	void (*set_port_priv)(struct net_device *, unsigned int, unsigned int, u8);
117697 	void (*add_port)(struct net_device *, struct udp_tunnel_info *);
117698 	void (*del_port)(struct net_device *, struct udp_tunnel_info *);
117699 	void (*reset_ntf)(struct net_device *);
117700 	size_t (*dump_size)(struct net_device *, unsigned int);
117701 	int (*dump_write)(struct net_device *, unsigned int, struct sk_buff *);
117702 };
117703 
117704 struct ethnl_tunnel_info_dump_ctx {
117705 	struct ethnl_req_info req_info;
117706 	int pos_hash;
117707 	int pos_idx;
117708 };
117709 
117710 struct ip_options_data {
117711 	struct ip_options_rcu opt;
117712 	char data[40];
117713 };
117714 
117715 struct ipcm_cookie {
117716 	struct sockcm_cookie sockc;
117717 	__be32 addr;
117718 	int oif;
117719 	struct ip_options_rcu *opt;
117720 	__u8 ttl;
117721 	__s16 tos;
117722 	char priority;
117723 	__u16 gso_size;
117724 };
117725 
117726 struct ip_fraglist_iter {
117727 	struct sk_buff *frag;
117728 	struct iphdr *iph;
117729 	int offset;
117730 	unsigned int hlen;
117731 };
117732 
117733 struct ip_frag_state {
117734 	bool DF;
117735 	unsigned int hlen;
117736 	unsigned int ll_rs;
117737 	unsigned int mtu;
117738 	unsigned int left;
117739 	int offset;
117740 	int ptr;
117741 	__be16 not_last_frag;
117742 };
117743 
117744 struct icmp_filter {
117745 	__u32 data;
117746 };
117747 
117748 struct raw_sock {
117749 	struct inet_sock inet;
117750 	struct icmp_filter filter;
117751 	u32 ipmr_table;
117752 };
117753 
117754 struct raw_frag_vec {
117755 	struct msghdr *msg;
117756 	union {
117757 		struct icmphdr icmph;
117758 		char c[1];
117759 	} hdr;
117760 	int hlen;
117761 };
117762 
117763 struct ping_iter_state {
117764 	struct seq_net_private p;
117765 	int bucket;
117766 	sa_family_t family;
117767 };
117768 
117769 struct pingfakehdr {
117770 	struct icmphdr icmph;
117771 	struct msghdr *msg;
117772 	sa_family_t family;
117773 	__wsum wcheck;
117774 };
117775 
117776 struct ping_table {
117777 	struct hlist_nulls_head hash[64];
117778 	spinlock_t lock;
117779 };
117780 
117781 struct bictcp {
117782 	u32 cnt;
117783 	u32 last_max_cwnd;
117784 	u32 last_cwnd;
117785 	u32 last_time;
117786 	u32 bic_origin_point;
117787 	u32 bic_K;
117788 	u32 delay_min;
117789 	u32 epoch_start;
117790 	u32 ack_cnt;
117791 	u32 tcp_cwnd;
117792 	u16 unused;
117793 	u8 sample_cnt;
117794 	u8 found;
117795 	u32 round_start;
117796 	u32 end_seq;
117797 	u32 last_ack;
117798 	u32 curr_rtt;
117799 };
117800 
117801 struct unix_stream_read_state {
117802 	int (*recv_actor)(struct sk_buff *, int, int, struct unix_stream_read_state *);
117803 	struct socket *socket;
117804 	struct msghdr *msg;
117805 	struct pipe_inode_info *pipe;
117806 	size_t size;
117807 	int flags;
117808 	unsigned int splice_flags;
117809 };
117810 
117811 struct bpf_unix_iter_state {
117812 	struct seq_net_private p;
117813 	unsigned int cur_sk;
117814 	unsigned int end_sk;
117815 	unsigned int max_sk;
117816 	struct sock **batch;
117817 	bool st_bucket_done;
117818 };
117819 
117820 struct bpf_iter__unix {
117821 	union {
117822 		struct bpf_iter_meta *meta;
117823 	};
117824 	union {
117825 		struct unix_sock *unix_sk;
117826 	};
117827 	uid_t uid;
117828 };
117829 
117830 enum xprt_xid_rb_cmp {
117831 	XID_RB_EQUAL = 0,
117832 	XID_RB_LEFT = 1,
117833 	XID_RB_RIGHT = 2,
117834 };
117835 
117836 struct svc_xpt_user {
117837 	struct list_head list;
117838 	void (*callback)(struct svc_xpt_user *);
117839 };
117840 
117841 struct breakpoint {
117842 	struct list_head list;
117843 	struct perf_event *bp;
117844 	bool ptrace_bp;
117845 };
117846 
117847 typedef u32 uprobe_opcode_t;
117848 
117849 struct arch_uprobe {
117850 	union {
117851 		u32 insn[2];
117852 		u32 ixol[2];
117853 	};
117854 };
117855 
117856 enum rp_check {
117857 	RP_CHECK_CALL = 0,
117858 	RP_CHECK_CHAIN_CALL = 1,
117859 	RP_CHECK_RET = 2,
117860 };
117861 
117862 struct dyn_arch_ftrace {
117863 	struct module *mod;
117864 };
117865 
117866 enum {
117867 	FTRACE_FL_ENABLED = 2147483648,
117868 	FTRACE_FL_REGS = 1073741824,
117869 	FTRACE_FL_REGS_EN = 536870912,
117870 	FTRACE_FL_TRAMP = 268435456,
117871 	FTRACE_FL_TRAMP_EN = 134217728,
117872 	FTRACE_FL_IPMODIFY = 67108864,
117873 	FTRACE_FL_DISABLED = 33554432,
117874 	FTRACE_FL_DIRECT = 16777216,
117875 	FTRACE_FL_DIRECT_EN = 8388608,
117876 };
117877 
117878 struct dyn_ftrace {
117879 	long unsigned int ip;
117880 	long unsigned int flags;
117881 	struct dyn_arch_ftrace arch;
117882 };
117883 
117884 struct mm_iommu_table_group_mem_t {
117885 	struct list_head next;
117886 	struct callback_head rcu;
117887 	long unsigned int used;
117888 	atomic64_t mapped;
117889 	unsigned int pageshift;
117890 	u64 ua;
117891 	u64 entries;
117892 	union {
117893 		struct page **hpages;
117894 		phys_addr_t *hpas;
117895 	};
117896 	u64 dev_hpa;
117897 };
117898 
117899 enum OpalHMI_Version {
117900 	OpalHMIEvt_V1 = 1,
117901 	OpalHMIEvt_V2 = 2,
117902 };
117903 
117904 enum OpalHMI_Severity {
117905 	OpalHMI_SEV_NO_ERROR = 0,
117906 	OpalHMI_SEV_WARNING = 1,
117907 	OpalHMI_SEV_ERROR_SYNC = 2,
117908 	OpalHMI_SEV_FATAL = 3,
117909 };
117910 
117911 enum OpalHMI_Disposition {
117912 	OpalHMI_DISPOSITION_RECOVERED = 0,
117913 	OpalHMI_DISPOSITION_NOT_RECOVERED = 1,
117914 };
117915 
117916 enum OpalHMI_ErrType {
117917 	OpalHMI_ERROR_MALFUNC_ALERT = 0,
117918 	OpalHMI_ERROR_PROC_RECOV_DONE = 1,
117919 	OpalHMI_ERROR_PROC_RECOV_DONE_AGAIN = 2,
117920 	OpalHMI_ERROR_PROC_RECOV_MASKED = 3,
117921 	OpalHMI_ERROR_TFAC = 4,
117922 	OpalHMI_ERROR_TFMR_PARITY = 5,
117923 	OpalHMI_ERROR_HA_OVERFLOW_WARN = 6,
117924 	OpalHMI_ERROR_XSCOM_FAIL = 7,
117925 	OpalHMI_ERROR_XSCOM_DONE = 8,
117926 	OpalHMI_ERROR_SCOM_FIR = 9,
117927 	OpalHMI_ERROR_DEBUG_TRIG_FIR = 10,
117928 	OpalHMI_ERROR_HYP_RESOURCE = 11,
117929 	OpalHMI_ERROR_CAPP_RECOVERY = 12,
117930 };
117931 
117932 enum OpalHMI_XstopType {
117933 	CHECKSTOP_TYPE_UNKNOWN = 0,
117934 	CHECKSTOP_TYPE_CORE = 1,
117935 	CHECKSTOP_TYPE_NX = 2,
117936 	CHECKSTOP_TYPE_NPU = 3,
117937 };
117938 
117939 enum OpalHMI_CoreXstopReason {
117940 	CORE_CHECKSTOP_IFU_REGFILE = 1,
117941 	CORE_CHECKSTOP_IFU_LOGIC = 2,
117942 	CORE_CHECKSTOP_PC_DURING_RECOV = 4,
117943 	CORE_CHECKSTOP_ISU_REGFILE = 8,
117944 	CORE_CHECKSTOP_ISU_LOGIC = 16,
117945 	CORE_CHECKSTOP_FXU_LOGIC = 32,
117946 	CORE_CHECKSTOP_VSU_LOGIC = 64,
117947 	CORE_CHECKSTOP_PC_RECOV_IN_MAINT_MODE = 128,
117948 	CORE_CHECKSTOP_LSU_REGFILE = 256,
117949 	CORE_CHECKSTOP_PC_FWD_PROGRESS = 512,
117950 	CORE_CHECKSTOP_LSU_LOGIC = 1024,
117951 	CORE_CHECKSTOP_PC_LOGIC = 2048,
117952 	CORE_CHECKSTOP_PC_HYP_RESOURCE = 4096,
117953 	CORE_CHECKSTOP_PC_HANG_RECOV_FAILED = 8192,
117954 	CORE_CHECKSTOP_PC_AMBI_HANG_DETECTED = 16384,
117955 	CORE_CHECKSTOP_PC_DEBUG_TRIG_ERR_INJ = 32768,
117956 	CORE_CHECKSTOP_PC_SPRD_HYP_ERR_INJ = 65536,
117957 };
117958 
117959 enum OpalHMI_NestAccelXstopReason {
117960 	NX_CHECKSTOP_SHM_INVAL_STATE_ERR = 1,
117961 	NX_CHECKSTOP_DMA_INVAL_STATE_ERR_1 = 2,
117962 	NX_CHECKSTOP_DMA_INVAL_STATE_ERR_2 = 4,
117963 	NX_CHECKSTOP_DMA_CH0_INVAL_STATE_ERR = 8,
117964 	NX_CHECKSTOP_DMA_CH1_INVAL_STATE_ERR = 16,
117965 	NX_CHECKSTOP_DMA_CH2_INVAL_STATE_ERR = 32,
117966 	NX_CHECKSTOP_DMA_CH3_INVAL_STATE_ERR = 64,
117967 	NX_CHECKSTOP_DMA_CH4_INVAL_STATE_ERR = 128,
117968 	NX_CHECKSTOP_DMA_CH5_INVAL_STATE_ERR = 256,
117969 	NX_CHECKSTOP_DMA_CH6_INVAL_STATE_ERR = 512,
117970 	NX_CHECKSTOP_DMA_CH7_INVAL_STATE_ERR = 1024,
117971 	NX_CHECKSTOP_DMA_CRB_UE = 2048,
117972 	NX_CHECKSTOP_DMA_CRB_SUE = 4096,
117973 	NX_CHECKSTOP_PBI_ISN_UE = 8192,
117974 };
117975 
117976 struct OpalHMIEvent {
117977 	uint8_t version;
117978 	uint8_t severity;
117979 	uint8_t type;
117980 	uint8_t disposition;
117981 	uint8_t reserved_1[4];
117982 	__be64 hmer;
117983 	__be64 tfmr;
117984 	union {
117985 		struct {
117986 			uint8_t xstop_type;
117987 			uint8_t reserved_1[3];
117988 			__be32 xstop_reason;
117989 			union {
117990 				__be32 pir;
117991 				__be32 chip_id;
117992 			} u;
117993 		} xstop_error;
117994 	} u;
117995 };
117996 
117997 struct OpalHmiEvtNode {
117998 	struct list_head list;
117999 	struct OpalHMIEvent hmi_evt;
118000 };
118001 
118002 struct xstop_reason {
118003 	uint32_t xstop_reason;
118004 	const char *unit_failed;
118005 	const char *description;
118006 };
118007 
118008 enum {
118009 	XIVE_DUMP_TM_HYP = 0,
118010 	XIVE_DUMP_TM_POOL = 1,
118011 	XIVE_DUMP_TM_OS = 2,
118012 	XIVE_DUMP_TM_USER = 3,
118013 	XIVE_DUMP_VP = 4,
118014 	XIVE_DUMP_EMU_STATE = 5,
118015 };
118016 
118017 struct bpt {
118018 	long unsigned int address;
118019 	u32 *instr;
118020 	atomic_t ref_count;
118021 	int enabled;
118022 	long unsigned int pad;
118023 };
118024 
118025 typedef int (*instruction_dump_func)(long unsigned int, long unsigned int);
118026 
118027 typedef long unsigned int (*callfunc_t)(long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
118028 
118029 struct sched_attr {
118030 	__u32 size;
118031 	__u32 sched_policy;
118032 	__u64 sched_flags;
118033 	__s32 sched_nice;
118034 	__u32 sched_priority;
118035 	__u64 sched_runtime;
118036 	__u64 sched_deadline;
118037 	__u64 sched_period;
118038 	__u32 sched_util_min;
118039 	__u32 sched_util_max;
118040 };
118041 
118042 struct rt_bandwidth {
118043 	raw_spinlock_t rt_runtime_lock;
118044 	ktime_t rt_period;
118045 	u64 rt_runtime;
118046 	struct hrtimer rt_period_timer;
118047 	unsigned int rt_period_active;
118048 };
118049 
118050 struct dl_bandwidth {
118051 	raw_spinlock_t dl_runtime_lock;
118052 	u64 dl_runtime;
118053 	u64 dl_period;
118054 };
118055 
118056 struct idle_timer {
118057 	struct hrtimer timer;
118058 	int done;
118059 };
118060 
118061 typedef struct rt_rq *rt_rq_iter_t;
118062 
118063 struct dma_coherent_mem {
118064 	void *virt_base;
118065 	dma_addr_t device_base;
118066 	long unsigned int pfn_base;
118067 	int size;
118068 	long unsigned int *bitmap;
118069 	spinlock_t spinlock;
118070 	bool use_dev_dma_pfn_offset;
118071 };
118072 
118073 enum ftrace_bug_type {
118074 	FTRACE_BUG_UNKNOWN = 0,
118075 	FTRACE_BUG_INIT = 1,
118076 	FTRACE_BUG_NOP = 2,
118077 	FTRACE_BUG_CALL = 3,
118078 	FTRACE_BUG_UPDATE = 4,
118079 };
118080 
118081 enum {
118082 	FTRACE_UPDATE_IGNORE = 0,
118083 	FTRACE_UPDATE_MAKE_CALL = 1,
118084 	FTRACE_UPDATE_MODIFY_CALL = 2,
118085 	FTRACE_UPDATE_MAKE_NOP = 3,
118086 };
118087 
118088 struct ftrace_mod_load {
118089 	struct list_head list;
118090 	char *func;
118091 	char *module;
118092 	int enable;
118093 };
118094 
118095 enum {
118096 	FTRACE_MODIFY_ENABLE_FL = 1,
118097 	FTRACE_MODIFY_MAY_SLEEP_FL = 2,
118098 };
118099 
118100 struct ftrace_func_probe {
118101 	struct ftrace_probe_ops *probe_ops;
118102 	struct ftrace_ops ops;
118103 	struct trace_array *tr;
118104 	struct list_head list;
118105 	void *data;
118106 	int ref;
118107 };
118108 
118109 struct ftrace_page {
118110 	struct ftrace_page *next;
118111 	struct dyn_ftrace *records;
118112 	int index;
118113 	int order;
118114 };
118115 
118116 struct ftrace_rec_iter {
118117 	struct ftrace_page *pg;
118118 	int index;
118119 };
118120 
118121 struct ftrace_iterator {
118122 	loff_t pos;
118123 	loff_t func_pos;
118124 	loff_t mod_pos;
118125 	struct ftrace_page *pg;
118126 	struct dyn_ftrace *func;
118127 	struct ftrace_func_probe *probe;
118128 	struct ftrace_func_entry *probe_entry;
118129 	struct trace_parser parser;
118130 	struct ftrace_hash *hash;
118131 	struct ftrace_ops *ops;
118132 	struct trace_array *tr;
118133 	struct list_head *mod_list;
118134 	int pidx;
118135 	int idx;
118136 	unsigned int flags;
118137 };
118138 
118139 struct ftrace_glob {
118140 	char *search;
118141 	unsigned int len;
118142 	int type;
118143 };
118144 
118145 struct ftrace_func_map {
118146 	struct ftrace_func_entry entry;
118147 	void *data;
118148 };
118149 
118150 struct ftrace_func_mapper {
118151 	struct ftrace_hash hash;
118152 };
118153 
118154 enum graph_filter_type {
118155 	GRAPH_FILTER_NOTRACE = 0,
118156 	GRAPH_FILTER_FUNCTION = 1,
118157 };
118158 
118159 struct ftrace_graph_data {
118160 	struct ftrace_hash *hash;
118161 	struct ftrace_func_entry *entry;
118162 	int idx;
118163 	enum graph_filter_type type;
118164 	struct ftrace_hash *new_hash;
118165 	const struct seq_operations *seq_ops;
118166 	struct trace_parser parser;
118167 };
118168 
118169 struct ftrace_mod_func {
118170 	struct list_head list;
118171 	char *name;
118172 	long unsigned int ip;
118173 	unsigned int size;
118174 };
118175 
118176 struct ftrace_mod_map {
118177 	struct callback_head rcu;
118178 	struct list_head list;
118179 	struct module *mod;
118180 	long unsigned int start_addr;
118181 	long unsigned int end_addr;
118182 	struct list_head funcs;
118183 	unsigned int num_funcs;
118184 };
118185 
118186 struct ftrace_init_func {
118187 	struct list_head list;
118188 	long unsigned int ip;
118189 };
118190 
118191 struct kallsyms_data {
118192 	long unsigned int *addrs;
118193 	const char **syms;
118194 	size_t cnt;
118195 	size_t found;
118196 };
118197 
118198 struct eprobe_trace_entry_head {
118199 	struct trace_entry ent;
118200 };
118201 
118202 enum {
118203 	EVENT_TRIGGER_FL_PROBE = 1,
118204 };
118205 
118206 struct event_trigger_ops;
118207 
118208 struct event_command;
118209 
118210 struct event_trigger_data {
118211 	long unsigned int count;
118212 	int ref;
118213 	int flags;
118214 	struct event_trigger_ops *ops;
118215 	struct event_command *cmd_ops;
118216 	struct event_filter *filter;
118217 	char *filter_str;
118218 	void *private_data;
118219 	bool paused;
118220 	bool paused_tmp;
118221 	struct list_head list;
118222 	char *name;
118223 	struct list_head named_list;
118224 	struct event_trigger_data *named_data;
118225 };
118226 
118227 struct event_trigger_ops {
118228 	void (*trigger)(struct event_trigger_data *, struct trace_buffer *, void *, struct ring_buffer_event *);
118229 	int (*init)(struct event_trigger_data *);
118230 	void (*free)(struct event_trigger_data *);
118231 	int (*print)(struct seq_file *, struct event_trigger_data *);
118232 };
118233 
118234 struct event_command {
118235 	struct list_head list;
118236 	char *name;
118237 	enum event_trigger_type trigger_type;
118238 	int flags;
118239 	int (*parse)(struct event_command *, struct trace_event_file *, char *, char *, char *);
118240 	int (*reg)(char *, struct event_trigger_data *, struct trace_event_file *);
118241 	void (*unreg)(char *, struct event_trigger_data *, struct trace_event_file *);
118242 	void (*unreg_all)(struct trace_event_file *);
118243 	int (*set_filter)(char *, struct event_trigger_data *, struct trace_event_file *);
118244 	struct event_trigger_ops * (*get_trigger_ops)(char *, char *);
118245 };
118246 
118247 enum event_command_flags {
118248 	EVENT_CMD_FL_POST_TRIGGER = 1,
118249 	EVENT_CMD_FL_NEEDS_REC = 2,
118250 };
118251 
118252 struct trace_eprobe {
118253 	const char *event_system;
118254 	const char *event_name;
118255 	struct trace_event_call *event;
118256 	struct dyn_event devent;
118257 	struct trace_probe tp;
118258 };
118259 
118260 struct eprobe_data {
118261 	struct trace_event_file *file;
118262 	struct trace_eprobe *ep;
118263 };
118264 
118265 struct bpf_iter_target_info {
118266 	struct list_head list;
118267 	const struct bpf_iter_reg *reg_info;
118268 	u32 btf_id;
118269 };
118270 
118271 struct bpf_iter_link {
118272 	struct bpf_link link;
118273 	struct bpf_iter_aux_info aux;
118274 	struct bpf_iter_target_info *tinfo;
118275 };
118276 
118277 struct bpf_iter_priv_data {
118278 	struct bpf_iter_target_info *tinfo;
118279 	const struct bpf_iter_seq_info *seq_info;
118280 	struct bpf_prog *prog;
118281 	u64 session_id;
118282 	u64 seq_num;
118283 	bool done_stop;
118284 	long: 0;
118285 	u8 target_private[0];
118286 };
118287 
118288 typedef u64 (*btf_bpf_for_each_map_elem)(struct bpf_map *, void *, void *, u64);
118289 
118290 typedef u64 (*btf_bpf_loop)(u32, void *, void *, u64);
118291 
118292 struct uprobe {
118293 	struct rb_node rb_node;
118294 	refcount_t ref;
118295 	struct rw_semaphore register_rwsem;
118296 	struct rw_semaphore consumer_rwsem;
118297 	struct list_head pending_list;
118298 	struct uprobe_consumer *consumers;
118299 	struct inode *inode;
118300 	loff_t offset;
118301 	loff_t ref_ctr_offset;
118302 	long unsigned int flags;
118303 	struct arch_uprobe arch;
118304 };
118305 
118306 struct xol_area {
118307 	wait_queue_head_t wq;
118308 	atomic_t slot_count;
118309 	long unsigned int *bitmap;
118310 	struct vm_special_mapping xol_mapping;
118311 	struct page *pages[2];
118312 	long unsigned int vaddr;
118313 };
118314 
118315 struct delayed_uprobe {
118316 	struct list_head list;
118317 	struct uprobe *uprobe;
118318 	struct mm_struct *mm;
118319 };
118320 
118321 struct __uprobe_key {
118322 	struct inode *inode;
118323 	loff_t offset;
118324 };
118325 
118326 struct map_info___2 {
118327 	struct map_info___2 *next;
118328 	struct mm_struct *mm;
118329 	long unsigned int vaddr;
118330 };
118331 
118332 struct contig_page_info {
118333 	long unsigned int free_pages;
118334 	long unsigned int free_blocks_total;
118335 	long unsigned int free_blocks_suitable;
118336 };
118337 
118338 struct mlock_pvec {
118339 	local_lock_t lock;
118340 	struct pagevec vec;
118341 };
118342 
118343 struct madvise_walk_private {
118344 	struct mmu_gather *tlb;
118345 	bool pageout;
118346 };
118347 
118348 struct trace_event_raw_cma_alloc_class {
118349 	struct trace_entry ent;
118350 	u32 __data_loc_name;
118351 	long unsigned int pfn;
118352 	const struct page *page;
118353 	long unsigned int count;
118354 	unsigned int align;
118355 	char __data[0];
118356 };
118357 
118358 struct trace_event_raw_cma_release {
118359 	struct trace_entry ent;
118360 	u32 __data_loc_name;
118361 	long unsigned int pfn;
118362 	const struct page *page;
118363 	long unsigned int count;
118364 	char __data[0];
118365 };
118366 
118367 struct trace_event_raw_cma_alloc_start {
118368 	struct trace_entry ent;
118369 	u32 __data_loc_name;
118370 	long unsigned int count;
118371 	unsigned int align;
118372 	char __data[0];
118373 };
118374 
118375 struct trace_event_data_offsets_cma_alloc_class {
118376 	u32 name;
118377 };
118378 
118379 struct trace_event_data_offsets_cma_release {
118380 	u32 name;
118381 };
118382 
118383 struct trace_event_data_offsets_cma_alloc_start {
118384 	u32 name;
118385 };
118386 
118387 typedef void (*btf_trace_cma_release)(void *, const char *, long unsigned int, const struct page *, long unsigned int);
118388 
118389 typedef void (*btf_trace_cma_alloc_start)(void *, const char *, long unsigned int, unsigned int);
118390 
118391 typedef void (*btf_trace_cma_alloc_finish)(void *, const char *, long unsigned int, const struct page *, long unsigned int, unsigned int);
118392 
118393 typedef void (*btf_trace_cma_alloc_busy_retry)(void *, const char *, long unsigned int, const struct page *, long unsigned int, unsigned int);
118394 
118395 struct cma {
118396 	long unsigned int base_pfn;
118397 	long unsigned int count;
118398 	long unsigned int *bitmap;
118399 	unsigned int order_per_bit;
118400 	spinlock_t lock;
118401 	char name[64];
118402 	bool reserve_pages_on_error;
118403 };
118404 
118405 typedef int __kernel_daddr_t;
118406 
118407 struct ustat {
118408 	__kernel_daddr_t f_tfree;
118409 	long unsigned int f_tinode;
118410 	char f_fname[6];
118411 	char f_fpack[6];
118412 };
118413 
118414 struct statfs {
118415 	__kernel_long_t f_type;
118416 	__kernel_long_t f_bsize;
118417 	__kernel_long_t f_blocks;
118418 	__kernel_long_t f_bfree;
118419 	__kernel_long_t f_bavail;
118420 	__kernel_long_t f_files;
118421 	__kernel_long_t f_ffree;
118422 	__kernel_fsid_t f_fsid;
118423 	__kernel_long_t f_namelen;
118424 	__kernel_long_t f_frsize;
118425 	__kernel_long_t f_flags;
118426 	__kernel_long_t f_spare[4];
118427 };
118428 
118429 struct statfs64 {
118430 	__kernel_long_t f_type;
118431 	__kernel_long_t f_bsize;
118432 	__u64 f_blocks;
118433 	__u64 f_bfree;
118434 	__u64 f_bavail;
118435 	__u64 f_files;
118436 	__u64 f_ffree;
118437 	__kernel_fsid_t f_fsid;
118438 	__kernel_long_t f_namelen;
118439 	__kernel_long_t f_frsize;
118440 	__kernel_long_t f_flags;
118441 	__kernel_long_t f_spare[4];
118442 };
118443 
118444 struct proc_fs_opts {
118445 	int flag;
118446 	const char *str;
118447 };
118448 
118449 struct nfsacl_encode_desc {
118450 	struct xdr_array2_desc desc;
118451 	unsigned int count;
118452 	struct posix_acl *acl;
118453 	int typeflag;
118454 	kuid_t uid;
118455 	kgid_t gid;
118456 };
118457 
118458 struct nfsacl_simple_acl {
118459 	struct posix_acl acl;
118460 	struct posix_acl_entry ace[4];
118461 };
118462 
118463 struct nfsacl_decode_desc {
118464 	struct xdr_array2_desc desc;
118465 	unsigned int count;
118466 	struct posix_acl *acl;
118467 };
118468 
118469 struct iomap_swapfile_info {
118470 	struct iomap iomap;
118471 	struct swap_info_struct *sis;
118472 	uint64_t lowest_ppage;
118473 	uint64_t highest_ppage;
118474 	long unsigned int nr_pages;
118475 	int nr_extents;
118476 	struct file *file;
118477 };
118478 
118479 struct ext4_extent_idx {
118480 	__le32 ei_block;
118481 	__le32 ei_leaf_lo;
118482 	__le16 ei_leaf_hi;
118483 	__u16 ei_unused;
118484 };
118485 
118486 struct ext4_extent_header {
118487 	__le16 eh_magic;
118488 	__le16 eh_entries;
118489 	__le16 eh_max;
118490 	__le16 eh_depth;
118491 	__le32 eh_generation;
118492 };
118493 
118494 struct ext4_ext_path {
118495 	ext4_fsblk_t p_block;
118496 	__u16 p_depth;
118497 	__u16 p_maxdepth;
118498 	struct ext4_extent *p_ext;
118499 	struct ext4_extent_idx *p_idx;
118500 	struct ext4_extent_header *p_hdr;
118501 	struct buffer_head *p_bh;
118502 };
118503 
118504 struct migrate_struct {
118505 	ext4_lblk_t first_block;
118506 	ext4_lblk_t last_block;
118507 	ext4_lblk_t curr_block;
118508 	ext4_fsblk_t first_pblock;
118509 	ext4_fsblk_t last_pblock;
118510 };
118511 
118512 struct ext4_fc_tl {
118513 	__le16 fc_tag;
118514 	__le16 fc_len;
118515 };
118516 
118517 struct ext4_fc_head {
118518 	__le32 fc_features;
118519 	__le32 fc_tid;
118520 };
118521 
118522 struct ext4_fc_add_range {
118523 	__le32 fc_ino;
118524 	__u8 fc_ex[12];
118525 };
118526 
118527 struct ext4_fc_del_range {
118528 	__le32 fc_ino;
118529 	__le32 fc_lblk;
118530 	__le32 fc_len;
118531 };
118532 
118533 struct ext4_fc_dentry_info {
118534 	__le32 fc_parent_ino;
118535 	__le32 fc_ino;
118536 	__u8 fc_dname[0];
118537 };
118538 
118539 struct ext4_fc_inode {
118540 	__le32 fc_ino;
118541 	__u8 fc_raw_inode[0];
118542 };
118543 
118544 struct ext4_fc_tail {
118545 	__le32 fc_tid;
118546 	__le32 fc_crc;
118547 };
118548 
118549 enum {
118550 	EXT4_FC_STATUS_OK = 0,
118551 	EXT4_FC_STATUS_INELIGIBLE = 1,
118552 	EXT4_FC_STATUS_SKIPPED = 2,
118553 	EXT4_FC_STATUS_FAILED = 3,
118554 };
118555 
118556 struct ext4_fc_dentry_update {
118557 	int fcd_op;
118558 	int fcd_parent;
118559 	int fcd_ino;
118560 	struct qstr fcd_name;
118561 	unsigned char fcd_iname[32];
118562 	struct list_head fcd_list;
118563 	struct list_head fcd_dilist;
118564 };
118565 
118566 struct __track_dentry_update_args {
118567 	struct dentry *dentry;
118568 	int op;
118569 };
118570 
118571 struct __track_range_args {
118572 	ext4_lblk_t start;
118573 	ext4_lblk_t end;
118574 };
118575 
118576 struct dentry_info_args {
118577 	int parent_ino;
118578 	int dname_len;
118579 	int ino;
118580 	int inode_len;
118581 	char *dname;
118582 };
118583 
118584 struct ramfs_mount_opts {
118585 	umode_t mode;
118586 };
118587 
118588 struct ramfs_fs_info {
118589 	struct ramfs_mount_opts mount_opts;
118590 };
118591 
118592 enum ramfs_param {
118593 	Opt_mode___5 = 0,
118594 };
118595 
118596 struct trace_event_raw_nfs4_clientid_event {
118597 	struct trace_entry ent;
118598 	u32 __data_loc_dstaddr;
118599 	long unsigned int error;
118600 	char __data[0];
118601 };
118602 
118603 struct trace_event_raw_nfs4_setup_sequence {
118604 	struct trace_entry ent;
118605 	unsigned int session;
118606 	unsigned int slot_nr;
118607 	unsigned int seq_nr;
118608 	unsigned int highest_used_slotid;
118609 	char __data[0];
118610 };
118611 
118612 struct trace_event_raw_nfs4_state_mgr {
118613 	struct trace_entry ent;
118614 	long unsigned int state;
118615 	u32 __data_loc_hostname;
118616 	char __data[0];
118617 };
118618 
118619 struct trace_event_raw_nfs4_state_mgr_failed {
118620 	struct trace_entry ent;
118621 	long unsigned int error;
118622 	long unsigned int state;
118623 	u32 __data_loc_hostname;
118624 	u32 __data_loc_section;
118625 	char __data[0];
118626 };
118627 
118628 struct trace_event_raw_nfs4_xdr_bad_operation {
118629 	struct trace_entry ent;
118630 	unsigned int task_id;
118631 	unsigned int client_id;
118632 	u32 xid;
118633 	u32 op;
118634 	u32 expected;
118635 	char __data[0];
118636 };
118637 
118638 struct trace_event_raw_nfs4_xdr_event {
118639 	struct trace_entry ent;
118640 	unsigned int task_id;
118641 	unsigned int client_id;
118642 	u32 xid;
118643 	u32 op;
118644 	long unsigned int error;
118645 	char __data[0];
118646 };
118647 
118648 struct trace_event_raw_nfs4_cb_error_class {
118649 	struct trace_entry ent;
118650 	u32 xid;
118651 	u32 cbident;
118652 	char __data[0];
118653 };
118654 
118655 struct trace_event_raw_nfs4_open_event {
118656 	struct trace_entry ent;
118657 	long unsigned int error;
118658 	long unsigned int flags;
118659 	long unsigned int fmode;
118660 	dev_t dev;
118661 	u32 fhandle;
118662 	u64 fileid;
118663 	u64 dir;
118664 	u32 __data_loc_name;
118665 	int stateid_seq;
118666 	u32 stateid_hash;
118667 	int openstateid_seq;
118668 	u32 openstateid_hash;
118669 	char __data[0];
118670 };
118671 
118672 struct trace_event_raw_nfs4_cached_open {
118673 	struct trace_entry ent;
118674 	dev_t dev;
118675 	u32 fhandle;
118676 	u64 fileid;
118677 	unsigned int fmode;
118678 	int stateid_seq;
118679 	u32 stateid_hash;
118680 	char __data[0];
118681 };
118682 
118683 struct trace_event_raw_nfs4_close {
118684 	struct trace_entry ent;
118685 	dev_t dev;
118686 	u32 fhandle;
118687 	u64 fileid;
118688 	unsigned int fmode;
118689 	long unsigned int error;
118690 	int stateid_seq;
118691 	u32 stateid_hash;
118692 	char __data[0];
118693 };
118694 
118695 struct trace_event_raw_nfs4_lock_event {
118696 	struct trace_entry ent;
118697 	long unsigned int error;
118698 	long unsigned int cmd;
118699 	long unsigned int type;
118700 	loff_t start;
118701 	loff_t end;
118702 	dev_t dev;
118703 	u32 fhandle;
118704 	u64 fileid;
118705 	int stateid_seq;
118706 	u32 stateid_hash;
118707 	char __data[0];
118708 };
118709 
118710 struct trace_event_raw_nfs4_set_lock {
118711 	struct trace_entry ent;
118712 	long unsigned int error;
118713 	long unsigned int cmd;
118714 	long unsigned int type;
118715 	loff_t start;
118716 	loff_t end;
118717 	dev_t dev;
118718 	u32 fhandle;
118719 	u64 fileid;
118720 	int stateid_seq;
118721 	u32 stateid_hash;
118722 	int lockstateid_seq;
118723 	u32 lockstateid_hash;
118724 	char __data[0];
118725 };
118726 
118727 struct trace_event_raw_nfs4_state_lock_reclaim {
118728 	struct trace_entry ent;
118729 	dev_t dev;
118730 	u32 fhandle;
118731 	u64 fileid;
118732 	long unsigned int state_flags;
118733 	long unsigned int lock_flags;
118734 	int stateid_seq;
118735 	u32 stateid_hash;
118736 	char __data[0];
118737 };
118738 
118739 struct trace_event_raw_nfs4_set_delegation_event {
118740 	struct trace_entry ent;
118741 	dev_t dev;
118742 	u32 fhandle;
118743 	u64 fileid;
118744 	unsigned int fmode;
118745 	char __data[0];
118746 };
118747 
118748 struct trace_event_raw_nfs4_delegreturn_exit {
118749 	struct trace_entry ent;
118750 	dev_t dev;
118751 	u32 fhandle;
118752 	long unsigned int error;
118753 	int stateid_seq;
118754 	u32 stateid_hash;
118755 	char __data[0];
118756 };
118757 
118758 struct trace_event_raw_nfs4_lookup_event {
118759 	struct trace_entry ent;
118760 	dev_t dev;
118761 	long unsigned int error;
118762 	u64 dir;
118763 	u32 __data_loc_name;
118764 	char __data[0];
118765 };
118766 
118767 struct trace_event_raw_nfs4_lookupp {
118768 	struct trace_entry ent;
118769 	dev_t dev;
118770 	u64 ino;
118771 	long unsigned int error;
118772 	char __data[0];
118773 };
118774 
118775 struct trace_event_raw_nfs4_rename {
118776 	struct trace_entry ent;
118777 	dev_t dev;
118778 	long unsigned int error;
118779 	u64 olddir;
118780 	u32 __data_loc_oldname;
118781 	u64 newdir;
118782 	u32 __data_loc_newname;
118783 	char __data[0];
118784 };
118785 
118786 struct trace_event_raw_nfs4_inode_event {
118787 	struct trace_entry ent;
118788 	dev_t dev;
118789 	u32 fhandle;
118790 	u64 fileid;
118791 	long unsigned int error;
118792 	char __data[0];
118793 };
118794 
118795 struct trace_event_raw_nfs4_inode_stateid_event {
118796 	struct trace_entry ent;
118797 	dev_t dev;
118798 	u32 fhandle;
118799 	u64 fileid;
118800 	long unsigned int error;
118801 	int stateid_seq;
118802 	u32 stateid_hash;
118803 	char __data[0];
118804 };
118805 
118806 struct trace_event_raw_nfs4_getattr_event {
118807 	struct trace_entry ent;
118808 	dev_t dev;
118809 	u32 fhandle;
118810 	u64 fileid;
118811 	unsigned int valid;
118812 	long unsigned int error;
118813 	char __data[0];
118814 };
118815 
118816 struct trace_event_raw_nfs4_inode_callback_event {
118817 	struct trace_entry ent;
118818 	long unsigned int error;
118819 	dev_t dev;
118820 	u32 fhandle;
118821 	u64 fileid;
118822 	u32 __data_loc_dstaddr;
118823 	char __data[0];
118824 };
118825 
118826 struct trace_event_raw_nfs4_inode_stateid_callback_event {
118827 	struct trace_entry ent;
118828 	long unsigned int error;
118829 	dev_t dev;
118830 	u32 fhandle;
118831 	u64 fileid;
118832 	u32 __data_loc_dstaddr;
118833 	int stateid_seq;
118834 	u32 stateid_hash;
118835 	char __data[0];
118836 };
118837 
118838 struct trace_event_raw_nfs4_idmap_event {
118839 	struct trace_entry ent;
118840 	long unsigned int error;
118841 	u32 id;
118842 	u32 __data_loc_name;
118843 	char __data[0];
118844 };
118845 
118846 struct trace_event_raw_nfs4_read_event {
118847 	struct trace_entry ent;
118848 	dev_t dev;
118849 	u32 fhandle;
118850 	u64 fileid;
118851 	loff_t offset;
118852 	u32 arg_count;
118853 	u32 res_count;
118854 	long unsigned int error;
118855 	int stateid_seq;
118856 	u32 stateid_hash;
118857 	int layoutstateid_seq;
118858 	u32 layoutstateid_hash;
118859 	char __data[0];
118860 };
118861 
118862 struct trace_event_raw_nfs4_write_event {
118863 	struct trace_entry ent;
118864 	dev_t dev;
118865 	u32 fhandle;
118866 	u64 fileid;
118867 	loff_t offset;
118868 	u32 arg_count;
118869 	u32 res_count;
118870 	long unsigned int error;
118871 	int stateid_seq;
118872 	u32 stateid_hash;
118873 	int layoutstateid_seq;
118874 	u32 layoutstateid_hash;
118875 	char __data[0];
118876 };
118877 
118878 struct trace_event_raw_nfs4_commit_event {
118879 	struct trace_entry ent;
118880 	dev_t dev;
118881 	u32 fhandle;
118882 	u64 fileid;
118883 	long unsigned int error;
118884 	loff_t offset;
118885 	u32 count;
118886 	int layoutstateid_seq;
118887 	u32 layoutstateid_hash;
118888 	char __data[0];
118889 };
118890 
118891 struct trace_event_data_offsets_nfs4_clientid_event {
118892 	u32 dstaddr;
118893 };
118894 
118895 struct trace_event_data_offsets_nfs4_setup_sequence {};
118896 
118897 struct trace_event_data_offsets_nfs4_state_mgr {
118898 	u32 hostname;
118899 };
118900 
118901 struct trace_event_data_offsets_nfs4_state_mgr_failed {
118902 	u32 hostname;
118903 	u32 section;
118904 };
118905 
118906 struct trace_event_data_offsets_nfs4_xdr_bad_operation {};
118907 
118908 struct trace_event_data_offsets_nfs4_xdr_event {};
118909 
118910 struct trace_event_data_offsets_nfs4_cb_error_class {};
118911 
118912 struct trace_event_data_offsets_nfs4_open_event {
118913 	u32 name;
118914 };
118915 
118916 struct trace_event_data_offsets_nfs4_cached_open {};
118917 
118918 struct trace_event_data_offsets_nfs4_close {};
118919 
118920 struct trace_event_data_offsets_nfs4_lock_event {};
118921 
118922 struct trace_event_data_offsets_nfs4_set_lock {};
118923 
118924 struct trace_event_data_offsets_nfs4_state_lock_reclaim {};
118925 
118926 struct trace_event_data_offsets_nfs4_set_delegation_event {};
118927 
118928 struct trace_event_data_offsets_nfs4_delegreturn_exit {};
118929 
118930 struct trace_event_data_offsets_nfs4_lookup_event {
118931 	u32 name;
118932 };
118933 
118934 struct trace_event_data_offsets_nfs4_lookupp {};
118935 
118936 struct trace_event_data_offsets_nfs4_rename {
118937 	u32 oldname;
118938 	u32 newname;
118939 };
118940 
118941 struct trace_event_data_offsets_nfs4_inode_event {};
118942 
118943 struct trace_event_data_offsets_nfs4_inode_stateid_event {};
118944 
118945 struct trace_event_data_offsets_nfs4_getattr_event {};
118946 
118947 struct trace_event_data_offsets_nfs4_inode_callback_event {
118948 	u32 dstaddr;
118949 };
118950 
118951 struct trace_event_data_offsets_nfs4_inode_stateid_callback_event {
118952 	u32 dstaddr;
118953 };
118954 
118955 struct trace_event_data_offsets_nfs4_idmap_event {
118956 	u32 name;
118957 };
118958 
118959 struct trace_event_data_offsets_nfs4_read_event {};
118960 
118961 struct trace_event_data_offsets_nfs4_write_event {};
118962 
118963 struct trace_event_data_offsets_nfs4_commit_event {};
118964 
118965 typedef void (*btf_trace_nfs4_setclientid)(void *, const struct nfs_client *, int);
118966 
118967 typedef void (*btf_trace_nfs4_setclientid_confirm)(void *, const struct nfs_client *, int);
118968 
118969 typedef void (*btf_trace_nfs4_renew)(void *, const struct nfs_client *, int);
118970 
118971 typedef void (*btf_trace_nfs4_renew_async)(void *, const struct nfs_client *, int);
118972 
118973 typedef void (*btf_trace_nfs4_setup_sequence)(void *, const struct nfs4_session *, const struct nfs4_sequence_args *);
118974 
118975 typedef void (*btf_trace_nfs4_state_mgr)(void *, const struct nfs_client *);
118976 
118977 typedef void (*btf_trace_nfs4_state_mgr_failed)(void *, const struct nfs_client *, const char *, int);
118978 
118979 typedef void (*btf_trace_nfs4_xdr_bad_operation)(void *, const struct xdr_stream *, u32, u32);
118980 
118981 typedef void (*btf_trace_nfs4_xdr_status)(void *, const struct xdr_stream *, u32, u32);
118982 
118983 typedef void (*btf_trace_nfs4_xdr_bad_filehandle)(void *, const struct xdr_stream *, u32, u32);
118984 
118985 typedef void (*btf_trace_nfs_cb_no_clp)(void *, __be32, u32);
118986 
118987 typedef void (*btf_trace_nfs_cb_badprinc)(void *, __be32, u32);
118988 
118989 typedef void (*btf_trace_nfs4_open_reclaim)(void *, const struct nfs_open_context *, int, int);
118990 
118991 typedef void (*btf_trace_nfs4_open_expired)(void *, const struct nfs_open_context *, int, int);
118992 
118993 typedef void (*btf_trace_nfs4_open_file)(void *, const struct nfs_open_context *, int, int);
118994 
118995 typedef void (*btf_trace_nfs4_cached_open)(void *, const struct nfs4_state *);
118996 
118997 typedef void (*btf_trace_nfs4_close)(void *, const struct nfs4_state *, const struct nfs_closeargs *, const struct nfs_closeres *, int);
118998 
118999 typedef void (*btf_trace_nfs4_get_lock)(void *, const struct file_lock *, const struct nfs4_state *, int, int);
119000 
119001 typedef void (*btf_trace_nfs4_unlock)(void *, const struct file_lock *, const struct nfs4_state *, int, int);
119002 
119003 typedef void (*btf_trace_nfs4_set_lock)(void *, const struct file_lock *, const struct nfs4_state *, const nfs4_stateid *, int, int);
119004 
119005 typedef void (*btf_trace_nfs4_state_lock_reclaim)(void *, const struct nfs4_state *, const struct nfs4_lock_state *);
119006 
119007 typedef void (*btf_trace_nfs4_set_delegation)(void *, const struct inode *, fmode_t);
119008 
119009 typedef void (*btf_trace_nfs4_reclaim_delegation)(void *, const struct inode *, fmode_t);
119010 
119011 typedef void (*btf_trace_nfs4_delegreturn_exit)(void *, const struct nfs4_delegreturnargs *, const struct nfs4_delegreturnres *, int);
119012 
119013 typedef void (*btf_trace_nfs4_lookup)(void *, const struct inode *, const struct qstr *, int);
119014 
119015 typedef void (*btf_trace_nfs4_symlink)(void *, const struct inode *, const struct qstr *, int);
119016 
119017 typedef void (*btf_trace_nfs4_mkdir)(void *, const struct inode *, const struct qstr *, int);
119018 
119019 typedef void (*btf_trace_nfs4_mknod)(void *, const struct inode *, const struct qstr *, int);
119020 
119021 typedef void (*btf_trace_nfs4_remove)(void *, const struct inode *, const struct qstr *, int);
119022 
119023 typedef void (*btf_trace_nfs4_get_fs_locations)(void *, const struct inode *, const struct qstr *, int);
119024 
119025 typedef void (*btf_trace_nfs4_secinfo)(void *, const struct inode *, const struct qstr *, int);
119026 
119027 typedef void (*btf_trace_nfs4_lookupp)(void *, const struct inode *, int);
119028 
119029 typedef void (*btf_trace_nfs4_rename)(void *, const struct inode *, const struct qstr *, const struct inode *, const struct qstr *, int);
119030 
119031 typedef void (*btf_trace_nfs4_access)(void *, const struct inode *, int);
119032 
119033 typedef void (*btf_trace_nfs4_readlink)(void *, const struct inode *, int);
119034 
119035 typedef void (*btf_trace_nfs4_readdir)(void *, const struct inode *, int);
119036 
119037 typedef void (*btf_trace_nfs4_get_acl)(void *, const struct inode *, int);
119038 
119039 typedef void (*btf_trace_nfs4_set_acl)(void *, const struct inode *, int);
119040 
119041 typedef void (*btf_trace_nfs4_setattr)(void *, const struct inode *, const nfs4_stateid *, int);
119042 
119043 typedef void (*btf_trace_nfs4_delegreturn)(void *, const struct inode *, const nfs4_stateid *, int);
119044 
119045 typedef void (*btf_trace_nfs4_open_stateid_update)(void *, const struct inode *, const nfs4_stateid *, int);
119046 
119047 typedef void (*btf_trace_nfs4_open_stateid_update_wait)(void *, const struct inode *, const nfs4_stateid *, int);
119048 
119049 typedef void (*btf_trace_nfs4_close_stateid_update_wait)(void *, const struct inode *, const nfs4_stateid *, int);
119050 
119051 typedef void (*btf_trace_nfs4_getattr)(void *, const struct nfs_server *, const struct nfs_fh *, const struct nfs_fattr *, int);
119052 
119053 typedef void (*btf_trace_nfs4_lookup_root)(void *, const struct nfs_server *, const struct nfs_fh *, const struct nfs_fattr *, int);
119054 
119055 typedef void (*btf_trace_nfs4_fsinfo)(void *, const struct nfs_server *, const struct nfs_fh *, const struct nfs_fattr *, int);
119056 
119057 typedef void (*btf_trace_nfs4_cb_getattr)(void *, const struct nfs_client *, const struct nfs_fh *, const struct inode *, int);
119058 
119059 typedef void (*btf_trace_nfs4_cb_recall)(void *, const struct nfs_client *, const struct nfs_fh *, const struct inode *, const nfs4_stateid *, int);
119060 
119061 typedef void (*btf_trace_nfs4_cb_layoutrecall_file)(void *, const struct nfs_client *, const struct nfs_fh *, const struct inode *, const nfs4_stateid *, int);
119062 
119063 typedef void (*btf_trace_nfs4_map_name_to_uid)(void *, const char *, int, u32, int);
119064 
119065 typedef void (*btf_trace_nfs4_map_group_to_gid)(void *, const char *, int, u32, int);
119066 
119067 typedef void (*btf_trace_nfs4_map_uid_to_name)(void *, const char *, int, u32, int);
119068 
119069 typedef void (*btf_trace_nfs4_map_gid_to_group)(void *, const char *, int, u32, int);
119070 
119071 typedef void (*btf_trace_nfs4_read)(void *, const struct nfs_pgio_header *, int);
119072 
119073 typedef void (*btf_trace_nfs4_write)(void *, const struct nfs_pgio_header *, int);
119074 
119075 typedef void (*btf_trace_nfs4_commit)(void *, const struct nfs_commit_data *, int);
119076 
119077 typedef int (*xfs_btree_visit_blocks_fn)(struct xfs_btree_cur *, int, void *);
119078 
119079 struct xfs_btree_split_args {
119080 	struct xfs_btree_cur *cur;
119081 	int level;
119082 	union xfs_btree_ptr *ptrp;
119083 	union xfs_btree_key *key;
119084 	struct xfs_btree_cur **curp;
119085 	int *stat;
119086 	int result;
119087 	bool kswapd;
119088 	struct completion *done;
119089 	struct work_struct work;
119090 };
119091 
119092 struct xfs_btree_block_change_owner_info {
119093 	uint64_t new_owner;
119094 	struct list_head *buffer_list;
119095 };
119096 
119097 enum xfs_refc_adjust_op {
119098 	XFS_REFCOUNT_ADJUST_INCREASE = 1,
119099 	XFS_REFCOUNT_ADJUST_DECREASE = -1,
119100 	XFS_REFCOUNT_ADJUST_COW_ALLOC = 0,
119101 	XFS_REFCOUNT_ADJUST_COW_FREE = -1,
119102 };
119103 
119104 struct xfs_refcount_recovery {
119105 	struct list_head rr_list;
119106 	struct xfs_refcount_irec rr_rrec;
119107 };
119108 
119109 struct xfs_bstat_chunk {
119110 	bulkstat_one_fmt_pf formatter;
119111 	struct xfs_ibulk *breq;
119112 	struct xfs_bulkstat *buf;
119113 };
119114 
119115 struct xfs_inumbers_chunk {
119116 	inumbers_fmt_pf formatter;
119117 	struct xfs_ibulk *breq;
119118 };
119119 
119120 struct crypto_comp {
119121 	struct crypto_tfm base;
119122 };
119123 
119124 struct hash_alg_common {
119125 	unsigned int digestsize;
119126 	unsigned int statesize;
119127 	struct crypto_alg base;
119128 };
119129 
119130 struct ahash_alg {
119131 	int (*init)(struct ahash_request *);
119132 	int (*update)(struct ahash_request *);
119133 	int (*final)(struct ahash_request *);
119134 	int (*finup)(struct ahash_request *);
119135 	int (*digest)(struct ahash_request *);
119136 	int (*export)(struct ahash_request *, void *);
119137 	int (*import)(struct ahash_request *, const void *);
119138 	int (*setkey)(struct crypto_ahash *, const u8 *, unsigned int);
119139 	int (*init_tfm)(struct crypto_ahash *);
119140 	void (*exit_tfm)(struct crypto_ahash *);
119141 	struct hash_alg_common halg;
119142 };
119143 
119144 struct ahash_instance {
119145 	void (*free)(struct ahash_instance *);
119146 	union {
119147 		struct {
119148 			char head[88];
119149 			struct crypto_instance base;
119150 		} s;
119151 		struct ahash_alg alg;
119152 	};
119153 };
119154 
119155 struct crypto_ahash_spawn {
119156 	struct crypto_spawn base;
119157 };
119158 
119159 struct ahash_request_priv {
119160 	crypto_completion_t complete;
119161 	void *data;
119162 	u8 *result;
119163 	u32 flags;
119164 	void *ubuf[0];
119165 };
119166 
119167 struct bio_alloc_cache {
119168 	struct bio *free_list;
119169 	unsigned int nr;
119170 };
119171 
119172 struct biovec_slab {
119173 	int nr_vecs;
119174 	char *name;
119175 	struct kmem_cache *slab;
119176 };
119177 
119178 struct bio_slab {
119179 	struct kmem_cache *slab;
119180 	unsigned int slab_ref;
119181 	unsigned int slab_size;
119182 	char name[8];
119183 };
119184 
119185 struct rq_wait {
119186 	wait_queue_head_t wait;
119187 	atomic_t inflight;
119188 };
119189 
119190 struct rq_depth {
119191 	unsigned int max_depth;
119192 	int scale_step;
119193 	bool scaled_max;
119194 	unsigned int queue_depth;
119195 	unsigned int default_depth;
119196 };
119197 
119198 typedef bool acquire_inflight_cb_t(struct rq_wait *, void *);
119199 
119200 typedef void cleanup_cb_t(struct rq_wait *, void *);
119201 
119202 struct rq_qos_wait_data {
119203 	struct wait_queue_entry wq;
119204 	struct task_struct *task;
119205 	struct rq_wait *rqw;
119206 	acquire_inflight_cb_t *cb;
119207 	void *private_data;
119208 	bool got_token;
119209 };
119210 
119211 struct io_uring_probe_op {
119212 	__u8 op;
119213 	__u8 resv;
119214 	__u16 flags;
119215 	__u32 resv2;
119216 };
119217 
119218 struct io_uring_probe {
119219 	__u8 last_op;
119220 	__u8 ops_len;
119221 	__u16 resv;
119222 	__u32 resv2[3];
119223 	struct io_uring_probe_op ops[0];
119224 };
119225 
119226 struct io_uring_restriction {
119227 	__u16 opcode;
119228 	union {
119229 		__u8 register_op;
119230 		__u8 sqe_op;
119231 		__u8 sqe_flags;
119232 	};
119233 	__u8 resv;
119234 	__u32 resv2[3];
119235 };
119236 
119237 enum {
119238 	IORING_RESTRICTION_REGISTER_OP = 0,
119239 	IORING_RESTRICTION_SQE_OP = 1,
119240 	IORING_RESTRICTION_SQE_FLAGS_ALLOWED = 2,
119241 	IORING_RESTRICTION_SQE_FLAGS_REQUIRED = 3,
119242 	IORING_RESTRICTION_LAST = 4,
119243 };
119244 
119245 struct io_uring_getevents_arg {
119246 	__u64 sigmask;
119247 	__u32 sigmask_sz;
119248 	__u32 pad;
119249 	__u64 ts;
119250 };
119251 
119252 struct trace_event_raw_io_uring_create {
119253 	struct trace_entry ent;
119254 	int fd;
119255 	void *ctx;
119256 	u32 sq_entries;
119257 	u32 cq_entries;
119258 	u32 flags;
119259 	char __data[0];
119260 };
119261 
119262 struct trace_event_raw_io_uring_register {
119263 	struct trace_entry ent;
119264 	void *ctx;
119265 	unsigned int opcode;
119266 	unsigned int nr_files;
119267 	unsigned int nr_bufs;
119268 	long int ret;
119269 	char __data[0];
119270 };
119271 
119272 struct trace_event_raw_io_uring_file_get {
119273 	struct trace_entry ent;
119274 	void *ctx;
119275 	void *req;
119276 	u64 user_data;
119277 	int fd;
119278 	char __data[0];
119279 };
119280 
119281 struct trace_event_raw_io_uring_queue_async_work {
119282 	struct trace_entry ent;
119283 	void *ctx;
119284 	void *req;
119285 	u64 user_data;
119286 	u8 opcode;
119287 	unsigned int flags;
119288 	struct io_wq_work *work;
119289 	int rw;
119290 	u32 __data_loc_op_str;
119291 	char __data[0];
119292 };
119293 
119294 struct trace_event_raw_io_uring_defer {
119295 	struct trace_entry ent;
119296 	void *ctx;
119297 	void *req;
119298 	long long unsigned int data;
119299 	u8 opcode;
119300 	u32 __data_loc_op_str;
119301 	char __data[0];
119302 };
119303 
119304 struct trace_event_raw_io_uring_link {
119305 	struct trace_entry ent;
119306 	void *ctx;
119307 	void *req;
119308 	void *target_req;
119309 	char __data[0];
119310 };
119311 
119312 struct trace_event_raw_io_uring_cqring_wait {
119313 	struct trace_entry ent;
119314 	void *ctx;
119315 	int min_events;
119316 	char __data[0];
119317 };
119318 
119319 struct trace_event_raw_io_uring_fail_link {
119320 	struct trace_entry ent;
119321 	void *ctx;
119322 	void *req;
119323 	long long unsigned int user_data;
119324 	u8 opcode;
119325 	void *link;
119326 	u32 __data_loc_op_str;
119327 	char __data[0];
119328 };
119329 
119330 struct trace_event_raw_io_uring_complete {
119331 	struct trace_entry ent;
119332 	void *ctx;
119333 	void *req;
119334 	u64 user_data;
119335 	int res;
119336 	unsigned int cflags;
119337 	u64 extra1;
119338 	u64 extra2;
119339 	char __data[0];
119340 };
119341 
119342 struct trace_event_raw_io_uring_submit_sqe {
119343 	struct trace_entry ent;
119344 	void *ctx;
119345 	void *req;
119346 	long long unsigned int user_data;
119347 	u8 opcode;
119348 	u32 flags;
119349 	bool force_nonblock;
119350 	bool sq_thread;
119351 	u32 __data_loc_op_str;
119352 	char __data[0];
119353 };
119354 
119355 struct trace_event_raw_io_uring_poll_arm {
119356 	struct trace_entry ent;
119357 	void *ctx;
119358 	void *req;
119359 	long long unsigned int user_data;
119360 	u8 opcode;
119361 	int mask;
119362 	int events;
119363 	u32 __data_loc_op_str;
119364 	char __data[0];
119365 };
119366 
119367 struct trace_event_raw_io_uring_task_add {
119368 	struct trace_entry ent;
119369 	void *ctx;
119370 	void *req;
119371 	long long unsigned int user_data;
119372 	u8 opcode;
119373 	int mask;
119374 	u32 __data_loc_op_str;
119375 	char __data[0];
119376 };
119377 
119378 struct trace_event_raw_io_uring_req_failed {
119379 	struct trace_entry ent;
119380 	void *ctx;
119381 	void *req;
119382 	long long unsigned int user_data;
119383 	u8 opcode;
119384 	u8 flags;
119385 	u8 ioprio;
119386 	u64 off;
119387 	u64 addr;
119388 	u32 len;
119389 	u32 op_flags;
119390 	u16 buf_index;
119391 	u16 personality;
119392 	u32 file_index;
119393 	u64 pad1;
119394 	u64 addr3;
119395 	int error;
119396 	u32 __data_loc_op_str;
119397 	char __data[0];
119398 };
119399 
119400 struct trace_event_raw_io_uring_cqe_overflow {
119401 	struct trace_entry ent;
119402 	void *ctx;
119403 	long long unsigned int user_data;
119404 	s32 res;
119405 	u32 cflags;
119406 	void *ocqe;
119407 	char __data[0];
119408 };
119409 
119410 struct trace_event_raw_io_uring_task_work_run {
119411 	struct trace_entry ent;
119412 	void *tctx;
119413 	unsigned int count;
119414 	unsigned int loops;
119415 	char __data[0];
119416 };
119417 
119418 struct trace_event_raw_io_uring_short_write {
119419 	struct trace_entry ent;
119420 	void *ctx;
119421 	u64 fpos;
119422 	u64 wanted;
119423 	u64 got;
119424 	char __data[0];
119425 };
119426 
119427 struct trace_event_data_offsets_io_uring_create {};
119428 
119429 struct trace_event_data_offsets_io_uring_register {};
119430 
119431 struct trace_event_data_offsets_io_uring_file_get {};
119432 
119433 struct trace_event_data_offsets_io_uring_queue_async_work {
119434 	u32 op_str;
119435 };
119436 
119437 struct trace_event_data_offsets_io_uring_defer {
119438 	u32 op_str;
119439 };
119440 
119441 struct trace_event_data_offsets_io_uring_link {};
119442 
119443 struct trace_event_data_offsets_io_uring_cqring_wait {};
119444 
119445 struct trace_event_data_offsets_io_uring_fail_link {
119446 	u32 op_str;
119447 };
119448 
119449 struct trace_event_data_offsets_io_uring_complete {};
119450 
119451 struct trace_event_data_offsets_io_uring_submit_sqe {
119452 	u32 op_str;
119453 };
119454 
119455 struct trace_event_data_offsets_io_uring_poll_arm {
119456 	u32 op_str;
119457 };
119458 
119459 struct trace_event_data_offsets_io_uring_task_add {
119460 	u32 op_str;
119461 };
119462 
119463 struct trace_event_data_offsets_io_uring_req_failed {
119464 	u32 op_str;
119465 };
119466 
119467 struct trace_event_data_offsets_io_uring_cqe_overflow {};
119468 
119469 struct trace_event_data_offsets_io_uring_task_work_run {};
119470 
119471 struct trace_event_data_offsets_io_uring_short_write {};
119472 
119473 typedef void (*btf_trace_io_uring_create)(void *, int, void *, u32, u32, u32);
119474 
119475 typedef void (*btf_trace_io_uring_register)(void *, void *, unsigned int, unsigned int, unsigned int, long int);
119476 
119477 typedef void (*btf_trace_io_uring_file_get)(void *, struct io_kiocb *, int);
119478 
119479 typedef void (*btf_trace_io_uring_queue_async_work)(void *, struct io_kiocb *, int);
119480 
119481 typedef void (*btf_trace_io_uring_defer)(void *, struct io_kiocb *);
119482 
119483 typedef void (*btf_trace_io_uring_link)(void *, struct io_kiocb *, struct io_kiocb *);
119484 
119485 typedef void (*btf_trace_io_uring_cqring_wait)(void *, void *, int);
119486 
119487 typedef void (*btf_trace_io_uring_fail_link)(void *, struct io_kiocb *, struct io_kiocb *);
119488 
119489 typedef void (*btf_trace_io_uring_complete)(void *, void *, void *, u64, int, unsigned int, u64, u64);
119490 
119491 typedef void (*btf_trace_io_uring_submit_sqe)(void *, struct io_kiocb *, bool);
119492 
119493 typedef void (*btf_trace_io_uring_poll_arm)(void *, struct io_kiocb *, int, int);
119494 
119495 typedef void (*btf_trace_io_uring_task_add)(void *, struct io_kiocb *, int);
119496 
119497 typedef void (*btf_trace_io_uring_req_failed)(void *, const struct io_uring_sqe *, struct io_kiocb *, int);
119498 
119499 typedef void (*btf_trace_io_uring_cqe_overflow)(void *, void *, long long unsigned int, s32, u32, void *);
119500 
119501 typedef void (*btf_trace_io_uring_task_work_run)(void *, void *, unsigned int, unsigned int);
119502 
119503 typedef void (*btf_trace_io_uring_short_write)(void *, void *, u64, u64, u64);
119504 
119505 enum {
119506 	IO_CHECK_CQ_OVERFLOW_BIT = 0,
119507 	IO_CHECK_CQ_DROPPED_BIT = 1,
119508 };
119509 
119510 struct io_defer_entry {
119511 	struct list_head list;
119512 	struct io_kiocb *req;
119513 	u32 seq;
119514 };
119515 
119516 struct io_wait_queue {
119517 	struct wait_queue_entry wq;
119518 	struct io_ring_ctx *ctx;
119519 	unsigned int cq_tail;
119520 	unsigned int nr_timeouts;
119521 };
119522 
119523 struct io_tctx_exit {
119524 	struct callback_head task_work;
119525 	struct completion completion;
119526 	struct io_ring_ctx *ctx;
119527 };
119528 
119529 struct io_task_cancel {
119530 	struct task_struct *task;
119531 	bool all;
119532 };
119533 
119534 struct creds;
119535 
119536 struct reciprocal_value_adv {
119537 	u32 m;
119538 	u8 sh;
119539 	u8 exp;
119540 	bool is_wide_m;
119541 };
119542 
119543 typedef struct {
119544 	const uint8_t *externalDict;
119545 	size_t extDictSize;
119546 	const uint8_t *prefixEnd;
119547 	size_t prefixSize;
119548 } LZ4_streamDecode_t_internal;
119549 
119550 typedef union {
119551 	long long unsigned int table[4];
119552 	LZ4_streamDecode_t_internal internal_donotuse;
119553 } LZ4_streamDecode_t;
119554 
119555 typedef uintptr_t uptrval;
119556 
119557 typedef enum {
119558 	noDict = 0,
119559 	withPrefix64k = 1,
119560 	usingExtDict = 2,
119561 } dict_directive;
119562 
119563 typedef enum {
119564 	endOnOutputSize = 0,
119565 	endOnInputSize = 1,
119566 } endCondition_directive;
119567 
119568 typedef enum {
119569 	decode_full_block = 0,
119570 	partial_decode = 1,
119571 } earlyEnd_directive;
119572 
119573 struct sg_pool {
119574 	size_t size;
119575 	char *name;
119576 	struct kmem_cache *slab;
119577 	mempool_t *pool;
119578 };
119579 
119580 struct phy_provider {
119581 	struct device *dev;
119582 	struct device_node *children;
119583 	struct module *owner;
119584 	struct list_head list;
119585 	struct phy___2 * (*of_xlate)(struct device *, struct of_phandle_args *);
119586 };
119587 
119588 struct phy_lookup {
119589 	struct list_head node;
119590 	const char *dev_id;
119591 	const char *con_id;
119592 	struct phy___2 *phy;
119593 };
119594 
119595 enum backlight_update_reason {
119596 	BACKLIGHT_UPDATE_HOTKEY = 0,
119597 	BACKLIGHT_UPDATE_SYSFS = 1,
119598 };
119599 
119600 enum backlight_notification {
119601 	BACKLIGHT_REGISTERED = 0,
119602 	BACKLIGHT_UNREGISTERED = 1,
119603 };
119604 
119605 struct gxt4500_par {
119606 	void *regs;
119607 	int wc_cookie;
119608 	int pixfmt;
119609 	int refclk_ps;
119610 	int pll_m;
119611 	int pll_n;
119612 	int pll_pd1;
119613 	int pll_pd2;
119614 	u32 pseudo_palette[16];
119615 };
119616 
119617 enum gxt_cards {
119618 	GXT4500P = 0,
119619 	GXT6500P = 1,
119620 	GXT4000P = 2,
119621 	GXT6000P = 3,
119622 };
119623 
119624 struct cardinfo {
119625 	int refclk_ps;
119626 	const char *cardname;
119627 };
119628 
119629 struct trace_event_raw_iommu_group_event {
119630 	struct trace_entry ent;
119631 	int gid;
119632 	u32 __data_loc_device;
119633 	char __data[0];
119634 };
119635 
119636 struct trace_event_raw_iommu_device_event {
119637 	struct trace_entry ent;
119638 	u32 __data_loc_device;
119639 	char __data[0];
119640 };
119641 
119642 struct trace_event_raw_map {
119643 	struct trace_entry ent;
119644 	u64 iova;
119645 	u64 paddr;
119646 	size_t size;
119647 	char __data[0];
119648 };
119649 
119650 struct trace_event_raw_unmap {
119651 	struct trace_entry ent;
119652 	u64 iova;
119653 	size_t size;
119654 	size_t unmapped_size;
119655 	char __data[0];
119656 };
119657 
119658 struct trace_event_raw_iommu_error {
119659 	struct trace_entry ent;
119660 	u32 __data_loc_device;
119661 	u32 __data_loc_driver;
119662 	u64 iova;
119663 	int flags;
119664 	char __data[0];
119665 };
119666 
119667 struct trace_event_data_offsets_iommu_group_event {
119668 	u32 device;
119669 };
119670 
119671 struct trace_event_data_offsets_iommu_device_event {
119672 	u32 device;
119673 };
119674 
119675 struct trace_event_data_offsets_map {};
119676 
119677 struct trace_event_data_offsets_unmap {};
119678 
119679 struct trace_event_data_offsets_iommu_error {
119680 	u32 device;
119681 	u32 driver;
119682 };
119683 
119684 typedef void (*btf_trace_add_device_to_group)(void *, int, struct device *);
119685 
119686 typedef void (*btf_trace_remove_device_from_group)(void *, int, struct device *);
119687 
119688 typedef void (*btf_trace_attach_device_to_domain)(void *, struct device *);
119689 
119690 typedef void (*btf_trace_detach_device_from_domain)(void *, struct device *);
119691 
119692 typedef void (*btf_trace_map)(void *, long unsigned int, phys_addr_t, size_t);
119693 
119694 typedef void (*btf_trace_unmap)(void *, long unsigned int, size_t, size_t);
119695 
119696 typedef void (*btf_trace_io_page_fault)(void *, struct device *, long unsigned int, int);
119697 
119698 struct internal_container {
119699 	struct klist_node node;
119700 	struct attribute_container *cont;
119701 	struct device classdev;
119702 };
119703 
119704 struct req {
119705 	struct req *next;
119706 	struct completion done;
119707 	int err;
119708 	const char *name;
119709 	umode_t mode;
119710 	kuid_t uid;
119711 	kgid_t gid;
119712 	struct device *dev;
119713 };
119714 
119715 typedef long unsigned int __kernel_old_dev_t;
119716 
119717 enum {
119718 	LO_FLAGS_READ_ONLY = 1,
119719 	LO_FLAGS_AUTOCLEAR = 4,
119720 	LO_FLAGS_PARTSCAN = 8,
119721 	LO_FLAGS_DIRECT_IO = 16,
119722 };
119723 
119724 struct loop_info {
119725 	int lo_number;
119726 	__kernel_old_dev_t lo_device;
119727 	long unsigned int lo_inode;
119728 	__kernel_old_dev_t lo_rdevice;
119729 	int lo_offset;
119730 	int lo_encrypt_type;
119731 	int lo_encrypt_key_size;
119732 	int lo_flags;
119733 	char lo_name[64];
119734 	unsigned char lo_encrypt_key[32];
119735 	long unsigned int lo_init[2];
119736 	char reserved[4];
119737 };
119738 
119739 struct loop_info64 {
119740 	__u64 lo_device;
119741 	__u64 lo_inode;
119742 	__u64 lo_rdevice;
119743 	__u64 lo_offset;
119744 	__u64 lo_sizelimit;
119745 	__u32 lo_number;
119746 	__u32 lo_encrypt_type;
119747 	__u32 lo_encrypt_key_size;
119748 	__u32 lo_flags;
119749 	__u8 lo_file_name[64];
119750 	__u8 lo_crypt_name[64];
119751 	__u8 lo_encrypt_key[32];
119752 	__u64 lo_init[2];
119753 };
119754 
119755 struct loop_config {
119756 	__u32 fd;
119757 	__u32 block_size;
119758 	struct loop_info64 info;
119759 	__u64 __reserved[8];
119760 };
119761 
119762 enum {
119763 	Lo_unbound = 0,
119764 	Lo_bound = 1,
119765 	Lo_rundown = 2,
119766 	Lo_deleting = 3,
119767 };
119768 
119769 struct loop_device {
119770 	int lo_number;
119771 	loff_t lo_offset;
119772 	loff_t lo_sizelimit;
119773 	int lo_flags;
119774 	char lo_file_name[64];
119775 	struct file *lo_backing_file;
119776 	struct block_device *lo_device;
119777 	gfp_t old_gfp_mask;
119778 	spinlock_t lo_lock;
119779 	int lo_state;
119780 	spinlock_t lo_work_lock;
119781 	struct workqueue_struct *workqueue;
119782 	struct work_struct rootcg_work;
119783 	struct list_head rootcg_cmd_list;
119784 	struct list_head idle_worker_list;
119785 	struct rb_root worker_tree;
119786 	struct timer_list timer;
119787 	bool use_dio;
119788 	bool sysfs_inited;
119789 	struct request_queue *lo_queue;
119790 	struct blk_mq_tag_set tag_set;
119791 	struct gendisk *lo_disk;
119792 	struct mutex lo_mutex;
119793 	bool idr_visible;
119794 };
119795 
119796 struct loop_cmd {
119797 	struct list_head list_entry;
119798 	bool use_aio;
119799 	atomic_t ref;
119800 	long int ret;
119801 	struct kiocb iocb;
119802 	struct bio_vec *bvec;
119803 	struct cgroup_subsys_state *blkcg_css;
119804 	struct cgroup_subsys_state *memcg_css;
119805 };
119806 
119807 struct loop_worker {
119808 	struct rb_node rb_node;
119809 	struct work_struct work;
119810 	struct list_head cmd_list;
119811 	struct list_head idle_list;
119812 	struct loop_device *lo;
119813 	struct cgroup_subsys_state *blkcg_css;
119814 	long unsigned int last_ran_at;
119815 };
119816 
119817 struct dma_fence_unwrap {
119818 	struct dma_fence *chain;
119819 	struct dma_fence *array;
119820 	unsigned int index;
119821 };
119822 
119823 enum scsi_timeouts {
119824 	SCSI_DEFAULT_EH_TIMEOUT = 1000,
119825 };
119826 
119827 struct async_scan_data {
119828 	struct list_head list;
119829 	struct Scsi_Host *shost;
119830 	struct completion prev_finished;
119831 };
119832 
119833 enum bip_flags {
119834 	BIP_BLOCK_INTEGRITY = 1,
119835 	BIP_MAPPED_INTEGRITY = 2,
119836 	BIP_CTRL_NOCHECK = 4,
119837 	BIP_DISK_NOCHECK = 8,
119838 	BIP_IP_CHECKSUM = 16,
119839 };
119840 
119841 enum t10_dif_type {
119842 	T10_PI_TYPE0_PROTECTION = 0,
119843 	T10_PI_TYPE1_PROTECTION = 1,
119844 	T10_PI_TYPE2_PROTECTION = 2,
119845 	T10_PI_TYPE3_PROTECTION = 3,
119846 };
119847 
119848 enum scsi_prot_flags {
119849 	SCSI_PROT_TRANSFER_PI = 1,
119850 	SCSI_PROT_GUARD_CHECK = 2,
119851 	SCSI_PROT_REF_CHECK = 4,
119852 	SCSI_PROT_REF_INCREMENT = 8,
119853 	SCSI_PROT_IP_CHECKSUM = 16,
119854 };
119855 
119856 enum {
119857 	SD_EXT_CDB_SIZE = 32,
119858 	SD_MEMPOOL_SIZE = 2,
119859 };
119860 
119861 enum {
119862 	SD_DEF_XFER_BLOCKS = 65535,
119863 	SD_MAX_XFER_BLOCKS = 4294967295,
119864 	SD_MAX_WS10_BLOCKS = 65535,
119865 	SD_MAX_WS16_BLOCKS = 8388607,
119866 };
119867 
119868 enum {
119869 	SD_LBP_FULL = 0,
119870 	SD_LBP_UNMAP = 1,
119871 	SD_LBP_WS16 = 2,
119872 	SD_LBP_WS10 = 3,
119873 	SD_LBP_ZERO = 4,
119874 	SD_LBP_DISABLE = 5,
119875 };
119876 
119877 enum {
119878 	SD_ZERO_WRITE = 0,
119879 	SD_ZERO_WS = 1,
119880 	SD_ZERO_WS16_UNMAP = 2,
119881 	SD_ZERO_WS10_UNMAP = 3,
119882 };
119883 
119884 struct opal_dev;
119885 
119886 struct scsi_disk {
119887 	struct scsi_device *device;
119888 	struct device disk_dev;
119889 	struct gendisk *disk;
119890 	struct opal_dev *opal_dev;
119891 	atomic_t openers;
119892 	sector_t capacity;
119893 	int max_retries;
119894 	u32 min_xfer_blocks;
119895 	u32 max_xfer_blocks;
119896 	u32 opt_xfer_blocks;
119897 	u32 max_ws_blocks;
119898 	u32 max_unmap_blocks;
119899 	u32 unmap_granularity;
119900 	u32 unmap_alignment;
119901 	u32 index;
119902 	unsigned int physical_block_size;
119903 	unsigned int max_medium_access_timeouts;
119904 	unsigned int medium_access_timed_out;
119905 	u8 media_present;
119906 	u8 write_prot;
119907 	u8 protection_type;
119908 	u8 provisioning_mode;
119909 	u8 zeroing_mode;
119910 	u8 nr_actuators;
119911 	unsigned int ATO: 1;
119912 	unsigned int cache_override: 1;
119913 	unsigned int WCE: 1;
119914 	unsigned int RCD: 1;
119915 	unsigned int DPOFUA: 1;
119916 	unsigned int first_scan: 1;
119917 	unsigned int lbpme: 1;
119918 	unsigned int lbprz: 1;
119919 	unsigned int lbpu: 1;
119920 	unsigned int lbpws: 1;
119921 	unsigned int lbpws10: 1;
119922 	unsigned int lbpvpd: 1;
119923 	unsigned int ws10: 1;
119924 	unsigned int ws16: 1;
119925 	unsigned int rc_basis: 2;
119926 	unsigned int zoned: 2;
119927 	unsigned int urswrz: 1;
119928 	unsigned int security: 1;
119929 	unsigned int ignore_medium_access_errors: 1;
119930 };
119931 
119932 struct mv_sata_platform_data {
119933 	int n_ports;
119934 };
119935 
119936 struct mbus_dram_window {
119937 	u8 cs_index;
119938 	u8 mbus_attr;
119939 	u64 base;
119940 	u64 size;
119941 };
119942 
119943 struct mbus_dram_target_info {
119944 	u8 mbus_dram_target_id;
119945 	int num_cs;
119946 	struct mbus_dram_window cs[4];
119947 };
119948 
119949 enum {
119950 	MV_PRIMARY_BAR = 0,
119951 	MV_IO_BAR = 2,
119952 	MV_MISC_BAR = 3,
119953 	MV_MAJOR_REG_AREA_SZ = 65536,
119954 	MV_MINOR_REG_AREA_SZ = 8192,
119955 	COAL_CLOCKS_PER_USEC = 150,
119956 	MAX_COAL_TIME_THRESHOLD = 16777215,
119957 	MAX_COAL_IO_COUNT = 255,
119958 	MV_PCI_REG_BASE = 0,
119959 	COAL_REG_BASE = 98304,
119960 	IRQ_COAL_CAUSE = 98312,
119961 	ALL_PORTS_COAL_IRQ = 16,
119962 	IRQ_COAL_IO_THRESHOLD = 98508,
119963 	IRQ_COAL_TIME_THRESHOLD = 98512,
119964 	TRAN_COAL_CAUSE_LO = 98440,
119965 	TRAN_COAL_CAUSE_HI = 98444,
119966 	SATAHC0_REG_BASE = 131072,
119967 	FLASH_CTL = 66668,
119968 	GPIO_PORT_CTL = 66800,
119969 	RESET_CFG = 98520,
119970 	MV_PCI_REG_SZ = 65536,
119971 	MV_SATAHC_REG_SZ = 65536,
119972 	MV_SATAHC_ARBTR_REG_SZ = 8192,
119973 	MV_PORT_REG_SZ = 8192,
119974 	MV_MAX_Q_DEPTH = 32,
119975 	MV_MAX_Q_DEPTH_MASK = 31,
119976 	MV_CRQB_Q_SZ = 1024,
119977 	MV_CRPB_Q_SZ = 256,
119978 	MV_MAX_SG_CT = 256,
119979 	MV_SG_TBL_SZ = 4096,
119980 	MV_PORT_HC_SHIFT = 2,
119981 	MV_PORTS_PER_HC = 4,
119982 	MV_PORT_MASK = 3,
119983 	MV_FLAG_DUAL_HC = 1073741824,
119984 	MV_COMMON_FLAGS = 514,
119985 	MV_GEN_I_FLAGS = 578,
119986 	MV_GEN_II_FLAGS = 656898,
119987 	MV_GEN_IIE_FLAGS = 919042,
119988 	CRQB_FLAG_READ = 1,
119989 	CRQB_TAG_SHIFT = 1,
119990 	CRQB_IOID_SHIFT = 6,
119991 	CRQB_PMP_SHIFT = 12,
119992 	CRQB_HOSTQ_SHIFT = 17,
119993 	CRQB_CMD_ADDR_SHIFT = 8,
119994 	CRQB_CMD_CS = 4096,
119995 	CRQB_CMD_LAST = 32768,
119996 	CRPB_FLAG_STATUS_SHIFT = 8,
119997 	CRPB_IOID_SHIFT_6 = 5,
119998 	CRPB_IOID_SHIFT_7 = 7,
119999 	EPRD_FLAG_END_OF_TBL = -2147483648,
120000 	MV_PCI_COMMAND = 3072,
120001 	MV_PCI_COMMAND_MWRCOM = 16,
120002 	MV_PCI_COMMAND_MRDTRIG = 128,
120003 	PCI_MAIN_CMD_STS = 3376,
120004 	STOP_PCI_MASTER = 4,
120005 	PCI_MASTER_EMPTY = 8,
120006 	GLOB_SFT_RST = 16,
120007 	MV_PCI_MODE = 3328,
120008 	MV_PCI_MODE_MASK = 48,
120009 	MV_PCI_EXP_ROM_BAR_CTL = 3372,
120010 	MV_PCI_DISC_TIMER = 3332,
120011 	MV_PCI_MSI_TRIGGER = 3128,
120012 	MV_PCI_SERR_MASK = 3112,
120013 	MV_PCI_XBAR_TMOUT = 7428,
120014 	MV_PCI_ERR_LOW_ADDRESS = 7488,
120015 	MV_PCI_ERR_HIGH_ADDRESS = 7492,
120016 	MV_PCI_ERR_ATTRIBUTE = 7496,
120017 	MV_PCI_ERR_COMMAND = 7504,
120018 	PCI_IRQ_CAUSE = 7512,
120019 	PCI_IRQ_MASK = 7516,
120020 	PCI_UNMASK_ALL_IRQS = 8388607,
120021 	PCIE_IRQ_CAUSE = 6400,
120022 	PCIE_IRQ_MASK = 6416,
120023 	PCIE_UNMASK_ALL_IRQS = 1034,
120024 	PCI_HC_MAIN_IRQ_CAUSE = 7520,
120025 	PCI_HC_MAIN_IRQ_MASK = 7524,
120026 	SOC_HC_MAIN_IRQ_CAUSE = 131104,
120027 	SOC_HC_MAIN_IRQ_MASK = 131108,
120028 	ERR_IRQ = 1,
120029 	DONE_IRQ = 2,
120030 	HC0_IRQ_PEND = 511,
120031 	HC_SHIFT = 9,
120032 	DONE_IRQ_0_3 = 170,
120033 	DONE_IRQ_4_7 = 87040,
120034 	PCI_ERR = 262144,
120035 	TRAN_COAL_LO_DONE = 524288,
120036 	TRAN_COAL_HI_DONE = 1048576,
120037 	PORTS_0_3_COAL_DONE = 256,
120038 	PORTS_4_7_COAL_DONE = 131072,
120039 	ALL_PORTS_COAL_DONE = 2097152,
120040 	GPIO_INT = 4194304,
120041 	SELF_INT = 8388608,
120042 	TWSI_INT = 16777216,
120043 	HC_MAIN_RSVD = -33554432,
120044 	HC_MAIN_RSVD_5 = -524288,
120045 	HC_MAIN_RSVD_SOC = -320,
120046 	HC_CFG = 0,
120047 	HC_IRQ_CAUSE = 20,
120048 	DMA_IRQ = 1,
120049 	HC_COAL_IRQ = 16,
120050 	DEV_IRQ = 256,
120051 	HC_IRQ_COAL_IO_THRESHOLD = 12,
120052 	HC_IRQ_COAL_TIME_THRESHOLD = 16,
120053 	SOC_LED_CTRL = 44,
120054 	SOC_LED_CTRL_BLINK = 1,
120055 	SOC_LED_CTRL_ACT_PRESENCE = 4,
120056 	SHD_BLK = 256,
120057 	SHD_CTL_AST = 32,
120058 	SATA_STATUS = 768,
120059 	SATA_ACTIVE = 848,
120060 	FIS_IRQ_CAUSE = 868,
120061 	FIS_IRQ_CAUSE_AN = 512,
120062 	LTMODE = 780,
120063 	LTMODE_BIT8 = 256,
120064 	PHY_MODE2 = 816,
120065 	PHY_MODE3 = 784,
120066 	PHY_MODE4 = 788,
120067 	PHY_MODE4_CFG_MASK = 3,
120068 	PHY_MODE4_CFG_VALUE = 1,
120069 	PHY_MODE4_RSVD_ZEROS = 1575223290,
120070 	PHY_MODE4_RSVD_ONES = 5,
120071 	SATA_IFCTL = 836,
120072 	SATA_TESTCTL = 840,
120073 	SATA_IFSTAT = 844,
120074 	VENDOR_UNIQUE_FIS = 860,
120075 	FISCFG = 864,
120076 	FISCFG_WAIT_DEV_ERR = 256,
120077 	FISCFG_SINGLE_SYNC = 65536,
120078 	PHY_MODE9_GEN2 = 920,
120079 	PHY_MODE9_GEN1 = 924,
120080 	PHYCFG_OFS = 928,
120081 	MV5_PHY_MODE = 116,
120082 	MV5_LTMODE = 48,
120083 	MV5_PHY_CTL = 12,
120084 	SATA_IFCFG = 80,
120085 	LP_PHY_CTL = 88,
120086 	LP_PHY_CTL_PIN_PU_PLL = 1,
120087 	LP_PHY_CTL_PIN_PU_RX = 2,
120088 	LP_PHY_CTL_PIN_PU_TX = 4,
120089 	LP_PHY_CTL_GEN_TX_3G = 32,
120090 	LP_PHY_CTL_GEN_RX_3G = 512,
120091 	MV_M2_PREAMP_MASK = 2016,
120092 	EDMA_CFG = 0,
120093 	EDMA_CFG_Q_DEPTH = 31,
120094 	EDMA_CFG_NCQ = 32,
120095 	EDMA_CFG_NCQ_GO_ON_ERR = 16384,
120096 	EDMA_CFG_RD_BRST_EXT = 2048,
120097 	EDMA_CFG_WR_BUFF_LEN = 8192,
120098 	EDMA_CFG_EDMA_FBS = 65536,
120099 	EDMA_CFG_FBS = 67108864,
120100 	EDMA_ERR_IRQ_CAUSE = 8,
120101 	EDMA_ERR_IRQ_MASK = 12,
120102 	EDMA_ERR_D_PAR = 1,
120103 	EDMA_ERR_PRD_PAR = 2,
120104 	EDMA_ERR_DEV = 4,
120105 	EDMA_ERR_DEV_DCON = 8,
120106 	EDMA_ERR_DEV_CON = 16,
120107 	EDMA_ERR_SERR = 32,
120108 	EDMA_ERR_SELF_DIS = 128,
120109 	EDMA_ERR_SELF_DIS_5 = 256,
120110 	EDMA_ERR_BIST_ASYNC = 256,
120111 	EDMA_ERR_TRANS_IRQ_7 = 256,
120112 	EDMA_ERR_CRQB_PAR = 512,
120113 	EDMA_ERR_CRPB_PAR = 1024,
120114 	EDMA_ERR_INTRL_PAR = 2048,
120115 	EDMA_ERR_IORDY = 4096,
120116 	EDMA_ERR_LNK_CTRL_RX = 122880,
120117 	EDMA_ERR_LNK_CTRL_RX_0 = 8192,
120118 	EDMA_ERR_LNK_CTRL_RX_1 = 16384,
120119 	EDMA_ERR_LNK_CTRL_RX_2 = 32768,
120120 	EDMA_ERR_LNK_CTRL_RX_3 = 65536,
120121 	EDMA_ERR_LNK_DATA_RX = 1966080,
120122 	EDMA_ERR_LNK_CTRL_TX = 65011712,
120123 	EDMA_ERR_LNK_CTRL_TX_0 = 2097152,
120124 	EDMA_ERR_LNK_CTRL_TX_1 = 4194304,
120125 	EDMA_ERR_LNK_CTRL_TX_2 = 8388608,
120126 	EDMA_ERR_LNK_CTRL_TX_3 = 16777216,
120127 	EDMA_ERR_LNK_CTRL_TX_4 = 33554432,
120128 	EDMA_ERR_LNK_DATA_TX = 2080374784,
120129 	EDMA_ERR_TRANS_PROTO = -2147483648,
120130 	EDMA_ERR_OVERRUN_5 = 32,
120131 	EDMA_ERR_UNDERRUN_5 = 64,
120132 	EDMA_ERR_IRQ_TRANSIENT = 65101824,
120133 	EDMA_EH_FREEZE = -65102149,
120134 	EDMA_EH_FREEZE_5 = 8059,
120135 	EDMA_REQ_Q_BASE_HI = 16,
120136 	EDMA_REQ_Q_IN_PTR = 20,
120137 	EDMA_REQ_Q_OUT_PTR = 24,
120138 	EDMA_REQ_Q_PTR_SHIFT = 5,
120139 	EDMA_RSP_Q_BASE_HI = 28,
120140 	EDMA_RSP_Q_IN_PTR = 32,
120141 	EDMA_RSP_Q_OUT_PTR = 36,
120142 	EDMA_RSP_Q_PTR_SHIFT = 3,
120143 	EDMA_CMD = 40,
120144 	EDMA_EN = 1,
120145 	EDMA_DS = 2,
120146 	EDMA_RESET = 4,
120147 	EDMA_STATUS = 48,
120148 	EDMA_STATUS_CACHE_EMPTY = 64,
120149 	EDMA_STATUS_IDLE = 128,
120150 	EDMA_IORDY_TMOUT = 52,
120151 	EDMA_ARB_CFG = 56,
120152 	EDMA_HALTCOND = 96,
120153 	EDMA_UNKNOWN_RSVD = 108,
120154 	BMDMA_CMD = 548,
120155 	BMDMA_STATUS = 552,
120156 	BMDMA_PRD_LOW = 556,
120157 	BMDMA_PRD_HIGH = 560,
120158 	MV_HP_FLAG_MSI = 1,
120159 	MV_HP_ERRATA_50XXB0 = 2,
120160 	MV_HP_ERRATA_50XXB2 = 4,
120161 	MV_HP_ERRATA_60X1B2 = 8,
120162 	MV_HP_ERRATA_60X1C0 = 16,
120163 	MV_HP_GEN_I = 64,
120164 	MV_HP_GEN_II = 128,
120165 	MV_HP_GEN_IIE = 256,
120166 	MV_HP_PCIE = 512,
120167 	MV_HP_CUT_THROUGH = 1024,
120168 	MV_HP_FLAG_SOC = 2048,
120169 	MV_HP_QUIRK_LED_BLINK_EN = 4096,
120170 	MV_HP_FIX_LP_PHY_CTL = 8192,
120171 	MV_PP_FLAG_EDMA_EN = 1,
120172 	MV_PP_FLAG_NCQ_EN = 2,
120173 	MV_PP_FLAG_FBS_EN = 4,
120174 	MV_PP_FLAG_DELAYED_EH = 8,
120175 	MV_PP_FLAG_FAKE_ATA_BUSY = 16,
120176 };
120177 
120178 enum {
120179 	MV_DMA_BOUNDARY = 65535,
120180 	EDMA_REQ_Q_BASE_LO_MASK = 4294966272,
120181 	EDMA_RSP_Q_BASE_LO_MASK = 4294967040,
120182 };
120183 
120184 enum chip_type {
120185 	chip_504x = 0,
120186 	chip_508x = 1,
120187 	chip_5080 = 2,
120188 	chip_604x = 3,
120189 	chip_608x = 4,
120190 	chip_6042 = 5,
120191 	chip_7042 = 6,
120192 	chip_soc = 7,
120193 };
120194 
120195 struct mv_crqb {
120196 	__le32 sg_addr;
120197 	__le32 sg_addr_hi;
120198 	__le16 ctrl_flags;
120199 	__le16 ata_cmd[11];
120200 };
120201 
120202 struct mv_crqb_iie {
120203 	__le32 addr;
120204 	__le32 addr_hi;
120205 	__le32 flags;
120206 	__le32 len;
120207 	__le32 ata_cmd[4];
120208 };
120209 
120210 struct mv_crpb {
120211 	__le16 id;
120212 	__le16 flags;
120213 	__le32 tmstmp;
120214 };
120215 
120216 struct mv_sg {
120217 	__le32 addr;
120218 	__le32 flags_size;
120219 	__le32 addr_hi;
120220 	__le32 reserved;
120221 };
120222 
120223 struct mv_cached_regs {
120224 	u32 fiscfg;
120225 	u32 ltmode;
120226 	u32 haltcond;
120227 	u32 unknown_rsvd;
120228 };
120229 
120230 struct mv_port_priv {
120231 	struct mv_crqb *crqb;
120232 	dma_addr_t crqb_dma;
120233 	struct mv_crpb *crpb;
120234 	dma_addr_t crpb_dma;
120235 	struct mv_sg *sg_tbl[32];
120236 	dma_addr_t sg_tbl_dma[32];
120237 	unsigned int req_idx;
120238 	unsigned int resp_idx;
120239 	u32 pp_flags;
120240 	struct mv_cached_regs cached;
120241 	unsigned int delayed_eh_pmp_map;
120242 };
120243 
120244 struct mv_port_signal {
120245 	u32 amps;
120246 	u32 pre;
120247 };
120248 
120249 struct mv_hw_ops;
120250 
120251 struct mv_host_priv {
120252 	u32 hp_flags;
120253 	unsigned int board_idx;
120254 	u32 main_irq_mask;
120255 	struct mv_port_signal signal[8];
120256 	const struct mv_hw_ops *ops;
120257 	int n_ports;
120258 	void *base;
120259 	void *main_irq_cause_addr;
120260 	void *main_irq_mask_addr;
120261 	u32 irq_cause_offset;
120262 	u32 irq_mask_offset;
120263 	u32 unmask_all_irqs;
120264 	struct clk *clk;
120265 	struct clk **port_clks;
120266 	struct phy___2 **port_phys;
120267 	struct dma_pool *crqb_pool;
120268 	struct dma_pool *crpb_pool;
120269 	struct dma_pool *sg_tbl_pool;
120270 };
120271 
120272 struct mv_hw_ops {
120273 	void (*phy_errata)(struct mv_host_priv *, void *, unsigned int);
120274 	void (*enable_leds)(struct mv_host_priv *, void *);
120275 	void (*read_preamp)(struct mv_host_priv *, int, void *);
120276 	int (*reset_hc)(struct ata_host *, void *, unsigned int);
120277 	void (*reset_flash)(struct mv_host_priv *, void *);
120278 	void (*reset_bus)(struct ata_host *, void *);
120279 };
120280 
120281 struct e1000_option___2 {
120282 	enum {
120283 		enable_option___2 = 0,
120284 		range_option___2 = 1,
120285 		list_option___2 = 2,
120286 	} type;
120287 	const char *name;
120288 	const char *err;
120289 	int def;
120290 	union {
120291 		struct {
120292 			int min;
120293 			int max;
120294 		} r;
120295 		struct {
120296 			int nr;
120297 			const struct e1000_opt_list *p;
120298 		} l;
120299 	} arg;
120300 };
120301 
120302 struct usb_qualifier_descriptor {
120303 	__u8 bLength;
120304 	__u8 bDescriptorType;
120305 	__le16 bcdUSB;
120306 	__u8 bDeviceClass;
120307 	__u8 bDeviceSubClass;
120308 	__u8 bDeviceProtocol;
120309 	__u8 bMaxPacketSize0;
120310 	__u8 bNumConfigurations;
120311 	__u8 bRESERVED;
120312 };
120313 
120314 struct usb_set_sel_req {
120315 	__u8 u1_sel;
120316 	__u8 u1_pel;
120317 	__le16 u2_sel;
120318 	__le16 u2_pel;
120319 };
120320 
120321 struct usbdevfs_hub_portinfo {
120322 	char nports;
120323 	char port[127];
120324 };
120325 
120326 enum hub_led_mode {
120327 	INDICATOR_AUTO = 0,
120328 	INDICATOR_CYCLE = 1,
120329 	INDICATOR_GREEN_BLINK = 2,
120330 	INDICATOR_GREEN_BLINK_OFF = 3,
120331 	INDICATOR_AMBER_BLINK = 4,
120332 	INDICATOR_AMBER_BLINK_OFF = 5,
120333 	INDICATOR_ALT_BLINK = 6,
120334 	INDICATOR_ALT_BLINK_OFF = 7,
120335 } __attribute__((mode(byte)));
120336 
120337 struct usb_tt_clear {
120338 	struct list_head clear_list;
120339 	unsigned int tt;
120340 	u16 devinfo;
120341 	struct usb_hcd *hcd;
120342 	struct usb_host_endpoint *ep;
120343 };
120344 
120345 enum hub_activation_type {
120346 	HUB_INIT = 0,
120347 	HUB_INIT2 = 1,
120348 	HUB_INIT3 = 2,
120349 	HUB_POST_RESET = 3,
120350 	HUB_RESUME = 4,
120351 	HUB_RESET_RESUME = 5,
120352 };
120353 
120354 enum hub_quiescing_type {
120355 	HUB_DISCONNECT = 0,
120356 	HUB_PRE_RESET = 1,
120357 	HUB_SUSPEND = 2,
120358 };
120359 
120360 struct i2c_smbus_ioctl_data {
120361 	__u8 read_write;
120362 	__u8 command;
120363 	__u32 size;
120364 	union i2c_smbus_data *data;
120365 };
120366 
120367 struct i2c_rdwr_ioctl_data {
120368 	struct i2c_msg *msgs;
120369 	__u32 nmsgs;
120370 };
120371 
120372 struct i2c_dev {
120373 	struct list_head list;
120374 	struct i2c_adapter *adap;
120375 	struct device dev;
120376 	struct cdev cdev;
120377 };
120378 
120379 struct opal_occ_msg {
120380 	__be64 type;
120381 	__be64 chip;
120382 	__be64 throttle_status;
120383 };
120384 
120385 struct global_pstate_info {
120386 	int highest_lpstate_idx;
120387 	unsigned int elapsed_time;
120388 	unsigned int last_sampled_time;
120389 	int last_lpstate_idx;
120390 	int last_gpstate_idx;
120391 	spinlock_t gpstate_lock;
120392 	struct timer_list timer;
120393 	struct cpufreq_policy *policy;
120394 };
120395 
120396 struct pstate_idx_revmap_data {
120397 	u8 pstate_id;
120398 	unsigned int cpufreq_table_idx;
120399 	struct hlist_node hentry;
120400 };
120401 
120402 enum throttle_reason_type {
120403 	NO_THROTTLE = 0,
120404 	POWERCAP = 1,
120405 	CPU_OVERTEMP = 2,
120406 	POWER_SUPPLY_FAILURE = 3,
120407 	OVERCURRENT = 4,
120408 	OCC_RESET_THROTTLE = 5,
120409 	OCC_MAX_REASON = 6,
120410 };
120411 
120412 struct chip {
120413 	unsigned int id;
120414 	bool throttled;
120415 	bool restore;
120416 	u8 throttle_reason;
120417 	cpumask_t mask;
120418 	struct work_struct throttle;
120419 	int throttle_turbo;
120420 	int throttle_sub_turbo;
120421 	int reason[6];
120422 };
120423 
120424 struct powernv_pstate_info {
120425 	unsigned int min;
120426 	unsigned int max;
120427 	unsigned int nominal;
120428 	unsigned int nr_pstates;
120429 	bool wof_enabled;
120430 };
120431 
120432 struct powernv_smp_call_data {
120433 	unsigned int freq;
120434 	u8 pstate_id;
120435 	u8 gpstate_id;
120436 };
120437 
120438 struct gro_cell {
120439 	struct sk_buff_head napi_skbs;
120440 	struct napi_struct napi;
120441 };
120442 
120443 struct percpu_free_defer {
120444 	struct callback_head rcu;
120445 	void *ptr;
120446 };
120447 
120448 enum {
120449 	TCA_ACT_UNSPEC = 0,
120450 	TCA_ACT_KIND = 1,
120451 	TCA_ACT_OPTIONS = 2,
120452 	TCA_ACT_INDEX = 3,
120453 	TCA_ACT_STATS = 4,
120454 	TCA_ACT_PAD = 5,
120455 	TCA_ACT_COOKIE = 6,
120456 	TCA_ACT_FLAGS = 7,
120457 	TCA_ACT_HW_STATS = 8,
120458 	TCA_ACT_USED_HW_STATS = 9,
120459 	TCA_ACT_IN_HW_COUNT = 10,
120460 	__TCA_ACT_MAX = 11,
120461 };
120462 
120463 enum tca_id {
120464 	TCA_ID_UNSPEC = 0,
120465 	TCA_ID_POLICE = 1,
120466 	TCA_ID_GACT = 5,
120467 	TCA_ID_IPT = 6,
120468 	TCA_ID_PEDIT = 7,
120469 	TCA_ID_MIRRED = 8,
120470 	TCA_ID_NAT = 9,
120471 	TCA_ID_XT = 10,
120472 	TCA_ID_SKBEDIT = 11,
120473 	TCA_ID_VLAN = 12,
120474 	TCA_ID_BPF = 13,
120475 	TCA_ID_CONNMARK = 14,
120476 	TCA_ID_SKBMOD = 15,
120477 	TCA_ID_CSUM = 16,
120478 	TCA_ID_TUNNEL_KEY = 17,
120479 	TCA_ID_SIMP = 22,
120480 	TCA_ID_IFE = 25,
120481 	TCA_ID_SAMPLE = 26,
120482 	TCA_ID_CTINFO = 27,
120483 	TCA_ID_MPLS = 28,
120484 	TCA_ID_CT = 29,
120485 	TCA_ID_GATE = 30,
120486 	__TCA_ID_MAX = 255,
120487 };
120488 
120489 struct tcf_t {
120490 	__u64 install;
120491 	__u64 lastuse;
120492 	__u64 expires;
120493 	__u64 firstuse;
120494 };
120495 
120496 struct psample_group {
120497 	struct list_head list;
120498 	struct net *net;
120499 	u32 group_num;
120500 	u32 refcount;
120501 	u32 seq;
120502 	struct callback_head rcu;
120503 };
120504 
120505 struct action_gate_entry {
120506 	u8 gate_state;
120507 	u32 interval;
120508 	s32 ipv;
120509 	s32 maxoctets;
120510 };
120511 
120512 enum qdisc_class_ops_flags {
120513 	QDISC_CLASS_OPS_DOIT_UNLOCKED = 1,
120514 };
120515 
120516 enum tcf_proto_ops_flags {
120517 	TCF_PROTO_OPS_DOIT_UNLOCKED = 1,
120518 };
120519 
120520 typedef void tcf_chain_head_change_t(struct tcf_proto *, void *);
120521 
120522 struct tcf_idrinfo {
120523 	struct mutex lock;
120524 	struct idr action_idr;
120525 	struct net *net;
120526 };
120527 
120528 struct tc_action_ops;
120529 
120530 struct tc_cookie;
120531 
120532 struct tc_action {
120533 	const struct tc_action_ops *ops;
120534 	__u32 type;
120535 	struct tcf_idrinfo *idrinfo;
120536 	u32 tcfa_index;
120537 	refcount_t tcfa_refcnt;
120538 	atomic_t tcfa_bindcnt;
120539 	int tcfa_action;
120540 	struct tcf_t tcfa_tm;
120541 	long: 64;
120542 	struct gnet_stats_basic_sync tcfa_bstats;
120543 	struct gnet_stats_basic_sync tcfa_bstats_hw;
120544 	struct gnet_stats_queue tcfa_qstats;
120545 	struct net_rate_estimator *tcfa_rate_est;
120546 	spinlock_t tcfa_lock;
120547 	struct gnet_stats_basic_sync *cpu_bstats;
120548 	struct gnet_stats_basic_sync *cpu_bstats_hw;
120549 	struct gnet_stats_queue *cpu_qstats;
120550 	struct tc_cookie *act_cookie;
120551 	struct tcf_chain *goto_chain;
120552 	u32 tcfa_flags;
120553 	u8 hw_stats;
120554 	u8 used_hw_stats;
120555 	bool used_hw_stats_valid;
120556 	u32 in_hw_count;
120557 };
120558 
120559 typedef void (*tc_action_priv_destructor)(void *);
120560 
120561 struct tc_action_ops {
120562 	struct list_head head;
120563 	char kind[16];
120564 	enum tca_id id;
120565 	size_t size;
120566 	struct module *owner;
120567 	int (*act)(struct sk_buff *, const struct tc_action *, struct tcf_result *);
120568 	int (*dump)(struct sk_buff *, struct tc_action *, int, int);
120569 	void (*cleanup)(struct tc_action *);
120570 	int (*lookup)(struct net *, struct tc_action **, u32);
120571 	int (*init)(struct net *, struct nlattr *, struct nlattr *, struct tc_action **, struct tcf_proto *, u32, struct netlink_ext_ack *);
120572 	int (*walk)(struct net *, struct sk_buff *, struct netlink_callback *, int, const struct tc_action_ops *, struct netlink_ext_ack *);
120573 	void (*stats_update)(struct tc_action *, u64, u64, u64, u64, bool);
120574 	size_t (*get_fill_size)(const struct tc_action *);
120575 	struct net_device * (*get_dev)(const struct tc_action *, tc_action_priv_destructor *);
120576 	struct psample_group * (*get_psample_group)(const struct tc_action *, tc_action_priv_destructor *);
120577 	int (*offload_act_setup)(struct tc_action *, void *, u32 *, bool, struct netlink_ext_ack *);
120578 };
120579 
120580 struct tc_cookie {
120581 	u8 *data;
120582 	u32 len;
120583 	struct callback_head rcu;
120584 };
120585 
120586 struct tcf_block_ext_info {
120587 	enum flow_block_binder_type binder_type;
120588 	tcf_chain_head_change_t *chain_head_change;
120589 	void *chain_head_change_priv;
120590 	u32 block_index;
120591 };
120592 
120593 struct tcf_qevent {
120594 	struct tcf_block *block;
120595 	struct tcf_block_ext_info info;
120596 	struct tcf_proto *filter_chain;
120597 };
120598 
120599 struct tcf_exts {
120600 	__u32 type;
120601 	int nr_actions;
120602 	struct tc_action **actions;
120603 	struct net *net;
120604 	netns_tracker ns_tracker;
120605 	int action;
120606 	int police;
120607 };
120608 
120609 enum pedit_header_type {
120610 	TCA_PEDIT_KEY_EX_HDR_TYPE_NETWORK = 0,
120611 	TCA_PEDIT_KEY_EX_HDR_TYPE_ETH = 1,
120612 	TCA_PEDIT_KEY_EX_HDR_TYPE_IP4 = 2,
120613 	TCA_PEDIT_KEY_EX_HDR_TYPE_IP6 = 3,
120614 	TCA_PEDIT_KEY_EX_HDR_TYPE_TCP = 4,
120615 	TCA_PEDIT_KEY_EX_HDR_TYPE_UDP = 5,
120616 	__PEDIT_HDR_TYPE_MAX = 6,
120617 };
120618 
120619 enum pedit_cmd {
120620 	TCA_PEDIT_KEY_EX_CMD_SET = 0,
120621 	TCA_PEDIT_KEY_EX_CMD_ADD = 1,
120622 	__PEDIT_CMD_MAX = 2,
120623 };
120624 
120625 struct tc_pedit_key {
120626 	__u32 mask;
120627 	__u32 val;
120628 	__u32 off;
120629 	__u32 at;
120630 	__u32 offmask;
120631 	__u32 shift;
120632 };
120633 
120634 struct tcf_pedit_key_ex {
120635 	enum pedit_header_type htype;
120636 	enum pedit_cmd cmd;
120637 };
120638 
120639 struct tcf_pedit {
120640 	struct tc_action common;
120641 	unsigned char tcfp_nkeys;
120642 	unsigned char tcfp_flags;
120643 	u32 tcfp_off_max_hint;
120644 	struct tc_pedit_key *tcfp_keys;
120645 	struct tcf_pedit_key_ex *tcfp_keys_ex;
120646 	long: 64;
120647 };
120648 
120649 struct tcf_filter_chain_list_item {
120650 	struct list_head list;
120651 	tcf_chain_head_change_t *chain_head_change;
120652 	void *chain_head_change_priv;
120653 };
120654 
120655 struct tcf_net {
120656 	spinlock_t idr_lock;
120657 	struct idr idr;
120658 };
120659 
120660 struct tcf_block_owner_item {
120661 	struct list_head list;
120662 	struct Qdisc *q;
120663 	enum flow_block_binder_type binder_type;
120664 };
120665 
120666 struct tcf_chain_info {
120667 	struct tcf_proto **pprev;
120668 	struct tcf_proto *next;
120669 };
120670 
120671 struct tcf_dump_args {
120672 	struct tcf_walker w;
120673 	struct sk_buff *skb;
120674 	struct netlink_callback *cb;
120675 	struct tcf_block *block;
120676 	struct Qdisc *q;
120677 	u32 parent;
120678 	bool terse_dump;
120679 };
120680 
120681 struct features_reply_data {
120682 	struct ethnl_reply_data base;
120683 	u32 hw[2];
120684 	u32 wanted[2];
120685 	u32 active[2];
120686 	u32 nochange[2];
120687 	u32 all[2];
120688 };
120689 
120690 struct nf_loginfo {
120691 	u_int8_t type;
120692 	union {
120693 		struct {
120694 			u_int32_t copy_len;
120695 			u_int16_t group;
120696 			u_int16_t qthreshold;
120697 			u_int16_t flags;
120698 		} ulog;
120699 		struct {
120700 			u_int8_t level;
120701 			u_int8_t logflags;
120702 		} log;
120703 	} u;
120704 };
120705 
120706 struct nf_log_buf {
120707 	unsigned int count;
120708 	char buf[1020];
120709 };
120710 
120711 struct bpf_iter__udp {
120712 	union {
120713 		struct bpf_iter_meta *meta;
120714 	};
120715 	union {
120716 		struct udp_sock *udp_sk;
120717 	};
120718 	uid_t uid;
120719 	long: 0;
120720 	int bucket;
120721 };
120722 
120723 struct xfrm4_protocol {
120724 	int (*handler)(struct sk_buff *);
120725 	int (*input_handler)(struct sk_buff *, int, __be32, int);
120726 	int (*cb_handler)(struct sk_buff *, int);
120727 	int (*err_handler)(struct sk_buff *, u32);
120728 	struct xfrm4_protocol *next;
120729 	int priority;
120730 };
120731 
120732 enum {
120733 	RPCBPROC_NULL = 0,
120734 	RPCBPROC_SET = 1,
120735 	RPCBPROC_UNSET = 2,
120736 	RPCBPROC_GETPORT = 3,
120737 	RPCBPROC_GETADDR = 3,
120738 	RPCBPROC_DUMP = 4,
120739 	RPCBPROC_CALLIT = 5,
120740 	RPCBPROC_BCAST = 5,
120741 	RPCBPROC_GETTIME = 6,
120742 	RPCBPROC_UADDR2TADDR = 7,
120743 	RPCBPROC_TADDR2UADDR = 8,
120744 	RPCBPROC_GETVERSADDR = 9,
120745 	RPCBPROC_INDIRECT = 10,
120746 	RPCBPROC_GETADDRLIST = 11,
120747 	RPCBPROC_GETSTAT = 12,
120748 };
120749 
120750 struct rpcbind_args {
120751 	struct rpc_xprt *r_xprt;
120752 	u32 r_prog;
120753 	u32 r_vers;
120754 	u32 r_prot;
120755 	short unsigned int r_port;
120756 	const char *r_netid;
120757 	const char *r_addr;
120758 	const char *r_owner;
120759 	int r_status;
120760 };
120761 
120762 struct rpcb_info {
120763 	u32 rpc_vers;
120764 	const struct rpc_procinfo *rpc_proc;
120765 };
120766 
120767 enum {
120768 	GSSX_NULL = 0,
120769 	GSSX_INDICATE_MECHS = 1,
120770 	GSSX_GET_CALL_CONTEXT = 2,
120771 	GSSX_IMPORT_AND_CANON_NAME = 3,
120772 	GSSX_EXPORT_CRED = 4,
120773 	GSSX_IMPORT_CRED = 5,
120774 	GSSX_ACQUIRE_CRED = 6,
120775 	GSSX_STORE_CRED = 7,
120776 	GSSX_INIT_SEC_CONTEXT = 8,
120777 	GSSX_ACCEPT_SEC_CONTEXT = 9,
120778 	GSSX_RELEASE_HANDLE = 10,
120779 	GSSX_GET_MIC = 11,
120780 	GSSX_VERIFY = 12,
120781 	GSSX_WRAP = 13,
120782 	GSSX_UNWRAP = 14,
120783 	GSSX_WRAP_SIZE_LIMIT = 15,
120784 };
120785 
120786 struct minix_super_block {
120787 	__u16 s_ninodes;
120788 	__u16 s_nzones;
120789 	__u16 s_imap_blocks;
120790 	__u16 s_zmap_blocks;
120791 	__u16 s_firstdatazone;
120792 	__u16 s_log_zone_size;
120793 	__u32 s_max_size;
120794 	__u16 s_magic;
120795 	__u16 s_state;
120796 	__u32 s_zones;
120797 };
120798 
120799 struct romfs_super_block {
120800 	__be32 word0;
120801 	__be32 word1;
120802 	__be32 size;
120803 	__be32 checksum;
120804 	char name[0];
120805 };
120806 
120807 struct cramfs_inode {
120808 	__u32 mode: 16;
120809 	__u32 uid: 16;
120810 	__u32 size: 24;
120811 	__u32 gid: 8;
120812 	__u32 namelen: 6;
120813 	__u32 offset: 26;
120814 };
120815 
120816 struct cramfs_info {
120817 	__u32 crc;
120818 	__u32 edition;
120819 	__u32 blocks;
120820 	__u32 files;
120821 };
120822 
120823 struct cramfs_super {
120824 	__u32 magic;
120825 	__u32 size;
120826 	__u32 flags;
120827 	__u32 future;
120828 	__u8 signature[16];
120829 	struct cramfs_info fsid;
120830 	__u8 name[16];
120831 	struct cramfs_inode root;
120832 };
120833 
120834 struct squashfs_super_block {
120835 	__le32 s_magic;
120836 	__le32 inodes;
120837 	__le32 mkfs_time;
120838 	__le32 block_size;
120839 	__le32 fragments;
120840 	__le16 compression;
120841 	__le16 block_log;
120842 	__le16 flags;
120843 	__le16 no_ids;
120844 	__le16 s_major;
120845 	__le16 s_minor;
120846 	__le64 root_inode;
120847 	__le64 bytes_used;
120848 	__le64 id_table_start;
120849 	__le64 xattr_id_table_start;
120850 	__le64 inode_table_start;
120851 	__le64 directory_table_start;
120852 	__le64 fragment_table_start;
120853 	__le64 lookup_table_start;
120854 };
120855 
120856 struct screen_info {
120857 	__u8 orig_x;
120858 	__u8 orig_y;
120859 	__u16 ext_mem_k;
120860 	__u16 orig_video_page;
120861 	__u8 orig_video_mode;
120862 	__u8 orig_video_cols;
120863 	__u8 flags;
120864 	__u8 unused2;
120865 	__u16 orig_video_ega_bx;
120866 	__u16 unused3;
120867 	__u8 orig_video_lines;
120868 	__u8 orig_video_isVGA;
120869 	__u16 orig_video_points;
120870 	__u16 lfb_width;
120871 	__u16 lfb_height;
120872 	__u16 lfb_depth;
120873 	__u32 lfb_base;
120874 	__u32 lfb_size;
120875 	__u16 cl_magic;
120876 	__u16 cl_offset;
120877 	__u16 lfb_linelength;
120878 	__u8 red_size;
120879 	__u8 red_pos;
120880 	__u8 green_size;
120881 	__u8 green_pos;
120882 	__u8 blue_size;
120883 	__u8 blue_pos;
120884 	__u8 rsvd_size;
120885 	__u8 rsvd_pos;
120886 	__u16 vesapm_seg;
120887 	__u16 vesapm_off;
120888 	__u16 pages;
120889 	__u16 vesa_attributes;
120890 	__u32 capabilities;
120891 	__u32 ext_lfb_base;
120892 	__u8 _reserved[2];
120893 } __attribute__((packed));
120894 
120895 struct individual_sensor {
120896 	unsigned int token;
120897 	unsigned int quant;
120898 };
120899 
120900 struct rtas_sensors {
120901 	struct individual_sensor sensor[17];
120902 	unsigned int quant;
120903 };
120904 
120905 struct pci_intx_virq {
120906 	int virq;
120907 	struct kref kref;
120908 	struct list_head list_node;
120909 };
120910 
120911 struct tlbiel_pid {
120912 	long unsigned int pid;
120913 	long unsigned int ric;
120914 };
120915 
120916 struct tlbiel_va {
120917 	long unsigned int pid;
120918 	long unsigned int va;
120919 	long unsigned int psize;
120920 	long unsigned int ric;
120921 };
120922 
120923 struct tlbiel_va_range {
120924 	long unsigned int pid;
120925 	long unsigned int start;
120926 	long unsigned int end;
120927 	long unsigned int page_size;
120928 	long unsigned int psize;
120929 	bool also_pwc;
120930 };
120931 
120932 enum tlb_flush_type {
120933 	FLUSH_TYPE_NONE = 0,
120934 	FLUSH_TYPE_LOCAL = 1,
120935 	FLUSH_TYPE_GLOBAL = 2,
120936 };
120937 
120938 struct xive_irq_bitmap {
120939 	long unsigned int *bitmap;
120940 	unsigned int base;
120941 	unsigned int count;
120942 	spinlock_t lock;
120943 	struct list_head list;
120944 };
120945 
120946 struct dump_obj {
120947 	struct kobject kobj;
120948 	struct bin_attribute dump_attr;
120949 	uint32_t id;
120950 	uint32_t type;
120951 	uint32_t size;
120952 	char *buffer;
120953 };
120954 
120955 struct dump_attribute {
120956 	struct attribute attr;
120957 	ssize_t (*show)(struct dump_obj *, struct dump_attribute *, char *);
120958 	ssize_t (*store)(struct dump_obj *, struct dump_attribute *, const char *, size_t);
120959 };
120960 
120961 struct cpu_hw_events {
120962 	int n_events;
120963 	int n_percpu;
120964 	int disabled;
120965 	int n_added;
120966 	int n_limited;
120967 	u8 pmcs_enabled;
120968 	struct perf_event *event[8];
120969 	u64 events[8];
120970 	unsigned int flags[8];
120971 	struct mmcr_regs mmcr;
120972 	struct perf_event *limited_counter[2];
120973 	u8 limited_hwidx[2];
120974 	u64 alternatives[64];
120975 	long unsigned int amasks[64];
120976 	long unsigned int avalues[64];
120977 	unsigned int txn_flags;
120978 	int n_txn_start;
120979 	u64 bhrb_filter;
120980 	unsigned int bhrb_users;
120981 	void *bhrb_context;
120982 	struct perf_branch_stack bhrb_stack;
120983 	struct perf_branch_entry bhrb_entries[32];
120984 	u64 ic_init;
120985 	long unsigned int pmcs[8];
120986 };
120987 
120988 struct vmemmap_backing {
120989 	struct vmemmap_backing *list;
120990 	long unsigned int phys;
120991 	long unsigned int virt_addr;
120992 };
120993 
120994 struct trace_event_raw_sched_kthread_stop {
120995 	struct trace_entry ent;
120996 	char comm[16];
120997 	pid_t pid;
120998 	char __data[0];
120999 };
121000 
121001 struct trace_event_raw_sched_kthread_stop_ret {
121002 	struct trace_entry ent;
121003 	int ret;
121004 	char __data[0];
121005 };
121006 
121007 struct trace_event_raw_sched_kthread_work_queue_work {
121008 	struct trace_entry ent;
121009 	void *work;
121010 	void *function;
121011 	void *worker;
121012 	char __data[0];
121013 };
121014 
121015 struct trace_event_raw_sched_kthread_work_execute_start {
121016 	struct trace_entry ent;
121017 	void *work;
121018 	void *function;
121019 	char __data[0];
121020 };
121021 
121022 struct trace_event_raw_sched_kthread_work_execute_end {
121023 	struct trace_entry ent;
121024 	void *work;
121025 	void *function;
121026 	char __data[0];
121027 };
121028 
121029 struct trace_event_raw_sched_wakeup_template {
121030 	struct trace_entry ent;
121031 	char comm[16];
121032 	pid_t pid;
121033 	int prio;
121034 	int target_cpu;
121035 	char __data[0];
121036 };
121037 
121038 struct trace_event_raw_sched_switch {
121039 	struct trace_entry ent;
121040 	char prev_comm[16];
121041 	pid_t prev_pid;
121042 	int prev_prio;
121043 	long int prev_state;
121044 	char next_comm[16];
121045 	pid_t next_pid;
121046 	int next_prio;
121047 	char __data[0];
121048 };
121049 
121050 struct trace_event_raw_sched_migrate_task {
121051 	struct trace_entry ent;
121052 	char comm[16];
121053 	pid_t pid;
121054 	int prio;
121055 	int orig_cpu;
121056 	int dest_cpu;
121057 	char __data[0];
121058 };
121059 
121060 struct trace_event_raw_sched_process_template {
121061 	struct trace_entry ent;
121062 	char comm[16];
121063 	pid_t pid;
121064 	int prio;
121065 	char __data[0];
121066 };
121067 
121068 struct trace_event_raw_sched_process_wait {
121069 	struct trace_entry ent;
121070 	char comm[16];
121071 	pid_t pid;
121072 	int prio;
121073 	char __data[0];
121074 };
121075 
121076 struct trace_event_raw_sched_process_fork {
121077 	struct trace_entry ent;
121078 	char parent_comm[16];
121079 	pid_t parent_pid;
121080 	char child_comm[16];
121081 	pid_t child_pid;
121082 	char __data[0];
121083 };
121084 
121085 struct trace_event_raw_sched_process_exec {
121086 	struct trace_entry ent;
121087 	u32 __data_loc_filename;
121088 	pid_t pid;
121089 	pid_t old_pid;
121090 	char __data[0];
121091 };
121092 
121093 struct trace_event_raw_sched_stat_runtime {
121094 	struct trace_entry ent;
121095 	char comm[16];
121096 	pid_t pid;
121097 	u64 runtime;
121098 	u64 vruntime;
121099 	char __data[0];
121100 };
121101 
121102 struct trace_event_raw_sched_pi_setprio {
121103 	struct trace_entry ent;
121104 	char comm[16];
121105 	pid_t pid;
121106 	int oldprio;
121107 	int newprio;
121108 	char __data[0];
121109 };
121110 
121111 struct trace_event_raw_sched_process_hang {
121112 	struct trace_entry ent;
121113 	char comm[16];
121114 	pid_t pid;
121115 	char __data[0];
121116 };
121117 
121118 struct trace_event_raw_sched_move_numa {
121119 	struct trace_entry ent;
121120 	pid_t pid;
121121 	pid_t tgid;
121122 	pid_t ngid;
121123 	int src_cpu;
121124 	int src_nid;
121125 	int dst_cpu;
121126 	int dst_nid;
121127 	char __data[0];
121128 };
121129 
121130 struct trace_event_raw_sched_numa_pair_template {
121131 	struct trace_entry ent;
121132 	pid_t src_pid;
121133 	pid_t src_tgid;
121134 	pid_t src_ngid;
121135 	int src_cpu;
121136 	int src_nid;
121137 	pid_t dst_pid;
121138 	pid_t dst_tgid;
121139 	pid_t dst_ngid;
121140 	int dst_cpu;
121141 	int dst_nid;
121142 	char __data[0];
121143 };
121144 
121145 struct trace_event_raw_sched_wake_idle_without_ipi {
121146 	struct trace_entry ent;
121147 	int cpu;
121148 	char __data[0];
121149 };
121150 
121151 struct trace_event_data_offsets_sched_kthread_stop {};
121152 
121153 struct trace_event_data_offsets_sched_kthread_stop_ret {};
121154 
121155 struct trace_event_data_offsets_sched_kthread_work_queue_work {};
121156 
121157 struct trace_event_data_offsets_sched_kthread_work_execute_start {};
121158 
121159 struct trace_event_data_offsets_sched_kthread_work_execute_end {};
121160 
121161 struct trace_event_data_offsets_sched_wakeup_template {};
121162 
121163 struct trace_event_data_offsets_sched_switch {};
121164 
121165 struct trace_event_data_offsets_sched_migrate_task {};
121166 
121167 struct trace_event_data_offsets_sched_process_template {};
121168 
121169 struct trace_event_data_offsets_sched_process_wait {};
121170 
121171 struct trace_event_data_offsets_sched_process_fork {};
121172 
121173 struct trace_event_data_offsets_sched_process_exec {
121174 	u32 filename;
121175 };
121176 
121177 struct trace_event_data_offsets_sched_stat_runtime {};
121178 
121179 struct trace_event_data_offsets_sched_pi_setprio {};
121180 
121181 struct trace_event_data_offsets_sched_process_hang {};
121182 
121183 struct trace_event_data_offsets_sched_move_numa {};
121184 
121185 struct trace_event_data_offsets_sched_numa_pair_template {};
121186 
121187 struct trace_event_data_offsets_sched_wake_idle_without_ipi {};
121188 
121189 typedef void (*btf_trace_sched_kthread_stop)(void *, struct task_struct *);
121190 
121191 typedef void (*btf_trace_sched_kthread_stop_ret)(void *, int);
121192 
121193 typedef void (*btf_trace_sched_kthread_work_queue_work)(void *, struct kthread_worker *, struct kthread_work *);
121194 
121195 typedef void (*btf_trace_sched_kthread_work_execute_start)(void *, struct kthread_work *);
121196 
121197 typedef void (*btf_trace_sched_kthread_work_execute_end)(void *, struct kthread_work *, kthread_work_func_t);
121198 
121199 typedef void (*btf_trace_sched_waking)(void *, struct task_struct *);
121200 
121201 typedef void (*btf_trace_sched_wakeup)(void *, struct task_struct *);
121202 
121203 typedef void (*btf_trace_sched_wakeup_new)(void *, struct task_struct *);
121204 
121205 typedef void (*btf_trace_sched_switch)(void *, bool, struct task_struct *, struct task_struct *, unsigned int);
121206 
121207 typedef void (*btf_trace_sched_migrate_task)(void *, struct task_struct *, int);
121208 
121209 typedef void (*btf_trace_sched_process_free)(void *, struct task_struct *);
121210 
121211 typedef void (*btf_trace_sched_process_exit)(void *, struct task_struct *);
121212 
121213 typedef void (*btf_trace_sched_wait_task)(void *, struct task_struct *);
121214 
121215 typedef void (*btf_trace_sched_process_wait)(void *, struct pid *);
121216 
121217 typedef void (*btf_trace_sched_process_fork)(void *, struct task_struct *, struct task_struct *);
121218 
121219 typedef void (*btf_trace_sched_process_exec)(void *, struct task_struct *, pid_t, struct linux_binprm *);
121220 
121221 typedef void (*btf_trace_sched_stat_runtime)(void *, struct task_struct *, u64, u64);
121222 
121223 typedef void (*btf_trace_sched_pi_setprio)(void *, struct task_struct *, struct task_struct *);
121224 
121225 typedef void (*btf_trace_sched_process_hang)(void *, struct task_struct *);
121226 
121227 typedef void (*btf_trace_sched_move_numa)(void *, struct task_struct *, int, int);
121228 
121229 typedef void (*btf_trace_sched_stick_numa)(void *, struct task_struct *, int, struct task_struct *, int);
121230 
121231 typedef void (*btf_trace_sched_swap_numa)(void *, struct task_struct *, int, struct task_struct *, int);
121232 
121233 typedef void (*btf_trace_sched_wake_idle_without_ipi)(void *, int);
121234 
121235 typedef void (*btf_trace_pelt_cfs_tp)(void *, struct cfs_rq *);
121236 
121237 typedef void (*btf_trace_pelt_rt_tp)(void *, struct rq *);
121238 
121239 typedef void (*btf_trace_pelt_dl_tp)(void *, struct rq *);
121240 
121241 typedef void (*btf_trace_pelt_thermal_tp)(void *, struct rq *);
121242 
121243 typedef void (*btf_trace_pelt_irq_tp)(void *, struct rq *);
121244 
121245 typedef void (*btf_trace_pelt_se_tp)(void *, struct sched_entity *);
121246 
121247 typedef void (*btf_trace_sched_cpu_capacity_tp)(void *, struct rq *);
121248 
121249 typedef void (*btf_trace_sched_overutilized_tp)(void *, struct root_domain *, bool);
121250 
121251 typedef void (*btf_trace_sched_util_est_cfs_tp)(void *, struct cfs_rq *);
121252 
121253 typedef void (*btf_trace_sched_util_est_se_tp)(void *, struct sched_entity *);
121254 
121255 typedef void (*btf_trace_sched_update_nr_running_tp)(void *, struct rq *, int);
121256 
121257 typedef int (*tg_visitor)(struct task_group *, void *);
121258 
121259 struct set_affinity_pending;
121260 
121261 struct migration_arg {
121262 	struct task_struct *task;
121263 	int dest_cpu;
121264 	struct set_affinity_pending *pending;
121265 };
121266 
121267 struct set_affinity_pending {
121268 	refcount_t refs;
121269 	unsigned int stop_pending;
121270 	struct completion done;
121271 	struct cpu_stop_work stop_work;
121272 	struct migration_arg arg;
121273 };
121274 
121275 struct migration_swap_arg {
121276 	struct task_struct *src_task;
121277 	struct task_struct *dst_task;
121278 	int src_cpu;
121279 	int dst_cpu;
121280 };
121281 
121282 enum {
121283 	cpuset = 0,
121284 	possible = 1,
121285 	fail = 2,
121286 };
121287 
121288 enum {
121289 	BPF_F_GET_BRANCH_RECORDS_SIZE = 1,
121290 };
121291 
121292 struct bpf_perf_event_value {
121293 	__u64 counter;
121294 	__u64 enabled;
121295 	__u64 running;
121296 };
121297 
121298 struct btf_ptr {
121299 	void *ptr;
121300 	__u32 type_id;
121301 	__u32 flags;
121302 };
121303 
121304 struct perf_event_query_bpf {
121305 	__u32 ids_len;
121306 	__u32 prog_cnt;
121307 	__u32 ids[0];
121308 };
121309 
121310 struct trace_event_raw_bpf_trace_printk {
121311 	struct trace_entry ent;
121312 	u32 __data_loc_bpf_string;
121313 	char __data[0];
121314 };
121315 
121316 struct trace_event_data_offsets_bpf_trace_printk {
121317 	u32 bpf_string;
121318 };
121319 
121320 typedef void (*btf_trace_bpf_trace_printk)(void *, const char *);
121321 
121322 struct bpf_trace_module {
121323 	struct module *module;
121324 	struct list_head list;
121325 };
121326 
121327 typedef u64 (*btf_bpf_probe_read_user)(void *, u32, const void *);
121328 
121329 typedef u64 (*btf_bpf_probe_read_user_str)(void *, u32, const void *);
121330 
121331 typedef u64 (*btf_bpf_probe_read_kernel)(void *, u32, const void *);
121332 
121333 typedef u64 (*btf_bpf_probe_read_kernel_str)(void *, u32, const void *);
121334 
121335 typedef u64 (*btf_bpf_probe_read_compat)(void *, u32, const void *);
121336 
121337 typedef u64 (*btf_bpf_probe_read_compat_str)(void *, u32, const void *);
121338 
121339 typedef u64 (*btf_bpf_probe_write_user)(void *, const void *, u32);
121340 
121341 typedef u64 (*btf_bpf_trace_printk)(char *, u32, u64, u64, u64);
121342 
121343 typedef u64 (*btf_bpf_trace_vprintk)(char *, u32, const void *, u32);
121344 
121345 typedef u64 (*btf_bpf_seq_printf)(struct seq_file *, char *, u32, const void *, u32);
121346 
121347 typedef u64 (*btf_bpf_seq_write)(struct seq_file *, const void *, u32);
121348 
121349 typedef u64 (*btf_bpf_seq_printf_btf)(struct seq_file *, struct btf_ptr *, u32, u64);
121350 
121351 typedef u64 (*btf_bpf_perf_event_read)(struct bpf_map *, u64);
121352 
121353 typedef u64 (*btf_bpf_perf_event_read_value)(struct bpf_map *, u64, struct bpf_perf_event_value *, u32);
121354 
121355 struct bpf_trace_sample_data {
121356 	struct perf_sample_data sds[3];
121357 };
121358 
121359 typedef u64 (*btf_bpf_perf_event_output)(struct pt_regs *, struct bpf_map *, u64, void *, u64);
121360 
121361 struct bpf_nested_pt_regs {
121362 	struct pt_regs regs[3];
121363 };
121364 
121365 typedef u64 (*btf_bpf_get_current_task)();
121366 
121367 typedef u64 (*btf_bpf_get_current_task_btf)();
121368 
121369 typedef u64 (*btf_bpf_task_pt_regs)(struct task_struct *);
121370 
121371 typedef u64 (*btf_bpf_current_task_under_cgroup)(struct bpf_map *, u32);
121372 
121373 struct send_signal_irq_work {
121374 	struct irq_work irq_work;
121375 	struct task_struct *task;
121376 	u32 sig;
121377 	enum pid_type type;
121378 };
121379 
121380 typedef u64 (*btf_bpf_send_signal)(u32);
121381 
121382 typedef u64 (*btf_bpf_send_signal_thread)(u32);
121383 
121384 typedef u64 (*btf_bpf_d_path)(struct path *, char *, u32);
121385 
121386 typedef u64 (*btf_bpf_snprintf_btf)(char *, u32, struct btf_ptr *, u32, u64);
121387 
121388 typedef u64 (*btf_bpf_get_func_ip_tracing)(void *);
121389 
121390 typedef u64 (*btf_bpf_get_func_ip_kprobe)(struct pt_regs *);
121391 
121392 typedef u64 (*btf_bpf_get_func_ip_kprobe_multi)(struct pt_regs *);
121393 
121394 typedef u64 (*btf_bpf_get_attach_cookie_kprobe_multi)(struct pt_regs *);
121395 
121396 typedef u64 (*btf_bpf_get_attach_cookie_trace)(void *);
121397 
121398 typedef u64 (*btf_bpf_get_attach_cookie_pe)(struct bpf_perf_event_data_kern *);
121399 
121400 typedef u64 (*btf_bpf_get_attach_cookie_tracing)(void *);
121401 
121402 typedef u64 (*btf_bpf_get_branch_snapshot)(void *, u32, u64);
121403 
121404 typedef u64 (*btf_get_func_arg)(void *, u32, u64 *);
121405 
121406 typedef u64 (*btf_get_func_ret)(void *, u64 *);
121407 
121408 typedef u64 (*btf_get_func_arg_cnt)(void *);
121409 
121410 typedef u64 (*btf_bpf_perf_event_output_tp)(void *, struct bpf_map *, u64, void *, u64);
121411 
121412 typedef u64 (*btf_bpf_get_stackid_tp)(void *, struct bpf_map *, u64);
121413 
121414 typedef u64 (*btf_bpf_get_stack_tp)(void *, void *, u32, u64);
121415 
121416 typedef u64 (*btf_bpf_perf_prog_read_value)(struct bpf_perf_event_data_kern *, struct bpf_perf_event_value *, u32);
121417 
121418 typedef u64 (*btf_bpf_read_branch_records)(struct bpf_perf_event_data_kern *, void *, u32, u64);
121419 
121420 struct bpf_raw_tp_regs {
121421 	struct pt_regs regs[3];
121422 };
121423 
121424 typedef u64 (*btf_bpf_perf_event_output_raw_tp)(struct bpf_raw_tracepoint_args *, struct bpf_map *, u64, void *, u64);
121425 
121426 typedef u64 (*btf_bpf_get_stackid_raw_tp)(struct bpf_raw_tracepoint_args *, struct bpf_map *, u64);
121427 
121428 typedef u64 (*btf_bpf_get_stack_raw_tp)(struct bpf_raw_tracepoint_args *, void *, u32, u64);
121429 
121430 typedef void (*online_page_callback_t)(struct page *, unsigned int);
121431 
121432 enum {
121433 	ONLINE_POLICY_CONTIG_ZONES = 0,
121434 	ONLINE_POLICY_AUTO_MOVABLE = 1,
121435 };
121436 
121437 struct auto_movable_stats {
121438 	long unsigned int kernel_early_pages;
121439 	long unsigned int movable_pages;
121440 };
121441 
121442 struct auto_movable_group_stats {
121443 	long unsigned int movable_pages;
121444 	long unsigned int req_kernel_early_pages;
121445 };
121446 
121447 enum scan_result {
121448 	SCAN_FAIL = 0,
121449 	SCAN_SUCCEED = 1,
121450 	SCAN_PMD_NULL = 2,
121451 	SCAN_EXCEED_NONE_PTE = 3,
121452 	SCAN_EXCEED_SWAP_PTE = 4,
121453 	SCAN_EXCEED_SHARED_PTE = 5,
121454 	SCAN_PTE_NON_PRESENT = 6,
121455 	SCAN_PTE_UFFD_WP = 7,
121456 	SCAN_PAGE_RO = 8,
121457 	SCAN_LACK_REFERENCED_PAGE = 9,
121458 	SCAN_PAGE_NULL = 10,
121459 	SCAN_SCAN_ABORT = 11,
121460 	SCAN_PAGE_COUNT = 12,
121461 	SCAN_PAGE_LRU = 13,
121462 	SCAN_PAGE_LOCK = 14,
121463 	SCAN_PAGE_ANON = 15,
121464 	SCAN_PAGE_COMPOUND = 16,
121465 	SCAN_ANY_PROCESS = 17,
121466 	SCAN_VMA_NULL = 18,
121467 	SCAN_VMA_CHECK = 19,
121468 	SCAN_ADDRESS_RANGE = 20,
121469 	SCAN_DEL_PAGE_LRU = 21,
121470 	SCAN_ALLOC_HUGE_PAGE_FAIL = 22,
121471 	SCAN_CGROUP_CHARGE_FAIL = 23,
121472 	SCAN_TRUNCATED = 24,
121473 	SCAN_PAGE_HAS_PRIVATE = 25,
121474 };
121475 
121476 struct trace_event_raw_mm_khugepaged_scan_pmd {
121477 	struct trace_entry ent;
121478 	struct mm_struct *mm;
121479 	long unsigned int pfn;
121480 	bool writable;
121481 	int referenced;
121482 	int none_or_zero;
121483 	int status;
121484 	int unmapped;
121485 	char __data[0];
121486 };
121487 
121488 struct trace_event_raw_mm_collapse_huge_page {
121489 	struct trace_entry ent;
121490 	struct mm_struct *mm;
121491 	int isolated;
121492 	int status;
121493 	char __data[0];
121494 };
121495 
121496 struct trace_event_raw_mm_collapse_huge_page_isolate {
121497 	struct trace_entry ent;
121498 	long unsigned int pfn;
121499 	int none_or_zero;
121500 	int referenced;
121501 	bool writable;
121502 	int status;
121503 	char __data[0];
121504 };
121505 
121506 struct trace_event_raw_mm_collapse_huge_page_swapin {
121507 	struct trace_entry ent;
121508 	struct mm_struct *mm;
121509 	int swapped_in;
121510 	int referenced;
121511 	int ret;
121512 	char __data[0];
121513 };
121514 
121515 struct trace_event_data_offsets_mm_khugepaged_scan_pmd {};
121516 
121517 struct trace_event_data_offsets_mm_collapse_huge_page {};
121518 
121519 struct trace_event_data_offsets_mm_collapse_huge_page_isolate {};
121520 
121521 struct trace_event_data_offsets_mm_collapse_huge_page_swapin {};
121522 
121523 typedef void (*btf_trace_mm_khugepaged_scan_pmd)(void *, struct mm_struct *, struct page *, bool, int, int, int, int);
121524 
121525 typedef void (*btf_trace_mm_collapse_huge_page)(void *, struct mm_struct *, int, int);
121526 
121527 typedef void (*btf_trace_mm_collapse_huge_page_isolate)(void *, struct page *, int, int, bool, int);
121528 
121529 typedef void (*btf_trace_mm_collapse_huge_page_swapin)(void *, struct mm_struct *, int, int, int);
121530 
121531 struct mm_slot___2 {
121532 	struct hlist_node hash;
121533 	struct list_head mm_node;
121534 	struct mm_struct *mm;
121535 	int nr_pte_mapped_thp;
121536 	long unsigned int pte_mapped_thp[8];
121537 };
121538 
121539 struct khugepaged_scan {
121540 	struct list_head mm_head;
121541 	struct mm_slot___2 *mm_slot;
121542 	long unsigned int address;
121543 };
121544 
121545 struct file_clone_range {
121546 	__s64 src_fd;
121547 	__u64 src_offset;
121548 	__u64 src_length;
121549 	__u64 dest_offset;
121550 };
121551 
121552 struct space_resv {
121553 	__s16 l_type;
121554 	__s16 l_whence;
121555 	__s64 l_start;
121556 	__s64 l_len;
121557 	__s32 l_sysid;
121558 	__u32 l_pid;
121559 	__s32 l_pad[4];
121560 };
121561 
121562 struct core_name {
121563 	char *corename;
121564 	int used;
121565 	int size;
121566 };
121567 
121568 enum SHIFT_DIRECTION {
121569 	SHIFT_LEFT = 0,
121570 	SHIFT_RIGHT = 1,
121571 };
121572 
121573 struct ext4_extent_tail {
121574 	__le32 et_checksum;
121575 };
121576 
121577 struct ext4_xattr_header {
121578 	__le32 h_magic;
121579 	__le32 h_refcount;
121580 	__le32 h_blocks;
121581 	__le32 h_hash;
121582 	__le32 h_checksum;
121583 	__u32 h_reserved[3];
121584 };
121585 
121586 struct ext4_xattr_entry {
121587 	__u8 e_name_len;
121588 	__u8 e_name_index;
121589 	__le16 e_value_offs;
121590 	__le32 e_value_inum;
121591 	__le32 e_value_size;
121592 	__le32 e_hash;
121593 	char e_name[0];
121594 };
121595 
121596 struct ext4_xattr_info {
121597 	const char *name;
121598 	const void *value;
121599 	size_t value_len;
121600 	int name_index;
121601 	int in_inode;
121602 };
121603 
121604 struct ext4_xattr_search {
121605 	struct ext4_xattr_entry *first;
121606 	void *base;
121607 	void *end;
121608 	struct ext4_xattr_entry *here;
121609 	int not_found;
121610 };
121611 
121612 struct ext4_xattr_ibody_find {
121613 	struct ext4_xattr_search s;
121614 	struct ext4_iloc iloc;
121615 };
121616 
121617 struct ext4_xattr_block_find {
121618 	struct ext4_xattr_search s;
121619 	struct buffer_head *bh;
121620 };
121621 
121622 struct SU_SP_s {
121623 	__u8 magic[2];
121624 	__u8 skip;
121625 };
121626 
121627 struct SU_CE_s {
121628 	__u8 extent[8];
121629 	__u8 offset[8];
121630 	__u8 size[8];
121631 };
121632 
121633 struct SU_ER_s {
121634 	__u8 len_id;
121635 	__u8 len_des;
121636 	__u8 len_src;
121637 	__u8 ext_ver;
121638 	__u8 data[0];
121639 };
121640 
121641 struct RR_RR_s {
121642 	__u8 flags[1];
121643 };
121644 
121645 struct RR_PX_s {
121646 	__u8 mode[8];
121647 	__u8 n_links[8];
121648 	__u8 uid[8];
121649 	__u8 gid[8];
121650 };
121651 
121652 struct RR_PN_s {
121653 	__u8 dev_high[8];
121654 	__u8 dev_low[8];
121655 };
121656 
121657 struct SL_component {
121658 	__u8 flags;
121659 	__u8 len;
121660 	__u8 text[0];
121661 };
121662 
121663 struct RR_SL_s {
121664 	__u8 flags;
121665 	struct SL_component link;
121666 };
121667 
121668 struct RR_NM_s {
121669 	__u8 flags;
121670 	char name[0];
121671 };
121672 
121673 struct RR_CL_s {
121674 	__u8 location[8];
121675 };
121676 
121677 struct RR_PL_s {
121678 	__u8 location[8];
121679 };
121680 
121681 struct stamp {
121682 	__u8 time[7];
121683 };
121684 
121685 struct RR_TF_s {
121686 	__u8 flags;
121687 	struct stamp times[0];
121688 };
121689 
121690 struct RR_ZF_s {
121691 	__u8 algorithm[2];
121692 	__u8 parms[2];
121693 	__u8 real_size[8];
121694 };
121695 
121696 struct rock_ridge {
121697 	__u8 signature[2];
121698 	__u8 len;
121699 	__u8 version;
121700 	union {
121701 		struct SU_SP_s SP;
121702 		struct SU_CE_s CE;
121703 		struct SU_ER_s ER;
121704 		struct RR_RR_s RR;
121705 		struct RR_PX_s PX;
121706 		struct RR_PN_s PN;
121707 		struct RR_SL_s SL;
121708 		struct RR_NM_s NM;
121709 		struct RR_CL_s CL;
121710 		struct RR_PL_s PL;
121711 		struct RR_TF_s TF;
121712 		struct RR_ZF_s ZF;
121713 	} u;
121714 };
121715 
121716 struct rock_state {
121717 	void *buffer;
121718 	unsigned char *chr;
121719 	int len;
121720 	int cont_size;
121721 	int cont_extent;
121722 	int cont_offset;
121723 	int cont_loops;
121724 	struct inode *inode;
121725 };
121726 
121727 struct nfs4_layoutget {
121728 	struct nfs4_layoutget_args args;
121729 	struct nfs4_layoutget_res res;
121730 	const struct cred *cred;
121731 	struct pnfs_layout_hdr *lo;
121732 	gfp_t gfp_flags;
121733 };
121734 
121735 struct nfs_release_lockowner_res {
121736 	struct nfs4_sequence_res seq_res;
121737 };
121738 
121739 struct nfs4_cached_acl {
121740 	enum nfs4_acl_type type;
121741 	int cached;
121742 	size_t len;
121743 	char data[0];
121744 };
121745 
121746 struct nfs4_exception {
121747 	struct nfs4_state *state;
121748 	struct inode *inode;
121749 	nfs4_stateid *stateid;
121750 	long int timeout;
121751 	unsigned char task_is_privileged: 1;
121752 	unsigned char delay: 1;
121753 	unsigned char recovering: 1;
121754 	unsigned char retry: 1;
121755 	bool interruptible;
121756 };
121757 
121758 struct nfs4_opendata {
121759 	struct kref kref;
121760 	struct nfs_openargs o_arg;
121761 	struct nfs_openres o_res;
121762 	struct nfs_open_confirmargs c_arg;
121763 	struct nfs_open_confirmres c_res;
121764 	struct nfs4_string owner_name;
121765 	struct nfs4_string group_name;
121766 	struct nfs4_label *a_label;
121767 	struct nfs_fattr f_attr;
121768 	struct dentry *dir;
121769 	struct dentry *dentry;
121770 	struct nfs4_state_owner *owner;
121771 	struct nfs4_state *state;
121772 	struct iattr attrs;
121773 	struct nfs4_layoutget *lgp;
121774 	long unsigned int timestamp;
121775 	bool rpc_done;
121776 	bool file_created;
121777 	bool is_recover;
121778 	bool cancelled;
121779 	int rpc_status;
121780 };
121781 
121782 struct nfs4_add_xprt_data {
121783 	struct nfs_client *clp;
121784 	const struct cred *cred;
121785 };
121786 
121787 struct nfs4_call_sync_data {
121788 	const struct nfs_server *seq_server;
121789 	struct nfs4_sequence_args *seq_args;
121790 	struct nfs4_sequence_res *seq_res;
121791 };
121792 
121793 struct nfs4_open_createattrs {
121794 	struct nfs4_label *label;
121795 	struct iattr *sattr;
121796 	const __u32 verf[2];
121797 };
121798 
121799 struct nfs4_closedata {
121800 	struct inode *inode;
121801 	struct nfs4_state *state;
121802 	struct nfs_closeargs arg;
121803 	struct nfs_closeres res;
121804 	struct {
121805 		struct nfs4_layoutreturn_args arg;
121806 		struct nfs4_layoutreturn_res res;
121807 		struct nfs4_xdr_opaque_data ld_private;
121808 		u32 roc_barrier;
121809 		bool roc;
121810 	} lr;
121811 	struct nfs_fattr fattr;
121812 	long unsigned int timestamp;
121813 };
121814 
121815 struct nfs4_createdata {
121816 	struct rpc_message msg;
121817 	struct nfs4_create_arg arg;
121818 	struct nfs4_create_res res;
121819 	struct nfs_fh fh;
121820 	struct nfs_fattr fattr;
121821 };
121822 
121823 struct nfs4_renewdata {
121824 	struct nfs_client *client;
121825 	long unsigned int timestamp;
121826 };
121827 
121828 struct nfs4_delegreturndata {
121829 	struct nfs4_delegreturnargs args;
121830 	struct nfs4_delegreturnres res;
121831 	struct nfs_fh fh;
121832 	nfs4_stateid stateid;
121833 	long unsigned int timestamp;
121834 	struct {
121835 		struct nfs4_layoutreturn_args arg;
121836 		struct nfs4_layoutreturn_res res;
121837 		struct nfs4_xdr_opaque_data ld_private;
121838 		u32 roc_barrier;
121839 		bool roc;
121840 	} lr;
121841 	struct nfs_fattr fattr;
121842 	int rpc_status;
121843 	struct inode *inode;
121844 };
121845 
121846 struct nfs4_unlockdata {
121847 	struct nfs_locku_args arg;
121848 	struct nfs_locku_res res;
121849 	struct nfs4_lock_state *lsp;
121850 	struct nfs_open_context *ctx;
121851 	struct nfs_lock_context *l_ctx;
121852 	struct file_lock fl;
121853 	struct nfs_server *server;
121854 	long unsigned int timestamp;
121855 };
121856 
121857 struct nfs4_lockdata {
121858 	struct nfs_lock_args arg;
121859 	struct nfs_lock_res res;
121860 	struct nfs4_lock_state *lsp;
121861 	struct nfs_open_context *ctx;
121862 	struct file_lock fl;
121863 	long unsigned int timestamp;
121864 	int rpc_status;
121865 	int cancelled;
121866 	struct nfs_server *server;
121867 };
121868 
121869 struct nfs_release_lockowner_data {
121870 	struct nfs4_lock_state *lsp;
121871 	struct nfs_server *server;
121872 	struct nfs_release_lockowner_args args;
121873 	struct nfs_release_lockowner_res res;
121874 	long unsigned int timestamp;
121875 };
121876 
121877 struct nfs4_get_lease_time_data {
121878 	struct nfs4_get_lease_time_args *args;
121879 	struct nfs4_get_lease_time_res *res;
121880 	struct nfs_client *clp;
121881 };
121882 
121883 struct nlmclnt_initdata {
121884 	const char *hostname;
121885 	const struct sockaddr *address;
121886 	size_t addrlen;
121887 	short unsigned int protocol;
121888 	u32 nfs_version;
121889 	int noresvport;
121890 	struct net *net;
121891 	const struct nlmclnt_operations *nlmclnt_ops;
121892 	const struct cred *cred;
121893 };
121894 
121895 struct nlm_wait {
121896 	struct list_head b_list;
121897 	wait_queue_head_t b_wait;
121898 	struct nlm_host *b_host;
121899 	struct file_lock *b_lock;
121900 	short unsigned int b_reclaim;
121901 	__be32 b_status;
121902 };
121903 
121904 struct utf8_table {
121905 	int cmask;
121906 	int cval;
121907 	int shift;
121908 	long int lmask;
121909 	long int lval;
121910 };
121911 
121912 struct xfs_dir3_data_hdr {
121913 	struct xfs_dir3_blk_hdr hdr;
121914 	xfs_dir2_data_free_t best_free[3];
121915 	__be32 pad;
121916 };
121917 
121918 struct xlog_cil_pcp {
121919 	int32_t space_used;
121920 	uint32_t space_reserved;
121921 	struct list_head busy_extents;
121922 	struct list_head log_items;
121923 };
121924 
121925 enum _record_type {
121926 	_START_RECORD = 0,
121927 	_COMMIT_RECORD = 1,
121928 };
121929 
121930 struct xlog_cil_trans_hdr {
121931 	struct xlog_op_header oph[2];
121932 	struct xfs_trans_header thdr;
121933 	struct xfs_log_iovec lhdr[2];
121934 };
121935 
121936 struct debugfs_mount_opts {
121937 	kuid_t uid;
121938 	kgid_t gid;
121939 	umode_t mode;
121940 };
121941 
121942 enum {
121943 	Opt_uid___6 = 0,
121944 	Opt_gid___7 = 1,
121945 	Opt_mode___6 = 2,
121946 	Opt_err___6 = 3,
121947 };
121948 
121949 struct debugfs_fs_info {
121950 	struct debugfs_mount_opts mount_opts;
121951 };
121952 
121953 struct crypto_sync_skcipher;
121954 
121955 struct aead_geniv_ctx {
121956 	spinlock_t lock;
121957 	struct crypto_aead *child;
121958 	struct crypto_sync_skcipher *sknull;
121959 	u8 salt[0];
121960 };
121961 
121962 struct blk_mq_hw_ctx_sysfs_entry {
121963 	struct attribute attr;
121964 	ssize_t (*show)(struct blk_mq_hw_ctx *, char *);
121965 	ssize_t (*store)(struct blk_mq_hw_ctx *, const char *, size_t);
121966 };
121967 
121968 struct trace_event_raw_kyber_latency {
121969 	struct trace_entry ent;
121970 	dev_t dev;
121971 	char domain[16];
121972 	char type[8];
121973 	u8 percentile;
121974 	u8 numerator;
121975 	u8 denominator;
121976 	unsigned int samples;
121977 	char __data[0];
121978 };
121979 
121980 struct trace_event_raw_kyber_adjust {
121981 	struct trace_entry ent;
121982 	dev_t dev;
121983 	char domain[16];
121984 	unsigned int depth;
121985 	char __data[0];
121986 };
121987 
121988 struct trace_event_raw_kyber_throttled {
121989 	struct trace_entry ent;
121990 	dev_t dev;
121991 	char domain[16];
121992 	char __data[0];
121993 };
121994 
121995 struct trace_event_data_offsets_kyber_latency {};
121996 
121997 struct trace_event_data_offsets_kyber_adjust {};
121998 
121999 struct trace_event_data_offsets_kyber_throttled {};
122000 
122001 typedef void (*btf_trace_kyber_latency)(void *, dev_t, const char *, const char *, unsigned int, unsigned int, unsigned int, unsigned int);
122002 
122003 typedef void (*btf_trace_kyber_adjust)(void *, dev_t, const char *, unsigned int);
122004 
122005 typedef void (*btf_trace_kyber_throttled)(void *, dev_t, const char *);
122006 
122007 enum {
122008 	KYBER_READ = 0,
122009 	KYBER_WRITE = 1,
122010 	KYBER_DISCARD = 2,
122011 	KYBER_OTHER = 3,
122012 	KYBER_NUM_DOMAINS = 4,
122013 };
122014 
122015 enum {
122016 	KYBER_ASYNC_PERCENT = 75,
122017 };
122018 
122019 enum {
122020 	KYBER_LATENCY_SHIFT = 2,
122021 	KYBER_GOOD_BUCKETS = 4,
122022 	KYBER_LATENCY_BUCKETS = 8,
122023 };
122024 
122025 enum {
122026 	KYBER_TOTAL_LATENCY = 0,
122027 	KYBER_IO_LATENCY = 1,
122028 };
122029 
122030 struct kyber_cpu_latency {
122031 	atomic_t buckets[48];
122032 };
122033 
122034 struct kyber_ctx_queue {
122035 	spinlock_t lock;
122036 	struct list_head rq_list[4];
122037 	long: 64;
122038 	long: 64;
122039 	long: 64;
122040 	long: 64;
122041 	long: 64;
122042 	long: 64;
122043 	long: 64;
122044 };
122045 
122046 struct kyber_queue_data {
122047 	struct request_queue *q;
122048 	dev_t dev;
122049 	struct sbitmap_queue domain_tokens[4];
122050 	unsigned int async_depth;
122051 	struct kyber_cpu_latency *cpu_latency;
122052 	struct timer_list timer;
122053 	unsigned int latency_buckets[48];
122054 	long unsigned int latency_timeout[3];
122055 	int domain_p99[3];
122056 	u64 latency_targets[3];
122057 };
122058 
122059 struct kyber_hctx_data {
122060 	spinlock_t lock;
122061 	struct list_head rqs[4];
122062 	unsigned int cur_domain;
122063 	unsigned int batching;
122064 	struct kyber_ctx_queue *kcqs;
122065 	struct sbitmap kcq_map[4];
122066 	struct sbq_wait domain_wait[4];
122067 	struct sbq_wait_state *domain_ws[4];
122068 	atomic_t wait_index[4];
122069 };
122070 
122071 struct flush_kcq_data {
122072 	struct kyber_hctx_data *khd;
122073 	unsigned int sched_domain;
122074 	struct list_head *list;
122075 };
122076 
122077 struct io_uring_sync_cancel_reg {
122078 	__u64 addr;
122079 	__s32 fd;
122080 	__u32 flags;
122081 	struct __kernel_timespec timeout;
122082 	__u64 pad[4];
122083 };
122084 
122085 struct io_cancel {
122086 	struct file *file;
122087 	u64 addr;
122088 	u32 flags;
122089 	s32 fd;
122090 };
122091 
122092 enum devm_ioremap_type {
122093 	DEVM_IOREMAP = 0,
122094 	DEVM_IOREMAP_UC = 1,
122095 	DEVM_IOREMAP_WC = 2,
122096 	DEVM_IOREMAP_NP = 3,
122097 };
122098 
122099 struct pcim_iomap_devres {
122100 	void *table[6];
122101 };
122102 
122103 struct arch_io_reserve_memtype_wc_devres {
122104 	resource_size_t start;
122105 	resource_size_t size;
122106 };
122107 
122108 enum bug_trap_type {
122109 	BUG_TRAP_TYPE_NONE = 0,
122110 	BUG_TRAP_TYPE_WARN = 1,
122111 	BUG_TRAP_TYPE_BUG = 2,
122112 };
122113 
122114 struct warn_args;
122115 
122116 struct klist_waiter {
122117 	struct list_head list;
122118 	struct klist_node *node;
122119 	struct task_struct *process;
122120 	int woken;
122121 };
122122 
122123 enum pci_bar_type {
122124 	pci_bar_unknown = 0,
122125 	pci_bar_io = 1,
122126 	pci_bar_mem32 = 2,
122127 	pci_bar_mem64 = 3,
122128 };
122129 
122130 struct pci_domain_busn_res {
122131 	struct list_head list;
122132 	struct resource res;
122133 	int domain_nr;
122134 };
122135 
122136 enum v4l2_ctrl_type {
122137 	V4L2_CTRL_TYPE_INTEGER = 1,
122138 	V4L2_CTRL_TYPE_BOOLEAN = 2,
122139 	V4L2_CTRL_TYPE_MENU = 3,
122140 	V4L2_CTRL_TYPE_BUTTON = 4,
122141 	V4L2_CTRL_TYPE_INTEGER64 = 5,
122142 	V4L2_CTRL_TYPE_CTRL_CLASS = 6,
122143 	V4L2_CTRL_TYPE_STRING = 7,
122144 	V4L2_CTRL_TYPE_BITMASK = 8,
122145 	V4L2_CTRL_TYPE_INTEGER_MENU = 9,
122146 	V4L2_CTRL_COMPOUND_TYPES = 256,
122147 	V4L2_CTRL_TYPE_U8 = 256,
122148 	V4L2_CTRL_TYPE_U16 = 257,
122149 	V4L2_CTRL_TYPE_U32 = 258,
122150 	V4L2_CTRL_TYPE_AREA = 262,
122151 	V4L2_CTRL_TYPE_HDR10_CLL_INFO = 272,
122152 	V4L2_CTRL_TYPE_HDR10_MASTERING_DISPLAY = 273,
122153 	V4L2_CTRL_TYPE_H264_SPS = 512,
122154 	V4L2_CTRL_TYPE_H264_PPS = 513,
122155 	V4L2_CTRL_TYPE_H264_SCALING_MATRIX = 514,
122156 	V4L2_CTRL_TYPE_H264_SLICE_PARAMS = 515,
122157 	V4L2_CTRL_TYPE_H264_DECODE_PARAMS = 516,
122158 	V4L2_CTRL_TYPE_H264_PRED_WEIGHTS = 517,
122159 	V4L2_CTRL_TYPE_FWHT_PARAMS = 544,
122160 	V4L2_CTRL_TYPE_VP8_FRAME = 576,
122161 	V4L2_CTRL_TYPE_MPEG2_QUANTISATION = 592,
122162 	V4L2_CTRL_TYPE_MPEG2_SEQUENCE = 593,
122163 	V4L2_CTRL_TYPE_MPEG2_PICTURE = 594,
122164 	V4L2_CTRL_TYPE_VP9_COMPRESSED_HDR = 608,
122165 	V4L2_CTRL_TYPE_VP9_FRAME = 609,
122166 	V4L2_CTRL_TYPE_HEVC_SPS = 624,
122167 	V4L2_CTRL_TYPE_HEVC_PPS = 625,
122168 	V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS = 626,
122169 	V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX = 627,
122170 	V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS = 628,
122171 };
122172 
122173 enum matroxfb_ctrl_id {
122174 	MATROXFB_CID_TESTOUT = 134217728,
122175 	MATROXFB_CID_DEFLICKER = 134217729,
122176 	MATROXFB_CID_LAST = 134217730,
122177 };
122178 
122179 struct mctl {
122180 	struct v4l2_queryctrl desc;
122181 	size_t control;
122182 };
122183 
122184 struct output_desc {
122185 	unsigned int h_vis;
122186 	unsigned int h_f_porch;
122187 	unsigned int h_sync;
122188 	unsigned int h_b_porch;
122189 	long long unsigned int chromasc;
122190 	unsigned int burst;
122191 	unsigned int v_total;
122192 };
122193 
122194 struct devres_node {
122195 	struct list_head entry;
122196 	dr_release_t release;
122197 	const char *name;
122198 	size_t size;
122199 };
122200 
122201 struct devres {
122202 	struct devres_node node;
122203 	u8 data[0];
122204 };
122205 
122206 struct devres_group {
122207 	struct devres_node node[2];
122208 	void *id;
122209 	int color;
122210 };
122211 
122212 struct action_devres {
122213 	void *data;
122214 	void (*action)(void *);
122215 };
122216 
122217 struct pages_devres {
122218 	long unsigned int addr;
122219 	unsigned int order;
122220 };
122221 
122222 struct ccs_modesel_head {
122223 	__u8 _r1;
122224 	__u8 medium;
122225 	__u8 _r2;
122226 	__u8 block_desc_length;
122227 	__u8 density;
122228 	__u8 number_blocks_hi;
122229 	__u8 number_blocks_med;
122230 	__u8 number_blocks_lo;
122231 	__u8 _r3;
122232 	__u8 block_length_hi;
122233 	__u8 block_length_med;
122234 	__u8 block_length_lo;
122235 };
122236 
122237 struct tg3_tx_buffer_desc {
122238 	u32 addr_hi;
122239 	u32 addr_lo;
122240 	u32 len_flags;
122241 	u32 vlan_tag;
122242 };
122243 
122244 struct tg3_rx_buffer_desc {
122245 	u32 addr_hi;
122246 	u32 addr_lo;
122247 	u32 idx_len;
122248 	u32 type_flags;
122249 	u32 ip_tcp_csum;
122250 	u32 err_vlan;
122251 	u32 reserved;
122252 	u32 opaque;
122253 };
122254 
122255 struct tg3_ext_rx_buffer_desc {
122256 	struct {
122257 		u32 addr_hi;
122258 		u32 addr_lo;
122259 	} addrlist[3];
122260 	u32 len2_len1;
122261 	u32 resv_len3;
122262 	struct tg3_rx_buffer_desc std;
122263 };
122264 
122265 struct tg3_internal_buffer_desc {
122266 	u32 addr_hi;
122267 	u32 addr_lo;
122268 	u32 nic_mbuf;
122269 	u16 len;
122270 	u16 cqid_sqid;
122271 	u32 flags;
122272 	u32 __cookie1;
122273 	u32 __cookie2;
122274 	u32 __cookie3;
122275 };
122276 
122277 struct tg3_hw_status {
122278 	u32 status;
122279 	u32 status_tag;
122280 	u16 rx_jumbo_consumer;
122281 	u16 rx_consumer;
122282 	u16 rx_mini_consumer;
122283 	u16 reserved;
122284 	struct {
122285 		u16 rx_producer;
122286 		u16 tx_consumer;
122287 	} idx[16];
122288 };
122289 
122290 typedef struct {
122291 	u32 high;
122292 	u32 low;
122293 } tg3_stat64_t;
122294 
122295 struct tg3_hw_stats {
122296 	u8 __reserved0[256];
122297 	tg3_stat64_t rx_octets;
122298 	u64 __reserved1;
122299 	tg3_stat64_t rx_fragments;
122300 	tg3_stat64_t rx_ucast_packets;
122301 	tg3_stat64_t rx_mcast_packets;
122302 	tg3_stat64_t rx_bcast_packets;
122303 	tg3_stat64_t rx_fcs_errors;
122304 	tg3_stat64_t rx_align_errors;
122305 	tg3_stat64_t rx_xon_pause_rcvd;
122306 	tg3_stat64_t rx_xoff_pause_rcvd;
122307 	tg3_stat64_t rx_mac_ctrl_rcvd;
122308 	tg3_stat64_t rx_xoff_entered;
122309 	tg3_stat64_t rx_frame_too_long_errors;
122310 	tg3_stat64_t rx_jabbers;
122311 	tg3_stat64_t rx_undersize_packets;
122312 	tg3_stat64_t rx_in_length_errors;
122313 	tg3_stat64_t rx_out_length_errors;
122314 	tg3_stat64_t rx_64_or_less_octet_packets;
122315 	tg3_stat64_t rx_65_to_127_octet_packets;
122316 	tg3_stat64_t rx_128_to_255_octet_packets;
122317 	tg3_stat64_t rx_256_to_511_octet_packets;
122318 	tg3_stat64_t rx_512_to_1023_octet_packets;
122319 	tg3_stat64_t rx_1024_to_1522_octet_packets;
122320 	tg3_stat64_t rx_1523_to_2047_octet_packets;
122321 	tg3_stat64_t rx_2048_to_4095_octet_packets;
122322 	tg3_stat64_t rx_4096_to_8191_octet_packets;
122323 	tg3_stat64_t rx_8192_to_9022_octet_packets;
122324 	u64 __unused0[37];
122325 	tg3_stat64_t tx_octets;
122326 	u64 __reserved2;
122327 	tg3_stat64_t tx_collisions;
122328 	tg3_stat64_t tx_xon_sent;
122329 	tg3_stat64_t tx_xoff_sent;
122330 	tg3_stat64_t tx_flow_control;
122331 	tg3_stat64_t tx_mac_errors;
122332 	tg3_stat64_t tx_single_collisions;
122333 	tg3_stat64_t tx_mult_collisions;
122334 	tg3_stat64_t tx_deferred;
122335 	u64 __reserved3;
122336 	tg3_stat64_t tx_excessive_collisions;
122337 	tg3_stat64_t tx_late_collisions;
122338 	tg3_stat64_t tx_collide_2times;
122339 	tg3_stat64_t tx_collide_3times;
122340 	tg3_stat64_t tx_collide_4times;
122341 	tg3_stat64_t tx_collide_5times;
122342 	tg3_stat64_t tx_collide_6times;
122343 	tg3_stat64_t tx_collide_7times;
122344 	tg3_stat64_t tx_collide_8times;
122345 	tg3_stat64_t tx_collide_9times;
122346 	tg3_stat64_t tx_collide_10times;
122347 	tg3_stat64_t tx_collide_11times;
122348 	tg3_stat64_t tx_collide_12times;
122349 	tg3_stat64_t tx_collide_13times;
122350 	tg3_stat64_t tx_collide_14times;
122351 	tg3_stat64_t tx_collide_15times;
122352 	tg3_stat64_t tx_ucast_packets;
122353 	tg3_stat64_t tx_mcast_packets;
122354 	tg3_stat64_t tx_bcast_packets;
122355 	tg3_stat64_t tx_carrier_sense_errors;
122356 	tg3_stat64_t tx_discards;
122357 	tg3_stat64_t tx_errors;
122358 	u64 __unused1[31];
122359 	tg3_stat64_t COS_rx_packets[16];
122360 	tg3_stat64_t COS_rx_filter_dropped;
122361 	tg3_stat64_t dma_writeq_full;
122362 	tg3_stat64_t dma_write_prioq_full;
122363 	tg3_stat64_t rxbds_empty;
122364 	tg3_stat64_t rx_discards;
122365 	tg3_stat64_t rx_errors;
122366 	tg3_stat64_t rx_threshold_hit;
122367 	u64 __unused2[9];
122368 	tg3_stat64_t COS_out_packets[16];
122369 	tg3_stat64_t dma_readq_full;
122370 	tg3_stat64_t dma_read_prioq_full;
122371 	tg3_stat64_t tx_comp_queue_full;
122372 	tg3_stat64_t ring_set_send_prod_index;
122373 	tg3_stat64_t ring_status_update;
122374 	tg3_stat64_t nic_irqs;
122375 	tg3_stat64_t nic_avoided_irqs;
122376 	tg3_stat64_t nic_tx_threshold_hit;
122377 	tg3_stat64_t mbuf_lwm_thresh_hit;
122378 	u8 __reserved4[312];
122379 };
122380 
122381 struct tg3_ocir {
122382 	u32 signature;
122383 	u16 version_flags;
122384 	u16 refresh_int;
122385 	u32 refresh_tmr;
122386 	u32 update_tmr;
122387 	u32 dst_base_addr;
122388 	u16 src_hdr_offset;
122389 	u16 src_hdr_length;
122390 	u16 src_data_offset;
122391 	u16 src_data_length;
122392 	u16 dst_hdr_offset;
122393 	u16 dst_data_offset;
122394 	u16 dst_reg_upd_offset;
122395 	u16 dst_sem_offset;
122396 	u32 reserved1[2];
122397 	u32 port0_flags;
122398 	u32 port1_flags;
122399 	u32 port2_flags;
122400 	u32 port3_flags;
122401 	u32 reserved2;
122402 };
122403 
122404 struct ring_info {
122405 	u8 *data;
122406 	dma_addr_t mapping;
122407 };
122408 
122409 struct tg3_tx_ring_info {
122410 	struct sk_buff *skb;
122411 	dma_addr_t mapping;
122412 	bool fragmented;
122413 };
122414 
122415 struct tg3_link_config {
122416 	u32 advertising;
122417 	u32 speed;
122418 	u8 duplex;
122419 	u8 autoneg;
122420 	u8 flowctrl;
122421 	u8 active_flowctrl;
122422 	u8 active_duplex;
122423 	u32 active_speed;
122424 	u32 rmt_adv;
122425 };
122426 
122427 struct tg3_bufmgr_config {
122428 	u32 mbuf_read_dma_low_water;
122429 	u32 mbuf_mac_rx_low_water;
122430 	u32 mbuf_high_water;
122431 	u32 mbuf_read_dma_low_water_jumbo;
122432 	u32 mbuf_mac_rx_low_water_jumbo;
122433 	u32 mbuf_high_water_jumbo;
122434 	u32 dma_low_water;
122435 	u32 dma_high_water;
122436 };
122437 
122438 struct tg3_ethtool_stats {
122439 	u64 rx_octets;
122440 	u64 rx_fragments;
122441 	u64 rx_ucast_packets;
122442 	u64 rx_mcast_packets;
122443 	u64 rx_bcast_packets;
122444 	u64 rx_fcs_errors;
122445 	u64 rx_align_errors;
122446 	u64 rx_xon_pause_rcvd;
122447 	u64 rx_xoff_pause_rcvd;
122448 	u64 rx_mac_ctrl_rcvd;
122449 	u64 rx_xoff_entered;
122450 	u64 rx_frame_too_long_errors;
122451 	u64 rx_jabbers;
122452 	u64 rx_undersize_packets;
122453 	u64 rx_in_length_errors;
122454 	u64 rx_out_length_errors;
122455 	u64 rx_64_or_less_octet_packets;
122456 	u64 rx_65_to_127_octet_packets;
122457 	u64 rx_128_to_255_octet_packets;
122458 	u64 rx_256_to_511_octet_packets;
122459 	u64 rx_512_to_1023_octet_packets;
122460 	u64 rx_1024_to_1522_octet_packets;
122461 	u64 rx_1523_to_2047_octet_packets;
122462 	u64 rx_2048_to_4095_octet_packets;
122463 	u64 rx_4096_to_8191_octet_packets;
122464 	u64 rx_8192_to_9022_octet_packets;
122465 	u64 tx_octets;
122466 	u64 tx_collisions;
122467 	u64 tx_xon_sent;
122468 	u64 tx_xoff_sent;
122469 	u64 tx_flow_control;
122470 	u64 tx_mac_errors;
122471 	u64 tx_single_collisions;
122472 	u64 tx_mult_collisions;
122473 	u64 tx_deferred;
122474 	u64 tx_excessive_collisions;
122475 	u64 tx_late_collisions;
122476 	u64 tx_collide_2times;
122477 	u64 tx_collide_3times;
122478 	u64 tx_collide_4times;
122479 	u64 tx_collide_5times;
122480 	u64 tx_collide_6times;
122481 	u64 tx_collide_7times;
122482 	u64 tx_collide_8times;
122483 	u64 tx_collide_9times;
122484 	u64 tx_collide_10times;
122485 	u64 tx_collide_11times;
122486 	u64 tx_collide_12times;
122487 	u64 tx_collide_13times;
122488 	u64 tx_collide_14times;
122489 	u64 tx_collide_15times;
122490 	u64 tx_ucast_packets;
122491 	u64 tx_mcast_packets;
122492 	u64 tx_bcast_packets;
122493 	u64 tx_carrier_sense_errors;
122494 	u64 tx_discards;
122495 	u64 tx_errors;
122496 	u64 dma_writeq_full;
122497 	u64 dma_write_prioq_full;
122498 	u64 rxbds_empty;
122499 	u64 rx_discards;
122500 	u64 rx_errors;
122501 	u64 rx_threshold_hit;
122502 	u64 dma_readq_full;
122503 	u64 dma_read_prioq_full;
122504 	u64 tx_comp_queue_full;
122505 	u64 ring_set_send_prod_index;
122506 	u64 ring_status_update;
122507 	u64 nic_irqs;
122508 	u64 nic_avoided_irqs;
122509 	u64 nic_tx_threshold_hit;
122510 	u64 mbuf_lwm_thresh_hit;
122511 };
122512 
122513 struct tg3_rx_prodring_set {
122514 	u32 rx_std_prod_idx;
122515 	u32 rx_std_cons_idx;
122516 	u32 rx_jmb_prod_idx;
122517 	u32 rx_jmb_cons_idx;
122518 	struct tg3_rx_buffer_desc *rx_std;
122519 	struct tg3_ext_rx_buffer_desc *rx_jmb;
122520 	struct ring_info *rx_std_buffers;
122521 	struct ring_info *rx_jmb_buffers;
122522 	dma_addr_t rx_std_mapping;
122523 	dma_addr_t rx_jmb_mapping;
122524 };
122525 
122526 struct tg3;
122527 
122528 struct tg3_napi {
122529 	struct napi_struct napi;
122530 	struct tg3 *tp;
122531 	struct tg3_hw_status *hw_status;
122532 	u32 chk_msi_cnt;
122533 	u32 last_tag;
122534 	u32 last_irq_tag;
122535 	u32 int_mbox;
122536 	u32 coal_now;
122537 	long: 64;
122538 	long: 64;
122539 	long: 64;
122540 	long: 64;
122541 	long: 64;
122542 	long: 64;
122543 	long: 64;
122544 	long: 64;
122545 	long: 64;
122546 	u32 consmbox;
122547 	u32 rx_rcb_ptr;
122548 	u32 last_rx_cons;
122549 	u16 *rx_rcb_prod_idx;
122550 	struct tg3_rx_prodring_set prodring;
122551 	struct tg3_rx_buffer_desc *rx_rcb;
122552 	long: 64;
122553 	long: 64;
122554 	long: 64;
122555 	long: 64;
122556 	u32 tx_prod;
122557 	u32 tx_cons;
122558 	u32 tx_pending;
122559 	u32 last_tx_cons;
122560 	u32 prodmbox;
122561 	struct tg3_tx_buffer_desc *tx_ring;
122562 	struct tg3_tx_ring_info *tx_buffers;
122563 	dma_addr_t status_mapping;
122564 	dma_addr_t rx_rcb_mapping;
122565 	dma_addr_t tx_desc_mapping;
122566 	char irq_lbl[16];
122567 	unsigned int irq_vec;
122568 	long: 64;
122569 	long: 64;
122570 	long: 64;
122571 	long: 64;
122572 	long: 64;
122573 };
122574 
122575 struct tg3 {
122576 	unsigned int irq_sync;
122577 	spinlock_t lock;
122578 	spinlock_t indirect_lock;
122579 	u32 (*read32)(struct tg3 *, u32);
122580 	void (*write32)(struct tg3 *, u32, u32);
122581 	u32 (*read32_mbox)(struct tg3 *, u32);
122582 	void (*write32_mbox)(struct tg3 *, u32, u32);
122583 	void *regs;
122584 	void *aperegs;
122585 	struct net_device *dev;
122586 	struct pci_dev *pdev;
122587 	u32 coal_now;
122588 	u32 msg_enable;
122589 	struct ptp_clock_info ptp_info;
122590 	struct ptp_clock *ptp_clock;
122591 	s64 ptp_adjust;
122592 	void (*write32_tx_mbox)(struct tg3 *, u32, u32);
122593 	u32 dma_limit;
122594 	u32 txq_req;
122595 	u32 txq_cnt;
122596 	u32 txq_max;
122597 	long: 64;
122598 	long: 64;
122599 	long: 64;
122600 	long: 64;
122601 	long: 64;
122602 	long: 64;
122603 	long: 64;
122604 	long: 64;
122605 	long: 64;
122606 	struct tg3_napi napi[5];
122607 	void (*write32_rx_mbox)(struct tg3 *, u32, u32);
122608 	u32 rx_copy_thresh;
122609 	u32 rx_std_ring_mask;
122610 	u32 rx_jmb_ring_mask;
122611 	u32 rx_ret_ring_mask;
122612 	u32 rx_pending;
122613 	u32 rx_jumbo_pending;
122614 	u32 rx_std_max_post;
122615 	u32 rx_offset;
122616 	u32 rx_pkt_map_sz;
122617 	u32 rxq_req;
122618 	u32 rxq_cnt;
122619 	u32 rxq_max;
122620 	bool rx_refill;
122621 	long unsigned int rx_dropped;
122622 	long unsigned int tx_dropped;
122623 	struct rtnl_link_stats64 net_stats_prev;
122624 	struct tg3_ethtool_stats estats_prev;
122625 	long unsigned int tg3_flags[2];
122626 	union {
122627 		long unsigned int phy_crc_errors;
122628 		long unsigned int last_event_jiffies;
122629 	};
122630 	struct timer_list timer;
122631 	u16 timer_counter;
122632 	u16 timer_multiplier;
122633 	u32 timer_offset;
122634 	u16 asf_counter;
122635 	u16 asf_multiplier;
122636 	u32 serdes_counter;
122637 	struct tg3_link_config link_config;
122638 	struct tg3_bufmgr_config bufmgr_config;
122639 	u32 rx_mode;
122640 	u32 tx_mode;
122641 	u32 mac_mode;
122642 	u32 mi_mode;
122643 	u32 misc_host_ctrl;
122644 	u32 grc_mode;
122645 	u32 grc_local_ctrl;
122646 	u32 dma_rwctrl;
122647 	u32 coalesce_mode;
122648 	u32 pwrmgmt_thresh;
122649 	u32 rxptpctl;
122650 	u32 pci_chip_rev_id;
122651 	u16 pci_cmd;
122652 	u8 pci_cacheline_sz;
122653 	u8 pci_lat_timer;
122654 	int pci_fn;
122655 	int msi_cap;
122656 	int pcix_cap;
122657 	int pcie_readrq;
122658 	struct mii_bus *mdio_bus;
122659 	int old_link;
122660 	u8 phy_addr;
122661 	u8 phy_ape_lock;
122662 	u32 phy_id;
122663 	u32 phy_flags;
122664 	u32 led_ctrl;
122665 	u32 phy_otp;
122666 	u32 setlpicnt;
122667 	u8 rss_ind_tbl[128];
122668 	char board_part_number[24];
122669 	char fw_ver[32];
122670 	u32 nic_sram_data_cfg;
122671 	u32 pci_clock_ctrl;
122672 	struct pci_dev *pdev_peer;
122673 	struct tg3_hw_stats *hw_stats;
122674 	dma_addr_t stats_mapping;
122675 	struct work_struct reset_task;
122676 	int nvram_lock_cnt;
122677 	u32 nvram_size;
122678 	u32 nvram_pagesize;
122679 	u32 nvram_jedecnum;
122680 	unsigned int irq_max;
122681 	unsigned int irq_cnt;
122682 	struct ethtool_coalesce coal;
122683 	struct ethtool_eee eee;
122684 	const char *fw_needed;
122685 	const struct firmware *fw;
122686 	u32 fw_len;
122687 	struct device *hwmon_dev;
122688 	bool link_up;
122689 	bool pcierr_recovery;
122690 	u32 ape_hb;
122691 	long unsigned int ape_hb_interval;
122692 	long unsigned int ape_hb_jiffies;
122693 	long: 64;
122694 	long: 64;
122695 	long: 64;
122696 	long: 64;
122697 	long: 64;
122698 	long: 64;
122699 	long: 64;
122700 	long: 64;
122701 	long: 64;
122702 	long: 64;
122703 	long: 64;
122704 	long: 64;
122705 };
122706 
122707 enum TG3_FLAGS {
122708 	TG3_FLAG_TAGGED_STATUS = 0,
122709 	TG3_FLAG_TXD_MBOX_HWBUG = 1,
122710 	TG3_FLAG_USE_LINKCHG_REG = 2,
122711 	TG3_FLAG_ERROR_PROCESSED = 3,
122712 	TG3_FLAG_ENABLE_ASF = 4,
122713 	TG3_FLAG_ASPM_WORKAROUND = 5,
122714 	TG3_FLAG_POLL_SERDES = 6,
122715 	TG3_FLAG_POLL_CPMU_LINK = 7,
122716 	TG3_FLAG_MBOX_WRITE_REORDER = 8,
122717 	TG3_FLAG_PCIX_TARGET_HWBUG = 9,
122718 	TG3_FLAG_WOL_SPEED_100MB = 10,
122719 	TG3_FLAG_WOL_ENABLE = 11,
122720 	TG3_FLAG_EEPROM_WRITE_PROT = 12,
122721 	TG3_FLAG_NVRAM = 13,
122722 	TG3_FLAG_NVRAM_BUFFERED = 14,
122723 	TG3_FLAG_SUPPORT_MSI = 15,
122724 	TG3_FLAG_SUPPORT_MSIX = 16,
122725 	TG3_FLAG_USING_MSI = 17,
122726 	TG3_FLAG_USING_MSIX = 18,
122727 	TG3_FLAG_PCIX_MODE = 19,
122728 	TG3_FLAG_PCI_HIGH_SPEED = 20,
122729 	TG3_FLAG_PCI_32BIT = 21,
122730 	TG3_FLAG_SRAM_USE_CONFIG = 22,
122731 	TG3_FLAG_TX_RECOVERY_PENDING = 23,
122732 	TG3_FLAG_WOL_CAP = 24,
122733 	TG3_FLAG_JUMBO_RING_ENABLE = 25,
122734 	TG3_FLAG_PAUSE_AUTONEG = 26,
122735 	TG3_FLAG_CPMU_PRESENT = 27,
122736 	TG3_FLAG_40BIT_DMA_BUG = 28,
122737 	TG3_FLAG_BROKEN_CHECKSUMS = 29,
122738 	TG3_FLAG_JUMBO_CAPABLE = 30,
122739 	TG3_FLAG_CHIP_RESETTING = 31,
122740 	TG3_FLAG_INIT_COMPLETE = 32,
122741 	TG3_FLAG_MAX_RXPEND_64 = 33,
122742 	TG3_FLAG_PCI_EXPRESS = 34,
122743 	TG3_FLAG_ASF_NEW_HANDSHAKE = 35,
122744 	TG3_FLAG_HW_AUTONEG = 36,
122745 	TG3_FLAG_IS_NIC = 37,
122746 	TG3_FLAG_FLASH = 38,
122747 	TG3_FLAG_FW_TSO = 39,
122748 	TG3_FLAG_HW_TSO_1 = 40,
122749 	TG3_FLAG_HW_TSO_2 = 41,
122750 	TG3_FLAG_HW_TSO_3 = 42,
122751 	TG3_FLAG_TSO_CAPABLE = 43,
122752 	TG3_FLAG_TSO_BUG = 44,
122753 	TG3_FLAG_ICH_WORKAROUND = 45,
122754 	TG3_FLAG_1SHOT_MSI = 46,
122755 	TG3_FLAG_NO_FWARE_REPORTED = 47,
122756 	TG3_FLAG_NO_NVRAM_ADDR_TRANS = 48,
122757 	TG3_FLAG_ENABLE_APE = 49,
122758 	TG3_FLAG_PROTECTED_NVRAM = 50,
122759 	TG3_FLAG_5701_DMA_BUG = 51,
122760 	TG3_FLAG_USE_PHYLIB = 52,
122761 	TG3_FLAG_MDIOBUS_INITED = 53,
122762 	TG3_FLAG_LRG_PROD_RING_CAP = 54,
122763 	TG3_FLAG_RGMII_INBAND_DISABLE = 55,
122764 	TG3_FLAG_RGMII_EXT_IBND_RX_EN = 56,
122765 	TG3_FLAG_RGMII_EXT_IBND_TX_EN = 57,
122766 	TG3_FLAG_CLKREQ_BUG = 58,
122767 	TG3_FLAG_NO_NVRAM = 59,
122768 	TG3_FLAG_ENABLE_RSS = 60,
122769 	TG3_FLAG_ENABLE_TSS = 61,
122770 	TG3_FLAG_SHORT_DMA_BUG = 62,
122771 	TG3_FLAG_USE_JUMBO_BDFLAG = 63,
122772 	TG3_FLAG_L1PLLPD_EN = 64,
122773 	TG3_FLAG_APE_HAS_NCSI = 65,
122774 	TG3_FLAG_TX_TSTAMP_EN = 66,
122775 	TG3_FLAG_4K_FIFO_LIMIT = 67,
122776 	TG3_FLAG_5719_5720_RDMA_BUG = 68,
122777 	TG3_FLAG_RESET_TASK_PENDING = 69,
122778 	TG3_FLAG_PTP_CAPABLE = 70,
122779 	TG3_FLAG_5705_PLUS = 71,
122780 	TG3_FLAG_IS_5788 = 72,
122781 	TG3_FLAG_5750_PLUS = 73,
122782 	TG3_FLAG_5780_CLASS = 74,
122783 	TG3_FLAG_5755_PLUS = 75,
122784 	TG3_FLAG_57765_PLUS = 76,
122785 	TG3_FLAG_57765_CLASS = 77,
122786 	TG3_FLAG_5717_PLUS = 78,
122787 	TG3_FLAG_IS_SSB_CORE = 79,
122788 	TG3_FLAG_FLUSH_POSTED_WRITES = 80,
122789 	TG3_FLAG_ROBOSWITCH = 81,
122790 	TG3_FLAG_ONE_DMA_AT_ONCE = 82,
122791 	TG3_FLAG_RGMII_MODE = 83,
122792 	TG3_FLAG_NUMBER_OF_FLAGS = 84,
122793 };
122794 
122795 struct tg3_firmware_hdr {
122796 	__be32 version;
122797 	__be32 base_addr;
122798 	__be32 len;
122799 };
122800 
122801 struct tg3_fiber_aneginfo {
122802 	int state;
122803 	u32 flags;
122804 	long unsigned int link_time;
122805 	long unsigned int cur_time;
122806 	u32 ability_match_cfg;
122807 	int ability_match_count;
122808 	char ability_match;
122809 	char idle_match;
122810 	char ack_match;
122811 	u32 txconfig;
122812 	u32 rxconfig;
122813 };
122814 
122815 struct subsys_tbl_ent {
122816 	u16 subsys_vendor;
122817 	u16 subsys_devid;
122818 	u32 phy_id;
122819 };
122820 
122821 struct tg3_dev_id {
122822 	u32 vendor;
122823 	u32 device;
122824 	u32 rev;
122825 };
122826 
122827 struct tg3_dev_id___2 {
122828 	u32 vendor;
122829 	u32 device;
122830 };
122831 
122832 struct mem_entry {
122833 	u32 offset;
122834 	u32 len;
122835 };
122836 
122837 enum {
122838 	KERNEL_PARAM_OPS_FL_NOARG = 1,
122839 };
122840 
122841 enum i8042_controller_reset_mode {
122842 	I8042_RESET_NEVER = 0,
122843 	I8042_RESET_ALWAYS = 1,
122844 	I8042_RESET_ON_S2RAM = 2,
122845 };
122846 
122847 struct i8042_port {
122848 	struct serio *serio;
122849 	int irq;
122850 	bool exists;
122851 	bool driver_bound;
122852 	signed char mux;
122853 };
122854 
122855 struct trackpoint_data {
122856 	u8 variant_id;
122857 	u8 firmware_id;
122858 	u8 sensitivity;
122859 	u8 speed;
122860 	u8 inertia;
122861 	u8 reach;
122862 	u8 draghys;
122863 	u8 mindrag;
122864 	u8 thresh;
122865 	u8 upthresh;
122866 	u8 ztime;
122867 	u8 jenks;
122868 	u8 drift_time;
122869 	bool press_to_select;
122870 	bool skipback;
122871 	bool ext_dev;
122872 };
122873 
122874 struct trackpoint_attr_data {
122875 	size_t field_offset;
122876 	u8 command;
122877 	u8 mask;
122878 	bool inverted;
122879 	u8 power_on_default;
122880 };
122881 
122882 struct mdp_device_descriptor_s {
122883 	__u32 number;
122884 	__u32 major;
122885 	__u32 minor;
122886 	__u32 raid_disk;
122887 	__u32 state;
122888 	__u32 reserved[27];
122889 };
122890 
122891 typedef struct mdp_device_descriptor_s mdp_disk_t;
122892 
122893 struct mdp_superblock_s {
122894 	__u32 md_magic;
122895 	__u32 major_version;
122896 	__u32 minor_version;
122897 	__u32 patch_version;
122898 	__u32 gvalid_words;
122899 	__u32 set_uuid0;
122900 	__u32 ctime;
122901 	__u32 level;
122902 	__u32 size;
122903 	__u32 nr_disks;
122904 	__u32 raid_disks;
122905 	__u32 md_minor;
122906 	__u32 not_persistent;
122907 	__u32 set_uuid1;
122908 	__u32 set_uuid2;
122909 	__u32 set_uuid3;
122910 	__u32 gstate_creserved[16];
122911 	__u32 utime;
122912 	__u32 state;
122913 	__u32 active_disks;
122914 	__u32 working_disks;
122915 	__u32 failed_disks;
122916 	__u32 spare_disks;
122917 	__u32 sb_csum;
122918 	__u32 events_lo;
122919 	__u32 events_hi;
122920 	__u32 cp_events_lo;
122921 	__u32 cp_events_hi;
122922 	__u32 recovery_cp;
122923 	__u64 reshape_position;
122924 	__u32 new_level;
122925 	__u32 delta_disks;
122926 	__u32 new_layout;
122927 	__u32 new_chunk;
122928 	__u32 gstate_sreserved[14];
122929 	__u32 layout;
122930 	__u32 chunk_size;
122931 	__u32 root_pv;
122932 	__u32 root_block;
122933 	__u32 pstate_reserved[60];
122934 	mdp_disk_t disks[27];
122935 	__u32 reserved[0];
122936 	mdp_disk_t this_disk;
122937 };
122938 
122939 typedef struct mdp_superblock_s mdp_super_t;
122940 
122941 struct mdp_superblock_1 {
122942 	__le32 magic;
122943 	__le32 major_version;
122944 	__le32 feature_map;
122945 	__le32 pad0;
122946 	__u8 set_uuid[16];
122947 	char set_name[32];
122948 	__le64 ctime;
122949 	__le32 level;
122950 	__le32 layout;
122951 	__le64 size;
122952 	__le32 chunksize;
122953 	__le32 raid_disks;
122954 	union {
122955 		__le32 bitmap_offset;
122956 		struct {
122957 			__le16 offset;
122958 			__le16 size;
122959 		} ppl;
122960 	};
122961 	__le32 new_level;
122962 	__le64 reshape_position;
122963 	__le32 delta_disks;
122964 	__le32 new_layout;
122965 	__le32 new_chunk;
122966 	__le32 new_offset;
122967 	__le64 data_offset;
122968 	__le64 data_size;
122969 	__le64 super_offset;
122970 	union {
122971 		__le64 recovery_offset;
122972 		__le64 journal_tail;
122973 	};
122974 	__le32 dev_number;
122975 	__le32 cnt_corrected_read;
122976 	__u8 device_uuid[16];
122977 	__u8 devflags;
122978 	__u8 bblog_shift;
122979 	__le16 bblog_size;
122980 	__le32 bblog_offset;
122981 	__le64 utime;
122982 	__le64 events;
122983 	__le64 resync_offset;
122984 	__le32 sb_csum;
122985 	__le32 max_dev;
122986 	__u8 pad3[32];
122987 	__le16 dev_roles[0];
122988 };
122989 
122990 struct mdu_version_s {
122991 	int major;
122992 	int minor;
122993 	int patchlevel;
122994 };
122995 
122996 typedef struct mdu_version_s mdu_version_t;
122997 
122998 typedef struct mdu_array_info_s mdu_array_info_t;
122999 
123000 typedef struct mdu_disk_info_s mdu_disk_info_t;
123001 
123002 struct mdu_bitmap_file_s {
123003 	char pathname[4096];
123004 };
123005 
123006 typedef struct mdu_bitmap_file_s mdu_bitmap_file_t;
123007 
123008 enum {
123009 	MD_RESYNC_NONE = 0,
123010 	MD_RESYNC_YIELDED = 1,
123011 	MD_RESYNC_DELAYED = 2,
123012 	MD_RESYNC_ACTIVE = 3,
123013 };
123014 
123015 struct md_io_acct {
123016 	struct bio *orig_bio;
123017 	long unsigned int start_time;
123018 	struct bio bio_clone;
123019 };
123020 
123021 struct super_type {
123022 	char *name;
123023 	struct module *owner;
123024 	int (*load_super)(struct md_rdev *, struct md_rdev *, int);
123025 	int (*validate_super)(struct mddev *, struct md_rdev *);
123026 	void (*sync_super)(struct mddev *, struct md_rdev *);
123027 	long long unsigned int (*rdev_size_change)(struct md_rdev *, sector_t);
123028 	int (*allow_new_offset)(struct md_rdev *, long long unsigned int);
123029 };
123030 
123031 struct rdev_sysfs_entry {
123032 	struct attribute attr;
123033 	ssize_t (*show)(struct md_rdev *, char *);
123034 	ssize_t (*store)(struct md_rdev *, const char *, size_t);
123035 };
123036 
123037 enum array_state {
123038 	clear = 0,
123039 	inactive = 1,
123040 	suspended = 2,
123041 	readonly = 3,
123042 	read_auto = 4,
123043 	clean = 5,
123044 	active = 6,
123045 	write_pending = 7,
123046 	active_idle = 8,
123047 	broken = 9,
123048 	bad_word = 10,
123049 };
123050 
123051 struct detected_devices_node {
123052 	struct list_head list;
123053 	dev_t dev;
123054 };
123055 
123056 struct nx842_crypto_header_group {
123057 	__be16 padding;
123058 	__be32 compressed_length;
123059 	__be32 uncompressed_length;
123060 } __attribute__((packed));
123061 
123062 struct nx842_crypto_header {
123063 	__be16 magic;
123064 	__be16 ignore;
123065 	u8 groups;
123066 	struct nx842_crypto_header_group group[0];
123067 } __attribute__((packed));
123068 
123069 struct nx842_crypto_ctx {
123070 	spinlock_t lock;
123071 	u8 *wmem;
123072 	u8 *sbounce;
123073 	u8 *dbounce;
123074 	struct nx842_crypto_header header;
123075 	struct nx842_crypto_header_group group[32];
123076 	struct nx842_driver *driver;
123077 };
123078 
123079 struct nx842_crypto_param {
123080 	u8 *in;
123081 	unsigned int iremain;
123082 	u8 *out;
123083 	unsigned int oremain;
123084 	unsigned int ototal;
123085 };
123086 
123087 struct of_endpoint {
123088 	unsigned int port;
123089 	unsigned int id;
123090 	const struct device_node *local_node;
123091 };
123092 
123093 struct supplier_bindings {
123094 	struct device_node * (*parse_prop)(struct device_node *, const char *, int);
123095 	bool optional;
123096 	bool node_not_dev;
123097 };
123098 
123099 struct ahash_request;
123100 
123101 struct sock_diag_req {
123102 	__u8 sdiag_family;
123103 	__u8 sdiag_protocol;
123104 };
123105 
123106 struct broadcast_sk {
123107 	struct sock *sk;
123108 	struct work_struct work;
123109 };
123110 
123111 struct trace_event_raw_kfree_skb {
123112 	struct trace_entry ent;
123113 	void *skbaddr;
123114 	void *location;
123115 	short unsigned int protocol;
123116 	enum skb_drop_reason reason;
123117 	char __data[0];
123118 };
123119 
123120 struct trace_event_raw_consume_skb {
123121 	struct trace_entry ent;
123122 	void *skbaddr;
123123 	char __data[0];
123124 };
123125 
123126 struct trace_event_raw_skb_copy_datagram_iovec {
123127 	struct trace_entry ent;
123128 	const void *skbaddr;
123129 	int len;
123130 	char __data[0];
123131 };
123132 
123133 struct trace_event_data_offsets_kfree_skb {};
123134 
123135 struct trace_event_data_offsets_consume_skb {};
123136 
123137 struct trace_event_data_offsets_skb_copy_datagram_iovec {};
123138 
123139 typedef void (*btf_trace_kfree_skb)(void *, struct sk_buff *, void *, enum skb_drop_reason);
123140 
123141 typedef void (*btf_trace_consume_skb)(void *, struct sk_buff *);
123142 
123143 typedef void (*btf_trace_skb_copy_datagram_iovec)(void *, const struct sk_buff *, int);
123144 
123145 struct trace_event_raw_net_dev_start_xmit {
123146 	struct trace_entry ent;
123147 	u32 __data_loc_name;
123148 	u16 queue_mapping;
123149 	const void *skbaddr;
123150 	bool vlan_tagged;
123151 	u16 vlan_proto;
123152 	u16 vlan_tci;
123153 	u16 protocol;
123154 	u8 ip_summed;
123155 	unsigned int len;
123156 	unsigned int data_len;
123157 	int network_offset;
123158 	bool transport_offset_valid;
123159 	int transport_offset;
123160 	u8 tx_flags;
123161 	u16 gso_size;
123162 	u16 gso_segs;
123163 	u16 gso_type;
123164 	char __data[0];
123165 };
123166 
123167 struct trace_event_raw_net_dev_xmit {
123168 	struct trace_entry ent;
123169 	void *skbaddr;
123170 	unsigned int len;
123171 	int rc;
123172 	u32 __data_loc_name;
123173 	char __data[0];
123174 };
123175 
123176 struct trace_event_raw_net_dev_xmit_timeout {
123177 	struct trace_entry ent;
123178 	u32 __data_loc_name;
123179 	u32 __data_loc_driver;
123180 	int queue_index;
123181 	char __data[0];
123182 };
123183 
123184 struct trace_event_raw_net_dev_template {
123185 	struct trace_entry ent;
123186 	void *skbaddr;
123187 	unsigned int len;
123188 	u32 __data_loc_name;
123189 	char __data[0];
123190 };
123191 
123192 struct trace_event_raw_net_dev_rx_verbose_template {
123193 	struct trace_entry ent;
123194 	u32 __data_loc_name;
123195 	unsigned int napi_id;
123196 	u16 queue_mapping;
123197 	const void *skbaddr;
123198 	bool vlan_tagged;
123199 	u16 vlan_proto;
123200 	u16 vlan_tci;
123201 	u16 protocol;
123202 	u8 ip_summed;
123203 	u32 hash;
123204 	bool l4_hash;
123205 	unsigned int len;
123206 	unsigned int data_len;
123207 	unsigned int truesize;
123208 	bool mac_header_valid;
123209 	int mac_header;
123210 	unsigned char nr_frags;
123211 	u16 gso_size;
123212 	u16 gso_type;
123213 	char __data[0];
123214 };
123215 
123216 struct trace_event_raw_net_dev_rx_exit_template {
123217 	struct trace_entry ent;
123218 	int ret;
123219 	char __data[0];
123220 };
123221 
123222 struct trace_event_data_offsets_net_dev_start_xmit {
123223 	u32 name;
123224 };
123225 
123226 struct trace_event_data_offsets_net_dev_xmit {
123227 	u32 name;
123228 };
123229 
123230 struct trace_event_data_offsets_net_dev_xmit_timeout {
123231 	u32 name;
123232 	u32 driver;
123233 };
123234 
123235 struct trace_event_data_offsets_net_dev_template {
123236 	u32 name;
123237 };
123238 
123239 struct trace_event_data_offsets_net_dev_rx_verbose_template {
123240 	u32 name;
123241 };
123242 
123243 struct trace_event_data_offsets_net_dev_rx_exit_template {};
123244 
123245 typedef void (*btf_trace_net_dev_start_xmit)(void *, const struct sk_buff *, const struct net_device *);
123246 
123247 typedef void (*btf_trace_net_dev_xmit)(void *, struct sk_buff *, int, struct net_device *, unsigned int);
123248 
123249 typedef void (*btf_trace_net_dev_xmit_timeout)(void *, struct net_device *, int);
123250 
123251 typedef void (*btf_trace_net_dev_queue)(void *, struct sk_buff *);
123252 
123253 typedef void (*btf_trace_netif_receive_skb)(void *, struct sk_buff *);
123254 
123255 typedef void (*btf_trace_netif_rx)(void *, struct sk_buff *);
123256 
123257 typedef void (*btf_trace_napi_gro_frags_entry)(void *, const struct sk_buff *);
123258 
123259 typedef void (*btf_trace_napi_gro_receive_entry)(void *, const struct sk_buff *);
123260 
123261 typedef void (*btf_trace_netif_receive_skb_entry)(void *, const struct sk_buff *);
123262 
123263 typedef void (*btf_trace_netif_receive_skb_list_entry)(void *, const struct sk_buff *);
123264 
123265 typedef void (*btf_trace_netif_rx_entry)(void *, const struct sk_buff *);
123266 
123267 typedef void (*btf_trace_napi_gro_frags_exit)(void *, int);
123268 
123269 typedef void (*btf_trace_napi_gro_receive_exit)(void *, int);
123270 
123271 typedef void (*btf_trace_netif_receive_skb_exit)(void *, int);
123272 
123273 typedef void (*btf_trace_netif_rx_exit)(void *, int);
123274 
123275 typedef void (*btf_trace_netif_receive_skb_list_exit)(void *, int);
123276 
123277 struct trace_event_raw_napi_poll {
123278 	struct trace_entry ent;
123279 	struct napi_struct *napi;
123280 	u32 __data_loc_dev_name;
123281 	int work;
123282 	int budget;
123283 	char __data[0];
123284 };
123285 
123286 struct trace_event_data_offsets_napi_poll {
123287 	u32 dev_name;
123288 };
123289 
123290 typedef void (*btf_trace_napi_poll)(void *, struct napi_struct *, int, int);
123291 
123292 struct trace_event_raw_sock_rcvqueue_full {
123293 	struct trace_entry ent;
123294 	int rmem_alloc;
123295 	unsigned int truesize;
123296 	int sk_rcvbuf;
123297 	char __data[0];
123298 };
123299 
123300 struct trace_event_raw_sock_exceed_buf_limit {
123301 	struct trace_entry ent;
123302 	char name[32];
123303 	long int sysctl_mem[3];
123304 	long int allocated;
123305 	int sysctl_rmem;
123306 	int rmem_alloc;
123307 	int sysctl_wmem;
123308 	int wmem_alloc;
123309 	int wmem_queued;
123310 	int kind;
123311 	char __data[0];
123312 };
123313 
123314 struct trace_event_raw_inet_sock_set_state {
123315 	struct trace_entry ent;
123316 	const void *skaddr;
123317 	int oldstate;
123318 	int newstate;
123319 	__u16 sport;
123320 	__u16 dport;
123321 	__u16 family;
123322 	__u16 protocol;
123323 	__u8 saddr[4];
123324 	__u8 daddr[4];
123325 	__u8 saddr_v6[16];
123326 	__u8 daddr_v6[16];
123327 	char __data[0];
123328 };
123329 
123330 struct trace_event_raw_inet_sk_error_report {
123331 	struct trace_entry ent;
123332 	int error;
123333 	__u16 sport;
123334 	__u16 dport;
123335 	__u16 family;
123336 	__u16 protocol;
123337 	__u8 saddr[4];
123338 	__u8 daddr[4];
123339 	__u8 saddr_v6[16];
123340 	__u8 daddr_v6[16];
123341 	char __data[0];
123342 };
123343 
123344 struct trace_event_data_offsets_sock_rcvqueue_full {};
123345 
123346 struct trace_event_data_offsets_sock_exceed_buf_limit {};
123347 
123348 struct trace_event_data_offsets_inet_sock_set_state {};
123349 
123350 struct trace_event_data_offsets_inet_sk_error_report {};
123351 
123352 typedef void (*btf_trace_sock_rcvqueue_full)(void *, struct sock *, struct sk_buff *);
123353 
123354 typedef void (*btf_trace_sock_exceed_buf_limit)(void *, struct sock *, struct proto *, long int, int);
123355 
123356 typedef void (*btf_trace_inet_sock_set_state)(void *, const struct sock *, const int, const int);
123357 
123358 typedef void (*btf_trace_inet_sk_error_report)(void *, const struct sock *);
123359 
123360 struct trace_event_raw_udp_fail_queue_rcv_skb {
123361 	struct trace_entry ent;
123362 	int rc;
123363 	__u16 lport;
123364 	char __data[0];
123365 };
123366 
123367 struct trace_event_data_offsets_udp_fail_queue_rcv_skb {};
123368 
123369 typedef void (*btf_trace_udp_fail_queue_rcv_skb)(void *, int, struct sock *);
123370 
123371 struct trace_event_raw_tcp_event_sk_skb {
123372 	struct trace_entry ent;
123373 	const void *skbaddr;
123374 	const void *skaddr;
123375 	int state;
123376 	__u16 sport;
123377 	__u16 dport;
123378 	__u16 family;
123379 	__u8 saddr[4];
123380 	__u8 daddr[4];
123381 	__u8 saddr_v6[16];
123382 	__u8 daddr_v6[16];
123383 	char __data[0];
123384 };
123385 
123386 struct trace_event_raw_tcp_event_sk {
123387 	struct trace_entry ent;
123388 	const void *skaddr;
123389 	__u16 sport;
123390 	__u16 dport;
123391 	__u16 family;
123392 	__u8 saddr[4];
123393 	__u8 daddr[4];
123394 	__u8 saddr_v6[16];
123395 	__u8 daddr_v6[16];
123396 	__u64 sock_cookie;
123397 	char __data[0];
123398 };
123399 
123400 struct trace_event_raw_tcp_retransmit_synack {
123401 	struct trace_entry ent;
123402 	const void *skaddr;
123403 	const void *req;
123404 	__u16 sport;
123405 	__u16 dport;
123406 	__u16 family;
123407 	__u8 saddr[4];
123408 	__u8 daddr[4];
123409 	__u8 saddr_v6[16];
123410 	__u8 daddr_v6[16];
123411 	char __data[0];
123412 };
123413 
123414 struct trace_event_raw_tcp_probe {
123415 	struct trace_entry ent;
123416 	__u8 saddr[28];
123417 	__u8 daddr[28];
123418 	__u16 sport;
123419 	__u16 dport;
123420 	__u16 family;
123421 	__u32 mark;
123422 	__u16 data_len;
123423 	__u32 snd_nxt;
123424 	__u32 snd_una;
123425 	__u32 snd_cwnd;
123426 	__u32 ssthresh;
123427 	__u32 snd_wnd;
123428 	__u32 srtt;
123429 	__u32 rcv_wnd;
123430 	__u64 sock_cookie;
123431 	char __data[0];
123432 };
123433 
123434 struct trace_event_raw_tcp_event_skb {
123435 	struct trace_entry ent;
123436 	const void *skbaddr;
123437 	__u8 saddr[28];
123438 	__u8 daddr[28];
123439 	char __data[0];
123440 };
123441 
123442 struct trace_event_raw_tcp_cong_state_set {
123443 	struct trace_entry ent;
123444 	const void *skaddr;
123445 	__u16 sport;
123446 	__u16 dport;
123447 	__u8 saddr[4];
123448 	__u8 daddr[4];
123449 	__u8 saddr_v6[16];
123450 	__u8 daddr_v6[16];
123451 	__u8 cong_state;
123452 	char __data[0];
123453 };
123454 
123455 struct trace_event_data_offsets_tcp_event_sk_skb {};
123456 
123457 struct trace_event_data_offsets_tcp_event_sk {};
123458 
123459 struct trace_event_data_offsets_tcp_retransmit_synack {};
123460 
123461 struct trace_event_data_offsets_tcp_probe {};
123462 
123463 struct trace_event_data_offsets_tcp_event_skb {};
123464 
123465 struct trace_event_data_offsets_tcp_cong_state_set {};
123466 
123467 typedef void (*btf_trace_tcp_retransmit_skb)(void *, const struct sock *, const struct sk_buff *);
123468 
123469 typedef void (*btf_trace_tcp_send_reset)(void *, const struct sock *, const struct sk_buff *);
123470 
123471 typedef void (*btf_trace_tcp_receive_reset)(void *, struct sock *);
123472 
123473 typedef void (*btf_trace_tcp_destroy_sock)(void *, struct sock *);
123474 
123475 typedef void (*btf_trace_tcp_rcv_space_adjust)(void *, struct sock *);
123476 
123477 typedef void (*btf_trace_tcp_retransmit_synack)(void *, const struct sock *, const struct request_sock *);
123478 
123479 typedef void (*btf_trace_tcp_probe)(void *, struct sock *, struct sk_buff *);
123480 
123481 typedef void (*btf_trace_tcp_bad_csum)(void *, const struct sk_buff *);
123482 
123483 typedef void (*btf_trace_tcp_cong_state_set)(void *, struct sock *, const u8);
123484 
123485 struct trace_event_raw_fib_table_lookup {
123486 	struct trace_entry ent;
123487 	u32 tb_id;
123488 	int err;
123489 	int oif;
123490 	int iif;
123491 	u8 proto;
123492 	__u8 tos;
123493 	__u8 scope;
123494 	__u8 flags;
123495 	__u8 src[4];
123496 	__u8 dst[4];
123497 	__u8 gw4[4];
123498 	__u8 gw6[16];
123499 	u16 sport;
123500 	u16 dport;
123501 	char name[16];
123502 	char __data[0];
123503 };
123504 
123505 struct trace_event_data_offsets_fib_table_lookup {};
123506 
123507 typedef void (*btf_trace_fib_table_lookup)(void *, u32, const struct flowi4 *, const struct fib_nh_common *, int);
123508 
123509 struct trace_event_raw_qdisc_dequeue {
123510 	struct trace_entry ent;
123511 	struct Qdisc *qdisc;
123512 	const struct netdev_queue *txq;
123513 	int packets;
123514 	void *skbaddr;
123515 	int ifindex;
123516 	u32 handle;
123517 	u32 parent;
123518 	long unsigned int txq_state;
123519 	char __data[0];
123520 };
123521 
123522 struct trace_event_raw_qdisc_enqueue {
123523 	struct trace_entry ent;
123524 	struct Qdisc *qdisc;
123525 	const struct netdev_queue *txq;
123526 	void *skbaddr;
123527 	int ifindex;
123528 	u32 handle;
123529 	u32 parent;
123530 	char __data[0];
123531 };
123532 
123533 struct trace_event_raw_qdisc_reset {
123534 	struct trace_entry ent;
123535 	u32 __data_loc_dev;
123536 	u32 __data_loc_kind;
123537 	u32 parent;
123538 	u32 handle;
123539 	char __data[0];
123540 };
123541 
123542 struct trace_event_raw_qdisc_destroy {
123543 	struct trace_entry ent;
123544 	u32 __data_loc_dev;
123545 	u32 __data_loc_kind;
123546 	u32 parent;
123547 	u32 handle;
123548 	char __data[0];
123549 };
123550 
123551 struct trace_event_raw_qdisc_create {
123552 	struct trace_entry ent;
123553 	u32 __data_loc_dev;
123554 	u32 __data_loc_kind;
123555 	u32 parent;
123556 	char __data[0];
123557 };
123558 
123559 struct trace_event_data_offsets_qdisc_dequeue {};
123560 
123561 struct trace_event_data_offsets_qdisc_enqueue {};
123562 
123563 struct trace_event_data_offsets_qdisc_reset {
123564 	u32 dev;
123565 	u32 kind;
123566 };
123567 
123568 struct trace_event_data_offsets_qdisc_destroy {
123569 	u32 dev;
123570 	u32 kind;
123571 };
123572 
123573 struct trace_event_data_offsets_qdisc_create {
123574 	u32 dev;
123575 	u32 kind;
123576 };
123577 
123578 typedef void (*btf_trace_qdisc_dequeue)(void *, struct Qdisc *, const struct netdev_queue *, int, struct sk_buff *);
123579 
123580 typedef void (*btf_trace_qdisc_enqueue)(void *, struct Qdisc *, const struct netdev_queue *, struct sk_buff *);
123581 
123582 typedef void (*btf_trace_qdisc_reset)(void *, struct Qdisc *);
123583 
123584 typedef void (*btf_trace_qdisc_destroy)(void *, struct Qdisc *);
123585 
123586 typedef void (*btf_trace_qdisc_create)(void *, const struct Qdisc_ops *, struct net_device *, u32);
123587 
123588 struct bridge_stp_xstats {
123589 	__u64 transition_blk;
123590 	__u64 transition_fwd;
123591 	__u64 rx_bpdu;
123592 	__u64 tx_bpdu;
123593 	__u64 rx_tcn;
123594 	__u64 tx_tcn;
123595 };
123596 
123597 struct br_mcast_stats {
123598 	__u64 igmp_v1queries[2];
123599 	__u64 igmp_v2queries[2];
123600 	__u64 igmp_v3queries[2];
123601 	__u64 igmp_leaves[2];
123602 	__u64 igmp_v1reports[2];
123603 	__u64 igmp_v2reports[2];
123604 	__u64 igmp_v3reports[2];
123605 	__u64 igmp_parse_errors;
123606 	__u64 mld_v1queries[2];
123607 	__u64 mld_v2queries[2];
123608 	__u64 mld_leaves[2];
123609 	__u64 mld_v1reports[2];
123610 	__u64 mld_v2reports[2];
123611 	__u64 mld_parse_errors;
123612 	__u64 mcast_bytes[2];
123613 	__u64 mcast_packets[2];
123614 };
123615 
123616 struct br_ip {
123617 	union {
123618 		__be32 ip4;
123619 		struct in6_addr ip6;
123620 	} src;
123621 	union {
123622 		__be32 ip4;
123623 		struct in6_addr ip6;
123624 		unsigned char mac_addr[6];
123625 	} dst;
123626 	__be16 proto;
123627 	__u16 vid;
123628 };
123629 
123630 struct bridge_id {
123631 	unsigned char prio[2];
123632 	unsigned char addr[6];
123633 };
123634 
123635 typedef struct bridge_id bridge_id;
123636 
123637 struct mac_addr {
123638 	unsigned char addr[6];
123639 };
123640 
123641 typedef struct mac_addr mac_addr;
123642 
123643 typedef __u16 port_id;
123644 
123645 struct bridge_mcast_own_query {
123646 	struct timer_list timer;
123647 	u32 startup_sent;
123648 };
123649 
123650 struct bridge_mcast_other_query {
123651 	struct timer_list timer;
123652 	long unsigned int delay_time;
123653 };
123654 
123655 struct bridge_mcast_querier {
123656 	struct br_ip addr;
123657 	int port_ifidx;
123658 	seqcount_spinlock_t seq;
123659 };
123660 
123661 struct bridge_mcast_stats {
123662 	struct br_mcast_stats mstats;
123663 	struct u64_stats_sync syncp;
123664 };
123665 
123666 struct net_bridge_port;
123667 
123668 struct net_bridge_vlan;
123669 
123670 struct net_bridge_mcast_port {
123671 	struct net_bridge_port *port;
123672 	struct net_bridge_vlan *vlan;
123673 	struct bridge_mcast_own_query ip4_own_query;
123674 	struct timer_list ip4_mc_router_timer;
123675 	struct hlist_node ip4_rlist;
123676 	struct bridge_mcast_own_query ip6_own_query;
123677 	struct timer_list ip6_mc_router_timer;
123678 	struct hlist_node ip6_rlist;
123679 	unsigned char multicast_router;
123680 };
123681 
123682 struct net_bridge;
123683 
123684 struct net_bridge_port {
123685 	struct net_bridge *br;
123686 	struct net_device *dev;
123687 	netdevice_tracker dev_tracker;
123688 	struct list_head list;
123689 	long unsigned int flags;
123690 	struct net_bridge_port *backup_port;
123691 	u8 priority;
123692 	u8 state;
123693 	u16 port_no;
123694 	unsigned char topology_change_ack;
123695 	unsigned char config_pending;
123696 	port_id port_id;
123697 	port_id designated_port;
123698 	bridge_id designated_root;
123699 	bridge_id designated_bridge;
123700 	u32 path_cost;
123701 	u32 designated_cost;
123702 	long unsigned int designated_age;
123703 	struct timer_list forward_delay_timer;
123704 	struct timer_list hold_timer;
123705 	struct timer_list message_age_timer;
123706 	struct kobject kobj;
123707 	struct callback_head rcu;
123708 	struct net_bridge_mcast_port multicast_ctx;
123709 	struct bridge_mcast_stats *mcast_stats;
123710 	u32 multicast_eht_hosts_limit;
123711 	u32 multicast_eht_hosts_cnt;
123712 	struct hlist_head mglist;
123713 	char sysfs_name[16];
123714 	struct netpoll *np;
123715 	u16 group_fwd_mask;
123716 	u16 backup_redirected_cnt;
123717 	struct bridge_stp_xstats stp_xstats;
123718 };
123719 
123720 struct br_tunnel_info {
123721 	__be64 tunnel_id;
123722 	struct metadata_dst *tunnel_dst;
123723 };
123724 
123725 struct net_bridge_mcast {
123726 	struct net_bridge *br;
123727 	struct net_bridge_vlan *vlan;
123728 	u32 multicast_last_member_count;
123729 	u32 multicast_startup_query_count;
123730 	u8 multicast_querier;
123731 	u8 multicast_igmp_version;
123732 	u8 multicast_router;
123733 	u8 multicast_mld_version;
123734 	long unsigned int multicast_last_member_interval;
123735 	long unsigned int multicast_membership_interval;
123736 	long unsigned int multicast_querier_interval;
123737 	long unsigned int multicast_query_interval;
123738 	long unsigned int multicast_query_response_interval;
123739 	long unsigned int multicast_startup_query_interval;
123740 	struct hlist_head ip4_mc_router_list;
123741 	struct timer_list ip4_mc_router_timer;
123742 	struct bridge_mcast_other_query ip4_other_query;
123743 	struct bridge_mcast_own_query ip4_own_query;
123744 	struct bridge_mcast_querier ip4_querier;
123745 	struct hlist_head ip6_mc_router_list;
123746 	struct timer_list ip6_mc_router_timer;
123747 	struct bridge_mcast_other_query ip6_other_query;
123748 	struct bridge_mcast_own_query ip6_own_query;
123749 	struct bridge_mcast_querier ip6_querier;
123750 };
123751 
123752 struct net_bridge_vlan {
123753 	struct rhash_head vnode;
123754 	struct rhash_head tnode;
123755 	u16 vid;
123756 	u16 flags;
123757 	u16 priv_flags;
123758 	u8 state;
123759 	struct pcpu_sw_netstats *stats;
123760 	union {
123761 		struct net_bridge *br;
123762 		struct net_bridge_port *port;
123763 	};
123764 	union {
123765 		refcount_t refcnt;
123766 		struct net_bridge_vlan *brvlan;
123767 	};
123768 	struct br_tunnel_info tinfo;
123769 	union {
123770 		struct net_bridge_mcast br_mcast_ctx;
123771 		struct net_bridge_mcast_port port_mcast_ctx;
123772 	};
123773 	u16 msti;
123774 	struct list_head vlist;
123775 	struct callback_head rcu;
123776 };
123777 
123778 struct net_bridge {
123779 	spinlock_t lock;
123780 	spinlock_t hash_lock;
123781 	struct hlist_head frame_type_list;
123782 	struct net_device *dev;
123783 	long unsigned int options;
123784 	struct rhashtable fdb_hash_tbl;
123785 	struct list_head port_list;
123786 	u16 group_fwd_mask;
123787 	u16 group_fwd_mask_required;
123788 	bridge_id designated_root;
123789 	bridge_id bridge_id;
123790 	unsigned char topology_change;
123791 	unsigned char topology_change_detected;
123792 	u16 root_port;
123793 	long unsigned int max_age;
123794 	long unsigned int hello_time;
123795 	long unsigned int forward_delay;
123796 	long unsigned int ageing_time;
123797 	long unsigned int bridge_max_age;
123798 	long unsigned int bridge_hello_time;
123799 	long unsigned int bridge_forward_delay;
123800 	long unsigned int bridge_ageing_time;
123801 	u32 root_path_cost;
123802 	u8 group_addr[6];
123803 	enum {
123804 		BR_NO_STP = 0,
123805 		BR_KERNEL_STP = 1,
123806 		BR_USER_STP = 2,
123807 	} stp_enabled;
123808 	struct net_bridge_mcast multicast_ctx;
123809 	struct bridge_mcast_stats *mcast_stats;
123810 	u32 hash_max;
123811 	spinlock_t multicast_lock;
123812 	struct rhashtable mdb_hash_tbl;
123813 	struct rhashtable sg_port_tbl;
123814 	struct hlist_head mcast_gc_list;
123815 	struct hlist_head mdb_list;
123816 	struct work_struct mcast_gc_work;
123817 	struct timer_list hello_timer;
123818 	struct timer_list tcn_timer;
123819 	struct timer_list topology_change_timer;
123820 	struct delayed_work gc_work;
123821 	struct kobject *ifobj;
123822 	u32 auto_cnt;
123823 	struct hlist_head fdb_list;
123824 };
123825 
123826 struct net_bridge_fdb_key {
123827 	mac_addr addr;
123828 	u16 vlan_id;
123829 };
123830 
123831 struct net_bridge_fdb_entry {
123832 	struct rhash_head rhnode;
123833 	struct net_bridge_port *dst;
123834 	struct net_bridge_fdb_key key;
123835 	struct hlist_node fdb_node;
123836 	long unsigned int flags;
123837 	long: 64;
123838 	long: 64;
123839 	long: 64;
123840 	long: 64;
123841 	long: 64;
123842 	long: 64;
123843 	long: 64;
123844 	long: 64;
123845 	long: 64;
123846 	long: 64;
123847 	long unsigned int updated;
123848 	long unsigned int used;
123849 	struct callback_head rcu;
123850 	long: 64;
123851 	long: 64;
123852 	long: 64;
123853 	long: 64;
123854 	long: 64;
123855 	long: 64;
123856 	long: 64;
123857 	long: 64;
123858 	long: 64;
123859 	long: 64;
123860 	long: 64;
123861 	long: 64;
123862 };
123863 
123864 struct trace_event_raw_br_fdb_add {
123865 	struct trace_entry ent;
123866 	u8 ndm_flags;
123867 	u32 __data_loc_dev;
123868 	unsigned char addr[6];
123869 	u16 vid;
123870 	u16 nlh_flags;
123871 	char __data[0];
123872 };
123873 
123874 struct trace_event_raw_br_fdb_external_learn_add {
123875 	struct trace_entry ent;
123876 	u32 __data_loc_br_dev;
123877 	u32 __data_loc_dev;
123878 	unsigned char addr[6];
123879 	u16 vid;
123880 	char __data[0];
123881 };
123882 
123883 struct trace_event_raw_fdb_delete {
123884 	struct trace_entry ent;
123885 	u32 __data_loc_br_dev;
123886 	u32 __data_loc_dev;
123887 	unsigned char addr[6];
123888 	u16 vid;
123889 	char __data[0];
123890 };
123891 
123892 struct trace_event_raw_br_fdb_update {
123893 	struct trace_entry ent;
123894 	u32 __data_loc_br_dev;
123895 	u32 __data_loc_dev;
123896 	unsigned char addr[6];
123897 	u16 vid;
123898 	long unsigned int flags;
123899 	char __data[0];
123900 };
123901 
123902 struct trace_event_data_offsets_br_fdb_add {
123903 	u32 dev;
123904 };
123905 
123906 struct trace_event_data_offsets_br_fdb_external_learn_add {
123907 	u32 br_dev;
123908 	u32 dev;
123909 };
123910 
123911 struct trace_event_data_offsets_fdb_delete {
123912 	u32 br_dev;
123913 	u32 dev;
123914 };
123915 
123916 struct trace_event_data_offsets_br_fdb_update {
123917 	u32 br_dev;
123918 	u32 dev;
123919 };
123920 
123921 typedef void (*btf_trace_br_fdb_add)(void *, struct ndmsg *, struct net_device *, const unsigned char *, u16, u16);
123922 
123923 typedef void (*btf_trace_br_fdb_external_learn_add)(void *, struct net_bridge *, struct net_bridge_port *, const unsigned char *, u16);
123924 
123925 typedef void (*btf_trace_fdb_delete)(void *, struct net_bridge *, struct net_bridge_fdb_entry *);
123926 
123927 typedef void (*btf_trace_br_fdb_update)(void *, struct net_bridge *, struct net_bridge_port *, const unsigned char *, u16, long unsigned int);
123928 
123929 struct trace_event_raw_page_pool_release {
123930 	struct trace_entry ent;
123931 	const struct page_pool *pool;
123932 	s32 inflight;
123933 	u32 hold;
123934 	u32 release;
123935 	u64 cnt;
123936 	char __data[0];
123937 };
123938 
123939 struct trace_event_raw_page_pool_state_release {
123940 	struct trace_entry ent;
123941 	const struct page_pool *pool;
123942 	const struct page *page;
123943 	u32 release;
123944 	long unsigned int pfn;
123945 	char __data[0];
123946 };
123947 
123948 struct trace_event_raw_page_pool_state_hold {
123949 	struct trace_entry ent;
123950 	const struct page_pool *pool;
123951 	const struct page *page;
123952 	u32 hold;
123953 	long unsigned int pfn;
123954 	char __data[0];
123955 };
123956 
123957 struct trace_event_raw_page_pool_update_nid {
123958 	struct trace_entry ent;
123959 	const struct page_pool *pool;
123960 	int pool_nid;
123961 	int new_nid;
123962 	char __data[0];
123963 };
123964 
123965 struct trace_event_data_offsets_page_pool_release {};
123966 
123967 struct trace_event_data_offsets_page_pool_state_release {};
123968 
123969 struct trace_event_data_offsets_page_pool_state_hold {};
123970 
123971 struct trace_event_data_offsets_page_pool_update_nid {};
123972 
123973 typedef void (*btf_trace_page_pool_release)(void *, const struct page_pool *, s32, u32, u32);
123974 
123975 typedef void (*btf_trace_page_pool_state_release)(void *, const struct page_pool *, const struct page *, u32);
123976 
123977 typedef void (*btf_trace_page_pool_state_hold)(void *, const struct page_pool *, const struct page *, u32);
123978 
123979 typedef void (*btf_trace_page_pool_update_nid)(void *, const struct page_pool *, int);
123980 
123981 struct trace_event_raw_neigh_create {
123982 	struct trace_entry ent;
123983 	u32 family;
123984 	u32 __data_loc_dev;
123985 	int entries;
123986 	u8 created;
123987 	u8 gc_exempt;
123988 	u8 primary_key4[4];
123989 	u8 primary_key6[16];
123990 	char __data[0];
123991 };
123992 
123993 struct trace_event_raw_neigh_update {
123994 	struct trace_entry ent;
123995 	u32 family;
123996 	u32 __data_loc_dev;
123997 	u8 lladdr[32];
123998 	u8 lladdr_len;
123999 	u8 flags;
124000 	u8 nud_state;
124001 	u8 type;
124002 	u8 dead;
124003 	int refcnt;
124004 	__u8 primary_key4[4];
124005 	__u8 primary_key6[16];
124006 	long unsigned int confirmed;
124007 	long unsigned int updated;
124008 	long unsigned int used;
124009 	u8 new_lladdr[32];
124010 	u8 new_state;
124011 	u32 update_flags;
124012 	u32 pid;
124013 	char __data[0];
124014 };
124015 
124016 struct trace_event_raw_neigh__update {
124017 	struct trace_entry ent;
124018 	u32 family;
124019 	u32 __data_loc_dev;
124020 	u8 lladdr[32];
124021 	u8 lladdr_len;
124022 	u8 flags;
124023 	u8 nud_state;
124024 	u8 type;
124025 	u8 dead;
124026 	int refcnt;
124027 	__u8 primary_key4[4];
124028 	__u8 primary_key6[16];
124029 	long unsigned int confirmed;
124030 	long unsigned int updated;
124031 	long unsigned int used;
124032 	u32 err;
124033 	char __data[0];
124034 };
124035 
124036 struct trace_event_data_offsets_neigh_create {
124037 	u32 dev;
124038 };
124039 
124040 struct trace_event_data_offsets_neigh_update {
124041 	u32 dev;
124042 };
124043 
124044 struct trace_event_data_offsets_neigh__update {
124045 	u32 dev;
124046 };
124047 
124048 typedef void (*btf_trace_neigh_create)(void *, struct neigh_table *, struct net_device *, const void *, const struct neighbour *, bool);
124049 
124050 typedef void (*btf_trace_neigh_update)(void *, struct neighbour *, const u8 *, u8, u32, u32);
124051 
124052 typedef void (*btf_trace_neigh_update_done)(void *, struct neighbour *, int);
124053 
124054 typedef void (*btf_trace_neigh_timer_handler)(void *, struct neighbour *, int);
124055 
124056 typedef void (*btf_trace_neigh_event_send_done)(void *, struct neighbour *, int);
124057 
124058 typedef void (*btf_trace_neigh_event_send_dead)(void *, struct neighbour *, int);
124059 
124060 typedef void (*btf_trace_neigh_cleanup_and_release)(void *, struct neighbour *, int);
124061 
124062 enum {
124063 	ETHTOOL_A_STRING_UNSPEC = 0,
124064 	ETHTOOL_A_STRING_INDEX = 1,
124065 	ETHTOOL_A_STRING_VALUE = 2,
124066 	__ETHTOOL_A_STRING_CNT = 3,
124067 	ETHTOOL_A_STRING_MAX = 2,
124068 };
124069 
124070 enum {
124071 	ETHTOOL_A_STRINGS_UNSPEC = 0,
124072 	ETHTOOL_A_STRINGS_STRING = 1,
124073 	__ETHTOOL_A_STRINGS_CNT = 2,
124074 	ETHTOOL_A_STRINGS_MAX = 1,
124075 };
124076 
124077 enum {
124078 	ETHTOOL_A_STRINGSET_UNSPEC = 0,
124079 	ETHTOOL_A_STRINGSET_ID = 1,
124080 	ETHTOOL_A_STRINGSET_COUNT = 2,
124081 	ETHTOOL_A_STRINGSET_STRINGS = 3,
124082 	__ETHTOOL_A_STRINGSET_CNT = 4,
124083 	ETHTOOL_A_STRINGSET_MAX = 3,
124084 };
124085 
124086 enum {
124087 	ETHTOOL_A_STRINGSETS_UNSPEC = 0,
124088 	ETHTOOL_A_STRINGSETS_STRINGSET = 1,
124089 	__ETHTOOL_A_STRINGSETS_CNT = 2,
124090 	ETHTOOL_A_STRINGSETS_MAX = 1,
124091 };
124092 
124093 struct strset_info {
124094 	bool per_dev;
124095 	bool free_strings;
124096 	unsigned int count;
124097 	const char (*strings)[32];
124098 };
124099 
124100 struct strset_req_info {
124101 	struct ethnl_req_info base;
124102 	u32 req_ids;
124103 	bool counts_only;
124104 };
124105 
124106 struct strset_reply_data {
124107 	struct ethnl_reply_data base;
124108 	struct strset_info sets[21];
124109 };
124110 
124111 enum {
124112 	ETHTOOL_A_PAUSE_STAT_UNSPEC = 0,
124113 	ETHTOOL_A_PAUSE_STAT_PAD = 1,
124114 	ETHTOOL_A_PAUSE_STAT_TX_FRAMES = 2,
124115 	ETHTOOL_A_PAUSE_STAT_RX_FRAMES = 3,
124116 	__ETHTOOL_A_PAUSE_STAT_CNT = 4,
124117 	ETHTOOL_A_PAUSE_STAT_MAX = 3,
124118 };
124119 
124120 struct pause_reply_data {
124121 	struct ethnl_reply_data base;
124122 	struct ethtool_pauseparam pauseparam;
124123 	struct ethtool_pause_stats pausestat;
124124 };
124125 
124126 struct arpreq {
124127 	struct sockaddr arp_pa;
124128 	struct sockaddr arp_ha;
124129 	int arp_flags;
124130 	struct sockaddr arp_netmask;
124131 	char arp_dev[16];
124132 };
124133 
124134 enum {
124135 	NEIGH_ARP_TABLE = 0,
124136 	NEIGH_ND_TABLE = 1,
124137 	NEIGH_DN_TABLE = 2,
124138 	NEIGH_NR_TABLES = 3,
124139 	NEIGH_LINK_TABLE = 3,
124140 };
124141 
124142 struct neigh_seq_state {
124143 	struct seq_net_private p;
124144 	struct neigh_table *tbl;
124145 	struct neigh_hash_table *nht;
124146 	void * (*neigh_sub_iter)(struct neigh_seq_state *, struct neighbour *, loff_t *);
124147 	unsigned int bucket;
124148 	unsigned int flags;
124149 };
124150 
124151 struct neighbour_cb {
124152 	long unsigned int sched_next;
124153 	unsigned int flags;
124154 };
124155 
124156 enum {
124157 	AX25_VALUES_IPDEFMODE = 0,
124158 	AX25_VALUES_AXDEFMODE = 1,
124159 	AX25_VALUES_BACKOFF = 2,
124160 	AX25_VALUES_CONMODE = 3,
124161 	AX25_VALUES_WINDOW = 4,
124162 	AX25_VALUES_EWINDOW = 5,
124163 	AX25_VALUES_T1 = 6,
124164 	AX25_VALUES_T2 = 7,
124165 	AX25_VALUES_T3 = 8,
124166 	AX25_VALUES_IDLE = 9,
124167 	AX25_VALUES_N2 = 10,
124168 	AX25_VALUES_PACLEN = 11,
124169 	AX25_VALUES_PROTOCOL = 12,
124170 	AX25_VALUES_DS_TIMEOUT = 13,
124171 	AX25_MAX_VALUES = 14,
124172 };
124173 
124174 typedef void ip6_icmp_send_t(struct sk_buff *, u8, u8, __u32, const struct in6_addr *, const struct inet6_skb_parm *);
124175 
124176 struct icmpv6_msg {
124177 	struct sk_buff *skb;
124178 	int offset;
124179 	uint8_t type;
124180 };
124181 
124182 struct icmp6_err {
124183 	int err;
124184 	int fatal;
124185 };
124186 
124187 struct thread_deferred_req {
124188 	struct cache_deferred_req handle;
124189 	struct completion completion;
124190 };
124191 
124192 struct cache_queue {
124193 	struct list_head list;
124194 	int reader;
124195 };
124196 
124197 struct cache_request {
124198 	struct cache_queue q;
124199 	struct cache_head *item;
124200 	char *buf;
124201 	int len;
124202 	int readers;
124203 };
124204 
124205 struct cache_reader {
124206 	struct cache_queue q;
124207 	int offset;
124208 };
124209 
124210 struct p7_sprs {
124211 	u64 tscr;
124212 	u64 worc;
124213 	u64 sdr1;
124214 	u64 rpr;
124215 	u64 lpcr;
124216 	u64 hfscr;
124217 	u64 fscr;
124218 	u64 purr;
124219 	u64 spurr;
124220 	u64 dscr;
124221 	u64 wort;
124222 	u64 amr;
124223 	u64 iamr;
124224 	u64 uamor;
124225 };
124226 
124227 struct p9_sprs {
124228 	u64 ptcr;
124229 	u64 rpr;
124230 	u64 tscr;
124231 	u64 ldbar;
124232 	u64 lpcr;
124233 	u64 hfscr;
124234 	u64 fscr;
124235 	u64 pid;
124236 	u64 purr;
124237 	u64 spurr;
124238 	u64 dscr;
124239 	u64 ciabr;
124240 	u64 mmcra;
124241 	u32 mmcr0;
124242 	u32 mmcr1;
124243 	u64 mmcr2;
124244 	u64 amr;
124245 	u64 iamr;
124246 	u64 amor;
124247 	u64 uamor;
124248 };
124249 
124250 struct class_attribute_string {
124251 	struct class_attribute attr;
124252 	char *str;
124253 };
124254 
124255 struct update_props_workarea {
124256 	__be32 phandle;
124257 	__be32 state;
124258 	__be64 reserved;
124259 	__be32 nprops;
124260 } __attribute__((packed));
124261 
124262 struct pseries_suspend_info {
124263 	atomic_t counter;
124264 	bool done;
124265 };
124266 
124267 enum vasi_aborting_entity {
124268 	ORCHESTRATOR = 1,
124269 	VSP_SOURCE = 2,
124270 	PARTITION_FIRMWARE = 3,
124271 	PLATFORM_FIRMWARE = 4,
124272 	VSP_TARGET = 5,
124273 	MIGRATING_PARTITION = 6,
124274 };
124275 
124276 struct pseries_io_event {
124277 	uint8_t event_type;
124278 	uint8_t rpc_data_len;
124279 	uint8_t scope;
124280 	uint8_t event_subtype;
124281 	uint32_t drc_index;
124282 	uint8_t rpc_data[216];
124283 };
124284 
124285 typedef uint64_t ppc_cpu_t;
124286 
124287 struct powerpc_opcode {
124288 	const char *name;
124289 	long unsigned int opcode;
124290 	long unsigned int mask;
124291 	ppc_cpu_t flags;
124292 	ppc_cpu_t deprecated;
124293 	unsigned char operands[8];
124294 };
124295 
124296 struct powerpc_operand {
124297 	unsigned int bitm;
124298 	int shift;
124299 	long unsigned int (*insert)(long unsigned int, long int, ppc_cpu_t, const char **);
124300 	long int (*extract)(long unsigned int, ppc_cpu_t, int *);
124301 	long unsigned int flags;
124302 };
124303 
124304 struct powerpc_macro {
124305 	const char *name;
124306 	unsigned int operands;
124307 	ppc_cpu_t flags;
124308 	const char *format;
124309 };
124310 
124311 struct param_attribute {
124312 	struct module_attribute mattr;
124313 	const struct kernel_param *param;
124314 };
124315 
124316 struct module_param_attrs {
124317 	unsigned int num;
124318 	struct attribute_group grp;
124319 	struct param_attribute attrs[0];
124320 };
124321 
124322 struct kmalloced_param {
124323 	struct list_head list;
124324 	char val[0];
124325 };
124326 
124327 struct smpboot_thread_data {
124328 	unsigned int cpu;
124329 	unsigned int status;
124330 	struct smp_hotplug_thread *ht;
124331 };
124332 
124333 enum {
124334 	HP_THREAD_NONE = 0,
124335 	HP_THREAD_ACTIVE = 1,
124336 	HP_THREAD_PARKED = 2,
124337 };
124338 
124339 struct timer_list_iter {
124340 	int cpu;
124341 	bool second_pass;
124342 	u64 now;
124343 };
124344 
124345 struct trace_event_raw_cpu {
124346 	struct trace_entry ent;
124347 	u32 state;
124348 	u32 cpu_id;
124349 	char __data[0];
124350 };
124351 
124352 struct trace_event_raw_cpu_idle_miss {
124353 	struct trace_entry ent;
124354 	u32 cpu_id;
124355 	u32 state;
124356 	bool below;
124357 	char __data[0];
124358 };
124359 
124360 struct trace_event_raw_powernv_throttle {
124361 	struct trace_entry ent;
124362 	int chip_id;
124363 	u32 __data_loc_reason;
124364 	int pmax;
124365 	char __data[0];
124366 };
124367 
124368 struct trace_event_raw_pstate_sample {
124369 	struct trace_entry ent;
124370 	u32 core_busy;
124371 	u32 scaled_busy;
124372 	u32 from;
124373 	u32 to;
124374 	u64 mperf;
124375 	u64 aperf;
124376 	u64 tsc;
124377 	u32 freq;
124378 	u32 io_boost;
124379 	char __data[0];
124380 };
124381 
124382 struct trace_event_raw_cpu_frequency_limits {
124383 	struct trace_entry ent;
124384 	u32 min_freq;
124385 	u32 max_freq;
124386 	u32 cpu_id;
124387 	char __data[0];
124388 };
124389 
124390 struct trace_event_raw_device_pm_callback_start {
124391 	struct trace_entry ent;
124392 	u32 __data_loc_device;
124393 	u32 __data_loc_driver;
124394 	u32 __data_loc_parent;
124395 	u32 __data_loc_pm_ops;
124396 	int event;
124397 	char __data[0];
124398 };
124399 
124400 struct trace_event_raw_device_pm_callback_end {
124401 	struct trace_entry ent;
124402 	u32 __data_loc_device;
124403 	u32 __data_loc_driver;
124404 	int error;
124405 	char __data[0];
124406 };
124407 
124408 struct trace_event_raw_suspend_resume {
124409 	struct trace_entry ent;
124410 	const char *action;
124411 	int val;
124412 	bool start;
124413 	char __data[0];
124414 };
124415 
124416 struct trace_event_raw_wakeup_source {
124417 	struct trace_entry ent;
124418 	u32 __data_loc_name;
124419 	u64 state;
124420 	char __data[0];
124421 };
124422 
124423 struct trace_event_raw_clock {
124424 	struct trace_entry ent;
124425 	u32 __data_loc_name;
124426 	u64 state;
124427 	u64 cpu_id;
124428 	char __data[0];
124429 };
124430 
124431 struct trace_event_raw_power_domain {
124432 	struct trace_entry ent;
124433 	u32 __data_loc_name;
124434 	u64 state;
124435 	u64 cpu_id;
124436 	char __data[0];
124437 };
124438 
124439 struct trace_event_raw_cpu_latency_qos_request {
124440 	struct trace_entry ent;
124441 	s32 value;
124442 	char __data[0];
124443 };
124444 
124445 struct trace_event_raw_pm_qos_update {
124446 	struct trace_entry ent;
124447 	enum pm_qos_req_action action;
124448 	int prev_value;
124449 	int curr_value;
124450 	char __data[0];
124451 };
124452 
124453 struct trace_event_raw_dev_pm_qos_request {
124454 	struct trace_entry ent;
124455 	u32 __data_loc_name;
124456 	enum dev_pm_qos_req_type type;
124457 	s32 new_value;
124458 	char __data[0];
124459 };
124460 
124461 struct trace_event_raw_guest_halt_poll_ns {
124462 	struct trace_entry ent;
124463 	bool grow;
124464 	unsigned int new;
124465 	unsigned int old;
124466 	char __data[0];
124467 };
124468 
124469 struct trace_event_data_offsets_cpu {};
124470 
124471 struct trace_event_data_offsets_cpu_idle_miss {};
124472 
124473 struct trace_event_data_offsets_powernv_throttle {
124474 	u32 reason;
124475 };
124476 
124477 struct trace_event_data_offsets_pstate_sample {};
124478 
124479 struct trace_event_data_offsets_cpu_frequency_limits {};
124480 
124481 struct trace_event_data_offsets_device_pm_callback_start {
124482 	u32 device;
124483 	u32 driver;
124484 	u32 parent;
124485 	u32 pm_ops;
124486 };
124487 
124488 struct trace_event_data_offsets_device_pm_callback_end {
124489 	u32 device;
124490 	u32 driver;
124491 };
124492 
124493 struct trace_event_data_offsets_suspend_resume {};
124494 
124495 struct trace_event_data_offsets_wakeup_source {
124496 	u32 name;
124497 };
124498 
124499 struct trace_event_data_offsets_clock {
124500 	u32 name;
124501 };
124502 
124503 struct trace_event_data_offsets_power_domain {
124504 	u32 name;
124505 };
124506 
124507 struct trace_event_data_offsets_cpu_latency_qos_request {};
124508 
124509 struct trace_event_data_offsets_pm_qos_update {};
124510 
124511 struct trace_event_data_offsets_dev_pm_qos_request {
124512 	u32 name;
124513 };
124514 
124515 struct trace_event_data_offsets_guest_halt_poll_ns {};
124516 
124517 typedef void (*btf_trace_cpu_idle)(void *, unsigned int, unsigned int);
124518 
124519 typedef void (*btf_trace_cpu_idle_miss)(void *, unsigned int, unsigned int, bool);
124520 
124521 typedef void (*btf_trace_powernv_throttle)(void *, int, const char *, int);
124522 
124523 typedef void (*btf_trace_pstate_sample)(void *, u32, u32, u32, u32, u64, u64, u64, u32, u32);
124524 
124525 typedef void (*btf_trace_cpu_frequency)(void *, unsigned int, unsigned int);
124526 
124527 typedef void (*btf_trace_cpu_frequency_limits)(void *, struct cpufreq_policy *);
124528 
124529 typedef void (*btf_trace_device_pm_callback_start)(void *, struct device *, const char *, int);
124530 
124531 typedef void (*btf_trace_device_pm_callback_end)(void *, struct device *, int);
124532 
124533 typedef void (*btf_trace_suspend_resume)(void *, const char *, int, bool);
124534 
124535 typedef void (*btf_trace_wakeup_source_activate)(void *, const char *, unsigned int);
124536 
124537 typedef void (*btf_trace_wakeup_source_deactivate)(void *, const char *, unsigned int);
124538 
124539 typedef void (*btf_trace_clock_enable)(void *, const char *, unsigned int, unsigned int);
124540 
124541 typedef void (*btf_trace_clock_disable)(void *, const char *, unsigned int, unsigned int);
124542 
124543 typedef void (*btf_trace_clock_set_rate)(void *, const char *, unsigned int, unsigned int);
124544 
124545 typedef void (*btf_trace_power_domain_target)(void *, const char *, unsigned int, unsigned int);
124546 
124547 typedef void (*btf_trace_pm_qos_add_request)(void *, s32);
124548 
124549 typedef void (*btf_trace_pm_qos_update_request)(void *, s32);
124550 
124551 typedef void (*btf_trace_pm_qos_remove_request)(void *, s32);
124552 
124553 typedef void (*btf_trace_pm_qos_update_target)(void *, enum pm_qos_req_action, int, int);
124554 
124555 typedef void (*btf_trace_pm_qos_update_flags)(void *, enum pm_qos_req_action, int, int);
124556 
124557 typedef void (*btf_trace_dev_pm_qos_add_request)(void *, const char *, enum dev_pm_qos_req_type, s32);
124558 
124559 typedef void (*btf_trace_dev_pm_qos_update_request)(void *, const char *, enum dev_pm_qos_req_type, s32);
124560 
124561 typedef void (*btf_trace_dev_pm_qos_remove_request)(void *, const char *, enum dev_pm_qos_req_type, s32);
124562 
124563 typedef void (*btf_trace_guest_halt_poll_ns)(void *, bool, unsigned int, unsigned int);
124564 
124565 struct bpf_iter_seq_link_info {
124566 	u32 link_id;
124567 };
124568 
124569 struct bpf_iter__bpf_link {
124570 	union {
124571 		struct bpf_iter_meta *meta;
124572 	};
124573 	union {
124574 		struct bpf_link *link;
124575 	};
124576 };
124577 
124578 enum {
124579 	BPF_F_SYSCTL_BASE_NAME = 1,
124580 };
124581 
124582 struct bpf_sockopt_buf {
124583 	u8 data[32];
124584 };
124585 
124586 struct bpf_cgroup_link {
124587 	struct bpf_link link;
124588 	struct cgroup *cgroup;
124589 	enum bpf_attach_type type;
124590 };
124591 
124592 struct bpf_prog_list {
124593 	struct hlist_node node;
124594 	struct bpf_prog *prog;
124595 	struct bpf_cgroup_link *link;
124596 	struct bpf_cgroup_storage *storage[2];
124597 };
124598 
124599 typedef u64 (*btf_bpf_get_retval)();
124600 
124601 typedef u64 (*btf_bpf_set_retval)(int);
124602 
124603 typedef u64 (*btf_bpf_sysctl_get_name)(struct bpf_sysctl_kern *, char *, size_t, u64);
124604 
124605 typedef u64 (*btf_bpf_sysctl_get_current_value)(struct bpf_sysctl_kern *, char *, size_t);
124606 
124607 typedef u64 (*btf_bpf_sysctl_get_new_value)(struct bpf_sysctl_kern *, char *, size_t);
124608 
124609 typedef u64 (*btf_bpf_sysctl_set_new_value)(struct bpf_sysctl_kern *, const char *, size_t);
124610 
124611 typedef u64 (*btf_bpf_get_netns_cookie_sockopt)(struct bpf_sockopt_kern *);
124612 
124613 struct swap_iocb {
124614 	struct kiocb iocb;
124615 	struct bio_vec bvec[32];
124616 	int pages;
124617 	int len;
124618 };
124619 
124620 enum vmpressure_levels {
124621 	VMPRESSURE_LOW = 0,
124622 	VMPRESSURE_MEDIUM = 1,
124623 	VMPRESSURE_CRITICAL = 2,
124624 	VMPRESSURE_NUM_LEVELS = 3,
124625 };
124626 
124627 enum vmpressure_modes {
124628 	VMPRESSURE_NO_PASSTHROUGH = 0,
124629 	VMPRESSURE_HIERARCHY = 1,
124630 	VMPRESSURE_LOCAL = 2,
124631 	VMPRESSURE_NUM_MODES = 3,
124632 };
124633 
124634 struct vmpressure_event {
124635 	struct eventfd_ctx *efd;
124636 	enum vmpressure_levels level;
124637 	enum vmpressure_modes mode;
124638 	struct list_head node;
124639 };
124640 
124641 enum {
124642 	MEMORY_HOTPLUG_MIN_BOOTMEM_TYPE = 12,
124643 	SECTION_INFO = 12,
124644 	MIX_SECTION_INFO = 13,
124645 	NODE_INFO = 14,
124646 	MEMORY_HOTPLUG_MAX_BOOTMEM_TYPE = 14,
124647 };
124648 
124649 struct user_arg_ptr {
124650 	union {
124651 		const char * const *native;
124652 	} ptr;
124653 };
124654 
124655 struct utimbuf {
124656 	__kernel_old_time_t actime;
124657 	__kernel_old_time_t modtime;
124658 };
124659 
124660 struct decrypt_bh_ctx {
124661 	struct work_struct work;
124662 	struct buffer_head *bh;
124663 };
124664 
124665 struct bh_lru {
124666 	struct buffer_head *bhs[16];
124667 };
124668 
124669 struct bh_accounting {
124670 	int nr;
124671 	int ratelimit;
124672 };
124673 
124674 struct trace_event_raw_jbd2_checkpoint {
124675 	struct trace_entry ent;
124676 	dev_t dev;
124677 	int result;
124678 	char __data[0];
124679 };
124680 
124681 struct trace_event_raw_jbd2_commit {
124682 	struct trace_entry ent;
124683 	dev_t dev;
124684 	char sync_commit;
124685 	int transaction;
124686 	char __data[0];
124687 };
124688 
124689 struct trace_event_raw_jbd2_end_commit {
124690 	struct trace_entry ent;
124691 	dev_t dev;
124692 	char sync_commit;
124693 	int transaction;
124694 	int head;
124695 	char __data[0];
124696 };
124697 
124698 struct trace_event_raw_jbd2_submit_inode_data {
124699 	struct trace_entry ent;
124700 	dev_t dev;
124701 	ino_t ino;
124702 	char __data[0];
124703 };
124704 
124705 struct trace_event_raw_jbd2_handle_start_class {
124706 	struct trace_entry ent;
124707 	dev_t dev;
124708 	long unsigned int tid;
124709 	unsigned int type;
124710 	unsigned int line_no;
124711 	int requested_blocks;
124712 	char __data[0];
124713 };
124714 
124715 struct trace_event_raw_jbd2_handle_extend {
124716 	struct trace_entry ent;
124717 	dev_t dev;
124718 	long unsigned int tid;
124719 	unsigned int type;
124720 	unsigned int line_no;
124721 	int buffer_credits;
124722 	int requested_blocks;
124723 	char __data[0];
124724 };
124725 
124726 struct trace_event_raw_jbd2_handle_stats {
124727 	struct trace_entry ent;
124728 	dev_t dev;
124729 	long unsigned int tid;
124730 	unsigned int type;
124731 	unsigned int line_no;
124732 	int interval;
124733 	int sync;
124734 	int requested_blocks;
124735 	int dirtied_blocks;
124736 	char __data[0];
124737 };
124738 
124739 struct trace_event_raw_jbd2_run_stats {
124740 	struct trace_entry ent;
124741 	dev_t dev;
124742 	long unsigned int tid;
124743 	long unsigned int wait;
124744 	long unsigned int request_delay;
124745 	long unsigned int running;
124746 	long unsigned int locked;
124747 	long unsigned int flushing;
124748 	long unsigned int logging;
124749 	__u32 handle_count;
124750 	__u32 blocks;
124751 	__u32 blocks_logged;
124752 	char __data[0];
124753 };
124754 
124755 struct trace_event_raw_jbd2_checkpoint_stats {
124756 	struct trace_entry ent;
124757 	dev_t dev;
124758 	long unsigned int tid;
124759 	long unsigned int chp_time;
124760 	__u32 forced_to_close;
124761 	__u32 written;
124762 	__u32 dropped;
124763 	char __data[0];
124764 };
124765 
124766 struct trace_event_raw_jbd2_update_log_tail {
124767 	struct trace_entry ent;
124768 	dev_t dev;
124769 	tid_t tail_sequence;
124770 	tid_t first_tid;
124771 	long unsigned int block_nr;
124772 	long unsigned int freed;
124773 	char __data[0];
124774 };
124775 
124776 struct trace_event_raw_jbd2_write_superblock {
124777 	struct trace_entry ent;
124778 	dev_t dev;
124779 	blk_opf_t write_flags;
124780 	char __data[0];
124781 };
124782 
124783 struct trace_event_raw_jbd2_lock_buffer_stall {
124784 	struct trace_entry ent;
124785 	dev_t dev;
124786 	long unsigned int stall_ms;
124787 	char __data[0];
124788 };
124789 
124790 struct trace_event_raw_jbd2_journal_shrink {
124791 	struct trace_entry ent;
124792 	dev_t dev;
124793 	long unsigned int nr_to_scan;
124794 	long unsigned int count;
124795 	char __data[0];
124796 };
124797 
124798 struct trace_event_raw_jbd2_shrink_scan_exit {
124799 	struct trace_entry ent;
124800 	dev_t dev;
124801 	long unsigned int nr_to_scan;
124802 	long unsigned int nr_shrunk;
124803 	long unsigned int count;
124804 	char __data[0];
124805 };
124806 
124807 struct trace_event_raw_jbd2_shrink_checkpoint_list {
124808 	struct trace_entry ent;
124809 	dev_t dev;
124810 	tid_t first_tid;
124811 	tid_t tid;
124812 	tid_t last_tid;
124813 	long unsigned int nr_freed;
124814 	long unsigned int nr_scanned;
124815 	tid_t next_tid;
124816 	char __data[0];
124817 };
124818 
124819 struct trace_event_data_offsets_jbd2_checkpoint {};
124820 
124821 struct trace_event_data_offsets_jbd2_commit {};
124822 
124823 struct trace_event_data_offsets_jbd2_end_commit {};
124824 
124825 struct trace_event_data_offsets_jbd2_submit_inode_data {};
124826 
124827 struct trace_event_data_offsets_jbd2_handle_start_class {};
124828 
124829 struct trace_event_data_offsets_jbd2_handle_extend {};
124830 
124831 struct trace_event_data_offsets_jbd2_handle_stats {};
124832 
124833 struct trace_event_data_offsets_jbd2_run_stats {};
124834 
124835 struct trace_event_data_offsets_jbd2_checkpoint_stats {};
124836 
124837 struct trace_event_data_offsets_jbd2_update_log_tail {};
124838 
124839 struct trace_event_data_offsets_jbd2_write_superblock {};
124840 
124841 struct trace_event_data_offsets_jbd2_lock_buffer_stall {};
124842 
124843 struct trace_event_data_offsets_jbd2_journal_shrink {};
124844 
124845 struct trace_event_data_offsets_jbd2_shrink_scan_exit {};
124846 
124847 struct trace_event_data_offsets_jbd2_shrink_checkpoint_list {};
124848 
124849 typedef void (*btf_trace_jbd2_checkpoint)(void *, journal_t *, int);
124850 
124851 typedef void (*btf_trace_jbd2_start_commit)(void *, journal_t *, transaction_t *);
124852 
124853 typedef void (*btf_trace_jbd2_commit_locking)(void *, journal_t *, transaction_t *);
124854 
124855 typedef void (*btf_trace_jbd2_commit_flushing)(void *, journal_t *, transaction_t *);
124856 
124857 typedef void (*btf_trace_jbd2_commit_logging)(void *, journal_t *, transaction_t *);
124858 
124859 typedef void (*btf_trace_jbd2_drop_transaction)(void *, journal_t *, transaction_t *);
124860 
124861 typedef void (*btf_trace_jbd2_end_commit)(void *, journal_t *, transaction_t *);
124862 
124863 typedef void (*btf_trace_jbd2_submit_inode_data)(void *, struct inode *);
124864 
124865 typedef void (*btf_trace_jbd2_handle_start)(void *, dev_t, long unsigned int, unsigned int, unsigned int, int);
124866 
124867 typedef void (*btf_trace_jbd2_handle_restart)(void *, dev_t, long unsigned int, unsigned int, unsigned int, int);
124868 
124869 typedef void (*btf_trace_jbd2_handle_extend)(void *, dev_t, long unsigned int, unsigned int, unsigned int, int, int);
124870 
124871 typedef void (*btf_trace_jbd2_handle_stats)(void *, dev_t, long unsigned int, unsigned int, unsigned int, int, int, int, int);
124872 
124873 typedef void (*btf_trace_jbd2_run_stats)(void *, dev_t, long unsigned int, struct transaction_run_stats_s *);
124874 
124875 typedef void (*btf_trace_jbd2_checkpoint_stats)(void *, dev_t, long unsigned int, struct transaction_chp_stats_s *);
124876 
124877 typedef void (*btf_trace_jbd2_update_log_tail)(void *, journal_t *, tid_t, long unsigned int, long unsigned int);
124878 
124879 typedef void (*btf_trace_jbd2_write_superblock)(void *, journal_t *, blk_opf_t);
124880 
124881 typedef void (*btf_trace_jbd2_lock_buffer_stall)(void *, dev_t, long unsigned int);
124882 
124883 typedef void (*btf_trace_jbd2_shrink_count)(void *, journal_t *, long unsigned int, long unsigned int);
124884 
124885 typedef void (*btf_trace_jbd2_shrink_scan_enter)(void *, journal_t *, long unsigned int, long unsigned int);
124886 
124887 typedef void (*btf_trace_jbd2_shrink_scan_exit)(void *, journal_t *, long unsigned int, long unsigned int, long unsigned int);
124888 
124889 typedef void (*btf_trace_jbd2_shrink_checkpoint_list)(void *, journal_t *, tid_t, tid_t, tid_t, long unsigned int, long unsigned int, tid_t);
124890 
124891 struct jbd2_stats_proc_session {
124892 	journal_t *journal;
124893 	struct transaction_stats_s *stats;
124894 	int start;
124895 	int max;
124896 };
124897 
124898 enum {
124899 	MOUNTPROC_NULL = 0,
124900 	MOUNTPROC_MNT = 1,
124901 	MOUNTPROC_DUMP = 2,
124902 	MOUNTPROC_UMNT = 3,
124903 	MOUNTPROC_UMNTALL = 4,
124904 	MOUNTPROC_EXPORT = 5,
124905 };
124906 
124907 enum {
124908 	MOUNTPROC3_NULL = 0,
124909 	MOUNTPROC3_MNT = 1,
124910 	MOUNTPROC3_DUMP = 2,
124911 	MOUNTPROC3_UMNT = 3,
124912 	MOUNTPROC3_UMNTALL = 4,
124913 	MOUNTPROC3_EXPORT = 5,
124914 };
124915 
124916 enum mountstat {
124917 	MNT_OK = 0,
124918 	MNT_EPERM = 1,
124919 	MNT_ENOENT = 2,
124920 	MNT_EACCES = 13,
124921 	MNT_EINVAL = 22,
124922 };
124923 
124924 enum mountstat3 {
124925 	MNT3_OK = 0,
124926 	MNT3ERR_PERM = 1,
124927 	MNT3ERR_NOENT = 2,
124928 	MNT3ERR_IO = 5,
124929 	MNT3ERR_ACCES = 13,
124930 	MNT3ERR_NOTDIR = 20,
124931 	MNT3ERR_INVAL = 22,
124932 	MNT3ERR_NAMETOOLONG = 63,
124933 	MNT3ERR_NOTSUPP = 10004,
124934 	MNT3ERR_SERVERFAULT = 10006,
124935 };
124936 
124937 struct mountres {
124938 	int errno;
124939 	struct nfs_fh *fh;
124940 	unsigned int *auth_count;
124941 	rpc_authflavor_t *auth_flavors;
124942 };
124943 
124944 struct xfs_da3_node_hdr {
124945 	struct xfs_da3_blkinfo info;
124946 	__be16 __count;
124947 	__be16 __level;
124948 	__be32 __pad32;
124949 };
124950 
124951 typedef struct xfs_da_intnode xfs_da_intnode_t;
124952 
124953 struct xfs_da3_intnode {
124954 	struct xfs_da3_node_hdr hdr;
124955 	struct xfs_da_node_entry __btree[0];
124956 };
124957 
124958 typedef uint64_t xfs_ufsize_t;
124959 
124960 struct xfs_sysfs_attr {
124961 	struct attribute attr;
124962 	ssize_t (*show)(struct kobject *, char *);
124963 	ssize_t (*store)(struct kobject *, const char *, size_t);
124964 };
124965 
124966 struct xfs_error_init {
124967 	char *name;
124968 	int max_retries;
124969 	int retry_timeout;
124970 };
124971 
124972 struct xfs_iunlink_item {
124973 	struct xfs_log_item item;
124974 	struct xfs_inode *ip;
124975 	struct xfs_perag *pag;
124976 	xfs_agino_t next_agino;
124977 	xfs_agino_t old_agino;
124978 };
124979 
124980 struct msgbuf;
124981 
124982 struct ipc_kludge {
124983 	struct msgbuf *msgp;
124984 	long int msgtyp;
124985 };
124986 
124987 struct msqid_ds;
124988 
124989 enum devcg_behavior {
124990 	DEVCG_DEFAULT_NONE = 0,
124991 	DEVCG_DEFAULT_ALLOW = 1,
124992 	DEVCG_DEFAULT_DENY = 2,
124993 };
124994 
124995 struct dev_exception_item {
124996 	u32 major;
124997 	u32 minor;
124998 	short int type;
124999 	short int access;
125000 	struct list_head list;
125001 	struct callback_head rcu;
125002 };
125003 
125004 struct dev_cgroup {
125005 	struct cgroup_subsys_state css;
125006 	struct list_head exceptions;
125007 	enum devcg_behavior behavior;
125008 };
125009 
125010 enum {
125011 	REQ_FSEQ_PREFLUSH = 1,
125012 	REQ_FSEQ_DATA = 2,
125013 	REQ_FSEQ_POSTFLUSH = 4,
125014 	REQ_FSEQ_DONE = 8,
125015 	REQ_FSEQ_ACTIONS = 7,
125016 	FLUSH_PENDING_TIMEOUT = 500,
125017 };
125018 
125019 enum dd_data_dir {
125020 	DD_READ = 0,
125021 	DD_WRITE = 1,
125022 };
125023 
125024 enum {
125025 	DD_DIR_COUNT = 2,
125026 };
125027 
125028 enum dd_prio {
125029 	DD_RT_PRIO = 0,
125030 	DD_BE_PRIO = 1,
125031 	DD_IDLE_PRIO = 2,
125032 	DD_PRIO_MAX = 2,
125033 };
125034 
125035 enum {
125036 	DD_PRIO_COUNT = 3,
125037 };
125038 
125039 struct io_stats_per_prio {
125040 	uint32_t inserted;
125041 	uint32_t merged;
125042 	uint32_t dispatched;
125043 	atomic_t completed;
125044 };
125045 
125046 struct dd_per_prio {
125047 	struct list_head dispatch;
125048 	struct rb_root sort_list[2];
125049 	struct list_head fifo_list[2];
125050 	struct request *next_rq[2];
125051 	struct io_stats_per_prio stats;
125052 };
125053 
125054 struct deadline_data {
125055 	struct dd_per_prio per_prio[3];
125056 	enum dd_data_dir last_dir;
125057 	unsigned int batching;
125058 	unsigned int starved;
125059 	int fifo_expire[2];
125060 	int fifo_batch;
125061 	int writes_starved;
125062 	int front_merges;
125063 	u32 async_depth;
125064 	int prio_aging_expire;
125065 	spinlock_t lock;
125066 	spinlock_t zone_lock;
125067 };
125068 
125069 struct io_uring_recvmsg_out {
125070 	__u32 namelen;
125071 	__u32 controllen;
125072 	__u32 payloadlen;
125073 	__u32 flags;
125074 };
125075 
125076 struct io_async_msghdr {
125077 	union {
125078 		struct iovec fast_iov[8];
125079 		struct {
125080 			struct iovec fast_iov_one;
125081 			__kernel_size_t controllen;
125082 			int namelen;
125083 			__kernel_size_t payloadlen;
125084 		};
125085 		struct io_cache_entry cache;
125086 	};
125087 	struct iovec *free_iov;
125088 	struct sockaddr *uaddr;
125089 	struct msghdr msg;
125090 	struct __kernel_sockaddr_storage addr;
125091 };
125092 
125093 struct io_async_connect {
125094 	struct __kernel_sockaddr_storage address;
125095 };
125096 
125097 struct io_shutdown {
125098 	struct file *file;
125099 	int how;
125100 };
125101 
125102 struct io_accept {
125103 	struct file *file;
125104 	struct sockaddr *addr;
125105 	int *addr_len;
125106 	int flags;
125107 	u32 file_slot;
125108 	long unsigned int nofile;
125109 };
125110 
125111 struct io_socket {
125112 	struct file *file;
125113 	int domain;
125114 	int type;
125115 	int protocol;
125116 	int flags;
125117 	u32 file_slot;
125118 	long unsigned int nofile;
125119 };
125120 
125121 struct io_connect {
125122 	struct file *file;
125123 	struct sockaddr *addr;
125124 	int addr_len;
125125 };
125126 
125127 struct io_sr_msg {
125128 	struct file *file;
125129 	union {
125130 		struct compat_msghdr *umsg_compat;
125131 		struct user_msghdr *umsg;
125132 		void *buf;
125133 	};
125134 	unsigned int msg_flags;
125135 	unsigned int flags;
125136 	size_t len;
125137 	size_t done_io;
125138 };
125139 
125140 struct io_sendzc {
125141 	struct file *file;
125142 	void *buf;
125143 	size_t len;
125144 	unsigned int msg_flags;
125145 	unsigned int flags;
125146 	unsigned int addr_len;
125147 	void *addr;
125148 	size_t done_io;
125149 	struct io_kiocb *notif;
125150 };
125151 
125152 struct io_recvmsg_multishot_hdr {
125153 	struct io_uring_recvmsg_out msg;
125154 	struct __kernel_sockaddr_storage addr;
125155 };
125156 
125157 struct rhltable {
125158 	struct rhashtable ht;
125159 };
125160 
125161 union nested_table {
125162 	union nested_table *table;
125163 	struct rhash_lock_head *bucket;
125164 };
125165 
125166 struct cpu_rmap {
125167 	struct kref refcount;
125168 	u16 size;
125169 	u16 used;
125170 	void **obj;
125171 	struct {
125172 		u16 index;
125173 		u16 dist;
125174 	} near[0];
125175 };
125176 
125177 struct irq_glue {
125178 	struct irq_affinity_notify notify;
125179 	struct cpu_rmap *rmap;
125180 	u16 index;
125181 };
125182 
125183 struct pcie_link_state {
125184 	struct pci_dev *pdev;
125185 	struct pci_dev *downstream;
125186 	struct pcie_link_state *root;
125187 	struct pcie_link_state *parent;
125188 	struct list_head sibling;
125189 	u32 aspm_support: 7;
125190 	u32 aspm_enabled: 7;
125191 	u32 aspm_capable: 7;
125192 	u32 aspm_default: 7;
125193 	int: 4;
125194 	u32 aspm_disable: 7;
125195 	u32 clkpm_capable: 1;
125196 	u32 clkpm_enabled: 1;
125197 	u32 clkpm_default: 1;
125198 	u32 clkpm_disable: 1;
125199 };
125200 
125201 struct kbdiacr {
125202 	unsigned char diacr;
125203 	unsigned char base;
125204 	unsigned char result;
125205 };
125206 
125207 struct kbdiacrs {
125208 	unsigned int kb_cnt;
125209 	struct kbdiacr kbdiacr[256];
125210 };
125211 
125212 struct kbdiacrsuc {
125213 	unsigned int kb_cnt;
125214 	struct kbdiacruc kbdiacruc[256];
125215 };
125216 
125217 struct keyboard_notifier_param {
125218 	struct vc_data *vc;
125219 	int down;
125220 	int shift;
125221 	int ledstate;
125222 	unsigned int value;
125223 };
125224 
125225 struct kbd_struct {
125226 	unsigned char lockstate;
125227 	unsigned char slockstate;
125228 	unsigned char ledmode: 1;
125229 	unsigned char ledflagstate: 4;
125230 	char: 3;
125231 	unsigned char default_ledflagstate: 4;
125232 	unsigned char kbdmode: 3;
125233 	int: 1;
125234 	unsigned char modeflags: 5;
125235 };
125236 
125237 typedef void k_handler_fn(struct vc_data *, unsigned char, char);
125238 
125239 typedef void fn_handler_fn(struct vc_data *);
125240 
125241 struct getset_keycode_data {
125242 	struct input_keymap_entry ke;
125243 	int error;
125244 };
125245 
125246 enum cxl_context_status {
125247 	CLOSED = 0,
125248 	OPENED = 1,
125249 	STARTED = 2,
125250 };
125251 
125252 struct cxl_afu;
125253 
125254 struct cxl_sste;
125255 
125256 struct cxl_process_element;
125257 
125258 struct cxl_afu_driver_ops;
125259 
125260 struct cxl_context {
125261 	struct cxl_afu *afu;
125262 	phys_addr_t psn_phys;
125263 	u64 psn_size;
125264 	struct address_space *mapping;
125265 	struct mutex mapping_lock;
125266 	struct page *ff_page;
125267 	bool mmio_err_ff;
125268 	bool kernelapi;
125269 	spinlock_t sste_lock;
125270 	struct cxl_sste *sstp;
125271 	u64 sstp0;
125272 	u64 sstp1;
125273 	unsigned int sst_size;
125274 	unsigned int sst_lru;
125275 	wait_queue_head_t wq;
125276 	struct pid *pid;
125277 	spinlock_t lock;
125278 	u64 process_token;
125279 	void *priv;
125280 	long unsigned int *irq_bitmap;
125281 	struct cxl_irq_ranges irqs;
125282 	struct list_head irq_names;
125283 	u64 fault_addr;
125284 	u64 fault_dsisr;
125285 	u64 afu_err;
125286 	enum cxl_context_status status;
125287 	struct mutex status_mutex;
125288 	struct work_struct fault_work;
125289 	u64 dsisr;
125290 	u64 dar;
125291 	struct cxl_process_element *elem;
125292 	int pe;
125293 	int external_pe;
125294 	u32 irq_count;
125295 	bool pe_inserted;
125296 	bool master;
125297 	bool kernel;
125298 	bool pending_irq;
125299 	bool pending_fault;
125300 	bool pending_afu_err;
125301 	struct cxl_afu_driver_ops *afu_driver_ops;
125302 	atomic_t afu_driver_events;
125303 	struct callback_head rcu;
125304 	struct mm_struct *mm;
125305 	u16 tidr;
125306 	bool assign_tidr;
125307 };
125308 
125309 struct cxl_event_afu_driver_reserved {
125310 	__u32 data_size;
125311 	__u8 data[0];
125312 };
125313 
125314 struct cxl_afu_driver_ops {
125315 	struct cxl_event_afu_driver_reserved * (*fetch_event)(struct cxl_context *);
125316 	void (*event_delivered)(struct cxl_context *, struct cxl_event_afu_driver_reserved *, int);
125317 };
125318 
125319 typedef struct {
125320 	const int x;
125321 } cxl_p1_reg_t;
125322 
125323 typedef struct {
125324 	const int x;
125325 } cxl_p1n_reg_t;
125326 
125327 typedef struct {
125328 	const int x;
125329 } cxl_p2n_reg_t;
125330 
125331 enum prefault_modes {
125332 	CXL_PREFAULT_NONE = 0,
125333 	CXL_PREFAULT_WED = 1,
125334 	CXL_PREFAULT_ALL = 2,
125335 };
125336 
125337 struct cxl_sste {
125338 	__be64 esid_data;
125339 	__be64 vsid_data;
125340 };
125341 
125342 struct cxl_afu_native {
125343 	void *p1n_mmio;
125344 	void *afu_desc_mmio;
125345 	irq_hw_number_t psl_hwirq;
125346 	unsigned int psl_virq;
125347 	struct mutex spa_mutex;
125348 	struct cxl_process_element *spa;
125349 	__be64 *sw_command_status;
125350 	unsigned int spa_size;
125351 	int spa_order;
125352 	int spa_max_procs;
125353 	u64 pp_offset;
125354 };
125355 
125356 struct cxl_process_element_common {
125357 	__be32 tid;
125358 	__be32 pid;
125359 	__be64 csrp;
125360 	union {
125361 		struct {
125362 			__be64 aurp0;
125363 			__be64 aurp1;
125364 			__be64 sstp0;
125365 			__be64 sstp1;
125366 		} psl8;
125367 		struct {
125368 			u8 reserved2[8];
125369 			u8 reserved3[8];
125370 			u8 reserved4[8];
125371 			u8 reserved5[8];
125372 		} psl9;
125373 	} u;
125374 	__be64 amr;
125375 	u8 reserved6[4];
125376 	__be64 wed;
125377 } __attribute__((packed));
125378 
125379 struct cxl_process_element {
125380 	__be64 sr;
125381 	__be64 SPOffset;
125382 	union {
125383 		__be64 sdr;
125384 		u8 reserved1[8];
125385 	} u;
125386 	__be64 haurp;
125387 	__be32 ctxtime;
125388 	__be16 ivte_offsets[4];
125389 	__be16 ivte_ranges[4];
125390 	__be32 lpid;
125391 	struct cxl_process_element_common common;
125392 	__be32 software_state;
125393 };
125394 
125395 struct cxl_afu_guest {
125396 	struct cxl_afu *parent;
125397 	u64 handle;
125398 	phys_addr_t p2n_phys;
125399 	u64 p2n_size;
125400 	int max_ints;
125401 	bool handle_err;
125402 	struct delayed_work work_err;
125403 	int previous_state;
125404 };
125405 
125406 struct cxl;
125407 
125408 struct cxl_afu {
125409 	struct cxl_afu_native *native;
125410 	struct cxl_afu_guest *guest;
125411 	irq_hw_number_t serr_hwirq;
125412 	unsigned int serr_virq;
125413 	char *psl_irq_name;
125414 	char *err_irq_name;
125415 	void *p2n_mmio;
125416 	phys_addr_t psn_phys;
125417 	u64 pp_size;
125418 	struct cxl *adapter;
125419 	struct device dev;
125420 	struct cdev afu_cdev_s;
125421 	struct cdev afu_cdev_m;
125422 	struct cdev afu_cdev_d;
125423 	struct device *chardev_s;
125424 	struct device *chardev_m;
125425 	struct device *chardev_d;
125426 	struct idr contexts_idr;
125427 	struct dentry *debugfs;
125428 	struct mutex contexts_lock;
125429 	spinlock_t afu_cntl_lock;
125430 	atomic_t configured_state;
125431 	u64 eb_len;
125432 	u64 eb_offset;
125433 	struct bin_attribute attr_eb;
125434 	struct pci_controller *phb;
125435 	int pp_irqs;
125436 	int irqs_max;
125437 	int num_procs;
125438 	int max_procs_virtualised;
125439 	int slice;
125440 	int modes_supported;
125441 	int current_mode;
125442 	int crs_num;
125443 	u64 crs_len;
125444 	u64 crs_offset;
125445 	struct list_head crs;
125446 	enum prefault_modes prefault_mode;
125447 	bool psa;
125448 	bool pp_psa;
125449 	bool enabled;
125450 };
125451 
125452 struct cxl_native;
125453 
125454 struct cxl_guest;
125455 
125456 struct cxl {
125457 	struct cxl_native *native;
125458 	struct cxl_guest *guest;
125459 	spinlock_t afu_list_lock;
125460 	struct cxl_afu *afu[4];
125461 	struct device dev;
125462 	struct dentry *trace;
125463 	struct dentry *psl_err_chk;
125464 	struct dentry *debugfs;
125465 	char *irq_name;
125466 	struct bin_attribute cxl_attr;
125467 	int adapter_num;
125468 	int user_irqs;
125469 	u64 ps_size;
125470 	u16 psl_rev;
125471 	u16 base_image;
125472 	u8 vsec_status;
125473 	u8 caia_major;
125474 	u8 caia_minor;
125475 	u8 slices;
125476 	bool user_image_loaded;
125477 	bool perst_loads_image;
125478 	bool perst_select_user;
125479 	bool perst_same_image;
125480 	bool psl_timebase_synced;
125481 	bool tunneled_ops_supported;
125482 	atomic_t contexts_num;
125483 };
125484 
125485 struct irq_avail {
125486 	irq_hw_number_t offset;
125487 	irq_hw_number_t range;
125488 	long unsigned int *bitmap;
125489 };
125490 
125491 struct cxl_irq_info;
125492 
125493 struct cxl_service_layer_ops {
125494 	int (*adapter_regs_init)(struct cxl *, struct pci_dev *);
125495 	int (*invalidate_all)(struct cxl *);
125496 	int (*afu_regs_init)(struct cxl_afu *);
125497 	int (*sanitise_afu_regs)(struct cxl_afu *);
125498 	int (*register_serr_irq)(struct cxl_afu *);
125499 	void (*release_serr_irq)(struct cxl_afu *);
125500 	irqreturn_t (*handle_interrupt)(int, struct cxl_context *, struct cxl_irq_info *);
125501 	irqreturn_t (*fail_irq)(struct cxl_afu *, struct cxl_irq_info *);
125502 	int (*activate_dedicated_process)(struct cxl_afu *);
125503 	int (*attach_afu_directed)(struct cxl_context *, u64, u64);
125504 	int (*attach_dedicated_process)(struct cxl_context *, u64, u64);
125505 	void (*update_dedicated_ivtes)(struct cxl_context *);
125506 	void (*debugfs_add_adapter_regs)(struct cxl *, struct dentry *);
125507 	void (*debugfs_add_afu_regs)(struct cxl_afu *, struct dentry *);
125508 	void (*psl_irq_dump_registers)(struct cxl_context *);
125509 	void (*err_irq_dump_registers)(struct cxl *);
125510 	void (*debugfs_stop_trace)(struct cxl *);
125511 	void (*write_timebase_ctrl)(struct cxl *);
125512 	u64 (*timebase_read)(struct cxl *);
125513 	int capi_mode;
125514 	bool needs_reset_before_disable;
125515 };
125516 
125517 struct cxl_irq_info {
125518 	u64 dsisr;
125519 	u64 dar;
125520 	u64 dsr;
125521 	u64 reserved;
125522 	u64 afu_err;
125523 	u64 errstat;
125524 	u64 proc_handle;
125525 	u64 padding[2];
125526 };
125527 
125528 struct cxl_native {
125529 	u64 afu_desc_off;
125530 	u64 afu_desc_size;
125531 	void *p1_mmio;
125532 	void *p2_mmio;
125533 	irq_hw_number_t err_hwirq;
125534 	unsigned int err_virq;
125535 	u64 ps_off;
125536 	bool no_data_cache;
125537 	const struct cxl_service_layer_ops *sl_ops;
125538 };
125539 
125540 struct cxl_guest {
125541 	struct platform_device *pdev;
125542 	int irq_nranges;
125543 	struct cdev cdev;
125544 	irq_hw_number_t irq_base_offset;
125545 	struct irq_avail *irq_avail;
125546 	spinlock_t irq_alloc_lock;
125547 	u64 handle;
125548 	char *status;
125549 	u16 vendor;
125550 	u16 device;
125551 	u16 subsystem_vendor;
125552 	u16 subsystem;
125553 };
125554 
125555 struct cxl_calls {
125556 	void (*cxl_slbia)(struct mm_struct *);
125557 	struct module *owner;
125558 };
125559 
125560 struct bio_integrity_payload {
125561 	struct bio *bip_bio;
125562 	struct bvec_iter bip_iter;
125563 	short unsigned int bip_vcnt;
125564 	short unsigned int bip_max_vcnt;
125565 	short unsigned int bip_flags;
125566 	struct bvec_iter bio_iter;
125567 	struct work_struct bip_work;
125568 	struct bio_vec *bip_vec;
125569 	struct bio_vec bip_inline_vecs[0];
125570 };
125571 
125572 enum btt_init_state {
125573 	INIT_UNCHECKED = 0,
125574 	INIT_NOTFOUND = 1,
125575 	INIT_READY = 2,
125576 };
125577 
125578 struct log_entry {
125579 	__le32 lba;
125580 	__le32 old_map;
125581 	__le32 new_map;
125582 	__le32 seq;
125583 };
125584 
125585 struct log_group {
125586 	struct log_entry ent[4];
125587 };
125588 
125589 struct free_entry {
125590 	u32 block;
125591 	u8 sub;
125592 	u8 seq;
125593 	u8 has_err;
125594 };
125595 
125596 struct aligned_lock {
125597 	union {
125598 		spinlock_t lock;
125599 		u8 cacheline_padding[128];
125600 	};
125601 };
125602 
125603 struct arena_info {
125604 	u64 size;
125605 	u64 external_lba_start;
125606 	u32 internal_nlba;
125607 	u32 internal_lbasize;
125608 	u32 external_nlba;
125609 	u32 external_lbasize;
125610 	u32 nfree;
125611 	u16 version_major;
125612 	u16 version_minor;
125613 	u32 sector_size;
125614 	u64 nextoff;
125615 	u64 infooff;
125616 	u64 dataoff;
125617 	u64 mapoff;
125618 	u64 logoff;
125619 	u64 info2off;
125620 	struct free_entry *freelist;
125621 	u32 *rtt;
125622 	struct aligned_lock *map_locks;
125623 	struct nd_btt *nd_btt;
125624 	struct list_head list;
125625 	struct dentry *debugfs_dir;
125626 	u32 flags;
125627 	struct mutex err_lock;
125628 	int log_index[2];
125629 };
125630 
125631 enum log_ent_request {
125632 	LOG_NEW_ENT = 0,
125633 	LOG_OLD_ENT = 1,
125634 };
125635 
125636 struct ahci_sg {
125637 	__le32 addr;
125638 	__le32 addr_hi;
125639 	__le32 reserved;
125640 	__le32 flags_size;
125641 };
125642 
125643 struct gem_txd {
125644 	__le64 control_word;
125645 	__le64 buffer;
125646 };
125647 
125648 struct gem_rxd {
125649 	__le64 status_word;
125650 	__le64 buffer;
125651 };
125652 
125653 struct gem_init_block {
125654 	struct gem_txd txd[128];
125655 	struct gem_rxd rxd[128];
125656 };
125657 
125658 enum gem_phy_type {
125659 	phy_mii_mdio0 = 0,
125660 	phy_mii_mdio1 = 1,
125661 	phy_serialink = 2,
125662 	phy_serdes = 3,
125663 };
125664 
125665 enum link_state {
125666 	link_down = 0,
125667 	link_aneg = 1,
125668 	link_force_try = 2,
125669 	link_force_ret = 3,
125670 	link_force_ok = 4,
125671 	link_up = 5,
125672 };
125673 
125674 struct gem {
125675 	void *regs;
125676 	int rx_new;
125677 	int rx_old;
125678 	int tx_new;
125679 	int tx_old;
125680 	unsigned int has_wol: 1;
125681 	unsigned int asleep_wol: 1;
125682 	int cell_enabled;
125683 	u32 msg_enable;
125684 	u32 status;
125685 	struct napi_struct napi;
125686 	int tx_fifo_sz;
125687 	int rx_fifo_sz;
125688 	int rx_pause_off;
125689 	int rx_pause_on;
125690 	int rx_buf_sz;
125691 	u64 pause_entered;
125692 	u16 pause_last_time_recvd;
125693 	u32 mac_rx_cfg;
125694 	u32 swrst_base;
125695 	int want_autoneg;
125696 	int last_forced_speed;
125697 	enum link_state lstate;
125698 	struct timer_list link_timer;
125699 	int timer_ticks;
125700 	int wake_on_lan;
125701 	struct work_struct reset_task;
125702 	volatile int reset_task_pending;
125703 	enum gem_phy_type phy_type;
125704 	struct mii_phy phy_mii;
125705 	int mii_phy_addr;
125706 	struct gem_init_block *init_block;
125707 	struct sk_buff *rx_skbs[128];
125708 	struct sk_buff *tx_skbs[128];
125709 	dma_addr_t gblock_dvma;
125710 	struct pci_dev *pdev;
125711 	struct net_device *dev;
125712 };
125713 
125714 struct ps2pp_info {
125715 	u8 model;
125716 	u8 kind;
125717 	u16 features;
125718 };
125719 
125720 struct ptp_clock_caps {
125721 	int max_adj;
125722 	int n_alarm;
125723 	int n_ext_ts;
125724 	int n_per_out;
125725 	int pps;
125726 	int n_pins;
125727 	int cross_timestamping;
125728 	int adjust_phase;
125729 	int rsv[12];
125730 };
125731 
125732 struct ptp_sys_offset {
125733 	unsigned int n_samples;
125734 	unsigned int rsv[3];
125735 	struct ptp_clock_time ts[51];
125736 };
125737 
125738 struct ptp_sys_offset_extended {
125739 	unsigned int n_samples;
125740 	unsigned int rsv[3];
125741 	struct ptp_clock_time ts[75];
125742 };
125743 
125744 struct ptp_sys_offset_precise {
125745 	struct ptp_clock_time device;
125746 	struct ptp_clock_time sys_realtime;
125747 	struct ptp_clock_time sys_monoraw;
125748 	unsigned int rsv[4];
125749 };
125750 
125751 struct blk_crypto_config {
125752 	enum blk_crypto_mode_num crypto_mode;
125753 	unsigned int data_unit_size;
125754 	unsigned int dun_bytes;
125755 };
125756 
125757 struct blk_crypto_key {
125758 	struct blk_crypto_config crypto_cfg;
125759 	unsigned int data_unit_size_bits;
125760 	unsigned int size;
125761 	u8 raw[64];
125762 };
125763 
125764 struct blk_crypto_profile;
125765 
125766 struct blk_crypto_ll_ops {
125767 	int (*keyslot_program)(struct blk_crypto_profile *, const struct blk_crypto_key *, unsigned int);
125768 	int (*keyslot_evict)(struct blk_crypto_profile *, const struct blk_crypto_key *, unsigned int);
125769 };
125770 
125771 struct blk_crypto_keyslot;
125772 
125773 struct blk_crypto_profile {
125774 	struct blk_crypto_ll_ops ll_ops;
125775 	unsigned int max_dun_bytes_supported;
125776 	unsigned int modes_supported[4];
125777 	struct device *dev;
125778 	unsigned int num_slots;
125779 	struct rw_semaphore lock;
125780 	wait_queue_head_t idle_slots_wait_queue;
125781 	struct list_head idle_slots;
125782 	spinlock_t idle_slots_lock;
125783 	struct hlist_head *slot_hashtable;
125784 	unsigned int log_slot_ht_size;
125785 	struct blk_crypto_keyslot *slots;
125786 };
125787 
125788 struct dm_arg {
125789 	unsigned int min;
125790 	unsigned int max;
125791 	char *error;
125792 };
125793 
125794 enum suspend_mode {
125795 	PRESUSPEND = 0,
125796 	PRESUSPEND_UNDO = 1,
125797 	POSTSUSPEND = 2,
125798 };
125799 
125800 struct ctl_info_attribute {
125801 	struct attribute attr;
125802 	ssize_t (*show)(struct edac_device_ctl_info *, char *);
125803 	ssize_t (*store)(struct edac_device_ctl_info *, const char *, size_t);
125804 };
125805 
125806 struct instance_attribute___2 {
125807 	struct attribute attr;
125808 	ssize_t (*show)(struct edac_device_instance *, char *);
125809 	ssize_t (*store)(struct edac_device_instance *, const char *, size_t);
125810 };
125811 
125812 struct xcede_latency_record {
125813 	u8 hint;
125814 	__be64 latency_ticks;
125815 	u8 wake_on_irqs;
125816 } __attribute__((packed));
125817 
125818 struct xcede_latency_payload {
125819 	u8 record_size;
125820 	struct xcede_latency_record records[16];
125821 };
125822 
125823 struct xcede_latency_parameter {
125824 	__be16 payload_size;
125825 	struct xcede_latency_payload payload;
125826 	u8 null_char;
125827 };
125828 
125829 struct nvmem_cell_lookup {
125830 	const char *nvmem_name;
125831 	const char *cell_name;
125832 	const char *dev_id;
125833 	const char *con_id;
125834 	struct list_head node;
125835 };
125836 
125837 enum {
125838 	NVMEM_ADD = 1,
125839 	NVMEM_REMOVE = 2,
125840 	NVMEM_CELL_ADD = 3,
125841 	NVMEM_CELL_REMOVE = 4,
125842 };
125843 
125844 struct nvmem_cell_table {
125845 	const char *nvmem_name;
125846 	const struct nvmem_cell_info *cells;
125847 	size_t ncells;
125848 	struct list_head node;
125849 };
125850 
125851 struct nvmem_device {
125852 	struct module *owner;
125853 	struct device dev;
125854 	int stride;
125855 	int word_size;
125856 	int id;
125857 	struct kref refcnt;
125858 	size_t size;
125859 	bool read_only;
125860 	bool root_only;
125861 	int flags;
125862 	enum nvmem_type type;
125863 	struct bin_attribute eeprom;
125864 	struct device *base_dev;
125865 	struct list_head cells;
125866 	const struct nvmem_keepout *keepout;
125867 	unsigned int nkeepout;
125868 	nvmem_reg_read_t reg_read;
125869 	nvmem_reg_write_t reg_write;
125870 	nvmem_cell_post_process_t cell_post_process;
125871 	struct gpio_desc *wp_gpio;
125872 	void *priv;
125873 };
125874 
125875 struct nvmem_cell_entry {
125876 	const char *name;
125877 	int offset;
125878 	int bytes;
125879 	int bit_offset;
125880 	int nbits;
125881 	struct device_node *np;
125882 	struct nvmem_device *nvmem;
125883 	struct list_head node;
125884 };
125885 
125886 struct nvmem_cell {
125887 	struct nvmem_cell_entry *entry;
125888 	const char *id;
125889 };
125890 
125891 enum nf_dev_hooks {
125892 	NF_NETDEV_INGRESS = 0,
125893 	NF_NETDEV_EGRESS = 1,
125894 	NF_NETDEV_NUMHOOKS = 2,
125895 };
125896 
125897 struct ifbond {
125898 	__s32 bond_mode;
125899 	__s32 num_slaves;
125900 	__s32 miimon;
125901 };
125902 
125903 typedef struct ifbond ifbond;
125904 
125905 struct ifslave {
125906 	__s32 slave_id;
125907 	char slave_name[16];
125908 	__s8 link;
125909 	__s8 state;
125910 	__u32 link_failure_count;
125911 };
125912 
125913 typedef struct ifslave ifslave;
125914 
125915 enum {
125916 	NAPIF_STATE_SCHED = 1,
125917 	NAPIF_STATE_MISSED = 2,
125918 	NAPIF_STATE_DISABLE = 4,
125919 	NAPIF_STATE_NPSVC = 8,
125920 	NAPIF_STATE_LISTED = 16,
125921 	NAPIF_STATE_NO_BUSY_POLL = 32,
125922 	NAPIF_STATE_IN_BUSY_POLL = 64,
125923 	NAPIF_STATE_PREFER_BUSY_POLL = 128,
125924 	NAPIF_STATE_THREADED = 256,
125925 	NAPIF_STATE_SCHED_THREADED = 512,
125926 };
125927 
125928 struct net_device_path_stack {
125929 	int num_paths;
125930 	struct net_device_path path[5];
125931 };
125932 
125933 struct bpf_xdp_link {
125934 	struct bpf_link link;
125935 	struct net_device *dev;
125936 	int flags;
125937 };
125938 
125939 struct netdev_net_notifier {
125940 	struct list_head list;
125941 	struct notifier_block *nb;
125942 };
125943 
125944 struct netdev_notifier_changelowerstate_info {
125945 	struct netdev_notifier_info info;
125946 	void *lower_state_info;
125947 };
125948 
125949 struct netdev_notifier_pre_changeaddr_info {
125950 	struct netdev_notifier_info info;
125951 	const unsigned char *dev_addr;
125952 };
125953 
125954 struct netdev_notifier_offload_xstats_rd {
125955 	struct rtnl_hw_stats64 stats;
125956 	bool used;
125957 };
125958 
125959 struct netdev_notifier_offload_xstats_ru {
125960 	bool used;
125961 };
125962 
125963 struct netdev_notifier_offload_xstats_info {
125964 	struct netdev_notifier_info info;
125965 	enum netdev_offload_xstats_type type;
125966 	union {
125967 		struct netdev_notifier_offload_xstats_rd *report_delta;
125968 		struct netdev_notifier_offload_xstats_ru *report_used;
125969 	};
125970 };
125971 
125972 enum {
125973 	NESTED_SYNC_IMM_BIT = 0,
125974 	NESTED_SYNC_TODO_BIT = 1,
125975 };
125976 
125977 struct netdev_nested_priv {
125978 	unsigned char flags;
125979 	void *data;
125980 };
125981 
125982 struct netdev_bonding_info {
125983 	ifslave slave;
125984 	ifbond master;
125985 };
125986 
125987 struct netdev_notifier_bonding_info {
125988 	struct netdev_notifier_info info;
125989 	struct netdev_bonding_info bonding_info;
125990 };
125991 
125992 struct tc_skb_cb {
125993 	struct qdisc_skb_cb qdisc_cb;
125994 	u16 mru;
125995 	u8 post_ct: 1;
125996 	u8 post_ct_snat: 1;
125997 	u8 post_ct_dnat: 1;
125998 	u16 zone;
125999 };
126000 
126001 typedef int (*bpf_op_t)(struct net_device *, struct netdev_bpf *);
126002 
126003 struct dev_kfree_skb_cb {
126004 	enum skb_free_reason reason;
126005 };
126006 
126007 struct netdev_adjacent {
126008 	struct net_device *dev;
126009 	netdevice_tracker dev_tracker;
126010 	bool master;
126011 	bool ignore;
126012 	u16 ref_nr;
126013 	void *private;
126014 	struct list_head list;
126015 	struct callback_head rcu;
126016 };
126017 
126018 struct sch_frag_data {
126019 	long unsigned int dst;
126020 	struct qdisc_skb_cb cb;
126021 	__be16 inner_protocol;
126022 	u16 vlan_tci;
126023 	__be16 vlan_proto;
126024 	unsigned int l2_len;
126025 	u8 l2_data[18];
126026 	int (*xmit)(struct sk_buff *);
126027 };
126028 
126029 struct linkmodes_reply_data {
126030 	struct ethnl_reply_data base;
126031 	struct ethtool_link_ksettings ksettings;
126032 	struct ethtool_link_settings *lsettings;
126033 	bool peer_empty;
126034 };
126035 
126036 enum {
126037 	ETHTOOL_A_CABLE_RESULT_UNSPEC = 0,
126038 	ETHTOOL_A_CABLE_RESULT_PAIR = 1,
126039 	ETHTOOL_A_CABLE_RESULT_CODE = 2,
126040 	__ETHTOOL_A_CABLE_RESULT_CNT = 3,
126041 	ETHTOOL_A_CABLE_RESULT_MAX = 2,
126042 };
126043 
126044 enum {
126045 	ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC = 0,
126046 	ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR = 1,
126047 	ETHTOOL_A_CABLE_FAULT_LENGTH_CM = 2,
126048 	__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT = 3,
126049 	ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = 2,
126050 };
126051 
126052 enum {
126053 	ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC = 0,
126054 	ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED = 1,
126055 	ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED = 2,
126056 };
126057 
126058 enum {
126059 	ETHTOOL_A_CABLE_NEST_UNSPEC = 0,
126060 	ETHTOOL_A_CABLE_NEST_RESULT = 1,
126061 	ETHTOOL_A_CABLE_NEST_FAULT_LENGTH = 2,
126062 	__ETHTOOL_A_CABLE_NEST_CNT = 3,
126063 	ETHTOOL_A_CABLE_NEST_MAX = 2,
126064 };
126065 
126066 enum {
126067 	ETHTOOL_A_CABLE_TEST_NTF_UNSPEC = 0,
126068 	ETHTOOL_A_CABLE_TEST_NTF_HEADER = 1,
126069 	ETHTOOL_A_CABLE_TEST_NTF_STATUS = 2,
126070 	ETHTOOL_A_CABLE_TEST_NTF_NEST = 3,
126071 	__ETHTOOL_A_CABLE_TEST_NTF_CNT = 4,
126072 	ETHTOOL_A_CABLE_TEST_NTF_MAX = 3,
126073 };
126074 
126075 enum {
126076 	ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC = 0,
126077 	ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST = 1,
126078 	ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST = 2,
126079 	ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP = 3,
126080 	ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR = 4,
126081 	__ETHTOOL_A_CABLE_TEST_TDR_CFG_CNT = 5,
126082 	ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = 4,
126083 };
126084 
126085 enum {
126086 	ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC = 0,
126087 	ETHTOOL_A_CABLE_AMPLITUDE_PAIR = 1,
126088 	ETHTOOL_A_CABLE_AMPLITUDE_mV = 2,
126089 	__ETHTOOL_A_CABLE_AMPLITUDE_CNT = 3,
126090 	ETHTOOL_A_CABLE_AMPLITUDE_MAX = 2,
126091 };
126092 
126093 enum {
126094 	ETHTOOL_A_CABLE_PULSE_UNSPEC = 0,
126095 	ETHTOOL_A_CABLE_PULSE_mV = 1,
126096 	__ETHTOOL_A_CABLE_PULSE_CNT = 2,
126097 	ETHTOOL_A_CABLE_PULSE_MAX = 1,
126098 };
126099 
126100 enum {
126101 	ETHTOOL_A_CABLE_STEP_UNSPEC = 0,
126102 	ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE = 1,
126103 	ETHTOOL_A_CABLE_STEP_LAST_DISTANCE = 2,
126104 	ETHTOOL_A_CABLE_STEP_STEP_DISTANCE = 3,
126105 	__ETHTOOL_A_CABLE_STEP_CNT = 4,
126106 	ETHTOOL_A_CABLE_STEP_MAX = 3,
126107 };
126108 
126109 enum {
126110 	ETHTOOL_A_CABLE_TDR_NEST_UNSPEC = 0,
126111 	ETHTOOL_A_CABLE_TDR_NEST_STEP = 1,
126112 	ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE = 2,
126113 	ETHTOOL_A_CABLE_TDR_NEST_PULSE = 3,
126114 	__ETHTOOL_A_CABLE_TDR_NEST_CNT = 4,
126115 	ETHTOOL_A_CABLE_TDR_NEST_MAX = 3,
126116 };
126117 
126118 struct fib_nh_notifier_info {
126119 	struct fib_notifier_info info;
126120 	struct fib_nh *fib_nh;
126121 };
126122 
126123 struct nduseroptmsg {
126124 	unsigned char nduseropt_family;
126125 	unsigned char nduseropt_pad1;
126126 	short unsigned int nduseropt_opts_len;
126127 	int nduseropt_ifindex;
126128 	__u8 nduseropt_icmp_type;
126129 	__u8 nduseropt_icmp_code;
126130 	short unsigned int nduseropt_pad2;
126131 	unsigned int nduseropt_pad3;
126132 };
126133 
126134 enum {
126135 	NDUSEROPT_UNSPEC = 0,
126136 	NDUSEROPT_SRCADDR = 1,
126137 	__NDUSEROPT_MAX = 2,
126138 };
126139 
126140 struct nd_msg {
126141 	struct icmp6hdr icmph;
126142 	struct in6_addr target;
126143 	__u8 opt[0];
126144 };
126145 
126146 struct rs_msg {
126147 	struct icmp6hdr icmph;
126148 	__u8 opt[0];
126149 };
126150 
126151 struct ra_msg {
126152 	struct icmp6hdr icmph;
126153 	__be32 reachable_time;
126154 	__be32 retrans_timer;
126155 };
126156 
126157 struct rd_msg {
126158 	struct icmp6hdr icmph;
126159 	struct in6_addr target;
126160 	struct in6_addr dest;
126161 	__u8 opt[0];
126162 };
126163 
126164 struct sr6_tlv {
126165 	__u8 type;
126166 	__u8 len;
126167 	__u8 data[0];
126168 };
126169 
126170 enum {
126171 	SEG6_ATTR_UNSPEC = 0,
126172 	SEG6_ATTR_DST = 1,
126173 	SEG6_ATTR_DSTLEN = 2,
126174 	SEG6_ATTR_HMACKEYID = 3,
126175 	SEG6_ATTR_SECRET = 4,
126176 	SEG6_ATTR_SECRETLEN = 5,
126177 	SEG6_ATTR_ALGID = 6,
126178 	SEG6_ATTR_HMACINFO = 7,
126179 	__SEG6_ATTR_MAX = 8,
126180 };
126181 
126182 enum {
126183 	SEG6_CMD_UNSPEC = 0,
126184 	SEG6_CMD_SETHMAC = 1,
126185 	SEG6_CMD_DUMPHMAC = 2,
126186 	SEG6_CMD_SET_TUNSRC = 3,
126187 	SEG6_CMD_GET_TUNSRC = 4,
126188 	__SEG6_CMD_MAX = 5,
126189 };
126190 
126191 struct rpc_cred_cache {
126192 	struct hlist_head *hashtable;
126193 	unsigned int hashbits;
126194 	spinlock_t lock;
126195 };
126196 
126197 struct xprt_addr {
126198 	const char *addr;
126199 	struct callback_head rcu;
126200 };
126201 
126202 struct func_desc {
126203 	long unsigned int addr;
126204 	long unsigned int toc;
126205 	long unsigned int env;
126206 };
126207 
126208 struct rt_sigframe {
126209 	struct ucontext uc;
126210 	struct ucontext uc_transact;
126211 	long unsigned int _unused[2];
126212 	unsigned int tramp[7];
126213 	struct siginfo *pinfo;
126214 	void *puc;
126215 	struct siginfo info;
126216 	char abigap[512];
126217 };
126218 
126219 typedef long int (*syscall_fn)(long int, long int, long int, long int, long int, long int);
126220 
126221 struct eeh_stats {
126222 	u64 no_device;
126223 	u64 no_dn;
126224 	u64 no_cfg_addr;
126225 	u64 ignored_check;
126226 	u64 total_mmio_ffs;
126227 	u64 false_positives;
126228 	u64 slot_resets;
126229 };
126230 
126231 typedef int (*pte_fn_t)(pte_t *, long unsigned int, void *);
126232 
126233 struct soft_mask_table_entry {
126234 	long unsigned int start;
126235 	long unsigned int end;
126236 };
126237 
126238 struct restart_table_entry {
126239 	long unsigned int start;
126240 	long unsigned int end;
126241 	long unsigned int fixup;
126242 };
126243 
126244 enum {
126245 	OPAL_XIVE_MODE_EMU = 0,
126246 	OPAL_XIVE_MODE_EXPL = 1,
126247 };
126248 
126249 enum {
126250 	OPAL_XIVE_IRQ_TRIGGER_PAGE = 1,
126251 	OPAL_XIVE_IRQ_STORE_EOI = 2,
126252 	OPAL_XIVE_IRQ_LSI = 4,
126253 	OPAL_XIVE_IRQ_SHIFT_BUG = 8,
126254 	OPAL_XIVE_IRQ_MASK_VIA_FW = 16,
126255 	OPAL_XIVE_IRQ_EOI_VIA_FW = 32,
126256 	OPAL_XIVE_IRQ_STORE_EOI2 = 64,
126257 };
126258 
126259 enum {
126260 	OPAL_XIVE_EQ_ENABLED = 1,
126261 	OPAL_XIVE_EQ_ALWAYS_NOTIFY = 2,
126262 	OPAL_XIVE_EQ_ESCALATE = 4,
126263 };
126264 
126265 enum {
126266 	OPAL_XIVE_VP_ENABLED = 1,
126267 	OPAL_XIVE_VP_SINGLE_ESCALATION = 2,
126268 };
126269 
126270 enum {
126271 	XIVE_SYNC_EAS = 1,
126272 	XIVE_SYNC_QUEUE = 2,
126273 };
126274 
126275 enum OpalSysEpow {
126276 	OPAL_SYSEPOW_POWER = 0,
126277 	OPAL_SYSEPOW_TEMP = 1,
126278 	OPAL_SYSEPOW_COOLING = 2,
126279 	OPAL_SYSEPOW_MAX = 3,
126280 };
126281 
126282 enum OpalSysPower {
126283 	OPAL_SYSPOWER_UPS = 1,
126284 	OPAL_SYSPOWER_CHNG = 2,
126285 	OPAL_SYSPOWER_FAIL = 4,
126286 	OPAL_SYSPOWER_INCL = 8,
126287 };
126288 
126289 struct dtl_worker {
126290 	struct delayed_work work;
126291 	int cpu;
126292 };
126293 
126294 struct vcpu_dispatch_data {
126295 	int last_disp_cpu;
126296 	int total_disp;
126297 	int same_cpu_disp;
126298 	int same_chip_disp;
126299 	int diff_chip_disp;
126300 	int far_chip_disp;
126301 	int numa_home_disp;
126302 	int numa_remote_disp;
126303 	int numa_far_disp;
126304 };
126305 
126306 struct hpt_resize_state {
126307 	long unsigned int shift;
126308 	int commit_rc;
126309 };
126310 
126311 enum hv_perf_domains {
126312 	HV_PERF_DOMAIN_PHYS_CHIP = 1,
126313 	HV_PERF_DOMAIN_PHYS_CORE = 2,
126314 	HV_PERF_DOMAIN_VCPU_HOME_CORE = 3,
126315 	HV_PERF_DOMAIN_VCPU_HOME_CHIP = 4,
126316 	HV_PERF_DOMAIN_VCPU_HOME_NODE = 5,
126317 	HV_PERF_DOMAIN_VCPU_REMOTE_NODE = 6,
126318 	HV_PERF_DOMAIN_MAX = 7,
126319 };
126320 
126321 struct hv_24x7_request {
126322 	__u8 performance_domain;
126323 	__u8 reserved[1];
126324 	__be16 data_size;
126325 	__be32 data_offset;
126326 	__be16 starting_lpar_ix;
126327 	__be16 max_num_lpars;
126328 	__be16 starting_ix;
126329 	__be16 max_ix;
126330 	__u8 starting_thread_group_ix;
126331 	__u8 max_num_thread_groups;
126332 	__u8 reserved2[14];
126333 };
126334 
126335 struct hv_24x7_request_buffer {
126336 	__u8 interface_version;
126337 	__u8 num_requests;
126338 	__u8 reserved[14];
126339 	struct hv_24x7_request requests[0];
126340 };
126341 
126342 struct hv_24x7_result {
126343 	__u8 result_ix;
126344 	__u8 results_complete;
126345 	__be16 num_elements_returned;
126346 	__be16 result_element_data_size;
126347 	__u8 reserved[2];
126348 	char elements[0];
126349 };
126350 
126351 struct hv_24x7_data_result_buffer {
126352 	__u8 interface_version;
126353 	__u8 num_results;
126354 	__u8 reserved[1];
126355 	__u8 failing_request_ix;
126356 	__be32 detailed_rc;
126357 	__be64 cec_cfg_instance_id;
126358 	__be64 catalog_version_num;
126359 	__u8 reserved2[8];
126360 	struct hv_24x7_result results[0];
126361 };
126362 
126363 struct hv_24x7_catalog_page_0 {
126364 	__be32 magic;
126365 	__be32 length;
126366 	__be64 version;
126367 	__u8 build_time_stamp[16];
126368 	__u8 reserved2[32];
126369 	__be16 schema_data_offs;
126370 	__be16 schema_data_len;
126371 	__be16 schema_entry_count;
126372 	__u8 reserved3[2];
126373 	__be16 event_data_offs;
126374 	__be16 event_data_len;
126375 	__be16 event_entry_count;
126376 	__u8 reserved4[2];
126377 	__be16 group_data_offs;
126378 	__be16 group_data_len;
126379 	__be16 group_entry_count;
126380 	__u8 reserved5[2];
126381 	__be16 formula_data_offs;
126382 	__be16 formula_data_len;
126383 	__be16 formula_entry_count;
126384 	__u8 reserved6[2];
126385 };
126386 
126387 struct hv_24x7_event_data {
126388 	__be16 length;
126389 	__u8 reserved1[2];
126390 	__u8 domain;
126391 	__u8 reserved2[1];
126392 	__be16 event_group_record_offs;
126393 	__be16 event_group_record_len;
126394 	__be16 event_counter_offs;
126395 	__be32 flags;
126396 	__be16 primary_group_ix;
126397 	__be16 group_count;
126398 	__be16 event_name_len;
126399 	__u8 remainder[0];
126400 } __attribute__((packed));
126401 
126402 struct hv_24x7_hw {
126403 	struct perf_event *events[255];
126404 };
126405 
126406 struct event_uniq {
126407 	struct rb_node node;
126408 	const char *name;
126409 	int nl;
126410 	unsigned int ct;
126411 	unsigned int domain;
126412 };
126413 
126414 struct warn_args {
126415 	const char *fmt;
126416 	va_list args;
126417 };
126418 
126419 struct async_entry {
126420 	struct list_head domain_list;
126421 	struct list_head global_list;
126422 	struct work_struct work;
126423 	async_cookie_t cookie;
126424 	async_func_t func;
126425 	void *data;
126426 	struct async_domain *domain;
126427 };
126428 
126429 enum {
126430 	TRACE_FUNC_NO_OPTS = 0,
126431 	TRACE_FUNC_OPT_STACK = 1,
126432 	TRACE_FUNC_OPT_NO_REPEATS = 2,
126433 	TRACE_FUNC_OPT_HIGHEST_BIT = 4,
126434 };
126435 
126436 struct enable_trigger_data {
126437 	struct trace_event_file *file;
126438 	bool enable;
126439 	bool hist;
126440 };
126441 
126442 struct bpf_iter_seq_map_info {
126443 	u32 map_id;
126444 };
126445 
126446 struct bpf_iter__bpf_map {
126447 	union {
126448 		struct bpf_iter_meta *meta;
126449 	};
126450 	union {
126451 		struct bpf_map *map;
126452 	};
126453 };
126454 
126455 struct bpf_queue_stack {
126456 	struct bpf_map map;
126457 	raw_spinlock_t lock;
126458 	u32 head;
126459 	u32 tail;
126460 	u32 size;
126461 	char elements[0];
126462 	long: 64;
126463 	long: 64;
126464 	long: 64;
126465 	long: 64;
126466 	long: 64;
126467 	long: 64;
126468 	long: 64;
126469 	long: 64;
126470 	long: 64;
126471 	long: 64;
126472 	long: 64;
126473 	long: 64;
126474 	long: 64;
126475 	long: 64;
126476 };
126477 
126478 enum bpf_stack_build_id_status {
126479 	BPF_STACK_BUILD_ID_EMPTY = 0,
126480 	BPF_STACK_BUILD_ID_VALID = 1,
126481 	BPF_STACK_BUILD_ID_IP = 2,
126482 };
126483 
126484 struct bpf_stack_build_id {
126485 	__s32 status;
126486 	unsigned char build_id[20];
126487 	union {
126488 		__u64 offset;
126489 		__u64 ip;
126490 	};
126491 };
126492 
126493 enum {
126494 	BPF_F_SKIP_FIELD_MASK = 255,
126495 	BPF_F_USER_STACK = 256,
126496 	BPF_F_FAST_STACK_CMP = 512,
126497 	BPF_F_REUSE_STACKID = 1024,
126498 	BPF_F_USER_BUILD_ID = 2048,
126499 };
126500 
126501 struct stack_map_bucket {
126502 	struct pcpu_freelist_node fnode;
126503 	u32 hash;
126504 	u32 nr;
126505 	u64 data[0];
126506 };
126507 
126508 struct bpf_stack_map {
126509 	struct bpf_map map;
126510 	void *elems;
126511 	struct pcpu_freelist freelist;
126512 	u32 n_buckets;
126513 	struct stack_map_bucket *buckets[0];
126514 	long: 64;
126515 	long: 64;
126516 	long: 64;
126517 	long: 64;
126518 	long: 64;
126519 	long: 64;
126520 	long: 64;
126521 	long: 64;
126522 	long: 64;
126523 	long: 64;
126524 	long: 64;
126525 };
126526 
126527 typedef u64 (*btf_bpf_get_stackid)(struct pt_regs *, struct bpf_map *, u64);
126528 
126529 typedef u64 (*btf_bpf_get_stackid_pe)(struct bpf_perf_event_data_kern *, struct bpf_map *, u64);
126530 
126531 typedef u64 (*btf_bpf_get_stack)(struct pt_regs *, void *, u32, u64);
126532 
126533 typedef u64 (*btf_bpf_get_task_stack)(struct task_struct *, void *, u32, u64);
126534 
126535 typedef u64 (*btf_bpf_get_stack_pe)(struct bpf_perf_event_data_kern *, void *, u32, u64);
126536 
126537 struct trace_event_raw_mm_filemap_op_page_cache {
126538 	struct trace_entry ent;
126539 	long unsigned int pfn;
126540 	long unsigned int i_ino;
126541 	long unsigned int index;
126542 	dev_t s_dev;
126543 	unsigned char order;
126544 	char __data[0];
126545 };
126546 
126547 struct trace_event_raw_filemap_set_wb_err {
126548 	struct trace_entry ent;
126549 	long unsigned int i_ino;
126550 	dev_t s_dev;
126551 	errseq_t errseq;
126552 	char __data[0];
126553 };
126554 
126555 struct trace_event_raw_file_check_and_advance_wb_err {
126556 	struct trace_entry ent;
126557 	struct file *file;
126558 	long unsigned int i_ino;
126559 	dev_t s_dev;
126560 	errseq_t old;
126561 	errseq_t new;
126562 	char __data[0];
126563 };
126564 
126565 struct trace_event_data_offsets_mm_filemap_op_page_cache {};
126566 
126567 struct trace_event_data_offsets_filemap_set_wb_err {};
126568 
126569 struct trace_event_data_offsets_file_check_and_advance_wb_err {};
126570 
126571 typedef void (*btf_trace_mm_filemap_delete_from_page_cache)(void *, struct folio *);
126572 
126573 typedef void (*btf_trace_mm_filemap_add_to_page_cache)(void *, struct folio *);
126574 
126575 typedef void (*btf_trace_filemap_set_wb_err)(void *, struct address_space *, errseq_t);
126576 
126577 typedef void (*btf_trace_file_check_and_advance_wb_err)(void *, struct file *, errseq_t);
126578 
126579 enum behavior {
126580 	EXCLUSIVE = 0,
126581 	SHARED = 1,
126582 	DROP = 2,
126583 };
126584 
126585 struct zap_details {
126586 	struct folio *single_folio;
126587 	bool even_cows;
126588 	zap_flags_t zap_flags;
126589 };
126590 
126591 struct copy_subpage_arg {
126592 	struct page *dst;
126593 	struct page *src;
126594 	struct vm_area_struct *vma;
126595 };
126596 
126597 enum stat_item {
126598 	ALLOC_FASTPATH = 0,
126599 	ALLOC_SLOWPATH = 1,
126600 	FREE_FASTPATH = 2,
126601 	FREE_SLOWPATH = 3,
126602 	FREE_FROZEN = 4,
126603 	FREE_ADD_PARTIAL = 5,
126604 	FREE_REMOVE_PARTIAL = 6,
126605 	ALLOC_FROM_PARTIAL = 7,
126606 	ALLOC_SLAB = 8,
126607 	ALLOC_REFILL = 9,
126608 	ALLOC_NODE_MISMATCH = 10,
126609 	FREE_SLAB = 11,
126610 	CPUSLAB_FLUSH = 12,
126611 	DEACTIVATE_FULL = 13,
126612 	DEACTIVATE_EMPTY = 14,
126613 	DEACTIVATE_TO_HEAD = 15,
126614 	DEACTIVATE_TO_TAIL = 16,
126615 	DEACTIVATE_REMOTE_FREES = 17,
126616 	DEACTIVATE_BYPASS = 18,
126617 	ORDER_FALLBACK = 19,
126618 	CMPXCHG_DOUBLE_CPU_FAIL = 20,
126619 	CMPXCHG_DOUBLE_FAIL = 21,
126620 	CPU_PARTIAL_ALLOC = 22,
126621 	CPU_PARTIAL_FREE = 23,
126622 	CPU_PARTIAL_NODE = 24,
126623 	CPU_PARTIAL_DRAIN = 25,
126624 	NR_SLUB_STAT_ITEMS = 26,
126625 };
126626 
126627 struct track {
126628 	long unsigned int addr;
126629 	depot_stack_handle_t handle;
126630 	int cpu;
126631 	int pid;
126632 	long unsigned int when;
126633 };
126634 
126635 enum track_item {
126636 	TRACK_ALLOC = 0,
126637 	TRACK_FREE = 1,
126638 };
126639 
126640 struct slub_flush_work {
126641 	struct work_struct work;
126642 	struct kmem_cache *s;
126643 	bool skip;
126644 };
126645 
126646 struct detached_freelist {
126647 	struct slab *slab;
126648 	void *tail;
126649 	void *freelist;
126650 	int cnt;
126651 	struct kmem_cache *s;
126652 };
126653 
126654 struct location {
126655 	depot_stack_handle_t handle;
126656 	long unsigned int count;
126657 	long unsigned int addr;
126658 	long long int sum_time;
126659 	long int min_time;
126660 	long int max_time;
126661 	long int min_pid;
126662 	long int max_pid;
126663 	long unsigned int cpus[32];
126664 	nodemask_t nodes;
126665 };
126666 
126667 struct loc_track {
126668 	long unsigned int max;
126669 	long unsigned int count;
126670 	struct location *loc;
126671 	loff_t idx;
126672 };
126673 
126674 enum slab_stat_type {
126675 	SL_ALL = 0,
126676 	SL_PARTIAL = 1,
126677 	SL_CPU = 2,
126678 	SL_OBJECTS = 3,
126679 	SL_TOTAL = 4,
126680 };
126681 
126682 struct slab_attribute {
126683 	struct attribute attr;
126684 	ssize_t (*show)(struct kmem_cache *, char *);
126685 	ssize_t (*store)(struct kmem_cache *, const char *, size_t);
126686 };
126687 
126688 struct saved_alias {
126689 	struct kmem_cache *s;
126690 	const char *name;
126691 	struct saved_alias *next;
126692 };
126693 
126694 enum slab_modes {
126695 	M_NONE = 0,
126696 	M_PARTIAL = 1,
126697 	M_FULL = 2,
126698 	M_FREE = 3,
126699 	M_FULL_NOLIST = 4,
126700 };
126701 
126702 struct dentry_stat_t {
126703 	long int nr_dentry;
126704 	long int nr_unused;
126705 	long int age_limit;
126706 	long int want_pages;
126707 	long int nr_negative;
126708 	long int dummy;
126709 };
126710 
126711 struct external_name {
126712 	union {
126713 		atomic_t count;
126714 		struct callback_head head;
126715 	} u;
126716 	unsigned char name[0];
126717 };
126718 
126719 enum d_walk_ret {
126720 	D_WALK_CONTINUE = 0,
126721 	D_WALK_QUIT = 1,
126722 	D_WALK_NORETRY = 2,
126723 	D_WALK_SKIP = 3,
126724 };
126725 
126726 struct check_mount {
126727 	struct vfsmount *mnt;
126728 	unsigned int mounted;
126729 };
126730 
126731 struct select_data {
126732 	struct dentry *start;
126733 	union {
126734 		long int found;
126735 		struct dentry *victim;
126736 	};
126737 	struct list_head dispose;
126738 };
126739 
126740 struct ns_get_path_task_args {
126741 	const struct proc_ns_operations *ns_ops;
126742 	struct task_struct *task;
126743 };
126744 
126745 struct mb_cache {
126746 	struct hlist_bl_head *c_hash;
126747 	int c_bucket_bits;
126748 	long unsigned int c_max_entries;
126749 	spinlock_t c_list_lock;
126750 	struct list_head c_list;
126751 	long unsigned int c_entry_count;
126752 	struct shrinker c_shrink;
126753 	struct work_struct c_shrink_work;
126754 };
126755 
126756 struct folio_iter {
126757 	struct folio *folio;
126758 	size_t offset;
126759 	size_t length;
126760 	struct folio *_next;
126761 	size_t _seg_count;
126762 	int _i;
126763 };
126764 
126765 struct iomap_page {
126766 	atomic_t read_bytes_pending;
126767 	atomic_t write_bytes_pending;
126768 	spinlock_t uptodate_lock;
126769 	long unsigned int uptodate[0];
126770 };
126771 
126772 struct iomap_readpage_ctx {
126773 	struct folio *cur_folio;
126774 	bool cur_folio_in_bio;
126775 	struct bio *bio;
126776 	struct readahead_control *rac;
126777 };
126778 
126779 struct ext4_orphan_block_tail {
126780 	__le32 ob_magic;
126781 	__le32 ob_checksum;
126782 };
126783 
126784 typedef struct {
126785 	__le16 e_tag;
126786 	__le16 e_perm;
126787 	__le32 e_id;
126788 } ext2_acl_entry;
126789 
126790 typedef struct {
126791 	__le32 a_version;
126792 } ext2_acl_header;
126793 
126794 struct nfs_createdata {
126795 	struct nfs_createargs arg;
126796 	struct nfs_diropok res;
126797 	struct nfs_fh fhandle;
126798 	struct nfs_fattr fattr;
126799 };
126800 
126801 struct xfs_iread_state {
126802 	struct xfs_iext_cursor icur;
126803 	xfs_extnum_t loaded;
126804 };
126805 
126806 struct xfs_find_left_neighbor_info {
126807 	struct xfs_rmap_irec high;
126808 	struct xfs_rmap_irec *irec;
126809 };
126810 
126811 struct xfs_rmap_query_range_info {
126812 	xfs_rmap_query_range_fn fn;
126813 	void *priv;
126814 };
126815 
126816 struct xfs_rmap_key_state {
126817 	uint64_t owner;
126818 	uint64_t offset;
126819 	unsigned int flags;
126820 };
126821 
126822 struct xfs_dq_logformat {
126823 	uint16_t qlf_type;
126824 	uint16_t qlf_size;
126825 	xfs_dqid_t qlf_id;
126826 	int64_t qlf_blkno;
126827 	int32_t qlf_len;
126828 	uint32_t qlf_boffset;
126829 };
126830 
126831 struct xfs_qoff_logformat {
126832 	short unsigned int qf_type;
126833 	short unsigned int qf_size;
126834 	unsigned int qf_flags;
126835 	char qf_pad[12];
126836 };
126837 
126838 struct tracefs_dir_ops {
126839 	int (*mkdir)(const char *);
126840 	int (*rmdir)(const char *);
126841 };
126842 
126843 struct tracefs_mount_opts {
126844 	kuid_t uid;
126845 	kgid_t gid;
126846 	umode_t mode;
126847 	unsigned int opts;
126848 };
126849 
126850 struct tracefs_fs_info {
126851 	struct tracefs_mount_opts mount_opts;
126852 };
126853 
126854 struct crypto_queue {
126855 	struct list_head list;
126856 	struct list_head *backlog;
126857 	unsigned int qlen;
126858 	unsigned int max_qlen;
126859 };
126860 
126861 struct queue_sysfs_entry {
126862 	struct attribute attr;
126863 	ssize_t (*show)(struct request_queue *, char *);
126864 	ssize_t (*store)(struct request_queue *, const char *, size_t);
126865 };
126866 
126867 typedef guid_t efi_guid_t;
126868 
126869 struct _gpt_header {
126870 	__le64 signature;
126871 	__le32 revision;
126872 	__le32 header_size;
126873 	__le32 header_crc32;
126874 	__le32 reserved1;
126875 	__le64 my_lba;
126876 	__le64 alternate_lba;
126877 	__le64 first_usable_lba;
126878 	__le64 last_usable_lba;
126879 	efi_guid_t disk_guid;
126880 	__le64 partition_entry_lba;
126881 	__le32 num_partition_entries;
126882 	__le32 sizeof_partition_entry;
126883 	__le32 partition_entry_array_crc32;
126884 } __attribute__((packed));
126885 
126886 typedef struct _gpt_header gpt_header;
126887 
126888 struct _gpt_entry_attributes {
126889 	u64 required_to_function: 1;
126890 	u64 reserved: 47;
126891 	u64 type_guid_specific: 16;
126892 };
126893 
126894 typedef struct _gpt_entry_attributes gpt_entry_attributes;
126895 
126896 struct _gpt_entry {
126897 	efi_guid_t partition_type_guid;
126898 	efi_guid_t unique_partition_guid;
126899 	__le64 starting_lba;
126900 	__le64 ending_lba;
126901 	gpt_entry_attributes attributes;
126902 	__le16 partition_name[36];
126903 };
126904 
126905 typedef struct _gpt_entry gpt_entry;
126906 
126907 struct _gpt_mbr_record {
126908 	u8 boot_indicator;
126909 	u8 start_head;
126910 	u8 start_sector;
126911 	u8 start_track;
126912 	u8 os_type;
126913 	u8 end_head;
126914 	u8 end_sector;
126915 	u8 end_track;
126916 	__le32 starting_lba;
126917 	__le32 size_in_lba;
126918 };
126919 
126920 typedef struct _gpt_mbr_record gpt_mbr_record;
126921 
126922 struct _legacy_mbr {
126923 	u8 boot_code[440];
126924 	__le32 unique_mbr_signature;
126925 	__le16 unknown;
126926 	gpt_mbr_record partition_record[4];
126927 	__le16 signature;
126928 } __attribute__((packed));
126929 
126930 typedef struct _legacy_mbr legacy_mbr;
126931 
126932 struct bd_holder_disk {
126933 	struct list_head list;
126934 	struct block_device *bdev;
126935 	int refcnt;
126936 };
126937 
126938 struct io_statx {
126939 	struct file *file;
126940 	int dfd;
126941 	unsigned int mask;
126942 	unsigned int flags;
126943 	struct filename *filename;
126944 	struct statx *buffer;
126945 };
126946 
126947 struct fdt_errtabent {
126948 	const char *str;
126949 };
126950 
126951 enum format_type {
126952 	FORMAT_TYPE_NONE = 0,
126953 	FORMAT_TYPE_WIDTH = 1,
126954 	FORMAT_TYPE_PRECISION = 2,
126955 	FORMAT_TYPE_CHAR = 3,
126956 	FORMAT_TYPE_STR = 4,
126957 	FORMAT_TYPE_PTR = 5,
126958 	FORMAT_TYPE_PERCENT_CHAR = 6,
126959 	FORMAT_TYPE_INVALID = 7,
126960 	FORMAT_TYPE_LONG_LONG = 8,
126961 	FORMAT_TYPE_ULONG = 9,
126962 	FORMAT_TYPE_LONG = 10,
126963 	FORMAT_TYPE_UBYTE = 11,
126964 	FORMAT_TYPE_BYTE = 12,
126965 	FORMAT_TYPE_USHORT = 13,
126966 	FORMAT_TYPE_SHORT = 14,
126967 	FORMAT_TYPE_UINT = 15,
126968 	FORMAT_TYPE_INT = 16,
126969 	FORMAT_TYPE_SIZE_T = 17,
126970 	FORMAT_TYPE_PTRDIFF = 18,
126971 };
126972 
126973 struct printf_spec {
126974 	unsigned int type: 8;
126975 	int field_width: 24;
126976 	unsigned int flags: 8;
126977 	unsigned int base: 8;
126978 	int precision: 16;
126979 };
126980 
126981 struct page_flags_fields {
126982 	int width;
126983 	int shift;
126984 	int mask;
126985 	const struct printf_spec *spec;
126986 	const char *name;
126987 };
126988 
126989 struct vga_device {
126990 	struct list_head list;
126991 	struct pci_dev *pdev;
126992 	unsigned int decodes;
126993 	unsigned int owns;
126994 	unsigned int locks;
126995 	unsigned int io_lock_cnt;
126996 	unsigned int mem_lock_cnt;
126997 	unsigned int io_norm_cnt;
126998 	unsigned int mem_norm_cnt;
126999 	bool bridge_has_one_vga;
127000 	bool is_firmware_default;
127001 	unsigned int (*set_decode)(struct pci_dev *, bool);
127002 };
127003 
127004 struct vga_arb_user_card {
127005 	struct pci_dev *pdev;
127006 	unsigned int mem_cnt;
127007 	unsigned int io_cnt;
127008 };
127009 
127010 struct vga_arb_private {
127011 	struct list_head list;
127012 	struct pci_dev *target;
127013 	struct vga_arb_user_card cards[16];
127014 	spinlock_t lock;
127015 };
127016 
127017 enum radeon_chip_flags {
127018 	CHIP_FAMILY_MASK = 65535,
127019 	CHIP_FLAGS_MASK = 4294901760,
127020 	CHIP_IS_MOBILITY = 65536,
127021 	CHIP_IS_IGP = 131072,
127022 	CHIP_HAS_CRTC2 = 262144,
127023 };
127024 
127025 typedef struct {
127026 	u16 reg;
127027 	u32 val;
127028 } reg_val;
127029 
127030 struct vc_selection {
127031 	struct mutex lock;
127032 	struct vc_data *cons;
127033 	char *buffer;
127034 	unsigned int buf_len;
127035 	volatile int start;
127036 	int end;
127037 };
127038 
127039 struct pciserial_board {
127040 	unsigned int flags;
127041 	unsigned int num_ports;
127042 	unsigned int base_baud;
127043 	unsigned int uart_offset;
127044 	unsigned int reg_shift;
127045 	unsigned int first_offset;
127046 };
127047 
127048 struct serial_private;
127049 
127050 struct pci_serial_quirk {
127051 	u32 vendor;
127052 	u32 device;
127053 	u32 subvendor;
127054 	u32 subdevice;
127055 	int (*probe)(struct pci_dev *);
127056 	int (*init)(struct pci_dev *);
127057 	int (*setup)(struct serial_private *, const struct pciserial_board *, struct uart_8250_port *, int);
127058 	void (*exit)(struct pci_dev *);
127059 };
127060 
127061 struct serial_private {
127062 	struct pci_dev *dev;
127063 	unsigned int nr;
127064 	struct pci_serial_quirk *quirk;
127065 	const struct pciserial_board *board;
127066 	int line[0];
127067 };
127068 
127069 struct f815xxa_data {
127070 	spinlock_t lock;
127071 	int idx;
127072 };
127073 
127074 struct timedia_struct {
127075 	int num;
127076 	const short unsigned int *ids;
127077 };
127078 
127079 enum pci_board_num_t {
127080 	pbn_default = 0,
127081 	pbn_b0_1_115200 = 1,
127082 	pbn_b0_2_115200 = 2,
127083 	pbn_b0_4_115200 = 3,
127084 	pbn_b0_5_115200 = 4,
127085 	pbn_b0_8_115200 = 5,
127086 	pbn_b0_1_921600 = 6,
127087 	pbn_b0_2_921600 = 7,
127088 	pbn_b0_4_921600 = 8,
127089 	pbn_b0_2_1130000 = 9,
127090 	pbn_b0_4_1152000 = 10,
127091 	pbn_b0_4_1250000 = 11,
127092 	pbn_b0_2_1843200 = 12,
127093 	pbn_b0_4_1843200 = 13,
127094 	pbn_b0_1_15625000 = 14,
127095 	pbn_b0_bt_1_115200 = 15,
127096 	pbn_b0_bt_2_115200 = 16,
127097 	pbn_b0_bt_4_115200 = 17,
127098 	pbn_b0_bt_8_115200 = 18,
127099 	pbn_b0_bt_1_460800 = 19,
127100 	pbn_b0_bt_2_460800 = 20,
127101 	pbn_b0_bt_4_460800 = 21,
127102 	pbn_b0_bt_1_921600 = 22,
127103 	pbn_b0_bt_2_921600 = 23,
127104 	pbn_b0_bt_4_921600 = 24,
127105 	pbn_b0_bt_8_921600 = 25,
127106 	pbn_b1_1_115200 = 26,
127107 	pbn_b1_2_115200 = 27,
127108 	pbn_b1_4_115200 = 28,
127109 	pbn_b1_8_115200 = 29,
127110 	pbn_b1_16_115200 = 30,
127111 	pbn_b1_1_921600 = 31,
127112 	pbn_b1_2_921600 = 32,
127113 	pbn_b1_4_921600 = 33,
127114 	pbn_b1_8_921600 = 34,
127115 	pbn_b1_2_1250000 = 35,
127116 	pbn_b1_bt_1_115200 = 36,
127117 	pbn_b1_bt_2_115200 = 37,
127118 	pbn_b1_bt_4_115200 = 38,
127119 	pbn_b1_bt_2_921600 = 39,
127120 	pbn_b1_1_1382400 = 40,
127121 	pbn_b1_2_1382400 = 41,
127122 	pbn_b1_4_1382400 = 42,
127123 	pbn_b1_8_1382400 = 43,
127124 	pbn_b2_1_115200 = 44,
127125 	pbn_b2_2_115200 = 45,
127126 	pbn_b2_4_115200 = 46,
127127 	pbn_b2_8_115200 = 47,
127128 	pbn_b2_1_460800 = 48,
127129 	pbn_b2_4_460800 = 49,
127130 	pbn_b2_8_460800 = 50,
127131 	pbn_b2_16_460800 = 51,
127132 	pbn_b2_1_921600 = 52,
127133 	pbn_b2_4_921600 = 53,
127134 	pbn_b2_8_921600 = 54,
127135 	pbn_b2_8_1152000 = 55,
127136 	pbn_b2_bt_1_115200 = 56,
127137 	pbn_b2_bt_2_115200 = 57,
127138 	pbn_b2_bt_4_115200 = 58,
127139 	pbn_b2_bt_2_921600 = 59,
127140 	pbn_b2_bt_4_921600 = 60,
127141 	pbn_b3_2_115200 = 61,
127142 	pbn_b3_4_115200 = 62,
127143 	pbn_b3_8_115200 = 63,
127144 	pbn_b4_bt_2_921600 = 64,
127145 	pbn_b4_bt_4_921600 = 65,
127146 	pbn_b4_bt_8_921600 = 66,
127147 	pbn_panacom = 67,
127148 	pbn_panacom2 = 68,
127149 	pbn_panacom4 = 69,
127150 	pbn_plx_romulus = 70,
127151 	pbn_oxsemi = 71,
127152 	pbn_oxsemi_1_15625000 = 72,
127153 	pbn_oxsemi_2_15625000 = 73,
127154 	pbn_oxsemi_4_15625000 = 74,
127155 	pbn_oxsemi_8_15625000 = 75,
127156 	pbn_intel_i960 = 76,
127157 	pbn_sgi_ioc3 = 77,
127158 	pbn_computone_4 = 78,
127159 	pbn_computone_6 = 79,
127160 	pbn_computone_8 = 80,
127161 	pbn_sbsxrsio = 81,
127162 	pbn_pasemi_1682M = 82,
127163 	pbn_ni8430_2 = 83,
127164 	pbn_ni8430_4 = 84,
127165 	pbn_ni8430_8 = 85,
127166 	pbn_ni8430_16 = 86,
127167 	pbn_ADDIDATA_PCIe_1_3906250 = 87,
127168 	pbn_ADDIDATA_PCIe_2_3906250 = 88,
127169 	pbn_ADDIDATA_PCIe_4_3906250 = 89,
127170 	pbn_ADDIDATA_PCIe_8_3906250 = 90,
127171 	pbn_ce4100_1_115200 = 91,
127172 	pbn_omegapci = 92,
127173 	pbn_NETMOS9900_2s_115200 = 93,
127174 	pbn_brcm_trumanage = 94,
127175 	pbn_fintek_4 = 95,
127176 	pbn_fintek_8 = 96,
127177 	pbn_fintek_12 = 97,
127178 	pbn_fintek_F81504A = 98,
127179 	pbn_fintek_F81508A = 99,
127180 	pbn_fintek_F81512A = 100,
127181 	pbn_wch382_2 = 101,
127182 	pbn_wch384_4 = 102,
127183 	pbn_wch384_8 = 103,
127184 	pbn_sunix_pci_1s = 104,
127185 	pbn_sunix_pci_2s = 105,
127186 	pbn_sunix_pci_4s = 106,
127187 	pbn_sunix_pci_8s = 107,
127188 	pbn_sunix_pci_16s = 108,
127189 	pbn_titan_1_4000000 = 109,
127190 	pbn_titan_2_4000000 = 110,
127191 	pbn_titan_4_4000000 = 111,
127192 	pbn_titan_8_4000000 = 112,
127193 	pbn_moxa8250_2p = 113,
127194 	pbn_moxa8250_4p = 114,
127195 	pbn_moxa8250_8p = 115,
127196 };
127197 
127198 struct class_compat {
127199 	struct kobject *kobj;
127200 };
127201 
127202 struct reg_field {
127203 	unsigned int reg;
127204 	unsigned int lsb;
127205 	unsigned int msb;
127206 	unsigned int id_size;
127207 	unsigned int id_offset;
127208 };
127209 
127210 struct regmap_field {
127211 	struct regmap *regmap;
127212 	unsigned int mask;
127213 	unsigned int shift;
127214 	unsigned int reg;
127215 	unsigned int id_size;
127216 	unsigned int id_offset;
127217 };
127218 
127219 struct trace_event_raw_regmap_reg {
127220 	struct trace_entry ent;
127221 	u32 __data_loc_name;
127222 	unsigned int reg;
127223 	unsigned int val;
127224 	char __data[0];
127225 };
127226 
127227 struct trace_event_raw_regmap_block {
127228 	struct trace_entry ent;
127229 	u32 __data_loc_name;
127230 	unsigned int reg;
127231 	int count;
127232 	char __data[0];
127233 };
127234 
127235 struct trace_event_raw_regcache_sync {
127236 	struct trace_entry ent;
127237 	u32 __data_loc_name;
127238 	u32 __data_loc_status;
127239 	u32 __data_loc_type;
127240 	char __data[0];
127241 };
127242 
127243 struct trace_event_raw_regmap_bool {
127244 	struct trace_entry ent;
127245 	u32 __data_loc_name;
127246 	int flag;
127247 	char __data[0];
127248 };
127249 
127250 struct trace_event_raw_regmap_async {
127251 	struct trace_entry ent;
127252 	u32 __data_loc_name;
127253 	char __data[0];
127254 };
127255 
127256 struct trace_event_raw_regcache_drop_region {
127257 	struct trace_entry ent;
127258 	u32 __data_loc_name;
127259 	unsigned int from;
127260 	unsigned int to;
127261 	char __data[0];
127262 };
127263 
127264 struct trace_event_data_offsets_regmap_reg {
127265 	u32 name;
127266 };
127267 
127268 struct trace_event_data_offsets_regmap_block {
127269 	u32 name;
127270 };
127271 
127272 struct trace_event_data_offsets_regcache_sync {
127273 	u32 name;
127274 	u32 status;
127275 	u32 type;
127276 };
127277 
127278 struct trace_event_data_offsets_regmap_bool {
127279 	u32 name;
127280 };
127281 
127282 struct trace_event_data_offsets_regmap_async {
127283 	u32 name;
127284 };
127285 
127286 struct trace_event_data_offsets_regcache_drop_region {
127287 	u32 name;
127288 };
127289 
127290 typedef void (*btf_trace_regmap_reg_write)(void *, struct regmap *, unsigned int, unsigned int);
127291 
127292 typedef void (*btf_trace_regmap_reg_read)(void *, struct regmap *, unsigned int, unsigned int);
127293 
127294 typedef void (*btf_trace_regmap_reg_read_cache)(void *, struct regmap *, unsigned int, unsigned int);
127295 
127296 typedef void (*btf_trace_regmap_hw_read_start)(void *, struct regmap *, unsigned int, int);
127297 
127298 typedef void (*btf_trace_regmap_hw_read_done)(void *, struct regmap *, unsigned int, int);
127299 
127300 typedef void (*btf_trace_regmap_hw_write_start)(void *, struct regmap *, unsigned int, int);
127301 
127302 typedef void (*btf_trace_regmap_hw_write_done)(void *, struct regmap *, unsigned int, int);
127303 
127304 typedef void (*btf_trace_regcache_sync)(void *, struct regmap *, const char *, const char *);
127305 
127306 typedef void (*btf_trace_regmap_cache_only)(void *, struct regmap *, bool);
127307 
127308 typedef void (*btf_trace_regmap_cache_bypass)(void *, struct regmap *, bool);
127309 
127310 typedef void (*btf_trace_regmap_async_write_start)(void *, struct regmap *, unsigned int, int);
127311 
127312 typedef void (*btf_trace_regmap_async_io_complete)(void *, struct regmap *);
127313 
127314 typedef void (*btf_trace_regmap_async_complete_start)(void *, struct regmap *);
127315 
127316 typedef void (*btf_trace_regmap_async_complete_done)(void *, struct regmap *);
127317 
127318 typedef void (*btf_trace_regcache_drop_region)(void *, struct regmap *, unsigned int, unsigned int);
127319 
127320 struct pmem_device {
127321 	phys_addr_t phys_addr;
127322 	phys_addr_t data_offset;
127323 	u64 pfn_flags;
127324 	void *virt_addr;
127325 	size_t size;
127326 	u32 pfn_pad;
127327 	struct kernfs_node *bb_state;
127328 	struct badblocks bb;
127329 	struct dax_device *dax_dev;
127330 	struct gendisk *disk;
127331 	struct dev_pagemap pgmap;
127332 };
127333 
127334 enum scsi_devinfo_key {
127335 	SCSI_DEVINFO_GLOBAL = 0,
127336 	SCSI_DEVINFO_SPI = 1,
127337 };
127338 
127339 struct scsi_dev_info_list {
127340 	struct list_head dev_info_list;
127341 	char vendor[8];
127342 	char model[16];
127343 	blist_flags_t flags;
127344 	unsigned int compatible;
127345 };
127346 
127347 struct scsi_dev_info_list_table {
127348 	struct list_head node;
127349 	struct list_head scsi_dev_info_list;
127350 	const char *name;
127351 	int key;
127352 };
127353 
127354 struct double_list {
127355 	struct list_head *top;
127356 	struct list_head *bottom;
127357 };
127358 
127359 enum fc_port_type {
127360 	FC_PORTTYPE_UNKNOWN = 0,
127361 	FC_PORTTYPE_OTHER = 1,
127362 	FC_PORTTYPE_NOTPRESENT = 2,
127363 	FC_PORTTYPE_NPORT = 3,
127364 	FC_PORTTYPE_NLPORT = 4,
127365 	FC_PORTTYPE_LPORT = 5,
127366 	FC_PORTTYPE_PTP = 6,
127367 	FC_PORTTYPE_NPIV = 7,
127368 };
127369 
127370 enum fc_port_state {
127371 	FC_PORTSTATE_UNKNOWN = 0,
127372 	FC_PORTSTATE_NOTPRESENT = 1,
127373 	FC_PORTSTATE_ONLINE = 2,
127374 	FC_PORTSTATE_OFFLINE = 3,
127375 	FC_PORTSTATE_BLOCKED = 4,
127376 	FC_PORTSTATE_BYPASSED = 5,
127377 	FC_PORTSTATE_DIAGNOSTICS = 6,
127378 	FC_PORTSTATE_LINKDOWN = 7,
127379 	FC_PORTSTATE_ERROR = 8,
127380 	FC_PORTSTATE_LOOPBACK = 9,
127381 	FC_PORTSTATE_DELETED = 10,
127382 	FC_PORTSTATE_MARGINAL = 11,
127383 };
127384 
127385 enum fc_vport_state {
127386 	FC_VPORT_UNKNOWN = 0,
127387 	FC_VPORT_ACTIVE = 1,
127388 	FC_VPORT_DISABLED = 2,
127389 	FC_VPORT_LINKDOWN = 3,
127390 	FC_VPORT_INITIALIZING = 4,
127391 	FC_VPORT_NO_FABRIC_SUPP = 5,
127392 	FC_VPORT_NO_FABRIC_RSCS = 6,
127393 	FC_VPORT_FABRIC_LOGOUT = 7,
127394 	FC_VPORT_FABRIC_REJ_WWN = 8,
127395 	FC_VPORT_FAILED = 9,
127396 };
127397 
127398 enum fc_tgtid_binding_type {
127399 	FC_TGTID_BIND_NONE = 0,
127400 	FC_TGTID_BIND_BY_WWPN = 1,
127401 	FC_TGTID_BIND_BY_WWNN = 2,
127402 	FC_TGTID_BIND_BY_ID = 3,
127403 };
127404 
127405 struct fc_vport_identifiers {
127406 	u64 node_name;
127407 	u64 port_name;
127408 	u32 roles;
127409 	bool disable;
127410 	enum fc_port_type vport_type;
127411 	char symbolic_name[64];
127412 };
127413 
127414 struct fc_vport {
127415 	enum fc_vport_state vport_state;
127416 	enum fc_vport_state vport_last_state;
127417 	u64 node_name;
127418 	u64 port_name;
127419 	u32 roles;
127420 	u32 vport_id;
127421 	enum fc_port_type vport_type;
127422 	char symbolic_name[64];
127423 	void *dd_data;
127424 	struct Scsi_Host *shost;
127425 	unsigned int channel;
127426 	u32 number;
127427 	u8 flags;
127428 	struct list_head peers;
127429 	struct device dev;
127430 	struct work_struct vport_delete_work;
127431 };
127432 
127433 struct fc_rport_identifiers {
127434 	u64 node_name;
127435 	u64 port_name;
127436 	u32 port_id;
127437 	u32 roles;
127438 };
127439 
127440 struct fc_fpin_stats {
127441 	u64 dn;
127442 	u64 dn_unknown;
127443 	u64 dn_timeout;
127444 	u64 dn_unable_to_route;
127445 	u64 dn_device_specific;
127446 	u64 li;
127447 	u64 li_failure_unknown;
127448 	u64 li_link_failure_count;
127449 	u64 li_loss_of_sync_count;
127450 	u64 li_loss_of_signals_count;
127451 	u64 li_prim_seq_err_count;
127452 	u64 li_invalid_tx_word_count;
127453 	u64 li_invalid_crc_count;
127454 	u64 li_device_specific;
127455 	u64 cn;
127456 	u64 cn_clear;
127457 	u64 cn_lost_credit;
127458 	u64 cn_credit_stall;
127459 	u64 cn_oversubscription;
127460 	u64 cn_device_specific;
127461 };
127462 
127463 struct fc_rport {
127464 	u32 maxframe_size;
127465 	u32 supported_classes;
127466 	u32 dev_loss_tmo;
127467 	struct fc_fpin_stats fpin_stats;
127468 	u64 node_name;
127469 	u64 port_name;
127470 	u32 port_id;
127471 	u32 roles;
127472 	enum fc_port_state port_state;
127473 	u32 scsi_target_id;
127474 	u32 fast_io_fail_tmo;
127475 	void *dd_data;
127476 	unsigned int channel;
127477 	u32 number;
127478 	u8 flags;
127479 	struct list_head peers;
127480 	struct device dev;
127481 	struct delayed_work dev_loss_work;
127482 	struct work_struct scan_work;
127483 	struct delayed_work fail_io_work;
127484 	struct work_struct stgt_delete_work;
127485 	struct work_struct rport_delete_work;
127486 	struct request_queue *rqst_q;
127487 };
127488 
127489 struct fc_starget_attrs {
127490 	u64 node_name;
127491 	u64 port_name;
127492 	u32 port_id;
127493 };
127494 
127495 struct fc_host_statistics {
127496 	u64 seconds_since_last_reset;
127497 	u64 tx_frames;
127498 	u64 tx_words;
127499 	u64 rx_frames;
127500 	u64 rx_words;
127501 	u64 lip_count;
127502 	u64 nos_count;
127503 	u64 error_frames;
127504 	u64 dumped_frames;
127505 	u64 link_failure_count;
127506 	u64 loss_of_sync_count;
127507 	u64 loss_of_signal_count;
127508 	u64 prim_seq_protocol_err_count;
127509 	u64 invalid_tx_word_count;
127510 	u64 invalid_crc_count;
127511 	u64 fcp_input_requests;
127512 	u64 fcp_output_requests;
127513 	u64 fcp_control_requests;
127514 	u64 fcp_input_megabytes;
127515 	u64 fcp_output_megabytes;
127516 	u64 fcp_packet_alloc_failures;
127517 	u64 fcp_packet_aborts;
127518 	u64 fcp_frame_alloc_failures;
127519 	u64 fc_no_free_exch;
127520 	u64 fc_no_free_exch_xid;
127521 	u64 fc_xid_not_found;
127522 	u64 fc_xid_busy;
127523 	u64 fc_seq_not_found;
127524 	u64 fc_non_bls_resp;
127525 	u64 cn_sig_warn;
127526 	u64 cn_sig_alarm;
127527 };
127528 
127529 enum fc_host_event_code {
127530 	FCH_EVT_LIP = 1,
127531 	FCH_EVT_LINKUP = 2,
127532 	FCH_EVT_LINKDOWN = 3,
127533 	FCH_EVT_LIPRESET = 4,
127534 	FCH_EVT_RSCN = 5,
127535 	FCH_EVT_ADAPTER_CHANGE = 259,
127536 	FCH_EVT_PORT_UNKNOWN = 512,
127537 	FCH_EVT_PORT_OFFLINE = 513,
127538 	FCH_EVT_PORT_ONLINE = 514,
127539 	FCH_EVT_PORT_FABRIC = 516,
127540 	FCH_EVT_LINK_UNKNOWN = 1280,
127541 	FCH_EVT_LINK_FPIN = 1281,
127542 	FCH_EVT_VENDOR_UNIQUE = 65535,
127543 };
127544 
127545 struct fc_host_attrs {
127546 	u64 node_name;
127547 	u64 port_name;
127548 	u64 permanent_port_name;
127549 	u32 supported_classes;
127550 	u8 supported_fc4s[32];
127551 	u32 supported_speeds;
127552 	u32 maxframe_size;
127553 	u16 max_npiv_vports;
127554 	u32 max_ct_payload;
127555 	u32 num_ports;
127556 	u32 num_discovered_ports;
127557 	u32 bootbios_state;
127558 	char serial_number[64];
127559 	char manufacturer[64];
127560 	char model[256];
127561 	char model_description[256];
127562 	char hardware_version[64];
127563 	char driver_version[64];
127564 	char firmware_version[64];
127565 	char optionrom_version[64];
127566 	char vendor_identifier[8];
127567 	char bootbios_version[256];
127568 	u32 port_id;
127569 	enum fc_port_type port_type;
127570 	enum fc_port_state port_state;
127571 	u8 active_fc4s[32];
127572 	u32 speed;
127573 	u64 fabric_name;
127574 	char symbolic_name[256];
127575 	char system_hostname[256];
127576 	u32 dev_loss_tmo;
127577 	struct fc_fpin_stats fpin_stats;
127578 	enum fc_tgtid_binding_type tgtid_bind_type;
127579 	struct list_head rports;
127580 	struct list_head rport_bindings;
127581 	struct list_head vports;
127582 	u32 next_rport_number;
127583 	u32 next_target_id;
127584 	u32 next_vport_number;
127585 	u16 npiv_vports_inuse;
127586 	char work_q_name[20];
127587 	struct workqueue_struct *work_q;
127588 	char devloss_work_q_name[20];
127589 	struct workqueue_struct *devloss_work_q;
127590 	struct request_queue *rqst_q;
127591 	u8 fdmi_version;
127592 };
127593 
127594 struct fc_function_template {
127595 	void (*get_rport_dev_loss_tmo)(struct fc_rport *);
127596 	void (*set_rport_dev_loss_tmo)(struct fc_rport *, u32);
127597 	void (*get_starget_node_name)(struct scsi_target *);
127598 	void (*get_starget_port_name)(struct scsi_target *);
127599 	void (*get_starget_port_id)(struct scsi_target *);
127600 	void (*get_host_port_id)(struct Scsi_Host *);
127601 	void (*get_host_port_type)(struct Scsi_Host *);
127602 	void (*get_host_port_state)(struct Scsi_Host *);
127603 	void (*get_host_active_fc4s)(struct Scsi_Host *);
127604 	void (*get_host_speed)(struct Scsi_Host *);
127605 	void (*get_host_fabric_name)(struct Scsi_Host *);
127606 	void (*get_host_symbolic_name)(struct Scsi_Host *);
127607 	void (*set_host_system_hostname)(struct Scsi_Host *);
127608 	struct fc_host_statistics * (*get_fc_host_stats)(struct Scsi_Host *);
127609 	void (*reset_fc_host_stats)(struct Scsi_Host *);
127610 	int (*issue_fc_host_lip)(struct Scsi_Host *);
127611 	void (*dev_loss_tmo_callbk)(struct fc_rport *);
127612 	void (*terminate_rport_io)(struct fc_rport *);
127613 	void (*set_vport_symbolic_name)(struct fc_vport *);
127614 	int (*vport_create)(struct fc_vport *, bool);
127615 	int (*vport_disable)(struct fc_vport *, bool);
127616 	int (*vport_delete)(struct fc_vport *);
127617 	int (*bsg_request)(struct bsg_job *);
127618 	int (*bsg_timeout)(struct bsg_job *);
127619 	u32 dd_fcrport_size;
127620 	u32 dd_fcvport_size;
127621 	u32 dd_bsg_size;
127622 	long unsigned int show_rport_maxframe_size: 1;
127623 	long unsigned int show_rport_supported_classes: 1;
127624 	long unsigned int show_rport_dev_loss_tmo: 1;
127625 	long unsigned int show_starget_node_name: 1;
127626 	long unsigned int show_starget_port_name: 1;
127627 	long unsigned int show_starget_port_id: 1;
127628 	long unsigned int show_host_node_name: 1;
127629 	long unsigned int show_host_port_name: 1;
127630 	long unsigned int show_host_permanent_port_name: 1;
127631 	long unsigned int show_host_supported_classes: 1;
127632 	long unsigned int show_host_supported_fc4s: 1;
127633 	long unsigned int show_host_supported_speeds: 1;
127634 	long unsigned int show_host_maxframe_size: 1;
127635 	long unsigned int show_host_serial_number: 1;
127636 	long unsigned int show_host_manufacturer: 1;
127637 	long unsigned int show_host_model: 1;
127638 	long unsigned int show_host_model_description: 1;
127639 	long unsigned int show_host_hardware_version: 1;
127640 	long unsigned int show_host_driver_version: 1;
127641 	long unsigned int show_host_firmware_version: 1;
127642 	long unsigned int show_host_optionrom_version: 1;
127643 	long unsigned int show_host_port_id: 1;
127644 	long unsigned int show_host_port_type: 1;
127645 	long unsigned int show_host_port_state: 1;
127646 	long unsigned int show_host_active_fc4s: 1;
127647 	long unsigned int show_host_speed: 1;
127648 	long unsigned int show_host_fabric_name: 1;
127649 	long unsigned int show_host_symbolic_name: 1;
127650 	long unsigned int show_host_system_hostname: 1;
127651 	long unsigned int disable_target_scan: 1;
127652 };
127653 
127654 struct fc_nl_event {
127655 	struct scsi_nl_hdr snlh;
127656 	__u64 seconds;
127657 	__u64 vendor_id;
127658 	__u16 host_no;
127659 	__u16 event_datalen;
127660 	__u32 event_num;
127661 	__u32 event_code;
127662 	__u32 event_data;
127663 };
127664 
127665 struct fc_bsg_host_add_rport {
127666 	__u8 reserved;
127667 	__u8 port_id[3];
127668 };
127669 
127670 struct fc_bsg_host_del_rport {
127671 	__u8 reserved;
127672 	__u8 port_id[3];
127673 };
127674 
127675 struct fc_bsg_host_els {
127676 	__u8 command_code;
127677 	__u8 port_id[3];
127678 };
127679 
127680 struct fc_bsg_ctels_reply {
127681 	__u32 status;
127682 	struct {
127683 		__u8 action;
127684 		__u8 reason_code;
127685 		__u8 reason_explanation;
127686 		__u8 vendor_unique;
127687 	} rjt_data;
127688 };
127689 
127690 struct fc_bsg_host_ct {
127691 	__u8 reserved;
127692 	__u8 port_id[3];
127693 	__u32 preamble_word0;
127694 	__u32 preamble_word1;
127695 	__u32 preamble_word2;
127696 };
127697 
127698 struct fc_bsg_host_vendor {
127699 	__u64 vendor_id;
127700 	__u32 vendor_cmd[0];
127701 };
127702 
127703 struct fc_bsg_host_vendor_reply {
127704 	__u32 vendor_rsp[0];
127705 };
127706 
127707 struct fc_bsg_rport_els {
127708 	__u8 els_code;
127709 };
127710 
127711 struct fc_bsg_rport_ct {
127712 	__u32 preamble_word0;
127713 	__u32 preamble_word1;
127714 	__u32 preamble_word2;
127715 };
127716 
127717 struct fc_bsg_request {
127718 	__u32 msgcode;
127719 	union {
127720 		struct fc_bsg_host_add_rport h_addrport;
127721 		struct fc_bsg_host_del_rport h_delrport;
127722 		struct fc_bsg_host_els h_els;
127723 		struct fc_bsg_host_ct h_ct;
127724 		struct fc_bsg_host_vendor h_vendor;
127725 		struct fc_bsg_rport_els r_els;
127726 		struct fc_bsg_rport_ct r_ct;
127727 	} rqst_data;
127728 } __attribute__((packed));
127729 
127730 struct fc_bsg_reply {
127731 	__u32 result;
127732 	__u32 reply_payload_rcv_len;
127733 	union {
127734 		struct fc_bsg_host_vendor_reply vendor_reply;
127735 		struct fc_bsg_ctels_reply ctels_reply;
127736 	} reply_data;
127737 };
127738 
127739 enum fc_ls_tlv_dtag {
127740 	ELS_DTAG_LS_REQ_INFO = 1,
127741 	ELS_DTAG_LNK_FAULT_CAP = 65549,
127742 	ELS_DTAG_CG_SIGNAL_CAP = 65551,
127743 	ELS_DTAG_LNK_INTEGRITY = 131073,
127744 	ELS_DTAG_DELIVERY = 131074,
127745 	ELS_DTAG_PEER_CONGEST = 131075,
127746 	ELS_DTAG_CONGESTION = 131076,
127747 	ELS_DTAG_FPIN_REGISTER = 196609,
127748 };
127749 
127750 struct fc_tlv_desc {
127751 	__be32 desc_tag;
127752 	__be32 desc_len;
127753 	__u8 desc_value[0];
127754 };
127755 
127756 enum fc_fpin_li_event_types {
127757 	FPIN_LI_UNKNOWN = 0,
127758 	FPIN_LI_LINK_FAILURE = 1,
127759 	FPIN_LI_LOSS_OF_SYNC = 2,
127760 	FPIN_LI_LOSS_OF_SIG = 3,
127761 	FPIN_LI_PRIM_SEQ_ERR = 4,
127762 	FPIN_LI_INVALID_TX_WD = 5,
127763 	FPIN_LI_INVALID_CRC = 6,
127764 	FPIN_LI_DEVICE_SPEC = 15,
127765 };
127766 
127767 enum fc_fpin_deli_event_types {
127768 	FPIN_DELI_UNKNOWN = 0,
127769 	FPIN_DELI_TIMEOUT = 1,
127770 	FPIN_DELI_UNABLE_TO_ROUTE = 2,
127771 	FPIN_DELI_DEVICE_SPEC = 15,
127772 };
127773 
127774 enum fc_fpin_congn_event_types {
127775 	FPIN_CONGN_CLEAR = 0,
127776 	FPIN_CONGN_LOST_CREDIT = 1,
127777 	FPIN_CONGN_CREDIT_STALL = 2,
127778 	FPIN_CONGN_OVERSUBSCRIPTION = 3,
127779 	FPIN_CONGN_DEVICE_SPEC = 15,
127780 };
127781 
127782 struct fc_fn_li_desc {
127783 	__be32 desc_tag;
127784 	__be32 desc_len;
127785 	__be64 detecting_wwpn;
127786 	__be64 attached_wwpn;
127787 	__be16 event_type;
127788 	__be16 event_modifier;
127789 	__be32 event_threshold;
127790 	__be32 event_count;
127791 	__be32 pname_count;
127792 	__be64 pname_list[0];
127793 };
127794 
127795 struct fc_fn_deli_desc {
127796 	__be32 desc_tag;
127797 	__be32 desc_len;
127798 	__be64 detecting_wwpn;
127799 	__be64 attached_wwpn;
127800 	__be32 deli_reason_code;
127801 };
127802 
127803 struct fc_fn_peer_congn_desc {
127804 	__be32 desc_tag;
127805 	__be32 desc_len;
127806 	__be64 detecting_wwpn;
127807 	__be64 attached_wwpn;
127808 	__be16 event_type;
127809 	__be16 event_modifier;
127810 	__be32 event_period;
127811 	__be32 pname_count;
127812 	__be64 pname_list[0];
127813 };
127814 
127815 struct fc_fn_congn_desc {
127816 	__be32 desc_tag;
127817 	__be32 desc_len;
127818 	__be16 event_type;
127819 	__be16 event_modifier;
127820 	__be32 event_period;
127821 	__u8 severity;
127822 	__u8 resv[3];
127823 };
127824 
127825 struct fc_els_fpin {
127826 	__u8 fpin_cmd;
127827 	__u8 fpin_zero[3];
127828 	__be32 desc_len;
127829 	struct fc_tlv_desc fpin_desc[0];
127830 };
127831 
127832 struct fc_internal {
127833 	struct scsi_transport_template t;
127834 	struct fc_function_template *f;
127835 	struct device_attribute private_starget_attrs[3];
127836 	struct device_attribute *starget_attrs[4];
127837 	struct device_attribute private_host_attrs[29];
127838 	struct device_attribute *host_attrs[30];
127839 	struct transport_container rport_attr_cont;
127840 	struct device_attribute private_rport_attrs[10];
127841 	struct device_attribute *rport_attrs[11];
127842 	struct transport_container vport_attr_cont;
127843 	struct device_attribute private_vport_attrs[9];
127844 	struct device_attribute *vport_attrs[10];
127845 };
127846 
127847 enum {
127848 	K2_FLAG_SATA_8_PORTS = 16777216,
127849 	K2_FLAG_NO_ATAPI_DMA = 33554432,
127850 	K2_FLAG_BAR_POS_3 = 67108864,
127851 	K2_SATA_TF_CMD_OFFSET = 0,
127852 	K2_SATA_TF_DATA_OFFSET = 0,
127853 	K2_SATA_TF_ERROR_OFFSET = 4,
127854 	K2_SATA_TF_NSECT_OFFSET = 8,
127855 	K2_SATA_TF_LBAL_OFFSET = 12,
127856 	K2_SATA_TF_LBAM_OFFSET = 16,
127857 	K2_SATA_TF_LBAH_OFFSET = 20,
127858 	K2_SATA_TF_DEVICE_OFFSET = 24,
127859 	K2_SATA_TF_CMDSTAT_OFFSET = 28,
127860 	K2_SATA_TF_CTL_OFFSET = 32,
127861 	K2_SATA_DMA_CMD_OFFSET = 48,
127862 	K2_SATA_SCR_STATUS_OFFSET = 64,
127863 	K2_SATA_SCR_ERROR_OFFSET = 68,
127864 	K2_SATA_SCR_CONTROL_OFFSET = 72,
127865 	K2_SATA_SICR1_OFFSET = 128,
127866 	K2_SATA_SICR2_OFFSET = 132,
127867 	K2_SATA_SIM_OFFSET = 136,
127868 	K2_SATA_PORT_OFFSET = 256,
127869 	chip_svw4 = 0,
127870 	chip_svw8 = 1,
127871 	chip_svw42 = 2,
127872 	chip_svw43 = 3,
127873 };
127874 
127875 struct cdrom_msf {
127876 	__u8 cdmsf_min0;
127877 	__u8 cdmsf_sec0;
127878 	__u8 cdmsf_frame0;
127879 	__u8 cdmsf_min1;
127880 	__u8 cdmsf_sec1;
127881 	__u8 cdmsf_frame1;
127882 };
127883 
127884 struct cdrom_volctrl {
127885 	__u8 channel0;
127886 	__u8 channel1;
127887 	__u8 channel2;
127888 	__u8 channel3;
127889 };
127890 
127891 struct cdrom_subchnl {
127892 	__u8 cdsc_format;
127893 	__u8 cdsc_audiostatus;
127894 	__u8 cdsc_adr: 4;
127895 	__u8 cdsc_ctrl: 4;
127896 	__u8 cdsc_trk;
127897 	__u8 cdsc_ind;
127898 	union cdrom_addr cdsc_absaddr;
127899 	union cdrom_addr cdsc_reladdr;
127900 };
127901 
127902 struct cdrom_read_audio {
127903 	union cdrom_addr addr;
127904 	__u8 addr_format;
127905 	int nframes;
127906 	__u8 *buf;
127907 };
127908 
127909 struct cdrom_blk {
127910 	unsigned int from;
127911 	short unsigned int len;
127912 };
127913 
127914 struct cdrom_timed_media_change_info {
127915 	__s64 last_media_change;
127916 	__u64 media_flags;
127917 };
127918 
127919 struct dvd_layer {
127920 	__u8 book_version: 4;
127921 	__u8 book_type: 4;
127922 	__u8 min_rate: 4;
127923 	__u8 disc_size: 4;
127924 	__u8 layer_type: 4;
127925 	__u8 track_path: 1;
127926 	__u8 nlayers: 2;
127927 	char: 1;
127928 	__u8 track_density: 4;
127929 	__u8 linear_density: 4;
127930 	__u8 bca: 1;
127931 	__u32 start_sector;
127932 	__u32 end_sector;
127933 	__u32 end_sector_l0;
127934 };
127935 
127936 struct dvd_physical {
127937 	__u8 type;
127938 	__u8 layer_num;
127939 	struct dvd_layer layer[4];
127940 };
127941 
127942 struct dvd_copyright {
127943 	__u8 type;
127944 	__u8 layer_num;
127945 	__u8 cpst;
127946 	__u8 rmi;
127947 };
127948 
127949 struct dvd_disckey {
127950 	__u8 type;
127951 	unsigned int agid: 2;
127952 	__u8 value[2048];
127953 };
127954 
127955 struct dvd_bca {
127956 	__u8 type;
127957 	int len;
127958 	__u8 value[188];
127959 };
127960 
127961 struct dvd_manufact {
127962 	__u8 type;
127963 	__u8 layer_num;
127964 	int len;
127965 	__u8 value[2048];
127966 };
127967 
127968 typedef union {
127969 	__u8 type;
127970 	struct dvd_physical physical;
127971 	struct dvd_copyright copyright;
127972 	struct dvd_disckey disckey;
127973 	struct dvd_bca bca;
127974 	struct dvd_manufact manufact;
127975 } dvd_struct;
127976 
127977 typedef __u8 dvd_key[5];
127978 
127979 typedef __u8 dvd_challenge[10];
127980 
127981 struct dvd_lu_send_agid {
127982 	__u8 type;
127983 	unsigned int agid: 2;
127984 };
127985 
127986 struct dvd_host_send_challenge {
127987 	__u8 type;
127988 	unsigned int agid: 2;
127989 	dvd_challenge chal;
127990 };
127991 
127992 struct dvd_send_key {
127993 	__u8 type;
127994 	unsigned int agid: 2;
127995 	dvd_key key;
127996 };
127997 
127998 struct dvd_lu_send_challenge {
127999 	__u8 type;
128000 	unsigned int agid: 2;
128001 	dvd_challenge chal;
128002 };
128003 
128004 struct dvd_lu_send_title_key {
128005 	__u8 type;
128006 	unsigned int agid: 2;
128007 	dvd_key title_key;
128008 	int lba;
128009 	unsigned int cpm: 1;
128010 	unsigned int cp_sec: 1;
128011 	unsigned int cgms: 2;
128012 };
128013 
128014 struct dvd_lu_send_asf {
128015 	__u8 type;
128016 	unsigned int agid: 2;
128017 	unsigned int asf: 1;
128018 };
128019 
128020 struct dvd_host_send_rpcstate {
128021 	__u8 type;
128022 	__u8 pdrc;
128023 };
128024 
128025 struct dvd_lu_send_rpcstate {
128026 	__u8 type: 2;
128027 	__u8 vra: 3;
128028 	__u8 ucca: 3;
128029 	__u8 region_mask;
128030 	__u8 rpc_scheme;
128031 };
128032 
128033 typedef union {
128034 	__u8 type;
128035 	struct dvd_lu_send_agid lsa;
128036 	struct dvd_host_send_challenge hsc;
128037 	struct dvd_send_key lsk;
128038 	struct dvd_lu_send_challenge lsc;
128039 	struct dvd_send_key hsk;
128040 	struct dvd_lu_send_title_key lstk;
128041 	struct dvd_lu_send_asf lsasf;
128042 	struct dvd_host_send_rpcstate hrpcs;
128043 	struct dvd_lu_send_rpcstate lrpcs;
128044 } dvd_authinfo;
128045 
128046 struct mrw_feature_desc {
128047 	__be16 feature_code;
128048 	__u8 curr: 1;
128049 	__u8 persistent: 1;
128050 	__u8 feature_version: 4;
128051 	__u8 reserved1: 2;
128052 	__u8 add_len;
128053 	__u8 write: 1;
128054 	__u8 reserved2: 7;
128055 	__u8 reserved3;
128056 	__u8 reserved4;
128057 	__u8 reserved5;
128058 };
128059 
128060 struct rwrt_feature_desc {
128061 	__be16 feature_code;
128062 	__u8 curr: 1;
128063 	__u8 persistent: 1;
128064 	__u8 feature_version: 4;
128065 	__u8 reserved1: 2;
128066 	__u8 add_len;
128067 	__u32 last_lba;
128068 	__u32 block_size;
128069 	__u16 blocking;
128070 	__u8 page_present: 1;
128071 	__u8 reserved2: 7;
128072 	__u8 reserved3;
128073 };
128074 
128075 typedef struct {
128076 	__be16 disc_information_length;
128077 	__u8 disc_status: 2;
128078 	__u8 border_status: 2;
128079 	__u8 erasable: 1;
128080 	__u8 reserved1: 3;
128081 	__u8 n_first_track;
128082 	__u8 n_sessions_lsb;
128083 	__u8 first_track_lsb;
128084 	__u8 last_track_lsb;
128085 	__u8 mrw_status: 2;
128086 	__u8 dbit: 1;
128087 	__u8 reserved2: 2;
128088 	__u8 uru: 1;
128089 	__u8 dbc_v: 1;
128090 	__u8 did_v: 1;
128091 	__u8 disc_type;
128092 	__u8 n_sessions_msb;
128093 	__u8 first_track_msb;
128094 	__u8 last_track_msb;
128095 	__u32 disc_id;
128096 	__u32 lead_in;
128097 	__u32 lead_out;
128098 	__u8 disc_bar_code[8];
128099 	__u8 reserved3;
128100 	__u8 n_opc;
128101 } disc_information;
128102 
128103 typedef struct {
128104 	__be16 track_information_length;
128105 	__u8 track_lsb;
128106 	__u8 session_lsb;
128107 	__u8 reserved1;
128108 	__u8 track_mode: 4;
128109 	__u8 copy: 1;
128110 	__u8 damage: 1;
128111 	__u8 reserved2: 2;
128112 	__u8 data_mode: 4;
128113 	__u8 fp: 1;
128114 	__u8 packet: 1;
128115 	__u8 blank: 1;
128116 	__u8 rt: 1;
128117 	__u8 nwa_v: 1;
128118 	__u8 lra_v: 1;
128119 	__u8 reserved3: 6;
128120 	__be32 track_start;
128121 	__be32 next_writable;
128122 	__be32 free_blocks;
128123 	__be32 fixed_packet_size;
128124 	__be32 track_size;
128125 	__be32 last_rec_address;
128126 } track_information;
128127 
128128 struct mode_page_header {
128129 	__be16 mode_data_length;
128130 	__u8 medium_type;
128131 	__u8 reserved1;
128132 	__u8 reserved2;
128133 	__u8 reserved3;
128134 	__be16 desc_length;
128135 };
128136 
128137 typedef struct {
128138 	int data;
128139 	int audio;
128140 	int cdi;
128141 	int xa;
128142 	long int error;
128143 } tracktype;
128144 
128145 struct cdrom_mechstat_header {
128146 	__u8 curslot: 5;
128147 	__u8 changer_state: 2;
128148 	__u8 fault: 1;
128149 	__u8 reserved1: 4;
128150 	__u8 door_open: 1;
128151 	__u8 mech_state: 3;
128152 	__u8 curlba[3];
128153 	__u8 nslots;
128154 	__u16 slot_tablelen;
128155 };
128156 
128157 struct cdrom_slot {
128158 	__u8 change: 1;
128159 	__u8 reserved1: 6;
128160 	__u8 disc_present: 1;
128161 	__u8 reserved2[3];
128162 };
128163 
128164 struct cdrom_changer_info {
128165 	struct cdrom_mechstat_header hdr;
128166 	struct cdrom_slot slots[256];
128167 };
128168 
128169 struct modesel_head {
128170 	__u8 reserved1;
128171 	__u8 medium;
128172 	__u8 reserved2;
128173 	__u8 block_desc_length;
128174 	__u8 density;
128175 	__u8 number_of_blocks_hi;
128176 	__u8 number_of_blocks_med;
128177 	__u8 number_of_blocks_lo;
128178 	__u8 reserved3;
128179 	__u8 block_length_hi;
128180 	__u8 block_length_med;
128181 	__u8 block_length_lo;
128182 };
128183 
128184 typedef struct {
128185 	__u16 report_key_length;
128186 	__u8 reserved1;
128187 	__u8 reserved2;
128188 	__u8 ucca: 3;
128189 	__u8 vra: 3;
128190 	__u8 type_code: 2;
128191 	__u8 region_mask;
128192 	__u8 rpc_scheme;
128193 	__u8 reserved3;
128194 } rpc_state_t;
128195 
128196 struct cdrom_sysctl_settings {
128197 	char info[1000];
128198 	int autoclose;
128199 	int autoeject;
128200 	int debug;
128201 	int lock;
128202 	int check;
128203 };
128204 
128205 enum cdrom_print_option {
128206 	CTL_NAME = 0,
128207 	CTL_SPEED = 1,
128208 	CTL_SLOTS = 2,
128209 	CTL_CAPABILITY = 3,
128210 };
128211 
128212 struct usb_dynid {
128213 	struct list_head node;
128214 	struct usb_device_id id;
128215 };
128216 
128217 enum amd_chipset_gen {
128218 	NOT_AMD_CHIPSET = 0,
128219 	AMD_CHIPSET_SB600 = 1,
128220 	AMD_CHIPSET_SB700 = 2,
128221 	AMD_CHIPSET_SB800 = 3,
128222 	AMD_CHIPSET_HUDSON2 = 4,
128223 	AMD_CHIPSET_BOLTON = 5,
128224 	AMD_CHIPSET_YANGTZE = 6,
128225 	AMD_CHIPSET_TAISHAN = 7,
128226 	AMD_CHIPSET_UNKNOWN = 8,
128227 };
128228 
128229 struct amd_chipset_type {
128230 	enum amd_chipset_gen gen;
128231 	u8 rev;
128232 };
128233 
128234 struct amd_chipset_info {
128235 	struct pci_dev *nb_dev;
128236 	struct pci_dev *smbus_dev;
128237 	int nb_type;
128238 	struct amd_chipset_type sb_type;
128239 	int isoc_reqs;
128240 	int probe_count;
128241 	bool need_pll_quirk;
128242 };
128243 
128244 struct atkbd {
128245 	struct ps2dev ps2dev;
128246 	struct input_dev *dev;
128247 	char name[64];
128248 	char phys[32];
128249 	short unsigned int id;
128250 	short unsigned int keycode[512];
128251 	long unsigned int force_release_mask[8];
128252 	unsigned char set;
128253 	bool translated;
128254 	bool extra;
128255 	bool write;
128256 	bool softrepeat;
128257 	bool softraw;
128258 	bool scroll;
128259 	bool enabled;
128260 	unsigned char emul;
128261 	bool resend;
128262 	bool release;
128263 	long unsigned int xl_bit;
128264 	unsigned int last;
128265 	long unsigned int time;
128266 	long unsigned int err_count;
128267 	struct delayed_work event_work;
128268 	long unsigned int event_jiffies;
128269 	long unsigned int event_mask;
128270 	struct mutex mutex;
128271 	struct vivaldi_data vdata;
128272 };
128273 
128274 struct dev_info {
128275 	struct md_rdev *rdev;
128276 	sector_t end_sector;
128277 };
128278 
128279 struct linear_conf {
128280 	struct callback_head rcu;
128281 	sector_t array_sectors;
128282 	int raid_disks;
128283 	struct dev_info disks[0];
128284 };
128285 
128286 struct dm_kcopyd_throttle {
128287 	unsigned int throttle;
128288 	unsigned int num_io_jobs;
128289 	unsigned int io_period;
128290 	unsigned int total_period;
128291 	unsigned int last_jiffies;
128292 };
128293 
128294 typedef void (*dm_kcopyd_notify_fn)(int, long unsigned int, void *);
128295 
128296 struct dm_kcopyd_client {
128297 	struct page_list *pages;
128298 	unsigned int nr_reserved_pages;
128299 	unsigned int nr_free_pages;
128300 	unsigned int sub_job_size;
128301 	struct dm_io_client *io_client;
128302 	wait_queue_head_t destroyq;
128303 	mempool_t job_pool;
128304 	struct workqueue_struct *kcopyd_wq;
128305 	struct work_struct kcopyd_work;
128306 	struct dm_kcopyd_throttle *throttle;
128307 	atomic_t nr_jobs;
128308 	spinlock_t job_lock;
128309 	struct list_head callback_jobs;
128310 	struct list_head complete_jobs;
128311 	struct list_head io_jobs;
128312 	struct list_head pages_jobs;
128313 };
128314 
128315 struct kcopyd_job {
128316 	struct dm_kcopyd_client *kc;
128317 	struct list_head list;
128318 	unsigned int flags;
128319 	int read_err;
128320 	long unsigned int write_err;
128321 	enum req_op op;
128322 	struct dm_io_region source;
128323 	unsigned int num_dests;
128324 	struct dm_io_region dests[8];
128325 	struct page_list *pages;
128326 	dm_kcopyd_notify_fn fn;
128327 	void *context;
128328 	struct mutex lock;
128329 	atomic_t sub_jobs;
128330 	sector_t progress;
128331 	sector_t write_offset;
128332 	struct kcopyd_job *master_job;
128333 };
128334 
128335 struct cpuidle_state_kobj {
128336 	struct cpuidle_state *state;
128337 	struct cpuidle_state_usage *state_usage;
128338 	struct completion kobj_unregister;
128339 	struct kobject kobj;
128340 	struct cpuidle_device *device;
128341 };
128342 
128343 struct cpuidle_device_kobj {
128344 	struct cpuidle_device *dev;
128345 	struct completion kobj_unregister;
128346 	struct kobject kobj;
128347 };
128348 
128349 struct cpuidle_attr {
128350 	struct attribute attr;
128351 	ssize_t (*show)(struct cpuidle_device *, char *);
128352 	ssize_t (*store)(struct cpuidle_device *, const char *, size_t);
128353 };
128354 
128355 struct cpuidle_state_attr {
128356 	struct attribute attr;
128357 	ssize_t (*show)(struct cpuidle_state *, struct cpuidle_state_usage *, char *);
128358 	ssize_t (*store)(struct cpuidle_state *, struct cpuidle_state_usage *, const char *, size_t);
128359 };
128360 
128361 struct hid_item {
128362 	unsigned int format;
128363 	__u8 size;
128364 	__u8 type;
128365 	__u8 tag;
128366 	union {
128367 		__u8 u8;
128368 		__s8 s8;
128369 		__u16 u16;
128370 		__s16 s16;
128371 		__u32 u32;
128372 		__s32 s32;
128373 		__u8 *longdata;
128374 	} data;
128375 };
128376 
128377 struct hid_global {
128378 	unsigned int usage_page;
128379 	__s32 logical_minimum;
128380 	__s32 logical_maximum;
128381 	__s32 physical_minimum;
128382 	__s32 physical_maximum;
128383 	__s32 unit_exponent;
128384 	unsigned int unit;
128385 	unsigned int report_id;
128386 	unsigned int report_size;
128387 	unsigned int report_count;
128388 };
128389 
128390 struct hid_local {
128391 	unsigned int usage[12288];
128392 	u8 usage_size[12288];
128393 	unsigned int collection_index[12288];
128394 	unsigned int usage_index;
128395 	unsigned int usage_minimum;
128396 	unsigned int delimiter_depth;
128397 	unsigned int delimiter_branch;
128398 };
128399 
128400 struct hid_parser {
128401 	struct hid_global global;
128402 	struct hid_global global_stack[4];
128403 	unsigned int global_stack_ptr;
128404 	struct hid_local local;
128405 	unsigned int *collection_stack;
128406 	unsigned int collection_stack_ptr;
128407 	unsigned int collection_stack_size;
128408 	struct hid_device *device;
128409 	unsigned int scan_flags;
128410 };
128411 
128412 struct hidraw {
128413 	unsigned int minor;
128414 	int exist;
128415 	int open;
128416 	wait_queue_head_t wait;
128417 	struct hid_device *hid;
128418 	struct device *dev;
128419 	spinlock_t list_lock;
128420 	struct list_head list;
128421 };
128422 
128423 struct hid_dynid {
128424 	struct list_head list;
128425 	struct hid_device_id id;
128426 };
128427 
128428 struct nda_cacheinfo {
128429 	__u32 ndm_confirmed;
128430 	__u32 ndm_used;
128431 	__u32 ndm_updated;
128432 	__u32 ndm_refcnt;
128433 };
128434 
128435 struct ndt_stats {
128436 	__u64 ndts_allocs;
128437 	__u64 ndts_destroys;
128438 	__u64 ndts_hash_grows;
128439 	__u64 ndts_res_failed;
128440 	__u64 ndts_lookups;
128441 	__u64 ndts_hits;
128442 	__u64 ndts_rcv_probes_mcast;
128443 	__u64 ndts_rcv_probes_ucast;
128444 	__u64 ndts_periodic_gc_runs;
128445 	__u64 ndts_forced_gc_runs;
128446 	__u64 ndts_table_fulls;
128447 };
128448 
128449 enum {
128450 	NDTPA_UNSPEC = 0,
128451 	NDTPA_IFINDEX = 1,
128452 	NDTPA_REFCNT = 2,
128453 	NDTPA_REACHABLE_TIME = 3,
128454 	NDTPA_BASE_REACHABLE_TIME = 4,
128455 	NDTPA_RETRANS_TIME = 5,
128456 	NDTPA_GC_STALETIME = 6,
128457 	NDTPA_DELAY_PROBE_TIME = 7,
128458 	NDTPA_QUEUE_LEN = 8,
128459 	NDTPA_APP_PROBES = 9,
128460 	NDTPA_UCAST_PROBES = 10,
128461 	NDTPA_MCAST_PROBES = 11,
128462 	NDTPA_ANYCAST_DELAY = 12,
128463 	NDTPA_PROXY_DELAY = 13,
128464 	NDTPA_PROXY_QLEN = 14,
128465 	NDTPA_LOCKTIME = 15,
128466 	NDTPA_QUEUE_LENBYTES = 16,
128467 	NDTPA_MCAST_REPROBES = 17,
128468 	NDTPA_PAD = 18,
128469 	NDTPA_INTERVAL_PROBE_TIME_MS = 19,
128470 	__NDTPA_MAX = 20,
128471 };
128472 
128473 struct ndtmsg {
128474 	__u8 ndtm_family;
128475 	__u8 ndtm_pad1;
128476 	__u16 ndtm_pad2;
128477 };
128478 
128479 struct ndt_config {
128480 	__u16 ndtc_key_len;
128481 	__u16 ndtc_entry_size;
128482 	__u32 ndtc_entries;
128483 	__u32 ndtc_last_flush;
128484 	__u32 ndtc_last_rand;
128485 	__u32 ndtc_hash_rnd;
128486 	__u32 ndtc_hash_mask;
128487 	__u32 ndtc_hash_chain_gc;
128488 	__u32 ndtc_proxy_qlen;
128489 };
128490 
128491 enum {
128492 	NDTA_UNSPEC = 0,
128493 	NDTA_NAME = 1,
128494 	NDTA_THRESH1 = 2,
128495 	NDTA_THRESH2 = 3,
128496 	NDTA_THRESH3 = 4,
128497 	NDTA_CONFIG = 5,
128498 	NDTA_PARMS = 6,
128499 	NDTA_STATS = 7,
128500 	NDTA_GC_INTERVAL = 8,
128501 	NDTA_PAD = 9,
128502 	__NDTA_MAX = 10,
128503 };
128504 
128505 struct neigh_dump_filter {
128506 	int master_idx;
128507 	int dev_idx;
128508 };
128509 
128510 struct neigh_sysctl_table {
128511 	struct ctl_table_header *sysctl_header;
128512 	struct ctl_table neigh_vars[22];
128513 };
128514 
128515 struct dst_cache_pcpu {
128516 	long unsigned int refresh_ts;
128517 	struct dst_entry *dst;
128518 	u32 cookie;
128519 	union {
128520 		struct in_addr in_saddr;
128521 		struct in6_addr in6_saddr;
128522 	};
128523 };
128524 
128525 struct tcamsg {
128526 	unsigned char tca_family;
128527 	unsigned char tca__pad1;
128528 	short unsigned int tca__pad2;
128529 };
128530 
128531 enum {
128532 	TCA_ROOT_UNSPEC = 0,
128533 	TCA_ROOT_TAB = 1,
128534 	TCA_ROOT_FLAGS = 2,
128535 	TCA_ROOT_COUNT = 3,
128536 	TCA_ROOT_TIME_DELTA = 4,
128537 	__TCA_ROOT_MAX = 5,
128538 };
128539 
128540 struct tc_action_net {
128541 	struct tcf_idrinfo *idrinfo;
128542 	const struct tc_action_ops *ops;
128543 };
128544 
128545 struct tc_act_pernet_id {
128546 	struct list_head list;
128547 	unsigned int id;
128548 };
128549 
128550 struct wol_reply_data {
128551 	struct ethnl_reply_data base;
128552 	struct ethtool_wolinfo wol;
128553 	bool show_sopass;
128554 };
128555 
128556 enum nf_hook_ops_type {
128557 	NF_HOOK_OP_UNDEFINED = 0,
128558 	NF_HOOK_OP_NF_TABLES = 1,
128559 };
128560 
128561 struct nf_hook_ops {
128562 	nf_hookfn *hook;
128563 	struct net_device *dev;
128564 	void *priv;
128565 	u8 pf;
128566 	enum nf_hook_ops_type hook_ops_type: 8;
128567 	unsigned int hooknum;
128568 	int priority;
128569 };
128570 
128571 struct nf_hook_entries_rcu_head {
128572 	struct callback_head head;
128573 	void *allocation;
128574 };
128575 
128576 struct nf_conntrack_zone {
128577 	u16 id;
128578 	u8 flags;
128579 	u8 dir;
128580 };
128581 
128582 struct nf_conntrack_tuple;
128583 
128584 struct nf_ct_hook {
128585 	int (*update)(struct net *, struct sk_buff *);
128586 	void (*destroy)(struct nf_conntrack *);
128587 	bool (*get_tuple_skb)(struct nf_conntrack_tuple *, const struct sk_buff *);
128588 	void (*attach)(struct sk_buff *, const struct sk_buff *);
128589 };
128590 
128591 struct nfnl_ct_hook {
128592 	size_t (*build_size)(const struct nf_conn *);
128593 	int (*build)(struct sk_buff *, struct nf_conn *, enum ip_conntrack_info, u_int16_t, u_int16_t);
128594 	int (*parse)(const struct nlattr *, struct nf_conn *);
128595 	int (*attach_expect)(const struct nlattr *, struct nf_conn *, u32, u32);
128596 	void (*seq_adjust)(struct sk_buff *, struct nf_conn *, enum ip_conntrack_info, s32);
128597 };
128598 
128599 struct tcp_repair_opt {
128600 	__u32 opt_code;
128601 	__u32 opt_val;
128602 };
128603 
128604 struct tcp_repair_window {
128605 	__u32 snd_wl1;
128606 	__u32 snd_wnd;
128607 	__u32 max_window;
128608 	__u32 rcv_wnd;
128609 	__u32 rcv_wup;
128610 };
128611 
128612 enum {
128613 	TCP_NLA_PAD = 0,
128614 	TCP_NLA_BUSY = 1,
128615 	TCP_NLA_RWND_LIMITED = 2,
128616 	TCP_NLA_SNDBUF_LIMITED = 3,
128617 	TCP_NLA_DATA_SEGS_OUT = 4,
128618 	TCP_NLA_TOTAL_RETRANS = 5,
128619 	TCP_NLA_PACING_RATE = 6,
128620 	TCP_NLA_DELIVERY_RATE = 7,
128621 	TCP_NLA_SND_CWND = 8,
128622 	TCP_NLA_REORDERING = 9,
128623 	TCP_NLA_MIN_RTT = 10,
128624 	TCP_NLA_RECUR_RETRANS = 11,
128625 	TCP_NLA_DELIVERY_RATE_APP_LMT = 12,
128626 	TCP_NLA_SNDQ_SIZE = 13,
128627 	TCP_NLA_CA_STATE = 14,
128628 	TCP_NLA_SND_SSTHRESH = 15,
128629 	TCP_NLA_DELIVERED = 16,
128630 	TCP_NLA_DELIVERED_CE = 17,
128631 	TCP_NLA_BYTES_SENT = 18,
128632 	TCP_NLA_BYTES_RETRANS = 19,
128633 	TCP_NLA_DSACK_DUPS = 20,
128634 	TCP_NLA_REORD_SEEN = 21,
128635 	TCP_NLA_SRTT = 22,
128636 	TCP_NLA_TIMEOUT_REHASH = 23,
128637 	TCP_NLA_BYTES_NOTSENT = 24,
128638 	TCP_NLA_EDT = 25,
128639 	TCP_NLA_TTL = 26,
128640 };
128641 
128642 struct tcp_zerocopy_receive {
128643 	__u64 address;
128644 	__u32 length;
128645 	__u32 recv_skip_hint;
128646 	__u32 inq;
128647 	__s32 err;
128648 	__u64 copybuf_address;
128649 	__s32 copybuf_len;
128650 	__u32 flags;
128651 	__u64 msg_control;
128652 	__u64 msg_controllen;
128653 	__u32 msg_flags;
128654 	__u32 reserved;
128655 };
128656 
128657 enum {
128658 	BPF_TCP_ESTABLISHED = 1,
128659 	BPF_TCP_SYN_SENT = 2,
128660 	BPF_TCP_SYN_RECV = 3,
128661 	BPF_TCP_FIN_WAIT1 = 4,
128662 	BPF_TCP_FIN_WAIT2 = 5,
128663 	BPF_TCP_TIME_WAIT = 6,
128664 	BPF_TCP_CLOSE = 7,
128665 	BPF_TCP_CLOSE_WAIT = 8,
128666 	BPF_TCP_LAST_ACK = 9,
128667 	BPF_TCP_LISTEN = 10,
128668 	BPF_TCP_CLOSING = 11,
128669 	BPF_TCP_NEW_SYN_RECV = 12,
128670 	BPF_TCP_MAX_STATES = 13,
128671 };
128672 
128673 enum {
128674 	TCP_CMSG_INQ = 1,
128675 	TCP_CMSG_TS = 2,
128676 };
128677 
128678 struct tcp_splice_state {
128679 	struct pipe_inode_info *pipe;
128680 	size_t len;
128681 	unsigned int flags;
128682 };
128683 
128684 struct icmp_ext_hdr {
128685 	__u8 reserved1: 4;
128686 	__u8 version: 4;
128687 	__u8 reserved2;
128688 	__sum16 checksum;
128689 };
128690 
128691 struct icmp_extobj_hdr {
128692 	__be16 length;
128693 	__u8 class_num;
128694 	__u8 class_type;
128695 };
128696 
128697 struct icmp_ext_echo_ctype3_hdr {
128698 	__be16 afi;
128699 	__u8 addrlen;
128700 	__u8 reserved;
128701 };
128702 
128703 struct icmp_ext_echo_iio {
128704 	struct icmp_extobj_hdr extobj_hdr;
128705 	union {
128706 		char name[16];
128707 		__be32 ifindex;
128708 		struct {
128709 			struct icmp_ext_echo_ctype3_hdr ctype3_hdr;
128710 			union {
128711 				__be32 ipv4_addr;
128712 				struct in6_addr ipv6_addr;
128713 			} ip_addr;
128714 		} addr;
128715 	} ident;
128716 };
128717 
128718 struct icmp_bxm {
128719 	struct sk_buff *skb;
128720 	int offset;
128721 	int data_len;
128722 	struct {
128723 		struct icmphdr icmph;
128724 		__be32 times[3];
128725 	} data;
128726 	int head_len;
128727 	struct ip_options_data replyopts;
128728 };
128729 
128730 struct icmp_control {
128731 	enum skb_drop_reason (*handler)(struct sk_buff *);
128732 	short int error;
128733 };
128734 
128735 struct __ip6_tnl_parm {
128736 	char name[16];
128737 	int link;
128738 	__u8 proto;
128739 	__u8 encap_limit;
128740 	__u8 hop_limit;
128741 	bool collect_md;
128742 	__be32 flowinfo;
128743 	__u32 flags;
128744 	struct in6_addr laddr;
128745 	struct in6_addr raddr;
128746 	__be16 i_flags;
128747 	__be16 o_flags;
128748 	__be32 i_key;
128749 	__be32 o_key;
128750 	__u32 fwmark;
128751 	__u32 index;
128752 	__u8 erspan_ver;
128753 	__u8 dir;
128754 	__u16 hwid;
128755 };
128756 
128757 struct ip6_tnl {
128758 	struct ip6_tnl *next;
128759 	struct net_device *dev;
128760 	netdevice_tracker dev_tracker;
128761 	struct net *net;
128762 	struct __ip6_tnl_parm parms;
128763 	struct flowi fl;
128764 	struct dst_cache dst_cache;
128765 	struct gro_cells gro_cells;
128766 	int err_count;
128767 	long unsigned int err_time;
128768 	__u32 i_seqno;
128769 	atomic_t o_seqno;
128770 	int hlen;
128771 	int tun_hlen;
128772 	int encap_hlen;
128773 	struct ip_tunnel_encap encap;
128774 	int mlink;
128775 };
128776 
128777 struct xfrm_trans_tasklet {
128778 	struct tasklet_struct tasklet;
128779 	struct sk_buff_head queue;
128780 };
128781 
128782 struct xfrm_trans_cb {
128783 	union {
128784 		struct inet_skb_parm h4;
128785 		struct inet6_skb_parm h6;
128786 	} header;
128787 	int (*finish)(struct net *, struct sock *, struct sk_buff *);
128788 	struct net *net;
128789 };
128790 
128791 struct rt6_exception {
128792 	struct hlist_node hlist;
128793 	struct rt6_info *rt6i;
128794 	long unsigned int stamp;
128795 	struct callback_head rcu;
128796 };
128797 
128798 struct netevent_redirect {
128799 	struct dst_entry *old;
128800 	struct dst_entry *new;
128801 	struct neighbour *neigh;
128802 	const void *daddr;
128803 };
128804 
128805 struct trace_event_raw_fib6_table_lookup {
128806 	struct trace_entry ent;
128807 	u32 tb_id;
128808 	int err;
128809 	int oif;
128810 	int iif;
128811 	__u8 tos;
128812 	__u8 scope;
128813 	__u8 flags;
128814 	__u8 src[16];
128815 	__u8 dst[16];
128816 	u16 sport;
128817 	u16 dport;
128818 	u8 proto;
128819 	u8 rt_type;
128820 	char name[16];
128821 	__u8 gw[16];
128822 	char __data[0];
128823 };
128824 
128825 struct trace_event_data_offsets_fib6_table_lookup {};
128826 
128827 typedef void (*btf_trace_fib6_table_lookup)(void *, const struct net *, const struct fib6_result *, struct fib6_table *, const struct flowi6 *);
128828 
128829 enum rt6_nud_state {
128830 	RT6_NUD_FAIL_HARD = -3,
128831 	RT6_NUD_FAIL_PROBE = -2,
128832 	RT6_NUD_FAIL_DO_RR = -1,
128833 	RT6_NUD_SUCCEED = 1,
128834 };
128835 
128836 struct fib6_nh_dm_arg {
128837 	struct net *net;
128838 	const struct in6_addr *saddr;
128839 	int oif;
128840 	int flags;
128841 	struct fib6_nh *nh;
128842 };
128843 
128844 struct fib6_nh_frl_arg {
128845 	u32 flags;
128846 	int oif;
128847 	int strict;
128848 	int *mpri;
128849 	bool *do_rr;
128850 	struct fib6_nh *nh;
128851 };
128852 
128853 struct fib6_nh_excptn_arg {
128854 	struct rt6_info *rt;
128855 	int plen;
128856 };
128857 
128858 struct fib6_nh_match_arg {
128859 	const struct net_device *dev;
128860 	const struct in6_addr *gw;
128861 	struct fib6_nh *match;
128862 };
128863 
128864 struct fib6_nh_age_excptn_arg {
128865 	struct fib6_gc_args *gc_args;
128866 	long unsigned int now;
128867 };
128868 
128869 struct fib6_nh_rd_arg {
128870 	struct fib6_result *res;
128871 	struct flowi6 *fl6;
128872 	const struct in6_addr *gw;
128873 	struct rt6_info **ret;
128874 };
128875 
128876 struct ip6rd_flowi {
128877 	struct flowi6 fl6;
128878 	struct in6_addr gateway;
128879 };
128880 
128881 struct fib6_nh_del_cached_rt_arg {
128882 	struct fib6_config *cfg;
128883 	struct fib6_info *f6i;
128884 };
128885 
128886 struct arg_dev_net_ip {
128887 	struct net_device *dev;
128888 	struct net *net;
128889 	struct in6_addr *addr;
128890 };
128891 
128892 struct arg_netdev_event {
128893 	const struct net_device *dev;
128894 	union {
128895 		unsigned char nh_flags;
128896 		long unsigned int event;
128897 	};
128898 };
128899 
128900 struct rt6_mtu_change_arg {
128901 	struct net_device *dev;
128902 	unsigned int mtu;
128903 	struct fib6_info *f6i;
128904 };
128905 
128906 struct rt6_nh {
128907 	struct fib6_info *fib6_info;
128908 	struct fib6_config r_cfg;
128909 	struct list_head next;
128910 };
128911 
128912 struct fib6_nh_exception_dump_walker {
128913 	struct rt6_rtnl_dump_arg *dump;
128914 	struct fib6_info *rt;
128915 	unsigned int flags;
128916 	unsigned int skip;
128917 	unsigned int count;
128918 };
128919 
128920 struct xfrm6_protocol {
128921 	int (*handler)(struct sk_buff *);
128922 	int (*input_handler)(struct sk_buff *, int, __be32, int);
128923 	int (*cb_handler)(struct sk_buff *, int);
128924 	int (*err_handler)(struct sk_buff *, struct inet6_skb_parm *, u8, u8, int, __be32);
128925 	struct xfrm6_protocol *next;
128926 	int priority;
128927 };
128928 
128929 struct sockaddr_pkt {
128930 	short unsigned int spkt_family;
128931 	unsigned char spkt_device[14];
128932 	__be16 spkt_protocol;
128933 };
128934 
128935 struct sockaddr_ll {
128936 	short unsigned int sll_family;
128937 	__be16 sll_protocol;
128938 	int sll_ifindex;
128939 	short unsigned int sll_hatype;
128940 	unsigned char sll_pkttype;
128941 	unsigned char sll_halen;
128942 	unsigned char sll_addr[8];
128943 };
128944 
128945 struct tpacket_stats {
128946 	unsigned int tp_packets;
128947 	unsigned int tp_drops;
128948 };
128949 
128950 struct tpacket_stats_v3 {
128951 	unsigned int tp_packets;
128952 	unsigned int tp_drops;
128953 	unsigned int tp_freeze_q_cnt;
128954 };
128955 
128956 struct tpacket_rollover_stats {
128957 	__u64 tp_all;
128958 	__u64 tp_huge;
128959 	__u64 tp_failed;
128960 };
128961 
128962 union tpacket_stats_u {
128963 	struct tpacket_stats stats1;
128964 	struct tpacket_stats_v3 stats3;
128965 };
128966 
128967 struct tpacket_auxdata {
128968 	__u32 tp_status;
128969 	__u32 tp_len;
128970 	__u32 tp_snaplen;
128971 	__u16 tp_mac;
128972 	__u16 tp_net;
128973 	__u16 tp_vlan_tci;
128974 	__u16 tp_vlan_tpid;
128975 };
128976 
128977 struct tpacket_hdr {
128978 	long unsigned int tp_status;
128979 	unsigned int tp_len;
128980 	unsigned int tp_snaplen;
128981 	short unsigned int tp_mac;
128982 	short unsigned int tp_net;
128983 	unsigned int tp_sec;
128984 	unsigned int tp_usec;
128985 };
128986 
128987 struct tpacket2_hdr {
128988 	__u32 tp_status;
128989 	__u32 tp_len;
128990 	__u32 tp_snaplen;
128991 	__u16 tp_mac;
128992 	__u16 tp_net;
128993 	__u32 tp_sec;
128994 	__u32 tp_nsec;
128995 	__u16 tp_vlan_tci;
128996 	__u16 tp_vlan_tpid;
128997 	__u8 tp_padding[4];
128998 };
128999 
129000 struct tpacket_hdr_variant1 {
129001 	__u32 tp_rxhash;
129002 	__u32 tp_vlan_tci;
129003 	__u16 tp_vlan_tpid;
129004 	__u16 tp_padding;
129005 };
129006 
129007 struct tpacket3_hdr {
129008 	__u32 tp_next_offset;
129009 	__u32 tp_sec;
129010 	__u32 tp_nsec;
129011 	__u32 tp_snaplen;
129012 	__u32 tp_len;
129013 	__u32 tp_status;
129014 	__u16 tp_mac;
129015 	__u16 tp_net;
129016 	union {
129017 		struct tpacket_hdr_variant1 hv1;
129018 	};
129019 	__u8 tp_padding[8];
129020 };
129021 
129022 struct tpacket_bd_ts {
129023 	unsigned int ts_sec;
129024 	union {
129025 		unsigned int ts_usec;
129026 		unsigned int ts_nsec;
129027 	};
129028 };
129029 
129030 struct tpacket_hdr_v1 {
129031 	__u32 block_status;
129032 	__u32 num_pkts;
129033 	__u32 offset_to_first_pkt;
129034 	__u32 blk_len;
129035 	__u64 seq_num;
129036 	struct tpacket_bd_ts ts_first_pkt;
129037 	struct tpacket_bd_ts ts_last_pkt;
129038 };
129039 
129040 union tpacket_bd_header_u {
129041 	struct tpacket_hdr_v1 bh1;
129042 };
129043 
129044 struct tpacket_block_desc {
129045 	__u32 version;
129046 	__u32 offset_to_priv;
129047 	union tpacket_bd_header_u hdr;
129048 };
129049 
129050 enum tpacket_versions {
129051 	TPACKET_V1 = 0,
129052 	TPACKET_V2 = 1,
129053 	TPACKET_V3 = 2,
129054 };
129055 
129056 struct tpacket_req {
129057 	unsigned int tp_block_size;
129058 	unsigned int tp_block_nr;
129059 	unsigned int tp_frame_size;
129060 	unsigned int tp_frame_nr;
129061 };
129062 
129063 struct tpacket_req3 {
129064 	unsigned int tp_block_size;
129065 	unsigned int tp_block_nr;
129066 	unsigned int tp_frame_size;
129067 	unsigned int tp_frame_nr;
129068 	unsigned int tp_retire_blk_tov;
129069 	unsigned int tp_sizeof_priv;
129070 	unsigned int tp_feature_req_word;
129071 };
129072 
129073 union tpacket_req_u {
129074 	struct tpacket_req req;
129075 	struct tpacket_req3 req3;
129076 };
129077 
129078 struct fanout_args {
129079 	__u16 id;
129080 	__u16 type_flags;
129081 	__u32 max_num_members;
129082 };
129083 
129084 typedef __u16 __virtio16;
129085 
129086 struct virtio_net_hdr {
129087 	__u8 flags;
129088 	__u8 gso_type;
129089 	__virtio16 hdr_len;
129090 	__virtio16 gso_size;
129091 	__virtio16 csum_start;
129092 	__virtio16 csum_offset;
129093 };
129094 
129095 struct packet_mclist {
129096 	struct packet_mclist *next;
129097 	int ifindex;
129098 	int count;
129099 	short unsigned int type;
129100 	short unsigned int alen;
129101 	unsigned char addr[32];
129102 };
129103 
129104 struct pgv;
129105 
129106 struct tpacket_kbdq_core {
129107 	struct pgv *pkbdq;
129108 	unsigned int feature_req_word;
129109 	unsigned int hdrlen;
129110 	unsigned char reset_pending_on_curr_blk;
129111 	unsigned char delete_blk_timer;
129112 	short unsigned int kactive_blk_num;
129113 	short unsigned int blk_sizeof_priv;
129114 	short unsigned int last_kactive_blk_num;
129115 	char *pkblk_start;
129116 	char *pkblk_end;
129117 	int kblk_size;
129118 	unsigned int max_frame_len;
129119 	unsigned int knum_blocks;
129120 	uint64_t knxt_seq_num;
129121 	char *prev;
129122 	char *nxt_offset;
129123 	struct sk_buff *skb;
129124 	rwlock_t blk_fill_in_prog_lock;
129125 	short unsigned int retire_blk_tov;
129126 	short unsigned int version;
129127 	long unsigned int tov_in_jiffies;
129128 	struct timer_list retire_blk_timer;
129129 };
129130 
129131 struct pgv {
129132 	char *buffer;
129133 };
129134 
129135 struct packet_ring_buffer {
129136 	struct pgv *pg_vec;
129137 	unsigned int head;
129138 	unsigned int frames_per_block;
129139 	unsigned int frame_size;
129140 	unsigned int frame_max;
129141 	unsigned int pg_vec_order;
129142 	unsigned int pg_vec_pages;
129143 	unsigned int pg_vec_len;
129144 	unsigned int *pending_refcnt;
129145 	union {
129146 		long unsigned int *rx_owner_map;
129147 		struct tpacket_kbdq_core prb_bdqc;
129148 	};
129149 };
129150 
129151 struct packet_fanout {
129152 	possible_net_t net;
129153 	unsigned int num_members;
129154 	u32 max_num_members;
129155 	u16 id;
129156 	u8 type;
129157 	u8 flags;
129158 	union {
129159 		atomic_t rr_cur;
129160 		struct bpf_prog *bpf_prog;
129161 	};
129162 	struct list_head list;
129163 	spinlock_t lock;
129164 	refcount_t sk_ref;
129165 	long: 64;
129166 	long: 64;
129167 	long: 64;
129168 	long: 64;
129169 	long: 64;
129170 	long: 64;
129171 	long: 64;
129172 	long: 64;
129173 	long: 64;
129174 	struct packet_type prot_hook;
129175 	struct sock *arr[0];
129176 	long: 64;
129177 	long: 64;
129178 	long: 64;
129179 	long: 64;
129180 	long: 64;
129181 	long: 64;
129182 	long: 64;
129183 };
129184 
129185 struct packet_rollover {
129186 	int sock;
129187 	atomic_long_t num;
129188 	atomic_long_t num_huge;
129189 	atomic_long_t num_failed;
129190 	long: 64;
129191 	long: 64;
129192 	long: 64;
129193 	long: 64;
129194 	long: 64;
129195 	long: 64;
129196 	long: 64;
129197 	long: 64;
129198 	long: 64;
129199 	long: 64;
129200 	long: 64;
129201 	long: 64;
129202 	u32 history[32];
129203 };
129204 
129205 struct packet_sock {
129206 	struct sock sk;
129207 	struct packet_fanout *fanout;
129208 	union tpacket_stats_u stats;
129209 	struct packet_ring_buffer rx_ring;
129210 	struct packet_ring_buffer tx_ring;
129211 	int copy_thresh;
129212 	spinlock_t bind_lock;
129213 	struct mutex pg_vec_lock;
129214 	unsigned int running;
129215 	unsigned int auxdata: 1;
129216 	unsigned int origdev: 1;
129217 	unsigned int has_vnet_hdr: 1;
129218 	unsigned int tp_loss: 1;
129219 	unsigned int tp_tx_has_off: 1;
129220 	int pressure;
129221 	int ifindex;
129222 	__be16 num;
129223 	struct packet_rollover *rollover;
129224 	struct packet_mclist *mclist;
129225 	atomic_t mapped;
129226 	enum tpacket_versions tp_version;
129227 	unsigned int tp_hdrlen;
129228 	unsigned int tp_reserve;
129229 	unsigned int tp_tstamp;
129230 	struct completion skb_completion;
129231 	struct net_device *cached_dev;
129232 	int (*xmit)(struct sk_buff *);
129233 	long: 64;
129234 	long: 64;
129235 	long: 64;
129236 	long: 64;
129237 	long: 64;
129238 	long: 64;
129239 	long: 64;
129240 	long: 64;
129241 	long: 64;
129242 	long: 64;
129243 	long: 64;
129244 	struct packet_type prot_hook;
129245 	long: 64;
129246 	long: 64;
129247 	long: 64;
129248 	long: 64;
129249 	long: 64;
129250 	long: 64;
129251 	long: 64;
129252 	atomic_t tp_drops;
129253 	long: 64;
129254 	long: 64;
129255 	long: 64;
129256 	long: 64;
129257 	long: 64;
129258 	long: 64;
129259 	long: 64;
129260 	long: 64;
129261 	long: 64;
129262 	long: 64;
129263 	long: 64;
129264 	long: 64;
129265 	long: 64;
129266 	long: 64;
129267 	long: 64;
129268 };
129269 
129270 struct packet_mreq_max {
129271 	int mr_ifindex;
129272 	short unsigned int mr_type;
129273 	short unsigned int mr_alen;
129274 	unsigned char mr_address[32];
129275 };
129276 
129277 union tpacket_uhdr {
129278 	struct tpacket_hdr *h1;
129279 	struct tpacket2_hdr *h2;
129280 	struct tpacket3_hdr *h3;
129281 	void *raw;
129282 };
129283 
129284 struct packet_skb_cb {
129285 	union {
129286 		struct sockaddr_pkt pkt;
129287 		union {
129288 			unsigned int origlen;
129289 			struct sockaddr_ll ll;
129290 		};
129291 	} sa;
129292 };
129293 
129294 #ifndef BPF_NO_PRESERVE_ACCESS_INDEX
129295 #pragma clang attribute pop
129296 #endif
129297 
129298 #endif /* __VMLINUX_H__ */
129299