[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2b2993fb215c4a5abd7d77ff1c984113@AcuMS.aculab.com>
Date: Fri, 22 Mar 2024 09:24:20 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Russell King' <linux@...linux.org.uk>, Ard Biesheuvel <ardb@...nel.org>
CC: Jiangfeng Xiao <xiaojiangfeng@...wei.com>, "arnd@...db.de"
<arnd@...db.de>, "keescook@...omium.org" <keescook@...omium.org>,
"haibo.li@...iatek.com" <haibo.li@...iatek.com>,
"angelogioacchino.delregno@...labora.com"
<angelogioacchino.delregno@...labora.com>, "amergnat@...libre.com"
<amergnat@...libre.com>, "akpm@...ux-foundation.org"
<akpm@...ux-foundation.org>, "dave.hansen@...ux.intel.com"
<dave.hansen@...ux.intel.com>, "douzhaolei@...wei.com"
<douzhaolei@...wei.com>, "gustavoars@...nel.org" <gustavoars@...nel.org>,
"jpoimboe@...nel.org" <jpoimboe@...nel.org>, "kepler.chenxin@...wei.com"
<kepler.chenxin@...wei.com>, "kirill.shutemov@...ux.intel.com"
<kirill.shutemov@...ux.intel.com>, "linux-hardening@...r.kernel.org"
<linux-hardening@...r.kernel.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>, "linux-mm@...ck.org" <linux-mm@...ck.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>, "nixiaoming@...wei.com"
<nixiaoming@...wei.com>, "peterz@...radead.org" <peterz@...radead.org>,
"wangbing6@...wei.com" <wangbing6@...wei.com>, "wangfangpeng1@...wei.com"
<wangfangpeng1@...wei.com>, "jannh@...gle.com" <jannh@...gle.com>,
"willy@...radead.org" <willy@...radead.org>
Subject: RE: [PATCH v2] ARM: unwind: improve unwinders for noreturn case
From: Russell King
> Sent: 22 March 2024 00:09
>
> On Thu, Mar 21, 2024 at 11:43:41PM +0100, Ard Biesheuvel wrote:
> > Given that this particular issue would just disappear if the compiler
> > would just insert a BRK after the BL, I'd prefer to explore first
> > whether we can get this fixed on the compiler side.
>
> Arm32 doesn't have a BRK instruction. What would be appropriate after
> the no-return BL would be OS specific.
It would need to depend on what was being compiled.
For the kernel it could be much the same as BUG().
(Probably without any extra data.)
I suspect that arm32 could use 'swi' in kernel space,
but you wouldn't want to use that in userspace.
Looks like armv5 has a bkpt instruction - could that be used?
Or does the kernel need to support armv4?
The last arm I wrote anything for was a strongarm.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists