Bug 795896 - [RFE] [RHEL 5.9 FEAT] Kernel VDSO support - glibc part
Summary: [RFE] [RHEL 5.9 FEAT] Kernel VDSO support - glibc part
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: glibc
Version: 5.9
Hardware: s390x
OS: All
high
high
Target Milestone: beta
: 5.9
Assignee: Jeff Law
QA Contact: qe-baseos-tools-bugs
URL:
Whiteboard:
Depends On:
Blocks: 783140 785210 795895 803564
TreeView+ depends on / blocked
 
Reported: 2012-02-21 18:40 UTC by IBM Bug Proxy
Modified: 2018-12-03 17:29 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
A Virtual Dynamic Shared Object (VDSO) allows an application in user space to perform some kernel actions without as much overhead as a system call. The VDSO is often used to provide fast access to the gettimeofday system call data. Support for VDSOs on the IBM Z series platform has been added to glibc.
Clone Of:
: 818358 (view as bug list)
Environment:
Last Closed: 2013-01-08 03:46:08 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
glibc-s390-vdso.patch (21.00 KB, text/plain)
2012-04-26 12:40 UTC, IBM Bug Proxy
no flags Details


Links
System ID Private Priority Status Summary Last Updated
IBM Linux Technology Center 78993 0 None None None Never
Red Hat Product Errata RHBA-2013:0022 0 normal SHIPPED_LIVE glibc bug fix and enhancement update 2013-01-08 08:38:20 UTC

Description IBM Bug Proxy 2012-02-21 18:40:36 UTC
1. Feature Overview:
Feature Id: [78993]
a. Name of Feature: [RHEL 5.9 FEAT] Kernel VDSO support - glibc part
b. Feature Description

Add vdso support to speed up gettimeofday, clock_getres and clock_gettime. The gettimeofday system call needs two things to come up with the correct time: 1) the content of the TOD clock and 2) the current system time offset. The store clock (STCK) instruction can be used in a user space application but the current system time offset is only known to the kernel. The vdso shared object is a kernel provided shared library that contains the system time offset and the code to do the gettimeofday calculation in user space. The same holds true for the clock_getres and the clock_gettime calls.

2. Feature Details:
Sponsor: LTC zSeries BOE
Architectures:  zSeries - 64 native, 

Arch Specificity: both
Affects Kernel Modules: No
Delivery Mechanism: Backport
Category: other
Request Type: Toolchain - Enhancement from IBM
d. Upstream Acceptance: Accepted
Sponsor Priority P2
f. Severity: high
IBM Confidential: No
Code Contribution: IBM code
g. Component Version Target: ---

3. Business Case
Some user space application, for example the Java virtual machine, tend to call gettimeofday very often. By use of a vdso this operation can be accelerated by an factor of 4 thereby increasing the performance of the user space application.

4. Primary contact at Red Hat:
John Jarvis, jjarvis

5. Primary contacts at Partner:
Project Management Contact:
Hans-Georg Markgraf, mgrf.com

Technical contact(s):
Hans-Georg Markgraf, mgrf.com

Comment 1 IBM Bug Proxy 2012-02-22 10:00:41 UTC
------- Comment From mgrf.com 2012-02-22 04:57 EDT-------
This feature has a related/required request for the kernel
78992 ??-??RHBZ 795895 [5.9 FEAT] Kernel VDSO support

Comment 2 John Jarvis 2012-02-24 06:54:18 UTC
IBM is signed up to test and provide feedback, setting OtherQA.

Comment 3 Jeff Law 2012-04-11 12:48:43 UTC
Given this is s390, I would be a lot more comfortable if IBM could step up and identify what, if anything, beyond these two patches is necessary from the glibc side:

commit 19df733e643ea2a0ea95385957163d0e3d5b2d1c
Author: Andreas Krebbel <Andreas.Krebbel.com>
Date:   Tue Jul 19 20:29:27 2011 -0400

    S/390: Don't use r11 in INTERNAL_VSYSCALL_NCS macro

commit 0480c901736591179cdf675697df7ea476720b90
Author: Ulrich Drepper <drepper>
Date:   Thu Jan 8 00:28:23 2009 +0000

    * sysdeps/unix/sysv/linux/s390/bits/libc-vdso.h: New file.
    
        * sysdeps/unix/sysv/linux/s390/gettimeofday.c: New file.
        * sysdeps/unix/sysv/linux/s390/init-first.c: New file.
        * sysdeps/unix/sysv/linux/s390/Makefile (sysdep_routines): Add dl-vdso
        for elf subdir.
        * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INLINE_VSYSCALL,
        INTERNAL_VSYSCALL, INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK,
        INTERNAL_SYSCALL_NCS, HAVE_CLOCK_GETRES_VSYSCALL and
        HAVE_CLOCK_GETTIME_VSYSCALL: Define.
        * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
        * sysdeps/unix/sysv/linux/s390/Versions: New file.

Comment 5 IBM Bug Proxy 2012-04-11 12:56:46 UTC
78992 ?-?RHBZ 795895 [5.9 FEAT] Kernel VDSO support

Comment 7 IBM Bug Proxy 2012-04-26 12:40:58 UTC
Created attachment 580461 [details]
glibc-s390-vdso.patch


------- Comment (attachment only) From brueckner.com 2012-04-26 12:37 EDT-------

Comment 8 John Jarvis 2012-05-03 17:30:25 UTC
This enhancement request was evaluated by the full Red Hat Enterprise Linux
team for inclusion in a Red Hat Enterprise Linux minor release.   As a result
of this evaluation, Red Hat has tentatively approved inclusion of this feature
in the next Red Hat Enterprise Linux Update minor release.   While it is a goal
to include this enhancement in the next minor release of Red Hat Enterprise
Linux, the enhancement is not yet committed for inclusion in the next minor
release pending the next phase of actual code integration and successful Red
Hat and partner testing.

Comment 10 IBM Bug Proxy 2012-06-11 10:21:13 UTC
------- Comment From mgrf.com 2012-06-11 10:16 EDT-------
For the record:
The code for this feature passed testing on a special RHEL 5.9 build plus the feature code

Comment 11 Patsy Griffin 2012-06-18 15:56:16 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
A Virtual Dynamic Shared Object (VDSO) allows an application in user space to perform some kernel actions without as much overhead as a system call. The VDSO is often used to provide fast access to the gettimeofday system call data. Support for VDSOs on the IBM Z series platform has been added to glibc.

Comment 12 IBM Bug Proxy 2012-10-18 06:10:42 UTC
------- Comment From mgrf.com 2012-10-18 06:07 EDT-------
This feature is verified on R 5.9 snapshots - set to verified on IBM site

Comment 14 errata-xmlrpc 2013-01-08 03:46:08 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0022.html


Note You need to log in before you can comment on or make changes to this bug.