Commit a466fd7e authored by Vitaliy Shevtsov's avatar Vitaliy Shevtsov Committed by Jakub Kicinski
Browse files

caif_virtio: fix wrong pointer check in cfv_probe()



del_vqs() frees virtqueues, therefore cfv->vq_tx pointer should be checked
for NULL before calling it, not cfv->vdev. Also the current implementation
is redundant because the pointer cfv->vdev is dereferenced before it is
checked for NULL.

Fix this by checking cfv->vq_tx for NULL instead of cfv->vdev before
calling del_vqs().

Fixes: 0d2e1a29 ("caif_virtio: Introduce caif over virtio")
Signed-off-by: default avatarVitaliy Shevtsov <v.shevtsov@mt-integration.ru>
Reviewed-by: default avatarGerhard Engleder <gerhard@engleder-embedded.com>
Link: https://patch.msgid.link/20250227184716.4715-1-v.shevtsov@mt-integration.ru


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent ee01b2f2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -745,7 +745,7 @@ static int cfv_probe(struct virtio_device *vdev)

	if (cfv->vr_rx)
		vdev->vringh_config->del_vrhs(cfv->vdev);
	if (cfv->vdev)
	if (cfv->vq_tx)
		vdev->config->del_vqs(cfv->vdev);
	free_netdev(netdev);
	return err;