From: Oleg Nesterov <oleg@redhat.com>
To: Andrii Nakryiko <andrii.nakryiko@gmail.com>
Cc: Tiezhu Yang <yangtiezhu@loongson.cn>,
Jiri Olsa <jolsa@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Nathan Chancellor <nathan@kernel.org>,
linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
bpf@vger.kernel.org, Huacai Chen <chenhuacai@kernel.org>,
WANG Xuerui <kernel@xen0n.name>,
loongarch@lists.linux.dev
Subject: Re: [PATCH] LoongArch: uprobes: make UPROBE_SWBP_INSN/UPROBE_XOLBP_INSN constant
Date: Thu, 27 Jun 2024 19:38:06 +0200 [thread overview]
Message-ID: <20240627173806.GC21813@redhat.com> (raw)
In-Reply-To: <CAEf4BzZVmKjfQD1zKMDOD-Zc4pVp+EGgb8h2veg=bXe1Pjn_Uw@mail.gmail.com>
On 06/27, Andrii Nakryiko wrote:
>
> Acked-by: Andrii Nakryiko <andrii@kernel.org>
Thanks!
> > --- a/arch/loongarch/kernel/uprobes.c
> > +++ b/arch/loongarch/kernel/uprobes.c
> > @@ -7,6 +7,14 @@
> >
> > #define UPROBE_TRAP_NR UINT_MAX
> >
> > +static __init int check_emit_break(void)
> > +{
> > + BUG_ON(UPROBE_SWBP_INSN != larch_insn_gen_break(BRK_UPROBE_BP));
> > + BUG_ON(UPROBE_XOLBP_INSN != larch_insn_gen_break(BRK_UPROBE_XOLBP));
> > + return 0;
> > +}
> > +arch_initcall(check_emit_break);
> > +
>
> I wouldn't even bother with this, but whatever.
Agreed, this looks a bit ugly. I did this only because I can not test
this (hopefully trivial) patch and the maintainers didn't reply.
If LoongArch boots at least once with this change, this run-time check
can be removed.
And just in case... I didn't dare to make a more "generic" change, but
perhaps KPROBE_BP_INSN and KPROBE_SSTEPBP_INSN should be redefined the
same way for micro-optimization. In this case __emit_break() should be
probably moved into arch/loongarch/include/asm/inst.h.
Oleg.
next prev parent reply other threads:[~2024-06-27 17:39 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-18 19:43 [PATCH] uprobe: Do not use UPROBE_SWBP_INSN as static initializer Jiri Olsa
2024-06-20 19:00 ` Andrii Nakryiko
2024-06-20 19:38 ` Oleg Nesterov
2024-06-20 21:30 ` Andrii Nakryiko
2024-06-21 12:01 ` Oleg Nesterov
2024-06-21 13:17 ` Jiri Olsa
2024-06-27 13:44 ` Jiri Olsa
2024-06-27 14:20 ` Masami Hiramatsu
2024-06-27 15:29 ` Oleg Nesterov
2024-06-27 16:02 ` [PATCH] LoongArch: uprobes: make UPROBE_SWBP_INSN/UPROBE_XOLBP_INSN constant Oleg Nesterov
2024-06-27 16:51 ` Andrii Nakryiko
2024-06-27 17:38 ` Oleg Nesterov [this message]
2024-06-28 4:30 ` Masami Hiramatsu
2024-06-29 12:48 ` Tiezhu Yang
2024-06-29 13:38 ` Oleg Nesterov
2024-06-29 13:48 ` Huacai Chen
2024-06-29 15:03 ` [PATCH] LoongArch: make the users of larch_insn_gen_break() constant Oleg Nesterov
2024-06-30 1:43 ` Huacai Chen
2024-06-30 6:29 ` Oleg Nesterov
2024-07-01 6:22 ` Tiezhu Yang
2024-07-01 15:01 ` Huacai Chen
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=20240627173806.GC21813@redhat.com \
--to=oleg@redhat.com \
--cc=andrii.nakryiko@gmail.com \
--cc=andrii@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=chenhuacai@kernel.org \
--cc=jolsa@kernel.org \
--cc=kernel@xen0n.name \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=loongarch@lists.linux.dev \
--cc=mhiramat@kernel.org \
--cc=nathan@kernel.org \
--cc=rostedt@goodmis.org \
--cc=yangtiezhu@loongson.cn \
/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.