On 06.02.2012, at 22:03, Peter Maydell wrote: > On 6 February 2012 20:45, Alexander Graf <ag...@suse.de> wrote: >> Fallocate gets off_t parameters passed in, so we should also read them out >> accordingly. >> >> Signed-off-by: Alexander Graf <ag...@suse.de> >> --- >> linux-user/syscall.c | 3 ++- >> 1 files changed, 2 insertions(+), 1 deletions(-) >> >> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >> index ee8899e..ca63594 100644 >> --- a/linux-user/syscall.c >> +++ b/linux-user/syscall.c >> @@ -8237,7 +8237,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long >> arg1, >> #endif /* CONFIG_EVENTFD */ >> #if defined(CONFIG_FALLOCATE) && defined(TARGET_NR_fallocate) >> case TARGET_NR_fallocate: >> - ret = get_errno(fallocate(arg1, arg2, arg3, arg4)); >> + ret = get_errno(fallocate(arg1, arg2, target_offset64(arg3, arg4), >> + target_offset64(arg5, arg6))); >> break; >> #endif >> #if defined(CONFIG_SYNC_FILE_RANGE) > > This needs to be guarded with a TARGET_ABI_BITS == 32 conditional: > 64 bit guests want the original version.
Good point. Thanks! Alex