112e6196fSYonghong Song // SPDX-License-Identifier: GPL-2.0 212e6196fSYonghong Song /* Copyright (c) 2020 Facebook */ 312e6196fSYonghong Song #include "bpf_iter.h" 412e6196fSYonghong Song #include <bpf/bpf_helpers.h> 512e6196fSYonghong Song 612e6196fSYonghong Song char _license[] SEC("license") = "GPL"; 712e6196fSYonghong Song 812e6196fSYonghong Song __u32 value_sum = 0; 912e6196fSYonghong Song 1012e6196fSYonghong Song SEC("iter/bpf_map_elem") dump_bpf_hash_map(struct bpf_iter__bpf_map_elem * ctx)1112e6196fSYonghong Songint dump_bpf_hash_map(struct bpf_iter__bpf_map_elem *ctx) 1212e6196fSYonghong Song { 1312e6196fSYonghong Song void *value = ctx->value; 1412e6196fSYonghong Song 1512e6196fSYonghong Song if (value == (void *)0) 1612e6196fSYonghong Song return 0; 1712e6196fSYonghong Song 1812e6196fSYonghong Song /* negative offset, verifier failure. */ 1912e6196fSYonghong Song value_sum += *(__u32 *)(value - 4); 2012e6196fSYonghong Song return 0; 2112e6196fSYonghong Song } 22