xref: /linux/tools/testing/selftests/bpf/progs/struct_ops_arena_fail.c (revision 5a8cd539ac19f7a68e68e1d25ef9ca2ff55b8500)
1*ba048419STejun Heo // SPDX-License-Identifier: GPL-2.0
2*ba048419STejun Heo /* Copyright (c) 2026 Meta Platforms, Inc. and affiliates. */
3*ba048419STejun Heo 
4*ba048419STejun Heo #include <vmlinux.h>
5*ba048419STejun Heo #include <bpf/bpf_helpers.h>
6*ba048419STejun Heo #include "../test_kmods/bpf_testmod.h"
7*ba048419STejun Heo 
8*ba048419STejun Heo char _license[] SEC("license") = "GPL";
9*ba048419STejun Heo 
10*ba048419STejun Heo /* No arena in the program: attaching to test_arena must be rejected. */
11*ba048419STejun Heo SEC("struct_ops/test_arena")
test_arena_no_arena(unsigned long long * ctx)12*ba048419STejun Heo int test_arena_no_arena(unsigned long long *ctx)
13*ba048419STejun Heo {
14*ba048419STejun Heo 	return 0;
15*ba048419STejun Heo }
16*ba048419STejun Heo 
17*ba048419STejun Heo SEC(".struct_ops.link")
18*ba048419STejun Heo struct bpf_testmod_ops3 testmod_arena_fail = {
19*ba048419STejun Heo 	.test_arena = (void *)test_arena_no_arena,
20*ba048419STejun Heo };
21