mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Andi Kleen <andi@firstfloor.org>, Rich Felker <dalias@libc.org>,
	Mikael Pettersson <mikpelinux@gmail.com>,
	Russ Cox <rsc@golang.org>, Linux API <linux-api@vger.kernel.org>,
	Ian Taylor <iant@golang.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	X86 ML <x86@kernel.org>
Subject: Re: [RFC 0/2] __vdso_findsym
Date: Sun, 15 Jun 2014 12:14:04 -0700	[thread overview]
Message-ID: <90c597c5-f77d-491e-b0b8-dde2027155b5@email.android.com> (raw)
In-Reply-To: <CALCETrV-ocpugRwL7rd4GDX-Y89L7So8_6BBjOUDeR4V8RSPEA@mail.gmail.com>

If it doesn't, then you incur an additional indirection penalty.  The strong __vdso symbol allows the libc wrapper to fall back to the vdso implementation, the weak symbol allows three to be no wrapper at all.  This is good.

The reason for changing ABI would be shifting types.  This is very much how glibc manages transitions.



On June 15, 2014 11:54:10 AM PDT, Andy Lutomirski <luto@amacapital.net> wrote:
>On Sun, Jun 15, 2014 at 11:39 AM, H. Peter Anvin <hpa@zytor.com> wrote:
>> Symbol versioning so we can rev the ABI and still provide backwards
>compatibility.  Weak symbols so the libc can override symbols if it
>considers it appropriate.  This is a good thing.
>
>Are we ever going to change, say, the __vdso_clock_gettime ABI without
>renaming the function?  If we want to preserve that ability, I can
>keep support for versions, but it seems odd.
>
>I don't buy the weak symbol argument at all.  We currently expose a
>strong symbol __vdso_clock_gettime and a weak alias clock_gettime.  I
>agree that, if glibc treats us as a real DSO, then clock_gettime can't
>be strong, but I don't see why it should exist at all (other than for
>backwards compatibility).
>
>--Andy

-- 
Sent from my mobile phone.  Please pardon brevity and lack of formatting.

  reply	other threads:[~2014-06-15 19:14 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-14 18:16 Andy Lutomirski
2014-06-14 18:16 ` [RFC 1/2] uapi: Add some missing dynamic table-related definitions to elf.h Andy Lutomirski
2014-06-14 18:16 ` [RFC 2/2] [NOT READY] x86/vdso: Add __vdso_findsym Andy Lutomirski
2014-06-14 21:30 ` [RFC 0/2] __vdso_findsym Rich Felker
2014-06-14 22:38   ` Andy Lutomirski
2014-06-14 23:36     ` H. Peter Anvin
2014-06-15  3:59       ` H. Peter Anvin
2014-06-15  6:49         ` Andy Lutomirski
2014-06-15 14:25 ` Mikael Pettersson
2014-06-15 14:35   ` Rich Felker
2014-06-15 15:47     ` Andy Lutomirski
2014-06-15 17:05     ` H. Peter Anvin
2014-06-15 17:40       ` Andy Lutomirski
2014-06-15 17:57         ` H. Peter Anvin
2014-06-15 18:20           ` Andy Lutomirski
2014-06-15 18:39             ` H. Peter Anvin
2014-06-15 18:54               ` Andy Lutomirski
2014-06-15 19:14                 ` H. Peter Anvin [this message]
2014-06-15 19:22                   ` Ian Lance Taylor
2014-06-15 19:31                     ` H. Peter Anvin
2014-06-15 19:50                       ` Ian Lance Taylor
2014-06-15 19:56                         ` H. Peter Anvin
2014-06-15 20:53                           ` Andy Lutomirski
2014-06-15 21:13                             ` H. Peter Anvin
2014-06-16  0:55                   ` Rich Felker
2014-06-16  2:36             ` Andi Kleen
2014-06-16  3:49               ` Rich Felker
2014-06-16 14:08               ` Ian Lance Taylor
2014-06-16 14:38                 ` Andi Kleen
2014-06-16 14:58                   ` Rich Felker
2014-06-16 15:31                   ` Ian Lance Taylor
2014-06-16 15:42                     ` Rich Felker
2014-06-20 15:55                       ` Andy Lutomirski
2014-06-20 16:07                         ` Rich Felker
2014-06-16 14:56                 ` Rich Felker
2014-06-15 18:20         ` H. Peter Anvin
2014-06-15 18:22           ` Andy Lutomirski
2014-06-16  6:39             ` Rich Felker
2014-06-16  1:06       ` Rich Felker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=90c597c5-f77d-491e-b0b8-dde2027155b5@email.android.com \
    --to=hpa@zytor.com \
    --cc=andi@firstfloor.org \
    --cc=dalias@libc.org \
    --cc=iant@golang.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mikpelinux@gmail.com \
    --cc=rsc@golang.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®