Re: [RFC 0/2] __vdso_findsym

From: Ian Lance Taylor
Date: Mon Jun 16 2014 - 10:08:56 EST


On Sun, Jun 15, 2014 at 7:36 PM, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
>
> I haven't looked into this in detail, but my initial assumption would
> be that it wouldn't be useful to add new vdso interfaces just for Go.
> After all would you really want to force ever Go user to upgrade their
> kernel just to get fast fime? So it has to work with whatever is already
> there anyways.

Go works fine with the current interface. There was, arguably, a bug
in Go's old implementation in that it assumed that the vDSO would have
a normal symbol table. That bug has already been fixed.

I think this issue started when some of the Go developers questioned
why the kernel needed to provide a very complex interface--parsing an
ELF shared shared library--for very simple functionality--looking up
the address of a magic function. This approach has required special
support not just in Go, but also in the dynamic linker and gdb, and
does not work well for statically linked binaries. The support in gdb
is perhaps a good idea, but elsewhere it does not make sense.

So why not provide a simple interface?

Ian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/