On 04/21/2010 02:36 PM, Lassi Tuura wrote:
> On x86_64 linux vsyscall page seems to be given by <asm/vsyscall.h>
> which defines VSYSCALL_{START,END,SIZE}. As far as I know even GLIBC
> just hard-codes the values. I'll try to add handling for this, and
> will try to find a system which has vdso just to make sure it gets
> handled correctly too.

The bare vsyscall page does date back to the very beginning of
the x86-64 linux support, while the vdso is a later addition.

It has been a long time, but best I can recall the vdso was 
added specifically so that we could describe how to unwind from
that page -- although it has a number of other advantages, 
including an easy way to add new kernel entry points.

Glibc does contain the asm/vsyscall.h values, but they are
only used if the vdso does not exist.  If the vdso does exist,
then glibc uses the addresses given therein.

I don't know if you'll be able to find a way to unwind with
just the bare vsyscall page...


r~


_______________________________________________
Libunwind-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to