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