diff options
| author | riastradh <riastradh@NetBSD.org> | 2022-05-31 00:17:10 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2022-05-31 00:17:10 +0000 |
| commit | fcee1e06e19ded0fb4e70845e991cfdcf68f6ee7 (patch) | |
| tree | 48648af7120060c5e82b7f96d20c78d696dd683d /sys | |
| parent | 39302a11926873fc130fd472d3fa68bc02f511a9 (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.c | 8 |
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; } |
