From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Desnoyers Subject: Re: [RFC PATCH glibc 1/4] glibc: Perform rseq(2) registration at nptl init and thread creation (v4) Date: Mon, 14 Jan 2019 14:22:37 -0500 (EST) Message-ID: <394676913.486.1547493757710.JavaMail.zimbra@efficios.com> References: <20181204192141.4684-1-mathieu.desnoyers@efficios.com> <87h8fkz6qx.fsf@oldenburg2.str.redhat.com> <1681283664.1380.1547152315426.JavaMail.zimbra@efficios.com> <87fttv9iic.fsf@oldenburg2.str.redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <87fttv9iic.fsf@oldenburg2.str.redhat.com> Sender: linux-kernel-owner@vger.kernel.org To: Florian Weimer Cc: carlos , Joseph Myers , Szabolcs Nagy , libc-alpha , Thomas Gleixner , Ben Maurer , Peter Zijlstra , "Paul E. McKenney" , Boqun Feng , Will Deacon , Dave Watson , Paul Turner , Rich Felker , linux-kernel , linux-api List-Id: linux-api@vger.kernel.org ----- On Jan 14, 2019, at 10:55 AM, Florian Weimer fweimer@redhat.com wrote: > * Mathieu Desnoyers: > >> Therefore, both symbols will end up in >> sysdeps/unix/sysv/linux/Versions. > > I'm not sure what you mean by that. The physical location in the > directory tree has little effect on which shared object the symbol is > placed in; that will need other changes. I'm currently moving the symbol definitions to csu/rseq-sym.c. On Linux, its content is overridden by a new sysdeps/unix/sysv/linux/rseq-sym.c which contains both __rseq_abi and __rseq_refcount symbols. On other platforms, it is a stub file. >>> By the way, you could avoid the need for unregistration if you allocated >>> the rseq areas persistently, index by TID. They are quite small, so >>> with the typical PID range, maybe the wasted memory due to changing TIDs >>> would be acceptable? >> >> Would we be able to access those __rseq_abi as normal TLS IE model >> variables ? The overhead of indexing an array matters for a >> fast-path. > > No, that wouldn't be possible in this case. You would need another > indirection. Thanks for the clarification! Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com