Module Name: src Committed By: riastradh Date: Sun Dec 19 11:07:04 UTC 2021
Modified Files: src/sys/external/bsd/drm2/dist/drm/ttm: ttm_bo.c Log Message: drm/ttm: Fix up ttm_bo_global_release a bit. To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/sys/external/bsd/drm2/dist/drm/ttm/ttm_bo.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/ttm/ttm_bo.c diff -u src/sys/external/bsd/drm2/dist/drm/ttm/ttm_bo.c:1.24 src/sys/external/bsd/drm2/dist/drm/ttm/ttm_bo.c:1.25 --- src/sys/external/bsd/drm2/dist/drm/ttm/ttm_bo.c:1.24 Sun Dec 19 09:57:33 2021 +++ src/sys/external/bsd/drm2/dist/drm/ttm/ttm_bo.c Sun Dec 19 11:07:04 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: ttm_bo.c,v 1.24 2021/12/19 09:57:33 riastradh Exp $ */ +/* $NetBSD: ttm_bo.c,v 1.25 2021/12/19 11:07:04 riastradh Exp $ */ /* SPDX-License-Identifier: GPL-2.0 OR MIT */ /************************************************************************** @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ttm_bo.c,v 1.24 2021/12/19 09:57:33 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ttm_bo.c,v 1.25 2021/12/19 11:07:04 riastradh Exp $"); #define pr_fmt(fmt) "[TTM] " fmt @@ -1645,17 +1645,20 @@ static void ttm_bo_global_release(void) if (--ttm_bo_glob_use_count > 0) goto out; +#ifndef __NetBSD__ + kobject_del(&glob->kobj); + kobject_put(&glob->kobj); +#endif + ttm_mem_global_release(&ttm_mem_glob); + memset(glob, 0, sizeof(*glob)); #ifdef __NetBSD__ BUG_ON(glob->dummy_read_page != NULL); spin_lock_destroy(&glob->lru_lock); + mutex_unlock(&ttm_global_mutex); mutex_destroy(&ttm_global_mutex); kfree(glob); -#else - kobject_del(&glob->kobj); - kobject_put(&glob->kobj); + return; #endif - ttm_mem_global_release(&ttm_mem_glob); - memset(glob, 0, sizeof(*glob)); out: mutex_unlock(&ttm_global_mutex); }