Initialise syscall32 vsyscall page early, as it may be needed
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Wed, 24 Aug 2005 10:48:24 +0000 (10:48 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Wed, 24 Aug 2005 10:48:24 +0000 (10:48 +0000)
for some initcalls (e.g., if initrd /bin/hotplug is an i386
binary).

Signed-off-by: Keir Fraser <keir@xensource.com>
linux-2.6-xen-sparse/arch/xen/x86_64/ia32/syscall32.c

index ecccf66a2e9894b79f4035ed5c883173e42c0471..24cb4c4cc6c63df895e993b529fff03b73383346 100644 (file)
@@ -128,8 +128,12 @@ static int __init init_syscall32(void)
 #endif
        return 0;
 } 
-       
-__initcall(init_syscall32); 
+
+/*
+ * This must be done early in case we have an initrd containing 32-bit
+ * binaries (e.g., hotplug). This could be pushed upstream to arch/x86_64.
+ */    
+core_initcall(init_syscall32); 
 
 /* May not be __init: called during resume */
 void syscall32_cpu_init(void)