Hello,

this patch fixes some compiler warnings in two QEMU source files:

* missing include unistd.h for syscall

* comparision of unsigned value with -1
  (mmap returns pointer with error value MAP_FAILED)

I also replaced leading tabs in mmap.c by blanks.

Please add this patch to CVS head.

Regards
Stefan

Index: linux-user/mmap.c
===================================================================
RCS file: /sources/qemu/qemu/linux-user/mmap.c,v
retrieving revision 1.16
diff -u -b -B -w -u -r1.16 mmap.c
--- linux-user/mmap.c	30 Sep 2007 14:32:45 -0000	1.16
+++ linux-user/mmap.c	1 Oct 2007 20:15:22 -0000
@@ -100,7 +100,7 @@
                      target_ulong start, target_ulong end,
                      int prot, int flags, int fd, target_ulong offset)
 {
-    target_ulong real_end, ret, addr;
+    target_ulong real_end, addr;
     void *host_start;
     int prot1, prot_new;
 
@@ -116,10 +116,10 @@
 
     if (prot1 == 0) {
         /* no page was there, so we allocate one */
-        ret = (long)mmap(host_start, qemu_host_page_size, prot,
+        void *p = mmap(host_start, qemu_host_page_size, prot,
                          flags | MAP_ANONYMOUS, -1, 0);
-        if (ret == -1)
-            return ret;
+        if (p == MAP_FAILED)
+            return -1;
         prot1 = prot;
     }
     prot1 &= PAGE_BITS;
@@ -230,16 +230,16 @@
              */
             target_ulong host_end;
             unsigned long host_aligned_start;
+            void *p;
 
             host_len = HOST_PAGE_ALIGN(host_len + qemu_host_page_size
                                        - qemu_real_host_page_size);
-            host_start = (unsigned long) mmap(real_start ?
-					      g2h(real_start) : NULL,
-					      host_len, prot, flags,
-					      fd, host_offset);
-            if (host_start == -1)
+            p = mmap(real_start ? g2h(real_start) : NULL,
+                     host_len, prot, flags, fd, host_offset);
+            if (p == MAP_FAILED)
                 return -1;
 
+            host_start = (unsigned long)p;
             host_end = host_start + host_len;
 
             /* Find start and end, aligned to the targets pagesize with-in the
@@ -260,11 +260,12 @@
             goto the_end1;
         } else {
             /* if not fixed, no need to do anything */
-            host_start = (long)mmap(real_start ? g2h(real_start) : NULL,
+            void *p = mmap(real_start ? g2h(real_start) : NULL,
                                     host_len, prot, flags, fd, host_offset);
-            if (host_start == -1)
+            if (p == MAP_FAILED)
                 return -1;
             /* update start so that it points to the file position at 'offset' */
+            host_start = (unsigned long)p;
             if (!(flags & MAP_ANONYMOUS))
                 host_start += offset - host_offset;
             start = h2g(host_start);
@@ -333,14 +334,15 @@
 
     /* map the middle (easier) */
     if (real_start < real_end) {
+        void *p;
         unsigned long offset1;
 	if (flags & MAP_ANONYMOUS)
 	  offset1 = 0;
 	else
 	  offset1 = offset + real_start - start;
-        ret = (long)mmap(g2h(real_start), real_end - real_start,
+        p = mmap(g2h(real_start), real_end - real_start,
                          prot, flags, fd, offset1);
-        if (ret == -1)
+        if (p == MAP_FAILED)
             return -1;
     }
  the_end1:
Index: target-i386/helper2.c
===================================================================
RCS file: /sources/qemu/qemu/target-i386/helper2.c,v
retrieving revision 1.52
diff -u -b -B -w -u -r1.52 helper2.c
--- target-i386/helper2.c	23 Sep 2007 15:28:04 -0000	1.52
+++ target-i386/helper2.c	1 Oct 2007 20:15:22 -0000
@@ -32,6 +32,7 @@
 //#define DEBUG_MMU
 
 #ifdef USE_CODE_COPY
+#include <unistd.h>
 #include <asm/ldt.h>
 #include <linux/unistd.h>
 #include <linux/version.h>

Reply via email to