vfio/mdpy: Fix memory leak of object mdev_state->vconfig
authorColin Ian King <colin.king@canonical.com>
Tue, 22 Jun 2021 18:37:10 +0000 (19:37 +0100)
committerAlex Williamson <alex.williamson@redhat.com>
Thu, 24 Jun 2021 19:31:28 +0000 (13:31 -0600)
In the case where the call to vfio_register_group_dev fails the error
return path kfree's mdev_state but not mdev_state->vconfig. Fix this
by kfree'ing mdev_state->vconfig before returning.

Addresses-Coverity: ("Resource leak")
Fixes: 437e41368c01 ("vfio/mdpy: Convert to use vfio_register_group_dev()")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Link: https://lore.kernel.org/r/20210622183710.28954-1-colin.king@canonical.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
samples/vfio-mdev/mdpy.c

index 7e9c9df..393c9df 100644 (file)
@@ -261,6 +261,7 @@ static int mdpy_probe(struct mdev_device *mdev)
 
        ret = vfio_register_group_dev(&mdev_state->vdev);
        if (ret) {
+               kfree(mdev_state->vconfig);
                kfree(mdev_state);
                return ret;
        }