Aditya Pakki
2020-Jun-14 01:48 UTC
[Nouveau] [PATCH] drm/noveau: fix reference count leak in nouveau_debugfs_strap_peek
nouveau_debugfs_strap_peek() calls pm_runtime_get_sync() that increments the reference count. In case of failure, decrement the ref count before returning the error. Signed-off-by: Aditya Pakki <pakki001 at umn.edu> --- drivers/gpu/drm/nouveau/nouveau_debugfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_debugfs.c b/drivers/gpu/drm/nouveau/nouveau_debugfs.c index 63b5c8cf9ae4..8f63cda3db17 100644 --- a/drivers/gpu/drm/nouveau/nouveau_debugfs.c +++ b/drivers/gpu/drm/nouveau/nouveau_debugfs.c @@ -54,8 +54,10 @@ nouveau_debugfs_strap_peek(struct seq_file *m, void *data) int ret; ret = pm_runtime_get_sync(drm->dev->dev); - if (ret < 0 && ret != -EACCES) + if (ret < 0 && ret != -EACCES) { + pm_runtime_put_autosuspend(drm->dev->dev); return ret; + } seq_printf(m, "0x%08x\n", nvif_rd32(&drm->client.device.object, 0x101000)); -- 2.25.1
Ben Skeggs
2020-Jun-16 06:11 UTC
[Nouveau] [PATCH] drm/noveau: fix reference count leak in nouveau_debugfs_strap_peek
Thanks, I've grabbed this, and the others of the same sort you sent out at the same time. Ben. On Mon, 15 Jun 2020 at 17:29, Aditya Pakki <pakki001 at umn.edu> wrote:> > nouveau_debugfs_strap_peek() calls pm_runtime_get_sync() that > increments the reference count. In case of failure, decrement the > ref count before returning the error. > > Signed-off-by: Aditya Pakki <pakki001 at umn.edu> > --- > drivers/gpu/drm/nouveau/nouveau_debugfs.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/nouveau/nouveau_debugfs.c b/drivers/gpu/drm/nouveau/nouveau_debugfs.c > index 63b5c8cf9ae4..8f63cda3db17 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_debugfs.c > +++ b/drivers/gpu/drm/nouveau/nouveau_debugfs.c > @@ -54,8 +54,10 @@ nouveau_debugfs_strap_peek(struct seq_file *m, void *data) > int ret; > > ret = pm_runtime_get_sync(drm->dev->dev); > - if (ret < 0 && ret != -EACCES) > + if (ret < 0 && ret != -EACCES) { > + pm_runtime_put_autosuspend(drm->dev->dev); > return ret; > + } > > seq_printf(m, "0x%08x\n", > nvif_rd32(&drm->client.device.object, 0x101000)); > -- > 2.25.1 > > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
Apparently Analagous Threads
- [PATCH] drm/noveau: fix reference count leak in nouveau_debugfs_strap_peek
- [PATCH AUTOSEL 5.8 22/64] drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek
- [PATCH AUTOSEL 5.7 20/60] drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek
- [PATCH AUTOSEL 5.4 16/45] drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek
- [PATCH AUTOSEL 5.8 48/62] drm/nouveau/drm/noveau: fix reference count leak in nouveau_fbcon_open