public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
@ 2014-01-10 16:53 azanella at linux dot vnet.ibm.com
  2014-01-10 16:54 ` [Bug libc/16431] " azanella at linux dot vnet.ibm.com
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-10 16:53 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

            Bug ID: 16431
           Summary: PowerPC: gettimeofday calling from glibc internal
                    symbol redirects to system call version
           Product: glibc
           Version: 2.19
            Status: NEW
          Severity: normal
          Priority: P2
         Component: libc
          Assignee: unassigned at sourceware dot org
          Reporter: azanella at linux dot vnet.ibm.com
                CC: drepper.fsp at gmail dot com

The PowerPC gettimeofday implementation
(sysdeps/unix/sysv/linux/powerpc/gettimeofday.c) relies on IFUNC selection to
use the vDSO implementation (if it is provided by kernel) or a fallback symbol
that uses a system call.

The IFUNC selector for gettimeofday runs before _libc_vdso_platform_setup where
__vdso_gettimeofday is set. The selector then sets __gettimeofday (the internal
version used within GLIBC) to use the system call version instead of the vDSO
one.

Although this does not lead to wrong behavior, a possible performance leverage
would be to change the way IFUNC resolver get the vDSO to call _dl_vdso_vsym
directly instead of relying in __vdso_gettimeofday value (much like as x86_64
does).

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
@ 2014-01-10 16:54 ` azanella at linux dot vnet.ibm.com
  2014-01-10 16:55 ` adconrad at 0c3 dot net
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-10 16:54 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at sourceware dot org   |azanella at linux dot vnet.ibm.com

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
  2014-01-10 16:54 ` [Bug libc/16431] " azanella at linux dot vnet.ibm.com
@ 2014-01-10 16:55 ` adconrad at 0c3 dot net
  2014-01-10 17:07 ` azanella at linux dot vnet.ibm.com
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: adconrad at 0c3 dot net @ 2014-01-10 16:55 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Adam Conrad <adconrad at 0c3 dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |adconrad at 0c3 dot net

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
  2014-01-10 16:54 ` [Bug libc/16431] " azanella at linux dot vnet.ibm.com
  2014-01-10 16:55 ` adconrad at 0c3 dot net
@ 2014-01-10 17:07 ` azanella at linux dot vnet.ibm.com
  2014-01-10 19:51 ` azanella at linux dot vnet.ibm.com
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-10 17:07 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

--- Comment #1 from Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> ---
An fix for this issue:

diff --git a/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
b/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
index 29a5e08..a90fd3e 100644
--- a/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
+++ b/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
@@ -35,8 +35,13 @@ __gettimeofday_syscall (struct timeval *tv, struct timezone
*tz)
 void *
 gettimeofday_ifunc (void)
 {
+  void *vdso_gettimeofday;
+
+  PREPARE_VERSION (linux2615, "LINUX_2.6.15", 123718565);
+
   /* If the vDSO is not available we fall back syscall.  */
-  return (__vdso_gettimeofday ? VDSO_IFUNC_RET (__vdso_gettimeofday)
+  vdso_gettimeofday = _dl_vdso_vsym ("__kernel_gettimeofday", &linux2615);
+  return (vdso_gettimeofday ? VDSO_IFUNC_RET (vdso_gettimeofday)
          : __gettimeofday_syscall);
 }
 asm (".type __gettimeofday, %gnu_indirect_function");

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
                   ` (2 preceding siblings ...)
  2014-01-10 17:07 ` azanella at linux dot vnet.ibm.com
@ 2014-01-10 19:51 ` azanella at linux dot vnet.ibm.com
  2014-01-12 13:52 ` neleai at seznam dot cz
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-10 19:51 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |azanella at linux dot vnet.ibm.com

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
                   ` (3 preceding siblings ...)
  2014-01-10 19:51 ` azanella at linux dot vnet.ibm.com
@ 2014-01-12 13:52 ` neleai at seznam dot cz
  2014-01-12 14:28 ` azanella at linux dot vnet.ibm.com
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: neleai at seznam dot cz @ 2014-01-12 13:52 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Ondrej Bilka <neleai at seznam dot cz> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |CoreyMutter at eaton dot com

--- Comment #2 from Ondrej Bilka <neleai at seznam dot cz> ---
*** Bug 16257 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
                   ` (4 preceding siblings ...)
  2014-01-12 13:52 ` neleai at seznam dot cz
@ 2014-01-12 14:28 ` azanella at linux dot vnet.ibm.com
  2014-01-20 18:52 ` azanella at linux dot vnet.ibm.com
  2014-06-13  9:01 ` fweimer at redhat dot com
  7 siblings, 0 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-12 14:28 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

--- Comment #3 from Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> ---
In fact I think Bug 16257 is a duplicate of Bug 16430 instead. And I'm
currently working with Alan Modra to determine if this is a binutils bug or an
expected behavior.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
                   ` (5 preceding siblings ...)
  2014-01-12 14:28 ` azanella at linux dot vnet.ibm.com
@ 2014-01-20 18:52 ` azanella at linux dot vnet.ibm.com
  2014-06-13  9:01 ` fweimer at redhat dot com
  7 siblings, 0 replies; 9+ messages in thread
From: azanella at linux dot vnet.ibm.com @ 2014-01-20 18:52 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #4 from Adhemerval Zanella Netto <azanella at linux dot vnet.ibm.com> ---
Fixed by d98720e07f67fbeec00f9e1347840404240d3c48.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug libc/16431] PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version
  2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
                   ` (6 preceding siblings ...)
  2014-01-20 18:52 ` azanella at linux dot vnet.ibm.com
@ 2014-06-13  9:01 ` fweimer at redhat dot com
  7 siblings, 0 replies; 9+ messages in thread
From: fweimer at redhat dot com @ 2014-06-13  9:01 UTC (permalink / raw)
  To: glibc-bugs

https://sourceware.org/bugzilla/show_bug.cgi?id=16431

Florian Weimer <fweimer at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
              Flags|                            |security-

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

end of thread, other threads:[~2014-06-13  9:01 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-10 16:53 [Bug libc/16431] New: PowerPC: gettimeofday calling from glibc internal symbol redirects to system call version azanella at linux dot vnet.ibm.com
2014-01-10 16:54 ` [Bug libc/16431] " azanella at linux dot vnet.ibm.com
2014-01-10 16:55 ` adconrad at 0c3 dot net
2014-01-10 17:07 ` azanella at linux dot vnet.ibm.com
2014-01-10 19:51 ` azanella at linux dot vnet.ibm.com
2014-01-12 13:52 ` neleai at seznam dot cz
2014-01-12 14:28 ` azanella at linux dot vnet.ibm.com
2014-01-20 18:52 ` azanella at linux dot vnet.ibm.com
2014-06-13  9:01 ` fweimer 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).