From: kaf24@firebug.cl.cam.ac.uk Date: Mon, 22 Aug 2005 09:37:27 +0000 (+0000) Subject: I noticed that an old problem is back (see below). The time command is X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~16878^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=3b742fc66ace9cbeb3b16578ee6ca140b17b98fe;p=xen.git I noticed that an old problem is back (see below). The time command is not showing the correct time (it's 3 sec in real time). The patch attached restores the dropped line at the time of upgrading to 2.6.12. Jun Nakajima --- diff --git a/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/vsyscall.c b/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/vsyscall.c index 737ffeb6d0..d96b83e683 100644 --- a/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/vsyscall.c +++ b/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/vsyscall.c @@ -210,15 +210,16 @@ static void __init map_vsyscall(void) __set_fixmap(VSYSCALL_FIRST_PAGE, physaddr_page0, PAGE_KERNEL_VSYSCALL); } -extern void __set_fixmap_user (enum fixed_addresses, unsigned long, pgprot_t); - +#ifdef CONFIG_XEN static void __init map_vsyscall_user(void) { + extern void __set_fixmap_user(enum fixed_addresses, unsigned long, pgprot_t); extern char __vsyscall_0; unsigned long physaddr_page0 = __pa_symbol(&__vsyscall_0); __set_fixmap_user(VSYSCALL_FIRST_PAGE, physaddr_page0, PAGE_KERNEL_VSYSCALL); } +#endif static int __init vsyscall_init(void) { @@ -227,7 +228,10 @@ static int __init vsyscall_init(void) BUG_ON((unsigned long) &vtime != VSYSCALL_ADDR(__NR_vtime)); BUG_ON((VSYSCALL_ADDR(0) != __fix_to_virt(VSYSCALL_FIRST_PAGE))); map_vsyscall(); - map_vsyscall_user(); /* establish tranlation for user address space */ +#ifdef CONFIG_XEN + map_vsyscall_user(); + sysctl_vsyscall = 0; /* disable vgettimeofay() */ +#endif #ifdef CONFIG_SYSCTL register_sysctl_table(kernel_root_table2, 0); #endif