Lines Matching refs:key_size
194 static inline void htab_elem_set_ptr(struct htab_elem *l, u32 key_size, in htab_elem_set_ptr() argument
197 *(void __percpu **)(l->key + key_size) = pptr; in htab_elem_set_ptr()
200 static inline void __percpu *htab_elem_get_ptr(struct htab_elem *l, u32 key_size) in htab_elem_get_ptr() argument
202 return *(void __percpu **)(l->key + key_size); in htab_elem_get_ptr()
207 return *(void **)(l->key + roundup(map->key_size, 8)); in fd_htab_map_get_ptr()
235 round_up(htab->map.key_size, 8) + in htab_free_prealloced_timers()
255 bpf_map_free_kptrs(&htab->map, elem->key + round_up(htab->map.key_size, 8)); in htab_free_prealloced_kptrs()
271 htab->map.key_size); in htab_free_elems()
298 memcpy(l->key, key, htab->map.key_size); in prealloc_lru_pop()
329 htab_elem_set_ptr(get_htab_elem(htab, i), htab->map.key_size, in prealloc_init()
443 if (attr->max_entries == 0 || attr->key_size == 0 || in htab_map_alloc_check()
447 if ((u64)attr->key_size + attr->value_size >= KMALLOC_MAX_SIZE - in htab_map_alloc_check()
499 round_up(htab->map.key_size, 8); in htab_map_alloc()
617 void *key, u32 key_size) in lookup_elem_raw() argument
623 if (l->hash == hash && !memcmp(&l->key, key, key_size)) in lookup_elem_raw()
635 u32 key_size, u32 n_buckets) in lookup_nulls_elem_raw() argument
642 if (l->hash == hash && !memcmp(&l->key, key, key_size)) in lookup_nulls_elem_raw()
661 u32 hash, key_size; in __htab_map_lookup_elem() local
666 key_size = map->key_size; in __htab_map_lookup_elem()
668 hash = htab_map_hash(key, key_size, htab->hashrnd); in __htab_map_lookup_elem()
672 l = lookup_nulls_elem_raw(head, hash, key, key_size, htab->n_buckets); in __htab_map_lookup_elem()
682 return l->key + round_up(map->key_size, 8); in htab_map_lookup_elem()
709 round_up(map->key_size, 8)); in htab_map_gen_lookup()
721 return l->key + round_up(map->key_size, 8); in __htab_lru_map_lookup_elem()
758 round_up(map->key_size, 8)); in htab_lru_map_gen_lookup()
765 void *map_value = elem->key + round_up(htab->map.key_size, 8); in check_and_free_fields()
812 u32 hash, key_size; in htab_map_get_next_key() local
817 key_size = map->key_size; in htab_map_get_next_key()
822 hash = htab_map_hash(key, key_size, htab->hashrnd); in htab_map_get_next_key()
827 l = lookup_nulls_elem_raw(head, hash, key, key_size, htab->n_buckets); in htab_map_get_next_key()
838 memcpy(next_key, next_l->key, key_size); in htab_map_get_next_key()
856 memcpy(next_key, next_l->key, key_size); in htab_map_get_next_key()
972 void *value, u32 key_size, u32 hash, in alloc_htab_elem() argument
1014 l_new->key + round_up(key_size, 8)); in alloc_htab_elem()
1017 memcpy(l_new->key, key, key_size); in alloc_htab_elem()
1020 pptr = htab_elem_get_ptr(l_new, key_size); in alloc_htab_elem()
1036 htab_elem_set_ptr(l_new, key_size, pptr); in alloc_htab_elem()
1039 memcpy(l_new->key + round_up(key_size, 8), value, size); in alloc_htab_elem()
1042 l_new->key + round_up(key_size, 8), in alloc_htab_elem()
1076 u32 key_size, hash; in htab_map_update_elem() local
1086 key_size = map->key_size; in htab_map_update_elem()
1088 hash = htab_map_hash(key, key_size, htab->hashrnd); in htab_map_update_elem()
1097 l_old = lookup_nulls_elem_raw(head, hash, key, key_size, in htab_map_update_elem()
1105 l_old->key + round_up(key_size, 8), in htab_map_update_elem()
1119 l_old = lookup_elem_raw(head, hash, key, key_size); in htab_map_update_elem()
1133 l_old->key + round_up(key_size, 8), in htab_map_update_elem()
1139 l_new = alloc_htab_elem(htab, key, value, key_size, hash, false, false, in htab_map_update_elem()
1178 u32 key_size, hash; in htab_lru_map_update_elem() local
1188 key_size = map->key_size; in htab_lru_map_update_elem()
1190 hash = htab_map_hash(key, key_size, htab->hashrnd); in htab_lru_map_update_elem()
1204 l_new->key + round_up(map->key_size, 8), value); in htab_lru_map_update_elem()
1210 l_old = lookup_elem_raw(head, hash, key, key_size); in htab_lru_map_update_elem()
1246 u32 key_size, hash; in __htab_percpu_map_update_elem() local
1256 key_size = map->key_size; in __htab_percpu_map_update_elem()
1258 hash = htab_map_hash(key, key_size, htab->hashrnd); in __htab_percpu_map_update_elem()
1267 l_old = lookup_elem_raw(head, hash, key, key_size); in __htab_percpu_map_update_elem()
1275 pcpu_copy_value(htab, htab_elem_get_ptr(l_old, key_size), in __htab_percpu_map_update_elem()
1278 l_new = alloc_htab_elem(htab, key, value, key_size, in __htab_percpu_map_update_elem()
1301 u32 key_size, hash; in __htab_lru_percpu_map_update_elem() local
1311 key_size = map->key_size; in __htab_lru_percpu_map_update_elem()
1313 hash = htab_map_hash(key, key_size, htab->hashrnd); in __htab_lru_percpu_map_update_elem()
1333 l_old = lookup_elem_raw(head, hash, key, key_size); in __htab_lru_percpu_map_update_elem()
1343 pcpu_copy_value(htab, htab_elem_get_ptr(l_old, key_size), in __htab_lru_percpu_map_update_elem()
1346 pcpu_init_value(htab, htab_elem_get_ptr(l_new, key_size), in __htab_lru_percpu_map_update_elem()
1380 u32 hash, key_size; in htab_map_delete_elem() local
1386 key_size = map->key_size; in htab_map_delete_elem()
1388 hash = htab_map_hash(key, key_size, htab->hashrnd); in htab_map_delete_elem()
1396 l = lookup_elem_raw(head, hash, key, key_size); in htab_map_delete_elem()
1416 u32 hash, key_size; in htab_lru_map_delete_elem() local
1422 key_size = map->key_size; in htab_lru_map_delete_elem()
1424 hash = htab_map_hash(key, key_size, htab->hashrnd); in htab_lru_map_delete_elem()
1432 l = lookup_elem_raw(head, hash, key, key_size); in htab_lru_map_delete_elem()
1481 round_up(htab->map.key_size, 8) + in htab_free_malloced_timers()
1566 u32 hash, key_size; in __htab_map_lookup_and_delete_elem() local
1570 key_size = map->key_size; in __htab_map_lookup_and_delete_elem()
1572 hash = htab_map_hash(key, key_size, htab->hashrnd); in __htab_map_lookup_and_delete_elem()
1580 l = lookup_elem_raw(head, hash, key, key_size); in __htab_map_lookup_and_delete_elem()
1589 pptr = htab_elem_get_ptr(l, key_size); in __htab_map_lookup_and_delete_elem()
1597 u32 roundup_key_size = round_up(map->key_size, 8); in __htab_map_lookup_and_delete_elem()
1660 u32 bucket_cnt, total, key_size, value_size, roundup_key_size; in __htab_map_lookup_and_delete_batch() local
1699 key_size = htab->map.key_size; in __htab_map_lookup_and_delete_batch()
1700 roundup_key_size = round_up(htab->map.key_size, 8); in __htab_map_lookup_and_delete_batch()
1715 keys = kvmalloc_array(key_size, bucket_size, GFP_USER | __GFP_NOWARN); in __htab_map_lookup_and_delete_batch()
1779 memcpy(dst_key, l->key, key_size); in __htab_map_lookup_and_delete_batch()
1785 pptr = htab_elem_get_ptr(l, map->key_size); in __htab_map_lookup_and_delete_batch()
1823 dst_key += key_size; in __htab_map_lookup_and_delete_batch()
1847 if (bucket_cnt && (copy_to_user(ukeys + total * key_size, keys, in __htab_map_lookup_and_delete_batch()
1848 key_size * bucket_cnt) || in __htab_map_lookup_and_delete_batch()
2052 roundup_key_size = round_up(map->key_size, 8); in __bpf_hash_map_seq_show()
2058 pptr = htab_elem_get_ptr(elem, map->key_size); in __bpf_hash_map_seq_show()
2153 roundup_key_size = round_up(map->key_size, 8); in bpf_for_each_hash_elem()
2167 pptr = htab_elem_get_ptr(elem, map->key_size); in bpf_for_each_hash_elem()
2237 return this_cpu_ptr(htab_elem_get_ptr(l, map->key_size)); in htab_percpu_map_lookup_elem()
2251 return per_cpu_ptr(htab_elem_get_ptr(l, map->key_size), cpu); in htab_percpu_map_lookup_percpu_elem()
2262 return this_cpu_ptr(htab_elem_get_ptr(l, map->key_size)); in htab_lru_percpu_map_lookup_elem()
2278 return per_cpu_ptr(htab_elem_get_ptr(l, map->key_size), cpu); in htab_lru_percpu_map_lookup_percpu_elem()
2304 pptr = htab_elem_get_ptr(l, map->key_size); in bpf_percpu_hash_copy()
2351 pptr = htab_elem_get_ptr(l, map->key_size); in htab_percpu_map_seq_show_elem()
2509 round_up(map->key_size, 8)); in htab_of_map_gen_lookup()