xref: /aosp_15_r20/external/strace/bpf_attr_check.c (revision cf84ac9a129d8ea9952db616b4e9b904c4bdde56)
1*cf84ac9aSAndroid Build Coastguard Worker /* Generated by ./gen_bpf_attr_check.sh from bpf_attr.h; do not edit. */
2*cf84ac9aSAndroid Build Coastguard Worker #include "defs.h"
3*cf84ac9aSAndroid Build Coastguard Worker #ifdef HAVE_LINUX_BPF_H
4*cf84ac9aSAndroid Build Coastguard Worker # include <linux/bpf.h>
5*cf84ac9aSAndroid Build Coastguard Worker # include "bpf_attr.h"
6*cf84ac9aSAndroid Build Coastguard Worker # include "static_assert.h"
7*cf84ac9aSAndroid Build Coastguard Worker 
8*cf84ac9aSAndroid Build Coastguard Worker # define SoM(type_, member_) (sizeof(((type_ *)0)->member_))
9*cf84ac9aSAndroid Build Coastguard Worker 
10*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_TYPE
11*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, map_type) == SoM(union bpf_attr, map_type),
12*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_type size mismatch");
13*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, map_type) == offsetof(union bpf_attr, map_type),
14*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_type offset mismatch");
15*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_TYPE */
16*cf84ac9aSAndroid Build Coastguard Worker 
17*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KEY_SIZE
18*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, key_size) == SoM(union bpf_attr, key_size),
19*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.key_size size mismatch");
20*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, key_size) == offsetof(union bpf_attr, key_size),
21*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.key_size offset mismatch");
22*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KEY_SIZE */
23*cf84ac9aSAndroid Build Coastguard Worker 
24*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_VALUE_SIZE
25*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, value_size) == SoM(union bpf_attr, value_size),
26*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.value_size size mismatch");
27*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, value_size) == offsetof(union bpf_attr, value_size),
28*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.value_size offset mismatch");
29*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_VALUE_SIZE */
30*cf84ac9aSAndroid Build Coastguard Worker 
31*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAX_ENTRIES
32*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, max_entries) == SoM(union bpf_attr, max_entries),
33*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.max_entries size mismatch");
34*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, max_entries) == offsetof(union bpf_attr, max_entries),
35*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.max_entries offset mismatch");
36*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAX_ENTRIES */
37*cf84ac9aSAndroid Build Coastguard Worker 
38*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_FLAGS
39*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, map_flags) == SoM(union bpf_attr, map_flags),
40*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_flags size mismatch");
41*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, map_flags) == offsetof(union bpf_attr, map_flags),
42*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_flags offset mismatch");
43*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_FLAGS */
44*cf84ac9aSAndroid Build Coastguard Worker 
45*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INNER_MAP_FD
46*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, inner_map_fd) == SoM(union bpf_attr, inner_map_fd),
47*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.inner_map_fd size mismatch");
48*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, inner_map_fd) == offsetof(union bpf_attr, inner_map_fd),
49*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.inner_map_fd offset mismatch");
50*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INNER_MAP_FD */
51*cf84ac9aSAndroid Build Coastguard Worker 
52*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_NUMA_NODE
53*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, numa_node) == SoM(union bpf_attr, numa_node),
54*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.numa_node size mismatch");
55*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, numa_node) == offsetof(union bpf_attr, numa_node),
56*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.numa_node offset mismatch");
57*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_NUMA_NODE */
58*cf84ac9aSAndroid Build Coastguard Worker 
59*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_NAME
60*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, map_name) == SoM(union bpf_attr, map_name),
61*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_name size mismatch");
62*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, map_name) == offsetof(union bpf_attr, map_name),
63*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_name offset mismatch");
64*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_NAME */
65*cf84ac9aSAndroid Build Coastguard Worker 
66*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_IFINDEX
67*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_CREATE_struct, map_ifindex) == SoM(union bpf_attr, map_ifindex),
68*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_ifindex size mismatch");
69*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_CREATE_struct, map_ifindex) == offsetof(union bpf_attr, map_ifindex),
70*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_CREATE_struct.map_ifindex offset mismatch");
71*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_IFINDEX */
72*cf84ac9aSAndroid Build Coastguard Worker 
73*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_CREATE_struct_size == expected_BPF_MAP_CREATE_struct_size,
74*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_CREATE_struct_size mismatch");
75*cf84ac9aSAndroid Build Coastguard Worker 
76*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_FD
77*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_LOOKUP_ELEM_struct, map_fd) == SoM(union bpf_attr, map_fd),
78*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.map_fd size mismatch");
79*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_LOOKUP_ELEM_struct, map_fd) == offsetof(union bpf_attr, map_fd),
80*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.map_fd offset mismatch");
81*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_FD */
82*cf84ac9aSAndroid Build Coastguard Worker 
83*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KEY
84*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_LOOKUP_ELEM_struct, key) == SoM(union bpf_attr, key),
85*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.key size mismatch");
86*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_LOOKUP_ELEM_struct, key) == offsetof(union bpf_attr, key),
87*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.key offset mismatch");
88*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KEY */
89*cf84ac9aSAndroid Build Coastguard Worker 
90*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_VALUE
91*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_LOOKUP_ELEM_struct, value) == SoM(union bpf_attr, value),
92*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.value size mismatch");
93*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_LOOKUP_ELEM_struct, value) == offsetof(union bpf_attr, value),
94*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_LOOKUP_ELEM_struct.value offset mismatch");
95*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_VALUE */
96*cf84ac9aSAndroid Build Coastguard Worker 
97*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_LOOKUP_ELEM_struct_size == expected_BPF_MAP_LOOKUP_ELEM_struct_size,
98*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_LOOKUP_ELEM_struct_size mismatch");
99*cf84ac9aSAndroid Build Coastguard Worker 
100*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_FD
101*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_UPDATE_ELEM_struct, map_fd) == SoM(union bpf_attr, map_fd),
102*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.map_fd size mismatch");
103*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_UPDATE_ELEM_struct, map_fd) == offsetof(union bpf_attr, map_fd),
104*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.map_fd offset mismatch");
105*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_FD */
106*cf84ac9aSAndroid Build Coastguard Worker 
107*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KEY
108*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_UPDATE_ELEM_struct, key) == SoM(union bpf_attr, key),
109*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.key size mismatch");
110*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_UPDATE_ELEM_struct, key) == offsetof(union bpf_attr, key),
111*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.key offset mismatch");
112*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KEY */
113*cf84ac9aSAndroid Build Coastguard Worker 
114*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_VALUE
115*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_UPDATE_ELEM_struct, value) == SoM(union bpf_attr, value),
116*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.value size mismatch");
117*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_UPDATE_ELEM_struct, value) == offsetof(union bpf_attr, value),
118*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.value offset mismatch");
119*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_VALUE */
120*cf84ac9aSAndroid Build Coastguard Worker 
121*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_FLAGS
122*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_UPDATE_ELEM_struct, flags) == SoM(union bpf_attr, flags),
123*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.flags size mismatch");
124*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_UPDATE_ELEM_struct, flags) == offsetof(union bpf_attr, flags),
125*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_UPDATE_ELEM_struct.flags offset mismatch");
126*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_FLAGS */
127*cf84ac9aSAndroid Build Coastguard Worker 
128*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_UPDATE_ELEM_struct_size == expected_BPF_MAP_UPDATE_ELEM_struct_size,
129*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_UPDATE_ELEM_struct_size mismatch");
130*cf84ac9aSAndroid Build Coastguard Worker 
131*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_FD
132*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_DELETE_ELEM_struct, map_fd) == SoM(union bpf_attr, map_fd),
133*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_DELETE_ELEM_struct.map_fd size mismatch");
134*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_DELETE_ELEM_struct, map_fd) == offsetof(union bpf_attr, map_fd),
135*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_DELETE_ELEM_struct.map_fd offset mismatch");
136*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_FD */
137*cf84ac9aSAndroid Build Coastguard Worker 
138*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KEY
139*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_DELETE_ELEM_struct, key) == SoM(union bpf_attr, key),
140*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_DELETE_ELEM_struct.key size mismatch");
141*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_DELETE_ELEM_struct, key) == offsetof(union bpf_attr, key),
142*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_DELETE_ELEM_struct.key offset mismatch");
143*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KEY */
144*cf84ac9aSAndroid Build Coastguard Worker 
145*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_DELETE_ELEM_struct_size == expected_BPF_MAP_DELETE_ELEM_struct_size,
146*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_DELETE_ELEM_struct_size mismatch");
147*cf84ac9aSAndroid Build Coastguard Worker 
148*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_FD
149*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_NEXT_KEY_struct, map_fd) == SoM(union bpf_attr, map_fd),
150*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.map_fd size mismatch");
151*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_NEXT_KEY_struct, map_fd) == offsetof(union bpf_attr, map_fd),
152*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.map_fd offset mismatch");
153*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_FD */
154*cf84ac9aSAndroid Build Coastguard Worker 
155*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KEY
156*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_NEXT_KEY_struct, key) == SoM(union bpf_attr, key),
157*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.key size mismatch");
158*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_NEXT_KEY_struct, key) == offsetof(union bpf_attr, key),
159*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.key offset mismatch");
160*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KEY */
161*cf84ac9aSAndroid Build Coastguard Worker 
162*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_NEXT_KEY
163*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_NEXT_KEY_struct, next_key) == SoM(union bpf_attr, next_key),
164*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.next_key size mismatch");
165*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_NEXT_KEY_struct, next_key) == offsetof(union bpf_attr, next_key),
166*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_NEXT_KEY_struct.next_key offset mismatch");
167*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_NEXT_KEY */
168*cf84ac9aSAndroid Build Coastguard Worker 
169*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_GET_NEXT_KEY_struct_size == expected_BPF_MAP_GET_NEXT_KEY_struct_size,
170*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_GET_NEXT_KEY_struct_size mismatch");
171*cf84ac9aSAndroid Build Coastguard Worker 
172*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PROG_TYPE
173*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, prog_type) == SoM(union bpf_attr, prog_type),
174*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_type size mismatch");
175*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, prog_type) == offsetof(union bpf_attr, prog_type),
176*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_type offset mismatch");
177*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PROG_TYPE */
178*cf84ac9aSAndroid Build Coastguard Worker 
179*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INSN_CNT
180*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, insn_cnt) == SoM(union bpf_attr, insn_cnt),
181*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.insn_cnt size mismatch");
182*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, insn_cnt) == offsetof(union bpf_attr, insn_cnt),
183*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.insn_cnt offset mismatch");
184*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INSN_CNT */
185*cf84ac9aSAndroid Build Coastguard Worker 
186*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INSNS
187*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, insns) == SoM(union bpf_attr, insns),
188*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.insns size mismatch");
189*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, insns) == offsetof(union bpf_attr, insns),
190*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.insns offset mismatch");
191*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INSNS */
192*cf84ac9aSAndroid Build Coastguard Worker 
193*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_LICENSE
194*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, license) == SoM(union bpf_attr, license),
195*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.license size mismatch");
196*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, license) == offsetof(union bpf_attr, license),
197*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.license offset mismatch");
198*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_LICENSE */
199*cf84ac9aSAndroid Build Coastguard Worker 
200*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_LOG_LEVEL
201*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, log_level) == SoM(union bpf_attr, log_level),
202*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_level size mismatch");
203*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, log_level) == offsetof(union bpf_attr, log_level),
204*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_level offset mismatch");
205*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_LOG_LEVEL */
206*cf84ac9aSAndroid Build Coastguard Worker 
207*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_LOG_SIZE
208*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, log_size) == SoM(union bpf_attr, log_size),
209*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_size size mismatch");
210*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, log_size) == offsetof(union bpf_attr, log_size),
211*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_size offset mismatch");
212*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_LOG_SIZE */
213*cf84ac9aSAndroid Build Coastguard Worker 
214*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_LOG_BUF
215*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, log_buf) == SoM(union bpf_attr, log_buf),
216*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_buf size mismatch");
217*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, log_buf) == offsetof(union bpf_attr, log_buf),
218*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.log_buf offset mismatch");
219*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_LOG_BUF */
220*cf84ac9aSAndroid Build Coastguard Worker 
221*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_KERN_VERSION
222*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, kern_version) == SoM(union bpf_attr, kern_version),
223*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.kern_version size mismatch");
224*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, kern_version) == offsetof(union bpf_attr, kern_version),
225*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.kern_version offset mismatch");
226*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_KERN_VERSION */
227*cf84ac9aSAndroid Build Coastguard Worker 
228*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PROG_FLAGS
229*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, prog_flags) == SoM(union bpf_attr, prog_flags),
230*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_flags size mismatch");
231*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, prog_flags) == offsetof(union bpf_attr, prog_flags),
232*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_flags offset mismatch");
233*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PROG_FLAGS */
234*cf84ac9aSAndroid Build Coastguard Worker 
235*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PROG_NAME
236*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, prog_name) == SoM(union bpf_attr, prog_name),
237*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_name size mismatch");
238*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, prog_name) == offsetof(union bpf_attr, prog_name),
239*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_name offset mismatch");
240*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PROG_NAME */
241*cf84ac9aSAndroid Build Coastguard Worker 
242*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PROG_IFINDEX
243*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, prog_ifindex) == SoM(union bpf_attr, prog_ifindex),
244*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_ifindex size mismatch");
245*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, prog_ifindex) == offsetof(union bpf_attr, prog_ifindex),
246*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.prog_ifindex offset mismatch");
247*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PROG_IFINDEX */
248*cf84ac9aSAndroid Build Coastguard Worker 
249*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_EXPECTED_ATTACH_TYPE
250*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_LOAD_struct, expected_attach_type) == SoM(union bpf_attr, expected_attach_type),
251*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.expected_attach_type size mismatch");
252*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_LOAD_struct, expected_attach_type) == offsetof(union bpf_attr, expected_attach_type),
253*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_LOAD_struct.expected_attach_type offset mismatch");
254*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_EXPECTED_ATTACH_TYPE */
255*cf84ac9aSAndroid Build Coastguard Worker 
256*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_LOAD_struct_size == expected_BPF_PROG_LOAD_struct_size,
257*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_LOAD_struct_size mismatch");
258*cf84ac9aSAndroid Build Coastguard Worker 
259*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PATHNAME
260*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_PIN_struct, pathname) == SoM(union bpf_attr, pathname),
261*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.pathname size mismatch");
262*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_PIN_struct, pathname) == offsetof(union bpf_attr, pathname),
263*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.pathname offset mismatch");
264*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PATHNAME */
265*cf84ac9aSAndroid Build Coastguard Worker 
266*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_BPF_FD
267*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_PIN_struct, bpf_fd) == SoM(union bpf_attr, bpf_fd),
268*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.bpf_fd size mismatch");
269*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_PIN_struct, bpf_fd) == offsetof(union bpf_attr, bpf_fd),
270*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.bpf_fd offset mismatch");
271*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_BPF_FD */
272*cf84ac9aSAndroid Build Coastguard Worker 
273*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_FILE_FLAGS
274*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_PIN_struct, file_flags) == SoM(union bpf_attr, file_flags),
275*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.file_flags size mismatch");
276*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_PIN_struct, file_flags) == offsetof(union bpf_attr, file_flags),
277*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_PIN_struct.file_flags offset mismatch");
278*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_FILE_FLAGS */
279*cf84ac9aSAndroid Build Coastguard Worker 
280*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_OBJ_PIN_struct_size == expected_BPF_OBJ_PIN_struct_size,
281*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_OBJ_PIN_struct_size mismatch");
282*cf84ac9aSAndroid Build Coastguard Worker 
283*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TARGET_FD
284*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_ATTACH_struct, target_fd) == SoM(union bpf_attr, target_fd),
285*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.target_fd size mismatch");
286*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_ATTACH_struct, target_fd) == offsetof(union bpf_attr, target_fd),
287*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.target_fd offset mismatch");
288*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TARGET_FD */
289*cf84ac9aSAndroid Build Coastguard Worker 
290*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_ATTACH_BPF_FD
291*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_ATTACH_struct, attach_bpf_fd) == SoM(union bpf_attr, attach_bpf_fd),
292*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_bpf_fd size mismatch");
293*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_ATTACH_struct, attach_bpf_fd) == offsetof(union bpf_attr, attach_bpf_fd),
294*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_bpf_fd offset mismatch");
295*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_ATTACH_BPF_FD */
296*cf84ac9aSAndroid Build Coastguard Worker 
297*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_ATTACH_TYPE
298*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_ATTACH_struct, attach_type) == SoM(union bpf_attr, attach_type),
299*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_type size mismatch");
300*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_ATTACH_struct, attach_type) == offsetof(union bpf_attr, attach_type),
301*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_type offset mismatch");
302*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_ATTACH_TYPE */
303*cf84ac9aSAndroid Build Coastguard Worker 
304*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_ATTACH_FLAGS
305*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_ATTACH_struct, attach_flags) == SoM(union bpf_attr, attach_flags),
306*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_flags size mismatch");
307*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_ATTACH_struct, attach_flags) == offsetof(union bpf_attr, attach_flags),
308*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_ATTACH_struct.attach_flags offset mismatch");
309*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_ATTACH_FLAGS */
310*cf84ac9aSAndroid Build Coastguard Worker 
311*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_ATTACH_struct_size == expected_BPF_PROG_ATTACH_struct_size,
312*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_ATTACH_struct_size mismatch");
313*cf84ac9aSAndroid Build Coastguard Worker 
314*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TARGET_FD
315*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_DETACH_struct, target_fd) == SoM(union bpf_attr, target_fd),
316*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.target_fd size mismatch");
317*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_DETACH_struct, target_fd) == offsetof(union bpf_attr, target_fd),
318*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.target_fd offset mismatch");
319*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TARGET_FD */
320*cf84ac9aSAndroid Build Coastguard Worker 
321*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_DUMMY
322*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_DETACH_struct, dummy) == SoM(union bpf_attr, dummy),
323*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.dummy size mismatch");
324*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_DETACH_struct, dummy) == offsetof(union bpf_attr, dummy),
325*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.dummy offset mismatch");
326*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_DUMMY */
327*cf84ac9aSAndroid Build Coastguard Worker 
328*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_ATTACH_TYPE
329*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_DETACH_struct, attach_type) == SoM(union bpf_attr, attach_type),
330*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.attach_type size mismatch");
331*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_DETACH_struct, attach_type) == offsetof(union bpf_attr, attach_type),
332*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_DETACH_struct.attach_type offset mismatch");
333*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_ATTACH_TYPE */
334*cf84ac9aSAndroid Build Coastguard Worker 
335*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_DETACH_struct_size == expected_BPF_PROG_DETACH_struct_size,
336*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_DETACH_struct_size mismatch");
337*cf84ac9aSAndroid Build Coastguard Worker 
338*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_PROG_FD
339*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, prog_fd) == SoM(union bpf_attr, test.prog_fd),
340*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.prog_fd size mismatch");
341*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, prog_fd) == offsetof(union bpf_attr, test.prog_fd),
342*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.prog_fd offset mismatch");
343*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_PROG_FD */
344*cf84ac9aSAndroid Build Coastguard Worker 
345*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_RETVAL
346*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, retval) == SoM(union bpf_attr, test.retval),
347*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.retval size mismatch");
348*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, retval) == offsetof(union bpf_attr, test.retval),
349*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.retval offset mismatch");
350*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_RETVAL */
351*cf84ac9aSAndroid Build Coastguard Worker 
352*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_IN
353*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, data_size_in) == SoM(union bpf_attr, test.data_size_in),
354*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_size_in size mismatch");
355*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, data_size_in) == offsetof(union bpf_attr, test.data_size_in),
356*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_size_in offset mismatch");
357*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_IN */
358*cf84ac9aSAndroid Build Coastguard Worker 
359*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_OUT
360*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, data_size_out) == SoM(union bpf_attr, test.data_size_out),
361*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_size_out size mismatch");
362*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, data_size_out) == offsetof(union bpf_attr, test.data_size_out),
363*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_size_out offset mismatch");
364*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_OUT */
365*cf84ac9aSAndroid Build Coastguard Worker 
366*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_DATA_IN
367*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, data_in) == SoM(union bpf_attr, test.data_in),
368*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_in size mismatch");
369*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, data_in) == offsetof(union bpf_attr, test.data_in),
370*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_in offset mismatch");
371*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_DATA_IN */
372*cf84ac9aSAndroid Build Coastguard Worker 
373*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_DATA_OUT
374*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, data_out) == SoM(union bpf_attr, test.data_out),
375*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_out size mismatch");
376*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, data_out) == offsetof(union bpf_attr, test.data_out),
377*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.data_out offset mismatch");
378*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_DATA_OUT */
379*cf84ac9aSAndroid Build Coastguard Worker 
380*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_REPEAT
381*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, repeat) == SoM(union bpf_attr, test.repeat),
382*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.repeat size mismatch");
383*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, repeat) == offsetof(union bpf_attr, test.repeat),
384*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.repeat offset mismatch");
385*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_REPEAT */
386*cf84ac9aSAndroid Build Coastguard Worker 
387*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_TEST_DURATION
388*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_TEST_RUN_struct, duration) == SoM(union bpf_attr, test.duration),
389*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.duration size mismatch");
390*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_TEST_RUN_struct, duration) == offsetof(union bpf_attr, test.duration),
391*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_TEST_RUN_struct.duration offset mismatch");
392*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_TEST_DURATION */
393*cf84ac9aSAndroid Build Coastguard Worker 
394*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_TEST_RUN_struct_size == expected_BPF_PROG_TEST_RUN_struct_size,
395*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_TEST_RUN_struct_size mismatch");
396*cf84ac9aSAndroid Build Coastguard Worker 
397*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_START_ID
398*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_NEXT_ID_struct, start_id) == SoM(union bpf_attr, start_id),
399*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.start_id size mismatch");
400*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_NEXT_ID_struct, start_id) == offsetof(union bpf_attr, start_id),
401*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.start_id offset mismatch");
402*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_START_ID */
403*cf84ac9aSAndroid Build Coastguard Worker 
404*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_NEXT_ID
405*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_NEXT_ID_struct, next_id) == SoM(union bpf_attr, next_id),
406*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.next_id size mismatch");
407*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_NEXT_ID_struct, next_id) == offsetof(union bpf_attr, next_id),
408*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.next_id offset mismatch");
409*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_NEXT_ID */
410*cf84ac9aSAndroid Build Coastguard Worker 
411*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_OPEN_FLAGS
412*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_NEXT_ID_struct, open_flags) == SoM(union bpf_attr, open_flags),
413*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.open_flags size mismatch");
414*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_NEXT_ID_struct, open_flags) == offsetof(union bpf_attr, open_flags),
415*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_NEXT_ID_struct.open_flags offset mismatch");
416*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_OPEN_FLAGS */
417*cf84ac9aSAndroid Build Coastguard Worker 
418*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_GET_NEXT_ID_struct_size == expected_BPF_PROG_GET_NEXT_ID_struct_size,
419*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_GET_NEXT_ID_struct_size mismatch");
420*cf84ac9aSAndroid Build Coastguard Worker 
421*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_PROG_ID
422*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_FD_BY_ID_struct, prog_id) == SoM(union bpf_attr, prog_id),
423*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.prog_id size mismatch");
424*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_FD_BY_ID_struct, prog_id) == offsetof(union bpf_attr, prog_id),
425*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.prog_id offset mismatch");
426*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_PROG_ID */
427*cf84ac9aSAndroid Build Coastguard Worker 
428*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_NEXT_ID
429*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_FD_BY_ID_struct, next_id) == SoM(union bpf_attr, next_id),
430*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.next_id size mismatch");
431*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_FD_BY_ID_struct, next_id) == offsetof(union bpf_attr, next_id),
432*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.next_id offset mismatch");
433*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_NEXT_ID */
434*cf84ac9aSAndroid Build Coastguard Worker 
435*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_OPEN_FLAGS
436*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_GET_FD_BY_ID_struct, open_flags) == SoM(union bpf_attr, open_flags),
437*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.open_flags size mismatch");
438*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_GET_FD_BY_ID_struct, open_flags) == offsetof(union bpf_attr, open_flags),
439*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_GET_FD_BY_ID_struct.open_flags offset mismatch");
440*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_OPEN_FLAGS */
441*cf84ac9aSAndroid Build Coastguard Worker 
442*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_GET_FD_BY_ID_struct_size == expected_BPF_PROG_GET_FD_BY_ID_struct_size,
443*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_GET_FD_BY_ID_struct_size mismatch");
444*cf84ac9aSAndroid Build Coastguard Worker 
445*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_MAP_ID
446*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_FD_BY_ID_struct, map_id) == SoM(union bpf_attr, map_id),
447*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.map_id size mismatch");
448*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_FD_BY_ID_struct, map_id) == offsetof(union bpf_attr, map_id),
449*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.map_id offset mismatch");
450*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_MAP_ID */
451*cf84ac9aSAndroid Build Coastguard Worker 
452*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_NEXT_ID
453*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_FD_BY_ID_struct, next_id) == SoM(union bpf_attr, next_id),
454*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.next_id size mismatch");
455*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_FD_BY_ID_struct, next_id) == offsetof(union bpf_attr, next_id),
456*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.next_id offset mismatch");
457*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_NEXT_ID */
458*cf84ac9aSAndroid Build Coastguard Worker 
459*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_OPEN_FLAGS
460*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_MAP_GET_FD_BY_ID_struct, open_flags) == SoM(union bpf_attr, open_flags),
461*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.open_flags size mismatch");
462*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_MAP_GET_FD_BY_ID_struct, open_flags) == offsetof(union bpf_attr, open_flags),
463*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_MAP_GET_FD_BY_ID_struct.open_flags offset mismatch");
464*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_OPEN_FLAGS */
465*cf84ac9aSAndroid Build Coastguard Worker 
466*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_MAP_GET_FD_BY_ID_struct_size == expected_BPF_MAP_GET_FD_BY_ID_struct_size,
467*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_MAP_GET_FD_BY_ID_struct_size mismatch");
468*cf84ac9aSAndroid Build Coastguard Worker 
469*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INFO_BPF_FD
470*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_GET_INFO_BY_FD_struct, bpf_fd) == SoM(union bpf_attr, info.bpf_fd),
471*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.bpf_fd size mismatch");
472*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_GET_INFO_BY_FD_struct, bpf_fd) == offsetof(union bpf_attr, info.bpf_fd),
473*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.bpf_fd offset mismatch");
474*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INFO_BPF_FD */
475*cf84ac9aSAndroid Build Coastguard Worker 
476*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INFO_INFO_LEN
477*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_GET_INFO_BY_FD_struct, info_len) == SoM(union bpf_attr, info.info_len),
478*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.info_len size mismatch");
479*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_GET_INFO_BY_FD_struct, info_len) == offsetof(union bpf_attr, info.info_len),
480*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.info_len offset mismatch");
481*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INFO_INFO_LEN */
482*cf84ac9aSAndroid Build Coastguard Worker 
483*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_INFO_INFO
484*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_OBJ_GET_INFO_BY_FD_struct, info) == SoM(union bpf_attr, info.info),
485*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.info size mismatch");
486*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_OBJ_GET_INFO_BY_FD_struct, info) == offsetof(union bpf_attr, info.info),
487*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_OBJ_GET_INFO_BY_FD_struct.info offset mismatch");
488*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_INFO_INFO */
489*cf84ac9aSAndroid Build Coastguard Worker 
490*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_OBJ_GET_INFO_BY_FD_struct_size == expected_BPF_OBJ_GET_INFO_BY_FD_struct_size,
491*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_OBJ_GET_INFO_BY_FD_struct_size mismatch");
492*cf84ac9aSAndroid Build Coastguard Worker 
493*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_TARGET_FD
494*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, target_fd) == SoM(union bpf_attr, query.target_fd),
495*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.target_fd size mismatch");
496*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, target_fd) == offsetof(union bpf_attr, query.target_fd),
497*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.target_fd offset mismatch");
498*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_TARGET_FD */
499*cf84ac9aSAndroid Build Coastguard Worker 
500*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_ATTACH_TYPE
501*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, attach_type) == SoM(union bpf_attr, query.attach_type),
502*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.attach_type size mismatch");
503*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, attach_type) == offsetof(union bpf_attr, query.attach_type),
504*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.attach_type offset mismatch");
505*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_ATTACH_TYPE */
506*cf84ac9aSAndroid Build Coastguard Worker 
507*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_QUERY_FLAGS
508*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, query_flags) == SoM(union bpf_attr, query.query_flags),
509*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.query_flags size mismatch");
510*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, query_flags) == offsetof(union bpf_attr, query.query_flags),
511*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.query_flags offset mismatch");
512*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_QUERY_FLAGS */
513*cf84ac9aSAndroid Build Coastguard Worker 
514*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_ATTACH_FLAGS
515*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, attach_flags) == SoM(union bpf_attr, query.attach_flags),
516*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.attach_flags size mismatch");
517*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, attach_flags) == offsetof(union bpf_attr, query.attach_flags),
518*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.attach_flags offset mismatch");
519*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_ATTACH_FLAGS */
520*cf84ac9aSAndroid Build Coastguard Worker 
521*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_PROG_IDS
522*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, prog_ids) == SoM(union bpf_attr, query.prog_ids),
523*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.prog_ids size mismatch");
524*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, prog_ids) == offsetof(union bpf_attr, query.prog_ids),
525*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.prog_ids offset mismatch");
526*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_PROG_IDS */
527*cf84ac9aSAndroid Build Coastguard Worker 
528*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_QUERY_PROG_CNT
529*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_PROG_QUERY_struct, prog_cnt) == SoM(union bpf_attr, query.prog_cnt),
530*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.prog_cnt size mismatch");
531*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_PROG_QUERY_struct, prog_cnt) == offsetof(union bpf_attr, query.prog_cnt),
532*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_PROG_QUERY_struct.prog_cnt offset mismatch");
533*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_QUERY_PROG_CNT */
534*cf84ac9aSAndroid Build Coastguard Worker 
535*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_PROG_QUERY_struct_size == expected_BPF_PROG_QUERY_struct_size,
536*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_PROG_QUERY_struct_size mismatch");
537*cf84ac9aSAndroid Build Coastguard Worker 
538*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_NAME
539*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_RAW_TRACEPOINT_OPEN_struct, name) == SoM(union bpf_attr, raw_tracepoint.name),
540*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_RAW_TRACEPOINT_OPEN_struct.name size mismatch");
541*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_RAW_TRACEPOINT_OPEN_struct, name) == offsetof(union bpf_attr, raw_tracepoint.name),
542*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_RAW_TRACEPOINT_OPEN_struct.name offset mismatch");
543*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_NAME */
544*cf84ac9aSAndroid Build Coastguard Worker 
545*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_PROG_FD
546*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct BPF_RAW_TRACEPOINT_OPEN_struct, prog_fd) == SoM(union bpf_attr, raw_tracepoint.prog_fd),
547*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_RAW_TRACEPOINT_OPEN_struct.prog_fd size mismatch");
548*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct BPF_RAW_TRACEPOINT_OPEN_struct, prog_fd) == offsetof(union bpf_attr, raw_tracepoint.prog_fd),
549*cf84ac9aSAndroid Build Coastguard Worker 		      "BPF_RAW_TRACEPOINT_OPEN_struct.prog_fd offset mismatch");
550*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_PROG_FD */
551*cf84ac9aSAndroid Build Coastguard Worker 
552*cf84ac9aSAndroid Build Coastguard Worker static_assert(BPF_RAW_TRACEPOINT_OPEN_struct_size == expected_BPF_RAW_TRACEPOINT_OPEN_struct_size,
553*cf84ac9aSAndroid Build Coastguard Worker 	      "BPF_RAW_TRACEPOINT_OPEN_struct_size mismatch");
554*cf84ac9aSAndroid Build Coastguard Worker 
555*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_TYPE
556*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, type) == SoM(struct bpf_map_info, type),
557*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.type size mismatch");
558*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, type) == offsetof(struct bpf_map_info, type),
559*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.type offset mismatch");
560*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_TYPE */
561*cf84ac9aSAndroid Build Coastguard Worker 
562*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_ID
563*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, id) == SoM(struct bpf_map_info, id),
564*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.id size mismatch");
565*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, id) == offsetof(struct bpf_map_info, id),
566*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.id offset mismatch");
567*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_ID */
568*cf84ac9aSAndroid Build Coastguard Worker 
569*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_KEY_SIZE
570*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, key_size) == SoM(struct bpf_map_info, key_size),
571*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.key_size size mismatch");
572*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, key_size) == offsetof(struct bpf_map_info, key_size),
573*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.key_size offset mismatch");
574*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_KEY_SIZE */
575*cf84ac9aSAndroid Build Coastguard Worker 
576*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_VALUE_SIZE
577*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, value_size) == SoM(struct bpf_map_info, value_size),
578*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.value_size size mismatch");
579*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, value_size) == offsetof(struct bpf_map_info, value_size),
580*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.value_size offset mismatch");
581*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_VALUE_SIZE */
582*cf84ac9aSAndroid Build Coastguard Worker 
583*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_MAX_ENTRIES
584*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, max_entries) == SoM(struct bpf_map_info, max_entries),
585*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.max_entries size mismatch");
586*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, max_entries) == offsetof(struct bpf_map_info, max_entries),
587*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.max_entries offset mismatch");
588*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_MAX_ENTRIES */
589*cf84ac9aSAndroid Build Coastguard Worker 
590*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_MAP_FLAGS
591*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, map_flags) == SoM(struct bpf_map_info, map_flags),
592*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.map_flags size mismatch");
593*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, map_flags) == offsetof(struct bpf_map_info, map_flags),
594*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.map_flags offset mismatch");
595*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_MAP_FLAGS */
596*cf84ac9aSAndroid Build Coastguard Worker 
597*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_NAME
598*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, name) == SoM(struct bpf_map_info, name),
599*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.name size mismatch");
600*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, name) == offsetof(struct bpf_map_info, name),
601*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.name offset mismatch");
602*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_NAME */
603*cf84ac9aSAndroid Build Coastguard Worker 
604*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_MAP_INFO_IFINDEX
605*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_map_info_struct, ifindex) == SoM(struct bpf_map_info, ifindex),
606*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.ifindex size mismatch");
607*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_map_info_struct, ifindex) == offsetof(struct bpf_map_info, ifindex),
608*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_map_info_struct.ifindex offset mismatch");
609*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_MAP_INFO_IFINDEX */
610*cf84ac9aSAndroid Build Coastguard Worker 
611*cf84ac9aSAndroid Build Coastguard Worker static_assert(bpf_map_info_struct_size == expected_bpf_map_info_struct_size,
612*cf84ac9aSAndroid Build Coastguard Worker 	      "bpf_map_info_struct_size mismatch");
613*cf84ac9aSAndroid Build Coastguard Worker 
614*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_TYPE
615*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, type) == SoM(struct bpf_prog_info, type),
616*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.type size mismatch");
617*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, type) == offsetof(struct bpf_prog_info, type),
618*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.type offset mismatch");
619*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_TYPE */
620*cf84ac9aSAndroid Build Coastguard Worker 
621*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_ID
622*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, id) == SoM(struct bpf_prog_info, id),
623*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.id size mismatch");
624*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, id) == offsetof(struct bpf_prog_info, id),
625*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.id offset mismatch");
626*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_ID */
627*cf84ac9aSAndroid Build Coastguard Worker 
628*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_TAG
629*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, tag) == SoM(struct bpf_prog_info, tag),
630*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.tag size mismatch");
631*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, tag) == offsetof(struct bpf_prog_info, tag),
632*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.tag offset mismatch");
633*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_TAG */
634*cf84ac9aSAndroid Build Coastguard Worker 
635*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_JITED_PROG_LEN
636*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, jited_prog_len) == SoM(struct bpf_prog_info, jited_prog_len),
637*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.jited_prog_len size mismatch");
638*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, jited_prog_len) == offsetof(struct bpf_prog_info, jited_prog_len),
639*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.jited_prog_len offset mismatch");
640*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_JITED_PROG_LEN */
641*cf84ac9aSAndroid Build Coastguard Worker 
642*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_LEN
643*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, xlated_prog_len) == SoM(struct bpf_prog_info, xlated_prog_len),
644*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.xlated_prog_len size mismatch");
645*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, xlated_prog_len) == offsetof(struct bpf_prog_info, xlated_prog_len),
646*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.xlated_prog_len offset mismatch");
647*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_LEN */
648*cf84ac9aSAndroid Build Coastguard Worker 
649*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_JITED_PROG_INSNS
650*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, jited_prog_insns) == SoM(struct bpf_prog_info, jited_prog_insns),
651*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.jited_prog_insns size mismatch");
652*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, jited_prog_insns) == offsetof(struct bpf_prog_info, jited_prog_insns),
653*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.jited_prog_insns offset mismatch");
654*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_JITED_PROG_INSNS */
655*cf84ac9aSAndroid Build Coastguard Worker 
656*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_INSNS
657*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, xlated_prog_insns) == SoM(struct bpf_prog_info, xlated_prog_insns),
658*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.xlated_prog_insns size mismatch");
659*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, xlated_prog_insns) == offsetof(struct bpf_prog_info, xlated_prog_insns),
660*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.xlated_prog_insns offset mismatch");
661*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_INSNS */
662*cf84ac9aSAndroid Build Coastguard Worker 
663*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_LOAD_TIME
664*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, load_time) == SoM(struct bpf_prog_info, load_time),
665*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.load_time size mismatch");
666*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, load_time) == offsetof(struct bpf_prog_info, load_time),
667*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.load_time offset mismatch");
668*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_LOAD_TIME */
669*cf84ac9aSAndroid Build Coastguard Worker 
670*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_CREATED_BY_UID
671*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, created_by_uid) == SoM(struct bpf_prog_info, created_by_uid),
672*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.created_by_uid size mismatch");
673*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, created_by_uid) == offsetof(struct bpf_prog_info, created_by_uid),
674*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.created_by_uid offset mismatch");
675*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_CREATED_BY_UID */
676*cf84ac9aSAndroid Build Coastguard Worker 
677*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_NR_MAP_IDS
678*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, nr_map_ids) == SoM(struct bpf_prog_info, nr_map_ids),
679*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.nr_map_ids size mismatch");
680*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, nr_map_ids) == offsetof(struct bpf_prog_info, nr_map_ids),
681*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.nr_map_ids offset mismatch");
682*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_NR_MAP_IDS */
683*cf84ac9aSAndroid Build Coastguard Worker 
684*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_MAP_IDS
685*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, map_ids) == SoM(struct bpf_prog_info, map_ids),
686*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.map_ids size mismatch");
687*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, map_ids) == offsetof(struct bpf_prog_info, map_ids),
688*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.map_ids offset mismatch");
689*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_MAP_IDS */
690*cf84ac9aSAndroid Build Coastguard Worker 
691*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_NAME
692*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, name) == SoM(struct bpf_prog_info, name),
693*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.name size mismatch");
694*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, name) == offsetof(struct bpf_prog_info, name),
695*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.name offset mismatch");
696*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_NAME */
697*cf84ac9aSAndroid Build Coastguard Worker 
698*cf84ac9aSAndroid Build Coastguard Worker # ifdef HAVE_STRUCT_BPF_PROG_INFO_IFINDEX
699*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(SoM(struct bpf_prog_info_struct, ifindex) == SoM(struct bpf_prog_info, ifindex),
700*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.ifindex size mismatch");
701*cf84ac9aSAndroid Build Coastguard Worker 	static_assert(offsetof(struct bpf_prog_info_struct, ifindex) == offsetof(struct bpf_prog_info, ifindex),
702*cf84ac9aSAndroid Build Coastguard Worker 		      "bpf_prog_info_struct.ifindex offset mismatch");
703*cf84ac9aSAndroid Build Coastguard Worker # endif /* HAVE_STRUCT_BPF_PROG_INFO_IFINDEX */
704*cf84ac9aSAndroid Build Coastguard Worker 
705*cf84ac9aSAndroid Build Coastguard Worker static_assert(bpf_prog_info_struct_size == expected_bpf_prog_info_struct_size,
706*cf84ac9aSAndroid Build Coastguard Worker 	      "bpf_prog_info_struct_size mismatch");
707*cf84ac9aSAndroid Build Coastguard Worker 
708*cf84ac9aSAndroid Build Coastguard Worker #endif /* HAVE_LINUX_BPF_H */
709