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));