[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/3] don't exit on errors while registering ioports
From: |
Glauber de Oliveira Costa |
Subject: |
[Qemu-devel] [PATCH 1/3] don't exit on errors while registering ioports |
Date: |
Thu, 17 Apr 2008 01:42:53 -0700 |
From: Glauber Costa <address@hidden>
Currently, any error in register_ioports make qemu
abort through hw_error(). But there are situations
in which those errors are not fatal. Just return
< 0 instead
Signed-off-by: Glauber Costa <address@hidden>
---
qemu/vl.c | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/qemu/vl.c b/qemu/vl.c
index 35a0465..d7e07e2 100644
--- a/qemu/vl.c
+++ b/qemu/vl.c
@@ -351,13 +351,13 @@ int register_ioport_read(int start, int length, int size,
} else if (size == 4) {
bsize = 2;
} else {
- hw_error("register_ioport_read: invalid size");
+ fprintf(stderr, "register_ioport_read: invalid size\n");
return -1;
}
for(i = start; i < start + length; i += size) {
ioport_read_table[bsize][i] = func;
if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque)
- hw_error("register_ioport_read: invalid opaque");
+ fprintf(stderr, "register_ioport_read: invalid opaque\n");
ioport_opaque[i] = opaque;
}
return 0;
@@ -376,13 +376,15 @@ int register_ioport_write(int start, int length, int size,
} else if (size == 4) {
bsize = 2;
} else {
- hw_error("register_ioport_write: invalid size");
+ fprintf(stderr, "register_ioport_write: invalid size\n");
return -1;
}
for(i = start; i < start + length; i += size) {
ioport_write_table[bsize][i] = func;
- if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque)
- hw_error("register_ioport_write: invalid opaque");
+ if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque) {
+ fprintf(stderr, "register_ioport_write: invalid opaque\n");
+ return -1;
+ }
ioport_opaque[i] = opaque;
}
return 0;
--
1.5.5