summaryrefslogtreecommitdiff
path: root/linux-user
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-10-01 21:46:32 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-10-01 21:46:32 +0000
commitb96320c385f31bac6c0777fb06f6f9e13f4b95f0 (patch)
tree5afe7f46045c7b06b1a51ceb8c7aa02c595883b9 /linux-user
parent225ab931667d0d66dc667ab439757d5ca8933473 (diff)
downloadqemu-b96320c385f31bac6c0777fb06f6f9e13f4b95f0.tar.gz
qemu-b96320c385f31bac6c0777fb06f6f9e13f4b95f0.tar.bz2
qemu-b96320c385f31bac6c0777fb06f6f9e13f4b95f0.zip
Add fadvise64 stubs
Since these are only hints, we happily fake them for now to make applications not barf on ENOSYS. Signed-off-by: Riku Voipio <riku.voipio@iki.fi> Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5386 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user')
-rw-r--r--linux-user/syscall.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 40c0ed83e8..07992752a2 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5578,6 +5578,27 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
case TARGET_NR_mincore:
goto unimplemented;
#endif
+#ifdef TARGET_NR_arm_fadvise64_64
+ case TARGET_NR_arm_fadvise64_64:
+ {
+ /*
+ * arm_fadvise64_64 looks like fadvise64_64 but
+ * with different argument order
+ */
+ abi_long temp;
+ temp = arg3;
+ arg3 = arg4;
+ arg4 = temp;
+ }
+#endif
+#if defined(TARGET_NR_fadvise64_64) || defined(TARGET_NR_arm_fadvise64_64)
+#ifdef TARGET_NR_fadvise64_64
+ case TARGET_NR_fadvise64_64:
+#endif
+ /* This is a hint, so ignoring and returning success is ok. */
+ ret = get_errno(0);
+ break;
+#endif
#ifdef TARGET_NR_madvise
case TARGET_NR_madvise:
/* A straight passthrough may not be safe because qemu sometimes