virtio: pci: check bar values read from virtio config space
authorKeir Fraser <keirf@google.com>
Wed, 23 Mar 2022 14:07:27 +0000 (14:07 +0000)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 28 Mar 2022 20:52:59 +0000 (16:52 -0400)
commit3f63a1d7f6f500b6891b1003cec3e23ea4996a2e
tree2615cc453c0a7999244092a05c1dfe7f8a62c095
parenteb4cecb453a19b34d5454b49532e09e9cb0c1529
virtio: pci: check bar values read from virtio config space

virtio pci config structures may in future have non-standard bar
values in the bar field. We should anticipate this by skipping any
structures containing such a reserved value.

The bar value should never change: check for harmful modified values
we re-read it from the config space in vp_modern_map_capability().

Also clean up an existing check to consistently use PCI_STD_NUM_BARS.

Signed-off-by: Keir Fraser <keirf@google.com>
Link: https://lore.kernel.org/r/20220323140727.3499235-1-keirf@google.com
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/virtio/virtio_pci_modern.c
drivers/virtio/virtio_pci_modern_dev.c