All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Add mincore syscall
@ 2008-09-19 13:33 Riku Voipio
  2008-09-19 14:06 ` Kirill A. Shutemov
  2008-10-01 21:49 ` Aurelien Jarno
  0 siblings, 2 replies; 4+ messages in thread
From: Riku Voipio @ 2008-09-19 13:33 UTC (permalink / raw)
  To: qemu-devel


Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
---
 linux-user/syscall.c |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 8e6e735..cb75c94 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5574,7 +5574,19 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
         goto unimplemented;
 #ifdef TARGET_NR_mincore
     case TARGET_NR_mincore:
-        goto unimplemented;
+        {
+            void *a;
+            ret = -TARGET_EFAULT;
+            if (!(a = lock_user(VERIFY_READ, arg1,arg2, 0)))
+                goto efault;
+            if (!(p = lock_user_string(arg3)))
+                goto mincore_fail;
+            ret = get_errno(mincore(a, arg2, p));
+            unlock_user(p, arg3, ret);
+            mincore_fail:
+            unlock_user(a, arg1, 0);
+        }
+        break;
 #endif
 #ifdef TARGET_NR_fadvise64_64
      case TARGET_NR_fadvise64_64:
-- 
1.5.6.5


-- 
"rm -rf" only sounds scary if you don't have backups

^ permalink raw reply related	[flat|nested] 4+ messages in thread
* [Qemu-devel] [PATCH] Add fadvise64 stubs
@ 2008-10-01 13:56 Kirill A. Shutemov
  2008-10-01 13:56 ` [Qemu-devel] [PATCH] Add mincore syscall Kirill A. Shutemov
  0 siblings, 1 reply; 4+ messages in thread
From: Kirill A. Shutemov @ 2008-10-01 13:56 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kirill A. Shutemov, Riku Voipio

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>
---
 linux-user/syscall.c |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 40c0ed8..4695416 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
-- 
1.5.6.5.GIT

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-10-01 21:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-19 13:33 [Qemu-devel] [PATCH] Add mincore syscall Riku Voipio
2008-09-19 14:06 ` Kirill A. Shutemov
2008-10-01 21:49 ` Aurelien Jarno
  -- strict thread matches above, loose matches on Subject: below --
2008-10-01 13:56 [Qemu-devel] [PATCH] Add fadvise64 stubs Kirill A. Shutemov
2008-10-01 13:56 ` [Qemu-devel] [PATCH] Add mincore syscall Kirill A. Shutemov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.