Message ID | 20200811114133.672647-5-ppandit@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | memory: assert and define MemoryRegionOps callbacks | expand |
P J P <ppandit@redhat.com> 于2020年8月11日周二 下午7:44写道: > > From: Prasad J Pandit <pjp@fedoraproject.org> > > Add ppc-parity mmio write method to avoid NULL pointer dereference > issue. > > Reported-by: Lei Sun <slei.casper@gmail.com> > Acked-by: David Gibson <david@gibson.dropbear.id.au> > Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org> Reviewed-by: Li Qiang <liq3ea@gmail.com> > --- > hw/ppc/prep_systemio.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > Update v4: No change, v3 was acked > -> https://lists.gnu.org/archive/html/qemu-devel/2020-06/msg09965.html > > diff --git a/hw/ppc/prep_systemio.c b/hw/ppc/prep_systemio.c > index bbc51b6e9a..e583222a1b 100644 > --- a/hw/ppc/prep_systemio.c > +++ b/hw/ppc/prep_systemio.c > @@ -23,6 +23,7 @@ > */ > > #include "qemu/osdep.h" > +#include "qemu/log.h" > #include "hw/irq.h" > #include "hw/isa/isa.h" > #include "hw/qdev-properties.h" > @@ -235,8 +236,15 @@ static uint64_t ppc_parity_error_readl(void *opaque, hwaddr addr, > return val; > } > > +static void ppc_parity_error_writel(void *opaque, hwaddr addr, > + uint64_t data, unsigned size) > +{ > + qemu_log_mask(LOG_GUEST_ERROR, "%s: invalid access\n", __func__); > +} > + > static const MemoryRegionOps ppc_parity_error_ops = { > .read = ppc_parity_error_readl, > + .write = ppc_parity_error_writel, > .valid = { > .min_access_size = 4, > .max_access_size = 4, > -- > 2.26.2 >
diff --git a/hw/ppc/prep_systemio.c b/hw/ppc/prep_systemio.c index bbc51b6e9a..e583222a1b 100644 --- a/hw/ppc/prep_systemio.c +++ b/hw/ppc/prep_systemio.c @@ -23,6 +23,7 @@ */ #include "qemu/osdep.h" +#include "qemu/log.h" #include "hw/irq.h" #include "hw/isa/isa.h" #include "hw/qdev-properties.h" @@ -235,8 +236,15 @@ static uint64_t ppc_parity_error_readl(void *opaque, hwaddr addr, return val; } +static void ppc_parity_error_writel(void *opaque, hwaddr addr, + uint64_t data, unsigned size) +{ + qemu_log_mask(LOG_GUEST_ERROR, "%s: invalid access\n", __func__); +} + static const MemoryRegionOps ppc_parity_error_ops = { .read = ppc_parity_error_readl, + .write = ppc_parity_error_writel, .valid = { .min_access_size = 4, .max_access_size = 4,