On Sun, Jun 15, 2014 at 12:14 PM, H. Peter Anvin <h...@zytor.com> 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to