Commit 8cfc8cec authored by Edward Adam Davis's avatar Edward Adam Davis Committed by Hans Verkuil
Browse files

media: mc: Clear minor number before put device



The device minor should not be cleared after the device is released.

Fixes: 9e14868dc952 ("media: mc: Clear minor number reservation at unregistration time")
Cc: stable@vger.kernel.org
Reported-by: default avatar <syzbot+031d0cfd7c362817963f@syzkaller.appspotmail.com>
Closes: https://syzkaller.appspot.com/bug?extid=031d0cfd7c362817963f


Tested-by: default avatar <syzbot+031d0cfd7c362817963f@syzkaller.appspotmail.com>
Signed-off-by: default avatarEdward Adam Davis <eadavis@qq.com>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarHans Verkuil <hverkuil+cisco@kernel.org>
parent 895d3b4b
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -276,13 +276,10 @@ void media_devnode_unregister(struct media_devnode *devnode)
	/* Delete the cdev on this minor as well */
	cdev_device_del(&devnode->cdev, &devnode->dev);
	devnode->media_dev = NULL;
	clear_bit(devnode->minor, media_devnode_nums);
	mutex_unlock(&media_devnode_lock);

	put_device(&devnode->dev);

	mutex_lock(&media_devnode_lock);
	clear_bit(devnode->minor, media_devnode_nums);
	mutex_unlock(&media_devnode_lock);
}

/*