1// SPDX-License-Identifier: GPL-2.0
2/* Copyright (c) 2020 Facebook */
3#include "bpf_iter.h"
4#include <bpf/bpf_helpers.h>
5
6char _license[] SEC("license") = "GPL";
7
8__u32 value_sum = 0;
9
10SEC("iter/bpf_map_elem")
11int dump_bpf_hash_map(struct bpf_iter__bpf_map_elem *ctx)
12{
13 void *value = ctx->value;
14
15 if (value == (void *)0)
16 return 0;
17
18 /* negative offset, verifier failure. */
19 value_sum += *(__u32 *)(value - 4);
20 return 0;
21}
22

source code of linux/tools/testing/selftests/bpf/progs/bpf_iter_test_kern6.c