Lines Matching full:it

16 int btf_field_iter_init(struct btf_field_iter *it, struct btf_type *t,  in btf_field_iter_init()  argument
19 it->p = NULL; in btf_field_iter_init()
20 it->m_idx = -1; in btf_field_iter_init()
21 it->off_idx = 0; in btf_field_iter_init()
22 it->vlen = 0; in btf_field_iter_init()
32 it->desc = (struct btf_field_desc) {}; in btf_field_iter_init()
44 it->desc = (struct btf_field_desc) { 1, {offsetof(struct btf_type, type)} }; in btf_field_iter_init()
47 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
54 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
61 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
68 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
81 it->desc = (struct btf_field_desc) {}; in btf_field_iter_init()
97 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
102 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
109 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
117 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
124 it->desc = (struct btf_field_desc) { in btf_field_iter_init()
138 if (it->desc.m_sz) in btf_field_iter_init()
139 it->vlen = btf_vlen(t); in btf_field_iter_init()
141 it->p = t; in btf_field_iter_init()
145 __u32 *btf_field_iter_next(struct btf_field_iter *it) in btf_field_iter_next() argument
147 if (!it->p) in btf_field_iter_next()
150 if (it->m_idx < 0) { in btf_field_iter_next()
151 if (it->off_idx < it->desc.t_off_cnt) in btf_field_iter_next()
152 return it->p + it->desc.t_offs[it->off_idx++]; in btf_field_iter_next()
154 it->m_idx = 0; in btf_field_iter_next()
155 it->p += sizeof(struct btf_type); in btf_field_iter_next()
156 it->off_idx = 0; in btf_field_iter_next()
160 if (it->desc.m_sz == 0) { in btf_field_iter_next()
161 it->p = NULL; in btf_field_iter_next()
165 if (it->off_idx >= it->desc.m_off_cnt) { in btf_field_iter_next()
167 it->m_idx++; in btf_field_iter_next()
168 it->p += it->desc.m_sz; in btf_field_iter_next()
169 it->off_idx = 0; in btf_field_iter_next()
172 if (it->m_idx < it->vlen) in btf_field_iter_next()
173 return it->p + it->desc.m_offs[it->off_idx++]; in btf_field_iter_next()
175 it->p = NULL; in btf_field_iter_next()