From: Song Liu <song@kernel.org>
To: bpf@vger.kernel.org
Cc: ast@kernel.org, daniel@iogearbox.net, andrii@kernel.org,
martin.lau@kernel.org, kernel-team@meta.com, bjorn@kernel.org,
xukuohai@huawei.com, pulehui@huawei.com, iii@linux.ibm.com,
jolsa@kernel.org, Song Liu <song@kernel.org>
Subject: [PATCH v5 bpf-next 4/7] bpf, x86: Adjust arch_prepare_bpf_trampoline return value
Date: Tue, 24 Oct 2023 15:45:58 -0700 [thread overview]
Message-ID: <20231024224601.2292927-5-song@kernel.org> (raw)
In-Reply-To: <20231024224601.2292927-1-song@kernel.org>
x86's implementation of arch_prepare_bpf_trampoline() requires
BPF_INSN_SAFETY buffer space between end of program and image_end. OTOH,
the return value does not include BPF_INSN_SAFETY. This doesn't cause any
real issue at the moment. However, "image" of size retval is not enough for
arch_prepare_bpf_trampoline(). This will cause confusion when we introduce
a new helper arch_bpf_trampoline_size(). To avoid future confusion, adjust
the return value to include BPF_INSN_SAFETY.
Signed-off-by: Song Liu <song@kernel.org>
Acked-by: Ilya Leoshkevich <iii@linux.ibm.com>
---
arch/x86/net/bpf_jit_comp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c
index 8c10d9abc239..5f7528cac344 100644
--- a/arch/x86/net/bpf_jit_comp.c
+++ b/arch/x86/net/bpf_jit_comp.c
@@ -2671,7 +2671,7 @@ int arch_prepare_bpf_trampoline(struct bpf_tramp_image *im, void *image, void *i
ret = -EFAULT;
goto cleanup;
}
- ret = prog - (u8 *)image;
+ ret = prog - (u8 *)image + BPF_INSN_SAFETY;
cleanup:
kfree(branches);
--
2.34.1
next prev parent reply other threads:[~2023-10-24 22:46 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-24 22:45 [PATCH v5 bpf-next 0/7] Allocate bpf trampoline on bpf_prog_pack Song Liu
2023-10-24 22:45 ` [PATCH v5 bpf-next 1/7] bpf: Let bpf_prog_pack_free handle any pointer Song Liu
2023-10-24 22:45 ` [PATCH v5 bpf-next 2/7] bpf: Adjust argument names of arch_prepare_bpf_trampoline() Song Liu
2023-10-24 22:45 ` [PATCH v5 bpf-next 3/7] bpf: Add helpers for trampoline image management Song Liu
2023-10-24 22:45 ` Song Liu [this message]
2023-10-24 22:45 ` [PATCH v5 bpf-next 5/7] bpf: Add arch_bpf_trampoline_size() Song Liu
2023-10-26 11:59 ` Björn Töpel
2023-10-24 22:46 ` [PATCH v5 bpf-next 6/7] bpf: Use arch_bpf_trampoline_size Song Liu
2023-10-26 20:21 ` Björn Töpel
2023-10-24 22:46 ` [PATCH v5 bpf-next 7/7] x86, bpf: Use bpf_prog_pack for bpf trampoline Song Liu
2023-10-25 13:49 ` [PATCH v5 bpf-next 0/7] Allocate bpf trampoline on bpf_prog_pack Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231024224601.2292927-5-song@kernel.org \
--to=song@kernel.org \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bjorn@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=iii@linux.ibm.com \
--cc=jolsa@kernel.org \
--cc=kernel-team@meta.com \
--cc=martin.lau@kernel.org \
--cc=pulehui@huawei.com \
--cc=xukuohai@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.