brintos

brintos / linux-shallow public Read only

0
0
Text · 1.4 KiB · 9efcc6e Raw
103 lines · c
1// SPDX-License-Identifier: GPL-2.02/* Copyright (c) 2024 Meta Platforms, Inc. and affiliates. */3#include <vmlinux.h>4#include <bpf/bpf_helpers.h>5#include <bpf/bpf_tracing.h>6#include "../bpf_testmod/bpf_testmod.h"7 8char _license[] SEC("license") = "GPL";9 10#define TRAMP(x) \11	SEC("struct_ops/tramp_" #x)		\12	int BPF_PROG(tramp_ ## x, int a)	\13	{					\14		return a;			\15	}16 17TRAMP(1)18TRAMP(2)19TRAMP(3)20TRAMP(4)21TRAMP(5)22TRAMP(6)23TRAMP(7)24TRAMP(8)25TRAMP(9)26TRAMP(10)27TRAMP(11)28TRAMP(12)29TRAMP(13)30TRAMP(14)31TRAMP(15)32TRAMP(16)33TRAMP(17)34TRAMP(18)35TRAMP(19)36TRAMP(20)37TRAMP(21)38TRAMP(22)39TRAMP(23)40TRAMP(24)41TRAMP(25)42TRAMP(26)43TRAMP(27)44TRAMP(28)45TRAMP(29)46TRAMP(30)47TRAMP(31)48TRAMP(32)49TRAMP(33)50TRAMP(34)51TRAMP(35)52TRAMP(36)53TRAMP(37)54TRAMP(38)55TRAMP(39)56TRAMP(40)57 58#define F_TRAMP(x) .tramp_ ## x = (void *)tramp_ ## x59 60SEC(".struct_ops.link")61struct bpf_testmod_ops multi_pages = {62	F_TRAMP(1),63	F_TRAMP(2),64	F_TRAMP(3),65	F_TRAMP(4),66	F_TRAMP(5),67	F_TRAMP(6),68	F_TRAMP(7),69	F_TRAMP(8),70	F_TRAMP(9),71	F_TRAMP(10),72	F_TRAMP(11),73	F_TRAMP(12),74	F_TRAMP(13),75	F_TRAMP(14),76	F_TRAMP(15),77	F_TRAMP(16),78	F_TRAMP(17),79	F_TRAMP(18),80	F_TRAMP(19),81	F_TRAMP(20),82	F_TRAMP(21),83	F_TRAMP(22),84	F_TRAMP(23),85	F_TRAMP(24),86	F_TRAMP(25),87	F_TRAMP(26),88	F_TRAMP(27),89	F_TRAMP(28),90	F_TRAMP(29),91	F_TRAMP(30),92	F_TRAMP(31),93	F_TRAMP(32),94	F_TRAMP(33),95	F_TRAMP(34),96	F_TRAMP(35),97	F_TRAMP(36),98	F_TRAMP(37),99	F_TRAMP(38),100	F_TRAMP(39),101	F_TRAMP(40),102};103