diff options
author | Alexander Graf <agraf@suse.de> | 2012-02-06 21:37:07 +0100 |
---|---|---|
committer | Riku Voipio <riku.voipio@linaro.org> | 2012-04-06 18:49:58 +0300 |
commit | 20249ae189ac0baa5011770bccabf3ee802eb2ab (patch) | |
tree | 87a6d6725c8db0f651109b4c59c57701c76cd284 | |
parent | 354a0008270e9167ce89527fdf8f1a85c3a7fb87 (diff) | |
download | hqemu-20249ae189ac0baa5011770bccabf3ee802eb2ab.zip hqemu-20249ae189ac0baa5011770bccabf3ee802eb2ab.tar.gz |
linux-user: fix fallocate
Fallocate gets off_t parameters passed in, so we should also read them out
accordingly.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
v1 -> v2:
- unbreak 64-bit guests
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
-rw-r--r-- | linux-user/syscall.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 9d1c8b2..fdd49b1 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -8485,7 +8485,12 @@ 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: +#if TARGET_ABI_BITS == 32 + ret = get_errno(fallocate(arg1, arg2, target_offset64(arg3, arg4), + target_offset64(arg5, arg6))); +#else ret = get_errno(fallocate(arg1, arg2, arg3, arg4)); +#endif break; #endif #if defined(CONFIG_SYNC_FILE_RANGE) |