[PATCH v2] backends/ppc_initreg.c: include <asm/ptrace.h>.
Dmitry V. Levin
ldv@altlinux.org
Tue Feb 2 03:22:50 GMT 2021
On Tue, Feb 02, 2021 at 12:04:03AM -0300, Érico Nogueira via Elfutils-devel wrote:
> From: Érico Rolim <erico.erc@gmail.com>
>
> Necessary on musl for struct pt_regs definition, doesn't affect the
> build on glibc.
>
> Signed-off-by: Érico Rolim <erico.erc@gmail.com>
> ---
>
> Sending a v2 with the main difference being a slightly different commit
> message and signed-off-by line.
>
> I'm a bit hesitant on this being the correct patch, so I'd ask that you
> only merge if you think it makes total sense, otherwise I'd like to sit
> on it for a bit. For the record, it has been in use in Void Linux since
> the end of 2019.
I'm afraid this won't work as is.
The reason why glibc doesn't require this change is that its
sysdeps/unix/sysv/linux/powerpc/sys/user.h contains #include <asm/ptrace.h>
since the very beginning of this file back in 1998.
As you probably know, <asm/ptrace.h> and <sys/ptrace.h> are not as
compatible as we would like them to be, this is the reason why e.g.
elfutils commit 4482d0009a99b1773f2426479b666b08f57af9d5 moved
#include <sys/ptrace.h> before #include <sys/user.h>.
Said that, I think it's safe to include <asm/ptrace.h> right before
<sys/user.h> on powerpc since in glibc the latter includes the former.
> backends/ChangeLog | 4 ++++
> backends/ppc_initreg.c | 1 +
> 2 files changed, 5 insertions(+)
>
> diff --git a/backends/ChangeLog b/backends/ChangeLog
> index f22cd57f..eb15c81d 100644
> --- a/backends/ChangeLog
> +++ b/backends/ChangeLog
> @@ -1,3 +1,7 @@
> +2021-02-01 Érico Nogueira <ericonr@disroot.org>
> +
> + * ppc_initreg.c: Also include <asm/ptrace.h>.
> +
> 2020-12-12 Dmitry V. Levin <ldv@altlinux.org>
>
> * aarch64_retval.c (aarch64_return_value_location): Fix spelling typo
> diff --git a/backends/ppc_initreg.c b/backends/ppc_initreg.c
> index 0e0d3599..72cdb860 100644
> --- a/backends/ppc_initreg.c
> +++ b/backends/ppc_initreg.c
> @@ -32,6 +32,7 @@
>
> #include <stdlib.h>
> #if defined(__powerpc__) && defined(__linux__)
> +# include <asm/ptrace.h>
> # include <sys/ptrace.h>
> # include <sys/user.h>
> #endif
> --
> 2.30.0
--
ldv
More information about the Elfutils-devel
mailing list