Messages in this thread | | | Date | Mon, 19 Feb 2024 18:22:21 +0000 | From | Mark Rutland <> | Subject | Re: [PATCH v2] arm64: jump_label: use constraints "Si" instead of "i" |
| |
On Mon, Feb 19, 2024 at 06:06:19PM +0100, Arnd Bergmann wrote: > On Mon, Feb 19, 2024, at 16:41, Ard Biesheuvel wrote: > > On Mon, 19 Feb 2024 at 15:43, Geert Uytterhoeven <geert@linux-m68k.org> wrote: > >> On Mon, Feb 19, 2024 at 11:57 AM Ard Biesheuvel <ardb@kernel.org> wrote: > >> > On Mon, 19 Feb 2024 at 11:56, Ard Biesheuvel <ardb@kernel.org> wrote: > > >> > https://godbolt.org/z/GTnf3vPaT > >> > >> I could reproduce the issue on v6.8-rc5 using arm64 defconfig > >> and x86_64-gcc-5.5.0-nolibc-aarch64-linux.tar.xz from > >> https://cdn.kernel.org/pub/tools/crosstool/files/bin/x86_64/5.5.0/: > >> > > > > OK, I managed to do so as well. > > > > And GCC 6.4 from the same source works correctly. > > > > Not sure whether there are any plans to bump the minimal GCC version > > any time soon (cc'ing Arnd), but we should probably drop this change > > until that happens. > > From what I can tell, we may as well formally raise the minimum > gcc version to 8.1+ already, as that is a version that is > actually used in distros, and we have been on 5.1+ for a few > years already. > > Not sure if there are any other benefits to gcc-8 besides > allowing minor cleanups.
Arguably a minor cleanup, but on arm64 that'd allow us to get rid of the old mcount-based ftrace implementation and rely on -fpatchable-function-entry. On its own that'd save ~130 lines of asm and ~70 lines of C, but it'd also remove some constraints on other features (e.g. the mcount-based form's graph tracer isn't compatible with pointer authentication), it would simplify a few things going forwards (e.g. the implementation of RELIABLE_STACKTRACE, since we could rely on having ftrace_regs and a single trampoline), and the remaining support would be better tested.
I've wanted to remove the old ftrace implementation for a while, but on its own it was never important/urgent enough to justify bumping to GCC 8+.
Mark.
| |