Module Name: src
Committed By: riastradh
Date: Tue May 31 00:17:10 UTC 2022
Modified Files:
src/sys/external/bsd/drm2/dist/drm/nouveau: nouveau_gem.c
Log Message:
nouveau(4): Fix error branches in nouveau_gem_new.
PR kern/56804
To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.13 src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.14
--- src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.13 Sun Dec 19 10:50:13 2021
+++ src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c Tue May 31 00:17:10 2022
@@ -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,
* 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;
}