Message ID | 47a1e8bd-accf-4afb-85aa-c9a746561902@moroto.mountain (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | media: dvbdev: drop refcount on error path in dvb_device_open() | expand |
diff --git a/drivers/media/dvb-core/dvbdev.c b/drivers/media/dvb-core/dvbdev.c index 305bb21d843c..49f0eb7d0b9d 100644 --- a/drivers/media/dvb-core/dvbdev.c +++ b/drivers/media/dvb-core/dvbdev.c @@ -104,6 +104,8 @@ static int dvb_device_open(struct inode *inode, struct file *file) err = file->f_op->open(inode, file); up_read(&minor_rwsem); mutex_unlock(&dvbdev_mutex); + if (err) + dvb_device_put(dvbdev); return err; } fail:
If call to file->f_op->open() fails, then call dvb_device_put(dvbdev). Fixes: 0fc044b2b5e2 ("media: dvbdev: adopts refcnt to avoid UAF") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> --- drivers/media/dvb-core/dvbdev.c | 2 ++ 1 file changed, 2 insertions(+)