qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Patch] linux-user/syscall.c - don't add GUEST_BASE to


From: Jan-Simon Möller
Subject: Re: [Qemu-devel] [Patch] linux-user/syscall.c - don't add GUEST_BASE to NULL pointer
Date: Wed, 26 Aug 2009 01:37:48 +0200
User-agent: KMail/1.9.9

Thinking a bit more about this, I wonder if g2h(x) shouldn't itself always 
return NULL on x = NULL ? 

Something like:

Signed-off-by:  Jan-Simon Möller  <address@hidden>

diff --git a/cpu-all.h b/cpu-all.h
index 1a6a812..631f678 100644
--- a/cpu-all.h
+++ b/cpu-all.h
@@ -633,7 +633,7 @@ extern int have_guest_base;
 #endif

 /* All direct uses of g2h and h2g need to go away for usermode softmmu.  */
-#define g2h(x) ((void *)((unsigned long)(x) + GUEST_BASE))
+#define g2h(x) ( !x ? NULL:((void *)((unsigned long)(x) + GUEST_BASE)))
 #define h2g(x) ({ \
     unsigned long __ret = (unsigned long)(x) - GUEST_BASE; \
     /* Check if given address fits target address space */ \


I read the comment above, but before replacing it in user-mode (if possible), 
we should fix it ;) .


Best,
Jan-Simon






reply via email to

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