The VirtIO devices didn't correctly set the response flags in memory
packets. This changeset adds the required Packet::makeResponse()
calls.
if (cfgOffset + size > configSize)
panic("Config read out of bounds.\n");
+ pkt->makeResponse();
pkt->setData(const_cast<uint8_t *>(cfg) + cfgOffset);
}
if (cfgOffset + size > configSize)
panic("Config write out of bounds.\n");
+ pkt->makeResponse();
pkt->writeData((uint8_t *)cfg + cfgOffset);
}
return 0;
}
+ pkt->makeResponse();
+
switch(offset) {
case OFF_DEVICE_FEATURES:
DPRINTF(VIOPci, " DEVICE_FEATURES request\n");
return 0;
}
+ pkt->makeResponse();
+
switch(offset) {
case OFF_DEVICE_FEATURES:
warn("Guest tried to write device features.");