public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different?
@ 2015-09-25 16:12 luto at mit dot edu
2015-09-25 18:40 ` [Bug libc/19006] " carlos at redhat dot com
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: luto at mit dot edu @ 2015-09-25 16:12 UTC (permalink / raw)
To: glibc-bugs
https://sourceware.org/bugzilla/show_bug.cgi?id=19006
Bug ID: 19006
Summary: Why are i386 and i686 dl-sysdep different?
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: libc
Assignee: unassigned at sourceware dot org
Reporter: luto at mit dot edu
CC: drepper.fsp at gmail dot com
Target Milestone: ---
This may be going *way* back, but:
i386 builds of glibc don't use AT_SYSINFO. See:
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/i386/dl-sysdep.h
The comment is nonsense -- the code simply calls int $0x80, which skips the
vDSO entry and does the syscall directly. On a genuine Pentium or earlier, on
certain Pentium Pro chips, or on any AMD chip with a native 32-bit kernel, this
is fine, and it even saves a couple cycles. On any modern system, though, it
adds hundreds of cycles.
Please consider using AT_SYSINFO on all glibc builds if the kernel advertises
support. That should work even on very old CPUs and kernels, it will speed up
i386 builds on glibc running on newer CPUs, and it will even reduce code size,
since you can combine the i386 and i686 dl-sysdep.h files into one.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug libc/19006] Why are i386 and i686 dl-sysdep different?
2015-09-25 16:12 [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different? luto at mit dot edu
@ 2015-09-25 18:40 ` carlos at redhat dot com
2015-09-25 19:13 ` luto at kernel dot org
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: carlos at redhat dot com @ 2015-09-25 18:40 UTC (permalink / raw)
To: glibc-bugs
https://sourceware.org/bugzilla/show_bug.cgi?id=19006
Carlos O'Donell <carlos at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |carlos at redhat dot com
Resolution|--- |WONTFIX
--- Comment #1 from Carlos O'Donell <carlos at redhat dot com> ---
Presently we don't support building glibc for i386, the code in question is
legacy support, the i686 dl-sysdep.h is always used, and therfore the vDSO
entry is always used. See bug 10060 and bug 10062. You are correct that we
could reduce code size by removing the legacy support. Please submit such a
patch to libc-alpha@sourceware.org. Please ask questions on
libc-help@sourceware.org instead of through the bugzilla.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug libc/19006] Why are i386 and i686 dl-sysdep different?
2015-09-25 16:12 [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different? luto at mit dot edu
2015-09-25 18:40 ` [Bug libc/19006] " carlos at redhat dot com
@ 2015-09-25 19:13 ` luto at kernel dot org
2015-09-25 19:53 ` jsm28 at gcc dot gnu.org
2015-09-28 18:21 ` [Bug libc/19006] Make i486/i586 use vDSO syscall entry carlos at redhat dot com
3 siblings, 0 replies; 5+ messages in thread
From: luto at kernel dot org @ 2015-09-25 19:13 UTC (permalink / raw)
To: glibc-bugs
https://sourceware.org/bugzilla/show_bug.cgi?id=19006
--- Comment #2 from Andy Lutomirski <luto at kernel dot org> ---
Somehow Debian's libc6 (as opposed to libc6-i686) is built without AT_SYSINFO
support. I don't know whether they patch it or whether glibc really can build
the i386 dl-sysdep.h.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug libc/19006] Why are i386 and i686 dl-sysdep different?
2015-09-25 16:12 [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different? luto at mit dot edu
2015-09-25 18:40 ` [Bug libc/19006] " carlos at redhat dot com
2015-09-25 19:13 ` luto at kernel dot org
@ 2015-09-25 19:53 ` jsm28 at gcc dot gnu.org
2015-09-28 18:21 ` [Bug libc/19006] Make i486/i586 use vDSO syscall entry carlos at redhat dot com
3 siblings, 0 replies; 5+ messages in thread
From: jsm28 at gcc dot gnu.org @ 2015-09-25 19:53 UTC (permalink / raw)
To: glibc-bugs
https://sourceware.org/bugzilla/show_bug.cgi?id=19006
Joseph Myers <jsm28 at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|WONTFIX |---
--- Comment #3 from Joseph Myers <jsm28 at gcc dot gnu.org> ---
Carlos, it's only i386 files overridden by i486 files that are dead, not those
overridden by i686 files. We support i486 and later; i386 sysdeps directories
mean i486. H.J. completed the move of sysdeps/i386/i486 files into
sysdeps/i386, but the corresponding move in sysdeps/unix/sysv/linux/i386 hasn't
been done yet.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug libc/19006] Make i486/i586 use vDSO syscall entry.
2015-09-25 16:12 [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different? luto at mit dot edu
` (2 preceding siblings ...)
2015-09-25 19:53 ` jsm28 at gcc dot gnu.org
@ 2015-09-28 18:21 ` carlos at redhat dot com
3 siblings, 0 replies; 5+ messages in thread
From: carlos at redhat dot com @ 2015-09-28 18:21 UTC (permalink / raw)
To: glibc-bugs
https://sourceware.org/bugzilla/show_bug.cgi?id=19006
Carlos O'Donell <carlos at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |hjl.tools at gmail dot com
Summary|Why are i386 and i686 |Make i486/i586 use vDSO
|dl-sysdep different? |syscall entry.
--- Comment #4 from Carlos O'Donell <carlos at redhat dot com> ---
(In reply to Joseph Myers from comment #3)
> Carlos, it's only i386 files overridden by i486 files that are dead, not
> those overridden by i686 files. We support i486 and later; i386 sysdeps
> directories mean i486. H.J. completed the move of sysdeps/i386/i486 files
> into sysdeps/i386, but the corresponding move in
> sysdeps/unix/sysv/linux/i386 hasn't been done yet.
You're absolutely right, I see we don't have overrides for i486 and i586, which
means those builds would use non-vDSO entry methods. Retitling issue. It
shouldn't be hard for someone to fix by merging down the i686 dl-sysdep.h, and
as you mention HJ might get to this.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-09-28 18:21 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-25 16:12 [Bug libc/19006] New: Why are i386 and i686 dl-sysdep different? luto at mit dot edu
2015-09-25 18:40 ` [Bug libc/19006] " carlos at redhat dot com
2015-09-25 19:13 ` luto at kernel dot org
2015-09-25 19:53 ` jsm28 at gcc dot gnu.org
2015-09-28 18:21 ` [Bug libc/19006] Make i486/i586 use vDSO syscall entry carlos at redhat dot com
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).