-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add 12-argument support for RV64 bpf trampoline #7061
Conversation
Upstream branch: 71ed6c2 |
c7673c1
to
0b7406d
Compare
Upstream branch: 6f130e4 |
6dc8e7b
to
840d753
Compare
0b7406d
to
b62b6e4
Compare
Upstream branch: f4aba34 |
840d753
to
357ff85
Compare
b62b6e4
to
9ab0d84
Compare
Upstream branch: 1b0215a |
357ff85
to
fb69481
Compare
9ab0d84
to
fb42b3d
Compare
Upstream branch: 6c8d759 |
fb69481
to
1697f87
Compare
fb42b3d
to
169fa82
Compare
Upstream branch: a87f34e |
1697f87
to
db52f98
Compare
169fa82
to
14f768c
Compare
Upstream branch: ecec188 |
db52f98
to
9f99d1c
Compare
14f768c
to
8cca82b
Compare
This patch adds 12 function arguments support for riscv64 bpf trampoline. The current bpf trampoline supports <= sizeof(u64) bytes scalar arguments [0] and <= 16 bytes struct arguments [1]. Therefore, we focus on the situation where scalars are at most XLEN bits and aggregates whose total size does not exceed 2×XLEN bits in the riscv calling convention [2]. Link: https://elixir.bootlin.com/linux/v6.8/source/kernel/bpf/btf.c#L6184 [0] Link: https://elixir.bootlin.com/linux/v6.8/source/kernel/bpf/btf.c#L6769 [1] Link: https://github.com/riscv-non-isa/riscv-elf-psabi-doc/releases/download/draft-20230929-e5c800e661a53efe3c2678d71a306323b60eb13b/riscv-abi.pdf [2] Signed-off-by: Pu Lehui <pulehui@huawei.com> Acked-by: Björn Töpel <bjorn@kernel.org> Reviewed-by: Björn Töpel <bjorn@rivosinc.com>
Factor out many args tests from tracing_struct and rename some function names to make more sense. Signed-off-by: Pu Lehui <pulehui@huawei.com>
Add testcase where 7th argument is struct for architectures with 8 argument registers, and increase the complexity of the struct. Signed-off-by: Pu Lehui <pulehui@huawei.com> Acked-by: Björn Töpel <bjorn@kernel.org> Reviewed-by: Björn Töpel <bjorn@rivosinc.com>
Upstream branch: c12603e |
9f99d1c
to
67f85bd
Compare
8cca82b
to
20219f9
Compare
Upstream branch: e944fc8 Pull request is NOT updated. Failed to apply https://patchwork.kernel.org/project/netdevbpf/list/?series=854140
conflict:
|
6380a82
to
214f651
Compare
214f651
to
c939103
Compare
At least one diff in series https://patchwork.kernel.org/project/netdevbpf/list/?series=840902 expired. Closing PR. |
Pull request for series with
subject: Add 12-argument support for RV64 bpf trampoline
version: 4
url: https://patchwork.kernel.org/project/netdevbpf/list/?series=854140