Message ID | 20200630122710.1119158-2-ppandit@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | memory: assert and define MemoryRegionOps callbacks | expand |
On Tue, 30 Jun 2020 at 13:29, P J P <ppandit@redhat.com> wrote: > > From: Prasad J Pandit <pjp@fedoraproject.org> > > Add pci-intack mmio write method to avoid NULL pointer dereference > issue. > > Reported-by: Lei Sun <slei.casper@gmail.com> > Reviewed-by: Li Qiang <liq3ea@gmail.com> > Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org> > --- > hw/pci-host/prep.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > Update v3: Add Reviewed-by: ... > -> https://lists.gnu.org/archive/html/qemu-devel/2020-06/msg09395.html > > diff --git a/hw/pci-host/prep.c b/hw/pci-host/prep.c > index 367e408b91..3c8ff6af03 100644 > --- a/hw/pci-host/prep.c > +++ b/hw/pci-host/prep.c > @@ -26,6 +26,7 @@ > #include "qemu/osdep.h" > #include "qemu-common.h" > #include "qemu/units.h" > +#include "qemu/log.h" > #include "qapi/error.h" > #include "hw/pci/pci.h" > #include "hw/pci/pci_bus.h" > @@ -119,8 +120,15 @@ static uint64_t raven_intack_read(void *opaque, hwaddr addr, > return pic_read_irq(isa_pic); > } > > +static void raven_intack_write(void *opaque, hwaddr addr, > + uint64_t data, unsigned size) > +{ > + qemu_log_mask(LOG_UNIMP, "%s not implemented\n", __func__); > +} > + > static const MemoryRegionOps raven_intack_ops = { > .read = raven_intack_read, > + .write = raven_intack_write, > .valid = { > .max_access_size = 1, > }, I suspect this may be a read-only register (and so a guest error rather than unimp) but I'm not sure I've found the correct Raven PCI controller datasheet, and if I have then there's a lot of unimplemented functionality in our model. So UNIMP is fine. This controller is only used by the ppc '40p' machine. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> thanks -- PMM
diff --git a/hw/pci-host/prep.c b/hw/pci-host/prep.c index 367e408b91..3c8ff6af03 100644 --- a/hw/pci-host/prep.c +++ b/hw/pci-host/prep.c @@ -26,6 +26,7 @@ #include "qemu/osdep.h" #include "qemu-common.h" #include "qemu/units.h" +#include "qemu/log.h" #include "qapi/error.h" #include "hw/pci/pci.h" #include "hw/pci/pci_bus.h" @@ -119,8 +120,15 @@ static uint64_t raven_intack_read(void *opaque, hwaddr addr, return pic_read_irq(isa_pic); } +static void raven_intack_write(void *opaque, hwaddr addr, + uint64_t data, unsigned size) +{ + qemu_log_mask(LOG_UNIMP, "%s not implemented\n", __func__); +} + static const MemoryRegionOps raven_intack_ops = { .read = raven_intack_read, + .write = raven_intack_write, .valid = { .max_access_size = 1, },