Module Name: src Committed By: chs Date: Wed Nov 11 03:31:04 UTC 2020
Modified Files: src/external/cddl/osnet/sys/kern: kmem.c Log Message: kmem_cache_create()'s "name" parameter can be on the stack, so make a copy of it rather than keeping a pointer to it. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/external/cddl/osnet/sys/kern/kmem.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/cddl/osnet/sys/kern/kmem.c diff -u src/external/cddl/osnet/sys/kern/kmem.c:1.2 src/external/cddl/osnet/sys/kern/kmem.c:1.3 --- src/external/cddl/osnet/sys/kern/kmem.c:1.2 Thu May 23 08:32:30 2019 +++ src/external/cddl/osnet/sys/kern/kmem.c Wed Nov 11 03:31:04 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: kmem.c,v 1.2 2019/05/23 08:32:30 hannken Exp $ */ +/* $NetBSD: kmem.c,v 1.3 2020/11/11 03:31:04 chs Exp $ */ /*- * Copyright (c) 2017 The NetBSD Foundation, Inc. @@ -30,6 +30,7 @@ struct kmem_cache { pool_cache_t km_pool; + char km_name[32]; void *km_private; int (*km_constructor)(void *, void *, int); void (*km_destructor)(void *, void *); @@ -78,11 +79,12 @@ kmem_cache_create(char *name, size_t buf KASSERT(vmp == NULL); km = kmem_zalloc(sizeof(*km), KM_SLEEP); + strlcpy(km->km_name, name, sizeof(km->km_name)); km->km_private = private; km->km_constructor = constructor; km->km_destructor = destructor; km->km_reclaim = reclaim; - km->km_pool = pool_cache_init(bufsize, align, 0, 0, name, NULL, + km->km_pool = pool_cache_init(bufsize, align, 0, 0, km->km_name, NULL, IPL_NONE, solaris_constructor, solaris_destructor, km); if (km->km_pool == NULL) { kmem_free(km, sizeof(*km));