bpf: Add missing map_get_next_key method to bloom filter map.
authorHaimin Zhang <tcs_kernel@tencent.com>
Wed, 29 Dec 2021 11:20:02 +0000 (19:20 +0800)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 29 Dec 2021 17:38:31 +0000 (09:38 -0800)
Without it, kernel crashes in map_get_next_key().

Fixes: 9330986c0300 ("bpf: Add bloom filter map implementation")
Reported-by: TCS Robot <tcs_robot@tencent.com>
Signed-off-by: Haimin Zhang <tcs_kernel@tencent.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Joanne Koong <joannekoong@fb.com>
Link: https://lore.kernel.org/bpf/1640776802-22421-1-git-send-email-tcs.kernel@gmail.com
kernel/bpf/bloom_filter.c

index 277a05e..b141a13 100644 (file)
@@ -82,6 +82,11 @@ static int bloom_map_delete_elem(struct bpf_map *map, void *value)
        return -EOPNOTSUPP;
 }
 
+static int bloom_map_get_next_key(struct bpf_map *map, void *key, void *next_key)
+{
+       return -EOPNOTSUPP;
+}
+
 static struct bpf_map *bloom_map_alloc(union bpf_attr *attr)
 {
        u32 bitset_bytes, bitset_mask, nr_hash_funcs, nr_bits;
@@ -192,6 +197,7 @@ const struct bpf_map_ops bloom_filter_map_ops = {
        .map_meta_equal = bpf_map_meta_equal,
        .map_alloc = bloom_map_alloc,
        .map_free = bloom_map_free,
+       .map_get_next_key = bloom_map_get_next_key,
        .map_push_elem = bloom_map_push_elem,
        .map_peek_elem = bloom_map_peek_elem,
        .map_pop_elem = bloom_map_pop_elem,