summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorriastradh <riastradh@NetBSD.org>2022-05-31 00:17:10 +0000
committerriastradh <riastradh@NetBSD.org>2022-05-31 00:17:10 +0000
commitfcee1e06e19ded0fb4e70845e991cfdcf68f6ee7 (patch)
tree48648af7120060c5e82b7f96d20c78d696dd683d /sys
parent39302a11926873fc130fd472d3fa68bc02f511a9 (diff)
nouveau(4): Fix error branches in nouveau_gem_new.
PR kern/56804
Diffstat (limited to 'sys')
-rw-r--r--sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c b/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
index 1132c087d6f..d0b059a3435 100644
--- a/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
+++ b/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
@@ -1,4 +1,4 @@
-/* $NetBSD: nouveau_gem.c,v 1.13 2021/12/19 10:50:13 riastradh Exp $ */
+/* $NetBSD: nouveau_gem.c,v 1.14 2022/05/31 00:17:10 riastradh Exp $ */
/*
* Copyright (C) 2008 Ben Skeggs.
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nouveau_gem.c,v 1.13 2021/12/19 10:50:13 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nouveau_gem.c,v 1.14 2022/05/31 00:17:10 riastradh Exp $");
#include <asm/uaccess.h>
@@ -202,13 +202,13 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
* to the caller, instead of a normal nouveau_bo ttm reference. */
ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
if (ret) {
- nouveau_bo_ref(NULL, &nvbo);
+ kfree(nvbo);
return ret;
}
ret = nouveau_bo_init(nvbo, size, align, flags, NULL, NULL);
if (ret) {
- nouveau_bo_ref(NULL, &nvbo);
+ /* XXX note: if this fails it kfrees nvbo */
return ret;
}