]> git.proxmox.com Git - qemu.git/commitdiff
qtest: Handle addresses and values for {in, out}[bwl] as unsigned
authorPeter Maydell <peter.maydell@linaro.org>
Sun, 21 Apr 2013 13:30:03 +0000 (14:30 +0100)
committerAnthony Liguori <aliguori@us.ibm.com>
Mon, 22 Apr 2013 14:11:50 +0000 (09:11 -0500)
Handle the addresses and values for {in,out}[bwl] as unsigned (ie
with strtoul), as per the protocol specification comment. This fixes
a test failure in test_i440fx_defaults on 32-bit hosts where the test
tries to write 0x80000000 and qtest was instead writing 0x7fffffff.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1366551003-16649-1-git-send-email-peter.maydell@linaro.org
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
qtest.c

diff --git a/qtest.c b/qtest.c
index 3bba3e5751d4b8ece1a25b7043d6919b93dfe8ed..07a96120dcf09075fca81d8b621483ab91750069 100644 (file)
--- a/qtest.c
+++ b/qtest.c
@@ -271,8 +271,8 @@ static void qtest_process_command(CharDriverState *chr, gchar **words)
         uint32_t value;
 
         g_assert(words[1] && words[2]);
-        addr = strtol(words[1], NULL, 0);
-        value = strtol(words[2], NULL, 0);
+        addr = strtoul(words[1], NULL, 0);
+        value = strtoul(words[2], NULL, 0);
 
         if (words[0][3] == 'b') {
             cpu_outb(addr, value);
@@ -290,7 +290,7 @@ static void qtest_process_command(CharDriverState *chr, gchar **words)
         uint32_t value = -1U;
 
         g_assert(words[1]);
-        addr = strtol(words[1], NULL, 0);
+        addr = strtoul(words[1], NULL, 0);
 
         if (words[0][2] == 'b') {
             value = cpu_inb(addr);