diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/dev/virtio/base.cc | 2 | ||||
-rw-r--r-- | src/dev/virtio/pci.cc | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/dev/virtio/base.cc b/src/dev/virtio/base.cc index 06c6e3452..a65fe7fa4 100644 --- a/src/dev/virtio/base.cc +++ b/src/dev/virtio/base.cc @@ -426,6 +426,7 @@ VirtIODeviceBase::readConfigBlob(PacketPtr pkt, Addr cfgOffset, const uint8_t *c if (cfgOffset + size > configSize) panic("Config read out of bounds.\n"); + pkt->makeResponse(); pkt->setData(const_cast<uint8_t *>(cfg) + cfgOffset); } @@ -437,6 +438,7 @@ VirtIODeviceBase::writeConfigBlob(PacketPtr pkt, Addr cfgOffset, uint8_t *cfg) if (cfgOffset + size > configSize) panic("Config write out of bounds.\n"); + pkt->makeResponse(); pkt->writeData((uint8_t *)cfg + cfgOffset); } diff --git a/src/dev/virtio/pci.cc b/src/dev/virtio/pci.cc index c77b61934..a051a8f51 100644 --- a/src/dev/virtio/pci.cc +++ b/src/dev/virtio/pci.cc @@ -75,6 +75,8 @@ PciVirtIO::read(PacketPtr pkt) return 0; } + pkt->makeResponse(); + switch(offset) { case OFF_DEVICE_FEATURES: DPRINTF(VIOPci, " DEVICE_FEATURES request\n"); @@ -151,6 +153,8 @@ PciVirtIO::write(PacketPtr pkt) return 0; } + pkt->makeResponse(); + switch(offset) { case OFF_DEVICE_FEATURES: warn("Guest tried to write device features."); |