[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 24/27] accel/tcg: Move breakpoint recognition outside translat
From: |
Richard Henderson |
Subject: |
Re: [PULL 24/27] accel/tcg: Move breakpoint recognition outside translation |
Date: |
Tue, 17 Aug 2021 12:07:12 -1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
On 8/17/21 5:39 AM, Richard Henderson wrote:
Hmm, you're correct that we get this wrong.
We probably didn't do these in the right priority
order before this series, though, and I dunno whether
we get the insn-abort vs swstep ordering right either...
And you're correct that we got it wrong beforehand. The reorg did not alter the
recognized ordering of the exceptions.
I'm a bit surprised that insn-abort comes higher than breakpoint.
That would be because I mis-remembered the language.
Going back to the list,
4 - software step
6 - pc alignment fault
7 - instruction abort (address translation!)
8 - breakpoint exceptions
9 - illegal execution state
10 - software breakpoint (brk)
11 - BTI exceptions
12 - el2 traps
13 - undefined exceptions
I thought "insn-abort" was #13, but it's really #7.
Well, behaviour is unchanged, since we check for address match before calling
arm_ldl_code, before and after the reorg.
So: we need to suppress breakpoints (#8) for any higher-priority condition. For #7, that
might require some extra generic work. I should have a look at the other targets that use
architectural breakpoints to see what happens for a breakpoint on an unmapped page.
I'll work something out.
r~