mirror of
https://github.com/torvalds/linux.git
synced 2024-11-05 19:41:54 +00:00
[media] drivers/media/media-devnode: clear private_data before put_device()
Callbacks invoked from put_device() may free the struct media_devnode pointer, so any cleanup needs to be done before put_device(). Signed-off-by: Max Kellermann <max@duempel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
c56d34a73e
commit
bf244f665d
@ -197,10 +197,11 @@ static int media_release(struct inode *inode, struct file *filp)
|
|||||||
if (mdev->fops->release)
|
if (mdev->fops->release)
|
||||||
mdev->fops->release(filp);
|
mdev->fops->release(filp);
|
||||||
|
|
||||||
|
filp->private_data = NULL;
|
||||||
|
|
||||||
/* decrease the refcount unconditionally since the release()
|
/* decrease the refcount unconditionally since the release()
|
||||||
return value is ignored. */
|
return value is ignored. */
|
||||||
put_device(&mdev->dev);
|
put_device(&mdev->dev);
|
||||||
filp->private_data = NULL;
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user