qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 1/7] alpha-linux-user: Fix brk error return.


From: Richard Henderson
Subject: [Qemu-devel] [PATCH 1/7] alpha-linux-user: Fix brk error return.
Date: Mon, 3 May 2010 10:07:49 -0700

Signed-off-by: Richard Henderson <address@hidden>
---
 linux-user/syscall.c |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 17599eb..81e09b3 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -718,9 +718,17 @@ abi_long do_brk(abi_ulong new_brk)
                                         PROT_READ|PROT_WRITE,
                                         MAP_ANON|MAP_FIXED|MAP_PRIVATE, 0, 0));
 
-    if (!is_error(mapped_addr))
+#if defined(TARGET_ALPHA)
+    /* We (partially) emulate OSF/1 on Alpha, which requires we
+       return a proper errno, not an unchanged brk value.  */
+    if (is_error(mapped_addr)) {
+        return -TARGET_ENOMEM;
+    }
+#endif
+
+    if (!is_error(mapped_addr)) {
        target_brk = new_brk;
-    
+    }
     return target_brk;
 }
 
-- 
1.6.6.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]