Thread (33 messages) 33 messages, 2 authors, 2021-07-14

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

From: Sasha Levin <sashal@kernel.org>
Date: 2021-07-14 16:49:21
Also in: dri-devel, lkml, virtualization

On Mon, Jul 12, 2021 at 11:59:37PM +0200, Pavel Machek wrote:
Hi!
quoted
From: Xie Yongji <redacted>

[ 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:
quoted
+++ 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.
Heh, yes, thanks for catching that. I'll drop it for now and rework it
next week.

-- 
Thanks,
Sasha
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help