From: Florian Weimer <fweimer@redhat.com>
To: Michael Jeanson <mjeanson@efficios.com>
Cc: libc-alpha@sourceware.org, Carlos O'Donell <carlos@redhat.com>,
DJ Delorie <dj@redhat.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Subject: Re: [PATCH v12 01/17] nptl: Add rseq auxvals
Date: Thu, 15 Aug 2024 19:54:06 +0200 [thread overview]
Message-ID: <87sev51xkx.fsf@oldenburg.str.redhat.com> (raw)
In-Reply-To: <32052ec6-40fa-4221-b11e-62a556eeead5@efficios.com> (Michael Jeanson's message of "Wed, 7 Aug 2024 11:25:32 -0400")
* Michael Jeanson:
> On 2024-08-06 09:32, Michael Jeanson wrote:
>> Before the removal of _dl_rseq_feature_size there was no behavior
>> change introduced until "Move the rseq area to the 'extra TLS'
>> block" which is where _rseq_size is set to 0 on failure. I agree it
>> would make more sense to have it in this patch, I'll queue this
>> change for the next round.
>
> I was wondering if this patch with the code to set _rseq_size to zero
> on registration failure, plus an additional modification to cap the
> _rseq_size to 32 (the size of the rseq area in the struct pthread)
> could be backported to 2.40 and earlier? It would give application
> code access to the 'node_id' and 'mm_cid' fields without introducing
> the whole 'extra tls' stuff.
>
> Thoughts?
I thought about this some more. I think we should also increase the
reservation inside struct pthread beyond 32 bytes if we do this, so that
we avoid the __rseq_size == 32 ambiguity. It currently doesn't break
the GLIBC_PRIVATE ABI because rseq_area is at the end of struct pthread.
(As long as we assume that ld.so gets updated before libc.so because it
comes first in lexicographic order.)
Thanks,
Florian
next prev parent reply other threads:[~2024-08-15 17:54 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-05 20:48 [PATCH v12 00/17] Add rseq extensible ABI support Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 01/17] nptl: Add rseq auxvals Michael Jeanson
2024-08-06 6:11 ` Florian Weimer
2024-08-06 13:32 ` Michael Jeanson
2024-08-07 15:25 ` Michael Jeanson
2024-08-07 17:52 ` Florian Weimer
2024-08-07 19:07 ` Michael Jeanson
2024-08-15 17:54 ` Florian Weimer [this message]
2024-08-15 18:38 ` Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 02/17] Add generic 'extra TLS' Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 03/17] Add Linux " Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 04/17] nptl: Add <thread_pointer.h> for RISC-V Michael Jeanson
2024-08-06 6:06 ` Florian Weimer
2024-08-05 20:48 ` [PATCH v12 05/17] nptl: Add <thread_pointer.h> for LoongArch Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 06/17] nptl: Add <thread_pointer.h> for sparc Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 07/17] nptl: Add <thread_pointer.h> for m68k Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 08/17] nptl: Add <thread_pointer.h> for or1k Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 09/17] nptl: Add <thread_pointer.h> for nios2 Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 10/17] nptl: Add <thread_pointer.h> for microblaze Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 11/17] nptl: Add <thread_pointer.h> for hppa Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 12/17] nptl: Add <thread_pointer.h> for csky Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 13/17] nptl: add RSEQ_SIG for RISC-V Michael Jeanson
2024-08-06 6:05 ` Florian Weimer
2024-08-05 20:48 ` [PATCH v12 14/17] nptl: Introduce RSEQ_GETMEM_VOLATILE and RSEQ_SETMEM Michael Jeanson
2024-09-14 11:19 ` Florian Weimer
2024-10-10 20:24 ` Michael Jeanson
2024-10-14 6:34 ` Florian Weimer
2024-08-05 20:48 ` [PATCH v12 15/17] nptl: Move the rseq area to the 'extra TLS' block Michael Jeanson
2024-09-14 11:51 ` Florian Weimer
2024-10-11 18:01 ` Michael Jeanson
2024-10-14 6:32 ` Florian Weimer
2024-10-15 18:40 ` Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 16/17] nptl: Remove the rseq area from 'struct pthread' Michael Jeanson
2024-08-05 20:48 ` [PATCH v12 17/17] Linux: Update internal copy of '<sys/rseq.h>' Michael Jeanson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sev51xkx.fsf@oldenburg.str.redhat.com \
--to=fweimer@redhat.com \
--cc=carlos@redhat.com \
--cc=dj@redhat.com \
--cc=libc-alpha@sourceware.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=mjeanson@efficios.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).