x86: corrects vsyscall address for gettimeofday
authorMichael Levenhagen <mjleven@sandia.gov>
Tue, 23 Apr 2013 20:21:32 +0000 (15:21 -0500)
committerMichael Levenhagen <mjleven@sandia.gov>
Tue, 23 Apr 2013 20:21:32 +0000 (15:21 -0500)
The vsyscall address for gettimeofday is 0xffffffffff600000ul. The offset
therefore should be 0x0 instead of 0x410. This can be cross checked with
the file sysdeps/unix/sysv/linux/x86_64/gettimeofday.c in source of glibc.

Committed by: Nilay Vaish <nilay@cs.wisc.edu>

src/arch/x86/process.cc

index cce8e3a3d7d4b438f52771330f45d15a1559babf..bf7669cdfa5d4eff12cf9280f3da5fb6816d8202 100644 (file)
@@ -98,7 +98,7 @@ X86_64LiveProcess::X86_64LiveProcess(LiveProcessParams *params,
     vsyscallPage.base = 0xffffffffff600000ULL;
     vsyscallPage.size = VMPageSize;
     vsyscallPage.vtimeOffset = 0x400;
-    vsyscallPage.vgettimeofdayOffset = 0x410;
+    vsyscallPage.vgettimeofdayOffset = 0x0;
 
     // Set up stack. On X86_64 Linux, stack goes from the top of memory
     // downward, less the hole for the kernel address space plus one page