19e3d709cSAndrii Nakryiko /* SPDX-License-Identifier: GPL-2.0 */ 29e3d709cSAndrii Nakryiko /* Copyright (c) 2018 Facebook */ 39e3d709cSAndrii Nakryiko #include <linux/bpf.h> 43e689141SToke Høiland-Jørgensen #include <bpf/bpf_helpers.h> 536b5d471SAndrii Nakryiko #include "bpf_legacy.h" 69e3d709cSAndrii Nakryiko 79e3d709cSAndrii Nakryiko struct ipv_counts { 89e3d709cSAndrii Nakryiko unsigned int v4; 99e3d709cSAndrii Nakryiko unsigned int v6; 109e3d709cSAndrii Nakryiko }; 119e3d709cSAndrii Nakryiko 129e3d709cSAndrii Nakryiko struct { 13bc7430ccSAndrii Nakryiko __uint(type, BPF_MAP_TYPE_ARRAY); 14bc7430ccSAndrii Nakryiko __uint(max_entries, 4); 15bc7430ccSAndrii Nakryiko __type(key, int); 16bc7430ccSAndrii Nakryiko __type(value, struct ipv_counts); 17bc7430ccSAndrii Nakryiko } btf_map SEC(".maps"); 189e3d709cSAndrii Nakryiko 199e3d709cSAndrii Nakryiko __attribute__((noinline)) test_long_fname_2(void)20e1cebd84SStanislav Fomichevint test_long_fname_2(void) 219e3d709cSAndrii Nakryiko { 229e3d709cSAndrii Nakryiko struct ipv_counts *counts; 239e3d709cSAndrii Nakryiko int key = 0; 249e3d709cSAndrii Nakryiko 259e3d709cSAndrii Nakryiko counts = bpf_map_lookup_elem(&btf_map, &key); 269e3d709cSAndrii Nakryiko if (!counts) 279e3d709cSAndrii Nakryiko return 0; 289e3d709cSAndrii Nakryiko 299e3d709cSAndrii Nakryiko counts->v6++; 309e3d709cSAndrii Nakryiko 319e3d709cSAndrii Nakryiko return 0; 329e3d709cSAndrii Nakryiko } 339e3d709cSAndrii Nakryiko 349e3d709cSAndrii Nakryiko __attribute__((noinline)) test_long_fname_1(void)35e1cebd84SStanislav Fomichevint test_long_fname_1(void) 369e3d709cSAndrii Nakryiko { 37e1cebd84SStanislav Fomichev return test_long_fname_2(); 389e3d709cSAndrii Nakryiko } 399e3d709cSAndrii Nakryiko 409e3d709cSAndrii Nakryiko SEC("dummy_tracepoint") _dummy_tracepoint(void * arg)41e1cebd84SStanislav Fomichevint _dummy_tracepoint(void *arg) 429e3d709cSAndrii Nakryiko { 43e1cebd84SStanislav Fomichev return test_long_fname_1(); 449e3d709cSAndrii Nakryiko } 459e3d709cSAndrii Nakryiko 469e3d709cSAndrii Nakryiko char _license[] SEC("license") = "GPL"; 47