unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* -mno-tls-direct-seg-refs support in glibc for i386 PV Xen
@ 2020-05-27 13:03 Florian Weimer via Libc-alpha
  2020-05-27 13:39 ` Andrew Cooper via Libc-alpha
  0 siblings, 1 reply; 8+ messages in thread
From: Florian Weimer via Libc-alpha @ 2020-05-27 13:03 UTC (permalink / raw)
  To: xen-devel; +Cc: libc-alpha

I'm about to remove nosegneg support from upstream glibc, special builds
that use -mno-tls-direct-seg-refs, and the ability load different
libraries built in this mode automatically, when the Linux kernel tells
us to do that.  I think the intended effect is that these special builds
do not use operands of the form %gs:(%eax) when %eax has the MSB set
because that had a performance hit with paravirtualization on 32-bit
x86.  Instead, the thread pointer is first loaded from %gs:0, and the
actual access does not use a segment prefix.

Before doing that, I'd like to ask if anybody is still using this
feature?

I know that we've been carrying nosegneg libraries for many years, in
some cases even after we stopped shipping 32-bit kernels. 8-/ The
feature has always been rather poorly documented, and the way the
dynamic loader selects those nosegneg library variants is still very
bizarre.

Thanks,
Florian


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-05-27 15:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-27 13:03 -mno-tls-direct-seg-refs support in glibc for i386 PV Xen Florian Weimer via Libc-alpha
2020-05-27 13:39 ` Andrew Cooper via Libc-alpha
2020-05-27 13:44   ` Samuel Thibault
2020-05-27 14:15     ` Andrew Cooper via Libc-alpha
2020-05-27 14:20       ` Florian Weimer via Libc-alpha
2020-05-27 14:00   ` Jan Beulich
2020-05-27 14:40     ` Andrew Cooper via Libc-alpha
2020-05-27 15:25       ` Jan Beulich

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).