virtio-pci: thinko fix
PATCH 1/1 virtio-pci: thinko fix
Since patch ed757e140c0ada220f213036e4497315d24ca8bct, virtio will sometimes clear all status registers on bus master disable, which loses information such as VIRTIO_CONFIG_S_FAILED bit. This is a result of a patch being misapplied: code uses ! instead of ~ for bit operations as in Yan's original patch. This obviously does not make sense.
---
hw/virtio-pci.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
hw/virtio-pci.c +1 -1
@@ -374,7 +374,7 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,if (PCI_COMMAND == address) {if (!(val &PCI_COMMAND_MASTER )) { - proxy->vdev->status &= !VIRTIO_CONFIG_S_DRIVER_OK ; + proxy->vdev->status &= ~VIRTIO_CONFIG_S_DRIVER_OK ; } }
Signature · 1 line
1.6.6.rc1.43.gf55cc
Quoted 7 lines · Michael S. Tsirkin
Since patch ed757e140c0ada220f213036e4497315d24ca8bct, virtio will sometimes clear all status registers on bus master disable, which loses information such as
VIRTIO_CONFIG_S_FAILEDbit. This is a result of a patch being misapplied: code uses ! instead of ~ for bit operations as in Yan's original patch. This obviously does not make sense.
Actually, the original patch used '!'. It didn't carry a Signed-off-by and when it was reposted with a SoB, this was changed to '~'. There was no indication though that the contents of the patch was different.
Moral of the story is, when you make a change to the patch, add a (v2) and state in the commit message what change was made.
Thanks for catching this.
Regards,
Anthony Liguori