Thread (23 messages) 23 messages, 3 authors, 2020-03-13

Re: [PATCH v8 00/11] arm64: Branch Target Identification support

From: Mark Brown <broonie@kernel.org>
Date: 2020-03-11 17:26:02
Also in: linux-arch, linux-fsdevel, lkml

On Wed, Mar 11, 2020 at 04:28:58PM +0000, Catalin Marinas wrote:
On Tue, Mar 10, 2020 at 12:42:26PM +0000, Mark Brown wrote:
quoted
Sorry, I realized thanks to Amit's off-list prompting that I was testing
that I was verifying with the wrong kernel binary here (user error since
it took me a while to sort out uprobes) so this isn't quite right - you
can probe the landing pads with or without this series.
Can we not change aarch64_insn_is_nop() to actually return true only for
NOP and ignore everything else in the hint space? We tend to re-use the
hint instructions for new things in the architecture, so I'd rather
white-list what we know we can safely probe than black-listing only some
of the hint instructions.
That's literally the patch I am sitting on which made the difference
with the testing on the wrong binary.
I haven't assessed the effort of doing the above (probably not a lot)
but as a short-term workaround we could add the BTI and PAC hint
instructions to the aarch64_insn_is_nop() (though my preferred option is
the white-list one).
The only thing I've seen in testing with just NOPs whitelisted is an
inability to probe the PAC instructions which isn't the best user
experience, especially since the effect is that the probes get silently
ignored.  This isn't extensive userspace testing though.  Adding
whitelisting of the BTI and PAC hints would definitely be a safer as a
first step though.  I can post either version?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help