On 08/05/2011 04:52 PM, Anthony Liguori wrote:
static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
@@ -689,6 +686,10 @@ void virtio_init_pci(VirtIOPCIProxy *proxy,
VirtIODevice *vdev)
proxy->host_features |= 0x1<< VIRTIO_F_NOTIFY_ON_EMPTY;
proxy->host_features |= 0x1<< VIRTIO_F_BAD_FEATURE;
proxy->host_features = vdev->get_features(vdev,
proxy->host_features);
+
+ if (vdev->config_len) {
+ vdev->get_config(vdev, vdev->config);
+ }
Thinking more closely, I don't think this right.
Updating on map ensured that the config was refreshed after each time
the bar was mapped. In the very least, the config needs to be
refreshed during reset because the guest may write to the guest space
which should get cleared after reset.
Michael, please provide the correct fix. Best merged directly, not via
my patchset.
--
error compiling committee.c: too many arguments to function