[PATCH AUTOSEL 4.4 08/31] drm/virtio: Fixes a potential NULL pointer dereference on probe failure

Pavel Machek pavel at denx.de
Mon Jul 12 21:59:37 UTC 2021


Hi!

> From: Xie Yongji <xieyongji at bytedance.com>
> 
> [ Upstream commit 17f46f488a5d82c5568e6e786cd760bba1c2ee09 ]
> 
> The dev->dev_private might not be allocated if virtio_gpu_pci_quirk()
> or virtio_gpu_init() failed. In this case, we should avoid the cleanup
> in virtio_gpu_release().

The check is in wrong place at least in 4.4:

> +++ b/drivers/gpu/drm/virtio/virtgpu_kms.c
> @@ -257,6 +257,9 @@ int virtio_gpu_driver_unload(struct drm_device *dev)
>  	flush_work(&vgdev->config_changed_work);
>  	vgdev->vdev->config->del_vqs(vgdev->vdev);
>  
> +	if (!vgdev)
> +		return;
> +

Pointer is dereferenced before being tested.

Best regards,
								Pavel
--
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20210712/3b652636/attachment.sig>


More information about the dri-devel mailing list