[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH v1 07/25] sysbus: mmio_map+mmio_get_region: igno
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [RFC PATCH v1 07/25] sysbus: mmio_map+mmio_get_region: ignore range OOB errors |
Date: |
Thu, 10 Sep 2015 22:33:17 -0700 |
Ignore these errors as they may be a follow on effect of device
realisation failure. Ideally we should have an error ** to populate
in own right, but that requires an API change. Mark FIXME.
Signed-off-by: Peter Crosthwaite <address@hidden>
---
hw/core/sysbus.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/hw/core/sysbus.c b/hw/core/sysbus.c
index 3c58629..6fde10e 100644
--- a/hw/core/sysbus.c
+++ b/hw/core/sysbus.c
@@ -127,7 +127,12 @@ bool sysbus_has_mmio(SysBusDevice *dev, unsigned int n)
static void sysbus_mmio_map_common(SysBusDevice *dev, int n, hwaddr addr,
bool may_overlap, int priority)
{
- assert(n >= 0 && n < dev->num_mmio);
+ assert(n >= 0);
+
+ if (n < dev->num_mmio) {
+ /* FIXME: Add an Error ** to this function for this condition */
+ return;
+ }
if (dev->mmio[n].addr == addr) {
/* ??? region already mapped here. */
@@ -186,6 +191,10 @@ void sysbus_init_mmio(SysBusDevice *dev, MemoryRegion
*memory)
MemoryRegion *sysbus_mmio_get_region(SysBusDevice *dev, int n)
{
+ if (n >= dev->num_mmio) {
+ /* FIXME: Add an Error ** to this function for this condition */
+ return NULL;
+ }
return dev->mmio[n].memory;
}
--
1.9.1
- [Qemu-devel] [RFC PATCH v1 01/25] exec: convert error_report to error_report_err, (continued)
- [Qemu-devel] [RFC PATCH v1 01/25] exec: convert error_report to error_report_err, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 02/25] s390x: virtio-ccw: Remove un-needed if guard, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 03/25] error: Factor out common error setter logic, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 04/25] error: Add support for multiple errors, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 05/25] error: Add error prefix API, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 07/25] sysbus: mmio_map+mmio_get_region: ignore range OOB errors,
Peter Crosthwaite <=
- [Qemu-devel] [RFC PATCH v1 06/25] error: Add error_printf_fn(), Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 08/25] memory: nop APIs when they have NULL arguments, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 09/25] qdev: gpio: Ignore unconnectable GPIOs, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 10/25] arm: xlnx-zynqmp: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 12/25] arm: netduino: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 11/25] arm: fsl-imx*: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 13/25] arm: allwinner: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 14/25] arm: digic: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 15/25] cpu: arm: Remove un-needed error checking, Peter Crosthwaite, 2015/09/11