[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250210140657.UAsRw4k8@linutronix.de>
Date: Mon, 10 Feb 2025 15:06:57 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Mark Rutland <mark.rutland@....com>
Cc: "Luis Claudio R. Goncalves" <lgoncalv@...hat.com>,
linux-arm-kernel@...ts.infradead.org,
linux-rt-devel@...ts.linux.dev,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>, Steven Rostedt <rostedt@...dmis.org>,
Ryan Roberts <ryan.roberts@....com>,
Mark Brown <broonie@...nel.org>, Ard Biesheuvel <ardb@...nel.org>,
Joey Gouly <joey.gouly@....com>, linux-kernel@...r.kernel.org
Subject: Re: BUG: debug_exception_enter() disables preemption and may call
sleeping functions on aarch64 with RT
On 2025-02-10 12:49:45 [+0000], Mark Rutland wrote:
> Hi,
Hi,
> I don't have an immediate suggestion; I'll need to go think about this
> for a bit. Unfortunatealy, there are several nested cans of worms here.
> :/
>
> In theory, we can go split out the EL0 "debug exceptions" into separate
> handlers, and wouldn't generally need to disable preemption for things
> like BRK or single-step.
>
> However, it's not immediately clear to me how we could handle
> watchpoints or breakpoints, since for those preemption/interruption
> could change the HW state under our feet, and we rely on single-step to
> skip past the watchpoint/breakpoint after it is handled.
Couldn't you delay sending signals until after the preempt-disable
section?
> That, and last I looked reworking this we'd need to do a larger rework
> to split out those "debug exceptions" because of that way that currently
> bounces through the fault handling ligic in arch/arm64/mm/.
>
> Mark.
Sebastian
Powered by blists - more mailing lists