This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: ppc64 vDSO in mainline
- From: Benjamin Herrenschmidt <benh at kernel dot crashing dot org>
- To: Ulrich Drepper <drepper at redhat dot com>
- Cc: Steve Munroe <sjmunroe at us dot ibm dot com>, Roland McGrath <roland at redhat dot com>, Alan Modra <amodra at bigpond dot net dot au>, libc-alpha at sources dot redhat dot com
- Date: Tue, 29 Mar 2005 10:06:58 +1000
- Subject: Re: ppc64 vDSO in mainline
- References: <OF7669852D.66A49FF8-ON86256FD2.00793F91-86256FD2.007F59B7@us.ibm.com> <42489A68.20806@redhat.com>
On Mon, 2005-03-28 at 15:59 -0800, Ulrich Drepper wrote:
> Steve Munroe wrote:
> > 3) a function which is currently
> > exported by libc , but a better optimized version (with a different
> > symbol) is also exported by the VDSO.
>
> There is no reason to add any complications or dependency problems for
> this. Just using a pointer in libc itself, a test for NULL and if not,
> jump to the function is enough. The penalty for this extra indication
> if minimal compared to all the other work involved.
I agree that this is the best solution at first. We can always
investigate more fancy stuffs later (function pointer calls _are_
expensive) but let's get it working with the non-optimal case first as
Roland suggested. Also, since we don't need the TOC load/reload, it's
actually a bit less expensive than a real function pointer call,
provided we use an appropriate asm inline to do the call on ppc64.
Ben.