From: Segher Boessenkool <segher@kernel.crashing.org>
To: "Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>,
"linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>,
Sathvika Vasireddy <sv@linux.ibm.com>,
Sathvika Vasireddy <sv@linux.vnet.ibm.com>,
Marc Zyngier <maz@kernel.org>, "aik@ozlabs.ru" <aik@ozlabs.ru>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"rostedt@goodmis.org" <rostedt@goodmis.org>,
"peterz@infradead.org" <peterz@infradead.org>,
"mingo@redhat.com" <mingo@redhat.com>,
"paulus@samba.org" <paulus@samba.org>,
"jpoimboe@redhat.com" <jpoimboe@redhat.com>,
"mbenes@suse.cz" <mbenes@suse.cz>,
Chen Zhongjin <chenzhongjin@huawei.com>,
Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [RFC PATCH v3 11/12] powerpc: Remove unreachable() from WARN_ON()
Date: Thu, 30 Jun 2022 10:58:11 -0500 [thread overview]
Message-ID: <20220630155811.GK25951@gate.crashing.org> (raw)
In-Reply-To: <1656583960.0nqsj977sr.naveen@linux.ibm.com>
On Thu, Jun 30, 2022 at 04:07:47PM +0530, Naveen N. Rao wrote:
> Objtool classifies 'ud2' as INSN_BUG, and 'int3' as INSN_TRAP. In x86
> BUG(), there is no need for an annotation since objtool assumes that
> 'ud2' terminates control flow. But, for __WARN_FLAGS(), since 'ud2' is
> used, an explicit annotate_reachable() is needed. That's _reachable_, to
> indicate that the control flow can continue with the next instruction.
>
> On powerpc, we should (eventually) classify all trap variants as
> INSN_TRAP. Even in the absence of that classification today, objtool
> assumes that control flow continues with the next instruction. With your
> work to utilize asm goto for __WARN_FLAGS(), with no extra instructions
> being generated, I think it is appropriate to just use
> __builtin_unreachable() and to not use the annotation.
>
> In any case, we are only hitting this since gcc is generating a 'bl' due
> to that annotation. We are not yet enabling full objtool validation on
> powerpc, so I think we can revisit this at that point.
See also <https://gcc.gnu.org/PR99299> that asks for a __builtin_trap()
variant that does not terminate control flow ("that is recoverable").
Segher
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-06-30 16:01 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20220624183238.388144-1-sv@linux.ibm.com>
[not found] ` <20220624183238.388144-12-sv@linux.ibm.com>
[not found] ` <70b6d08d-aced-7f4e-b958-a3c7ae1a9319@csgroup.eu>
[not found] ` <92eae2ef-f9b6-019a-5a8e-728cdd9bbbc0@linux.vnet.ibm.com>
2022-06-29 18:30 ` [RFC PATCH v3 11/12] powerpc: Remove unreachable() from WARN_ON() Christophe Leroy
2022-06-30 8:05 ` Naveen N. Rao
2022-06-30 9:58 ` Christophe Leroy
2022-06-30 10:33 ` Christophe Leroy
2022-06-30 10:37 ` Naveen N. Rao
2022-06-30 15:58 ` Segher Boessenkool [this message]
2022-07-04 12:01 ` Peter Zijlstra
2022-07-04 11:43 ` Peter Zijlstra
2022-07-01 2:13 ` Chen Zhongjin
2022-07-01 6:56 ` Sathvika Vasireddy
2022-07-01 11:40 ` [RFC PATCH v3 11/12] powerpc: Remove unreachable() from WARN_ON() (gcc issue ?) Christophe Leroy
2022-07-04 11:45 ` [RFC PATCH v3 11/12] powerpc: Remove unreachable() from WARN_ON() Peter Zijlstra
2022-07-04 12:34 ` Christophe Leroy
2022-07-05 15:48 ` Segher Boessenkool
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=20220630155811.GK25951@gate.crashing.org \
--to=segher@kernel.crashing.org \
--cc=aik@ozlabs.ru \
--cc=chenzhongjin@huawei.com \
--cc=christophe.leroy@csgroup.eu \
--cc=jpoimboe@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maz@kernel.org \
--cc=mbenes@suse.cz \
--cc=mingo@redhat.com \
--cc=naveen.n.rao@linux.vnet.ibm.com \
--cc=paulus@samba.org \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=sv@linux.ibm.com \
--cc=sv@linux.vnet.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).