Re: [PATCH 0/4] aarch64: avoid mprotect(PROT_BTI|PROT_EXEC) [BZ #26831]

From: Jeremy Linton
Date: Wed Nov 04 2020 - 13:47:18 EST


Hi,

On 11/4/20 4:50 AM, Mark Brown wrote:
On Tue, Nov 03, 2020 at 11:41:42PM -0600, Jeremy Linton wrote:
On 11/3/20 11:34 AM, Mark Brown wrote:

Given that there were still some ongoing discussions on a more robust
kernel interface here and there seem to be a few concerns with this
series should we perhaps just take a step back and disable this seccomp
filter in systemd on arm64, at least for the time being? That seems
safer than rolling out things that set ABI quickly, a big part of the

So, that's a bigger hammer than I think is needed and punishes !BTI
machines. I'm going to suggest that if we need to carry a temp patch its
more like the glibc patch I mentioned in the Fedora defect. That patch
simply logs a message, on the mprotect failures rather than aborting. Its
fairly non-intrusive.

That leaves seccomp functional, and BTI generally functional except when
seccomp is restricting it. I've also been asked that if a patch like that is
needed, its (temporary?) merged to the glibc trunk, rather than just being
carried by the distro's.

The effect on pre-BTI hardware is an issue, another option would be for
systemd to disable this seccomp usage but only after checking for BTI
support in the system rather than just doing so purely based on the
architecture.


That works, but your also losing seccomp in the case where the machine is BTI capable, but the service isn't. So it should really be checking the elf notes, but at that point you might just as well patch glibc.