[PATCH v7 7/9] ARM: add vdso user-space code

Will Deacon will.deacon at arm.com
Tue Jul 1 02:00:34 PDT 2014


On Mon, Jun 30, 2014 at 10:29:28PM +0100, Andy Lutomirski wrote:
> On 06/22/2014 08:11 PM, Nathan Lynch wrote:
> > diff --git a/arch/arm/kernel/vdso/datapage.S b/arch/arm/kernel/vdso/datapage.S
> > new file mode 100644
> > index 000000000000..fbf36d75da06
> > --- /dev/null
> > +++ b/arch/arm/kernel/vdso/datapage.S
> > @@ -0,0 +1,15 @@
> > +#include <linux/linkage.h>
> > +#include <asm/asm-offsets.h>
> > +
> > +	.align 2
> > +.L_vdso_data_ptr:
> > +	.long	_start - . - VDSO_DATA_SIZE
> > +
> > +ENTRY(__get_datapage)
> > +	.cfi_startproc
> > +	adr	r0, .L_vdso_data_ptr
> > +	ldr	r1, [r0]
> > +	add	r0, r0, r1
> > +	bx	lr
> > +	.cfi_endproc
> > +ENDPROC(__get_datapage)
> 
> Can you translate this into English for the non-ARM-speakers here?

Also, I'm not sure .cfi directives are the right things to use for AArch32.
ARM has special .fnstart, .fnend, .movsp diretives for its own unwind
format.

Maybe GDB works with both -- have you tried unwinding out of this with
anything?

Will



More information about the linux-arm-kernel mailing list