This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] riscv: restore ABI compatibility (bug 24484)


* 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]