]> git.proxmox.com Git - mirror_qemu.git/commitdiff
vfio: make the 4 bytes aligned for capability size
authorChen Fan <chen.fan.fnst@cn.fujitsu.com>
Fri, 19 Feb 2016 16:42:28 +0000 (09:42 -0700)
committerAlex Williamson <alex.williamson@redhat.com>
Fri, 19 Feb 2016 16:42:28 +0000 (09:42 -0700)
this function search the capability from the end, the last
size should 0x100 - pos, not 0xff - pos.

Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
Reviewed-by: Marcel Apfelbaum <marcel@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
hw/vfio/pci.c

index 49f3d2d2392b7417351f915ddd75c7d6c9a5c33d..e671506a532b1e726b0a412c6b4f672058d6b81d 100644 (file)
@@ -1505,7 +1505,8 @@ static void vfio_unmap_bars(VFIOPCIDevice *vdev)
  */
 static uint8_t vfio_std_cap_max_size(PCIDevice *pdev, uint8_t pos)
 {
-    uint8_t tmp, next = 0xff;
+    uint8_t tmp;
+    uint16_t next = PCI_CONFIG_SPACE_SIZE;
 
     for (tmp = pdev->config[PCI_CAPABILITY_LIST]; tmp;
          tmp = pdev->config[tmp + 1]) {