This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] riscv: restore ABI compatibility (bug 24484)
- From: Florian Weimer <fweimer at redhat dot com>
- To: Andreas Schwab <schwab at suse dot de>
- Cc: libc-alpha at sourceware dot org
- Date: Thu, 04 Jul 2019 10:28:27 +0200
- Subject: Re: [PATCH] riscv: restore ABI compatibility (bug 24484)
- References: <mvmlfxefbqq.fsf@suse.de>
* Andreas Schwab:
> The contents of the dynamic section are part of the ABI, thus
> DL_RO_DYN_SECTION cannot be changed.
>
> [BZ #24484]
> * sysdeps/riscv/ldsodefs.h (DL_RO_DYN_SECTION): Define.
> ---
> sysdeps/riscv/ldsodefs.h | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/sysdeps/riscv/ldsodefs.h b/sysdeps/riscv/ldsodefs.h
> index 5ec607e867..d7531b707a 100644
> --- a/sysdeps/riscv/ldsodefs.h
> +++ b/sysdeps/riscv/ldsodefs.h
> @@ -38,6 +38,11 @@ struct La_riscv_retval;
> struct La_riscv_retval *, \
> const char *);
>
> +/* Although the RISC-V ABI does not specify that the dynamic section has
> + to be read-only, it needs to be kept for ABI compatibility. */
> +
> +#define DL_RO_DYN_SECTION 1
Perhaps indicate somewhere that “a read-only dynamic section is not
relocated by the loader” or something like that, so that someone not
familiar with the MIPS mechanism understands the ABI difference?
I agree that restoring the #define is probably necessary at this
point. 8-(
Thanks,
Florian