浏览代码

vfio/pci: Fix potential memory leak in vfio_msi_cap_len

Free allocated vdev->msi_perm in error path.

Signed-off-by: Li Qiang <liq3ea@gmail.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Li Qiang 6 年之前
父节点
当前提交
30ea32ab19
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      drivers/vfio/pci/vfio_pci_config.c

+ 3 - 1
drivers/vfio/pci/vfio_pci_config.c

@@ -1180,8 +1180,10 @@ static int vfio_msi_cap_len(struct vfio_pci_device *vdev, u8 pos)
 		return -ENOMEM;
 
 	ret = init_pci_cap_msi_perm(vdev->msi_perm, len, flags);
-	if (ret)
+	if (ret) {
+		kfree(vdev->msi_perm);
 		return ret;
+	}
 
 	return len;
 }