[PATCH glibc 0/3] Restartable Sequences enablement
Fri Jun 5 17:04:17 GMT 2020
----- On Jun 3, 2020, at 9:40 AM, Florian Weimer email@example.com wrote:
> * Florian Weimer via Libc-alpha:
>> This series unfortunately needs to be rebased (with conflicts) on
>> current master.
>> There is a new elf/tst-auditmany failure, showing bug 26076, but
>> actually caused by bug 26075 (I think). I will attempt to work around
>> these two issues, which are independent of the rseq changes.
> Mathieu, it turns out that a change like this is needed:
> diff --git a/elf/dl-tls.c b/elf/dl-tls.c
> index fa03234610..817bcbbf59 100644
> --- a/elf/dl-tls.c
> +++ b/elf/dl-tls.c
> @@ -31,7 +31,7 @@
> /* Amount of excess space to allocate in the static TLS area
> to allow dynamic loading of modules defining IE-model TLS data. */
> -#define TLS_STATIC_SURPLUS 64 + DL_NNS * 100
> +#define TLS_STATIC_SURPLUS 64 + DL_NNS * 176
> /* Out-of-memory handler. */
> I think you can just put that into the main rseq patch. This change
> needs to be mentioned in the commit message, of course.
> With this change, elf/tst-auditmany passes again for me.
> The increase (76 bytes) is larger than 32 bytes because we have not done
> this in quite a while. The cost in terms of additional TLS storage is
> quite significant, but it will also obscure some initial-exec-related
> dlopen failures.
> Conceptually, we could also switch to 64 + (DL_NNS - 1) * 176, an
> increase of 1040 bytes over what we have today.
More information about the Libc-alpha