Re: [RFC 0/2] __vdso_findsym

From: Ian Lance Taylor
Date: Sun Jun 15 2014 - 15:22:29 EST


On Sun, Jun 15, 2014 at 12:14 PM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
>
> 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.

The purpose of symbol versioning is so that symbols with well known
names, like stat, can continue to use those same names while changing
types. Both old and new programs can continue to use the name stat
and continue to work even though they use different types.

I don't see how this applies to the kernel VDSO. Those symbols do not
use well-known names; they use names like __vdso_time. If you change
the types used by those symbols, you can change the name as well.
What is the downside?

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/