Update the code to rename validate_code to validate_ctx.
validate_code is used to check the validity of code.
validate_ctx is used to check both code validity and table entry
correctness.
Co-developed-by: George Guo <guodongtai@kylinos.cn>
Signed-off-by: George Guo <guodongtai@kylinos.cn>
Signed-off-by: Chenghao Duan <duanchenghao@kylinos.cn>
---
arch/loongarch/net/bpf_jit.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/arch/loongarch/net/bpf_jit.c b/arch/loongarch/net/bpf_jit.c
index fa1500d4a..7032f11d3 100644
--- a/arch/loongarch/net/bpf_jit.c
+++ b/arch/loongarch/net/bpf_jit.c
@@ -1180,6 +1180,14 @@ static int validate_code(struct jit_ctx *ctx)
return -1;
}
+ return 0;
+}
+
+static int validate_ctx(struct jit_ctx *ctx)
+{
+ if (validate_code(ctx))
+ return -1;
+
if (WARN_ON_ONCE(ctx->num_exentries != ctx->prog->aux->num_exentries))
return -1;
@@ -1288,7 +1296,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog)
build_epilogue(&ctx);
/* 3. Extra pass to validate JITed code */
- if (validate_code(&ctx)) {
+ if (validate_ctx(&ctx)) {
bpf_jit_binary_free(header);
prog = orig_prog;
goto out_offset;
--
2.43.0
On Wed, Jul 9, 2025 at 1:50 PM Chenghao Duan <duanchenghao@kylinos.cn> wrote: > > Update the code to rename validate_code to validate_ctx. > validate_code is used to check the validity of code. > validate_ctx is used to check both code validity and table entry > correctness. > The commit message is awkward to read. Please describe the purpose of this change. * Rename the existing validate_code() to validate_ctx() * Factor out the code validation handling into a new helper validate_code() The new validate_code() will be used in subsequent changes. > Co-developed-by: George Guo <guodongtai@kylinos.cn> > Signed-off-by: George Guo <guodongtai@kylinos.cn> > Signed-off-by: Chenghao Duan <duanchenghao@kylinos.cn> > --- > arch/loongarch/net/bpf_jit.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/arch/loongarch/net/bpf_jit.c b/arch/loongarch/net/bpf_jit.c > index fa1500d4a..7032f11d3 100644 > --- a/arch/loongarch/net/bpf_jit.c > +++ b/arch/loongarch/net/bpf_jit.c > @@ -1180,6 +1180,14 @@ static int validate_code(struct jit_ctx *ctx) > return -1; > } > > + return 0; > +} > + > +static int validate_ctx(struct jit_ctx *ctx) > +{ > + if (validate_code(ctx)) > + return -1; > + > if (WARN_ON_ONCE(ctx->num_exentries != ctx->prog->aux->num_exentries)) > return -1; > > @@ -1288,7 +1296,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog) > build_epilogue(&ctx); > > /* 3. Extra pass to validate JITed code */ > - if (validate_code(&ctx)) { > + if (validate_ctx(&ctx)) { > bpf_jit_binary_free(header); > prog = orig_prog; > goto out_offset; > -- > 2.43.0 >
On Wed, Jul 16, 2025 at 07:55:46PM +0800, Hengqi Chen wrote: > On Wed, Jul 9, 2025 at 1:50 PM Chenghao Duan <duanchenghao@kylinos.cn> wrote: > > > > Update the code to rename validate_code to validate_ctx. > > validate_code is used to check the validity of code. > > validate_ctx is used to check both code validity and table entry > > correctness. > > > > The commit message is awkward to read. > Please describe the purpose of this change. > * Rename the existing validate_code() to validate_ctx() > * Factor out the code validation handling into a new helper validate_code() > > The new validate_code() will be used in subsequent changes. > Hi Hengqi, Thank you very much for your suggestions. I will refer to your advice to revise the commit message in Version V4. Chenghao > > Co-developed-by: George Guo <guodongtai@kylinos.cn> > > Signed-off-by: George Guo <guodongtai@kylinos.cn> > > Signed-off-by: Chenghao Duan <duanchenghao@kylinos.cn> > > --- > > arch/loongarch/net/bpf_jit.c | 10 +++++++++- > > 1 file changed, 9 insertions(+), 1 deletion(-) > > > > diff --git a/arch/loongarch/net/bpf_jit.c b/arch/loongarch/net/bpf_jit.c > > index fa1500d4a..7032f11d3 100644 > > --- a/arch/loongarch/net/bpf_jit.c > > +++ b/arch/loongarch/net/bpf_jit.c > > @@ -1180,6 +1180,14 @@ static int validate_code(struct jit_ctx *ctx) > > return -1; > > } > > > > + return 0; > > +} > > + > > +static int validate_ctx(struct jit_ctx *ctx) > > +{ > > + if (validate_code(ctx)) > > + return -1; > > + > > if (WARN_ON_ONCE(ctx->num_exentries != ctx->prog->aux->num_exentries)) > > return -1; > > > > @@ -1288,7 +1296,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog) > > build_epilogue(&ctx); > > > > /* 3. Extra pass to validate JITed code */ > > - if (validate_code(&ctx)) { > > + if (validate_ctx(&ctx)) { > > bpf_jit_binary_free(header); > > prog = orig_prog; > > goto out_offset; > > -- > > 2.43.0 > >
© 2016 - 2025 Red Hat, Inc.