[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 2 Feb 2024 21:31:22 +0000
From: Jiaxun Yang <jiaxun.yang@...goat.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>
Cc: Oleg Nesterov <oleg@...hat.com>, Andrew Morton
<akpm@...ux-foundation.org>, Ben Hutchings <ben@...adent.org.uk>,
linux-arch@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-mips@...r.kernel.org, linux-mm@...ck.org,
Xi Ruoyao <xry111@...111.site>
Subject: Re: [PATCH v2 0/3] Handle delay slot for extable lookup
在 2024/2/2 18:39, Linus Torvalds 写道:
> On Fri, 2 Feb 2024 at 04:30, Jiaxun Yang <jiaxun.yang@...goat.com> wrote:
>> ptrace: Introduce exception_ip arch hook
>> MIPS: Clear Cause.BD in instruction_pointer_set
>> mm/memory: Use exception ip to search exception tables
> Just to clarify: does that second patch fix the problem that
> __isa_exception_epc() does a __get_user()?
No it only covers an obvious case when I was playing around exception_ip
with kgdb.
There are still potential cases __isa_exception_epc may touch user space.
> Because that mm/memory.c use of "exception_ip()" most definitely
> cannot take a page fault.
>
> So if MIPS cannot do that whole exception IP thing without potentially
> touching user space, I do worry that we might just have to add a
>
> #ifndef __MIPS__
>
> around this all.
It is possible to perform exception_ip() without touching user space by
saving "BadInstr" in pt_regs
at exception entries. For newer hardware it's as simple as saving an
extra CP0 register, on older hardware
we may have to read it from user space.
+ Thomas (MIPS maintainer), what's your opinion?
Thanks
>
> Possibly somehow limited to just the microMIPS/MIPS16e case in Kconfig instead?
>
> Linus
--
---
Jiaxun Yang
Powered by blists - more mailing lists