]> err.no Git - linux-2.6/blobdiff - arch/x86/xen/setup.c
x86 vDSO: i386 vdso32
[linux-2.6] / arch / x86 / xen / setup.c
index f84e772266461aec8a76b4feeb2ba318e21e0547..fd91568090f4fb5d1e9e0d9d3b2900efee5ae9e8 100644 (file)
@@ -10,6 +10,7 @@
 #include <linux/pm.h>
 
 #include <asm/elf.h>
+#include <asm/vdso.h>
 #include <asm/e820.h>
 #include <asm/setup.h>
 #include <asm/xen/hypervisor.h>
@@ -61,10 +62,8 @@ static void xen_idle(void)
  */
 static void fiddle_vdso(void)
 {
-       extern u32 VDSO_NOTE_MASK; /* See ../kernel/vsyscall-note.S.  */
        extern char vsyscall_int80_start;
-       u32 *mask = (u32 *) ((unsigned long) &VDSO_NOTE_MASK - VDSO_PRELINK +
-                            &vsyscall_int80_start);
+       u32 *mask = VDSO32_SYMBOL(&vsyscall_int80_start, NOTE_MASK);
        *mask |= 1 << VDSO_NOTE_NONEGSEG_BIT;
 }