Module Name:    src
Committed By:   thorpej
Date:           Sun Dec  3 15:06:45 UTC 2023

Modified Files:
        src/sys/kern: subr_vmem.c
        src/sys/sys: vmem_impl.h

Log Message:
Split the boundary tag "type" field into "type" and "flags" fields.
Initialize the flags field to 0 before inserting into an arena's free
tag list.

NFC, but makes diff for a future enhancement smaller.


To generate a diff of this commit:
cvs rdiff -u -r1.113 -r1.114 src/sys/kern/subr_vmem.c
cvs rdiff -u -r1.6 -r1.7 src/sys/sys/vmem_impl.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/subr_vmem.c
diff -u src/sys/kern/subr_vmem.c:1.113 src/sys/kern/subr_vmem.c:1.114
--- src/sys/kern/subr_vmem.c:1.113	Sun Dec  3 14:35:54 2023
+++ src/sys/kern/subr_vmem.c	Sun Dec  3 15:06:45 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: subr_vmem.c,v 1.113 2023/12/03 14:35:54 thorpej Exp $	*/
+/*	$NetBSD: subr_vmem.c,v 1.114 2023/12/03 15:06:45 thorpej Exp $	*/
 
 /*-
  * Copyright (c)2006,2007,2008,2009 YAMAMOTO Takashi,
@@ -46,7 +46,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: subr_vmem.c,v 1.113 2023/12/03 14:35:54 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: subr_vmem.c,v 1.114 2023/12/03 15:06:45 thorpej Exp $");
 
 #if defined(_KERNEL) && defined(_KERNEL_OPT)
 #include "opt_ddb.h"
@@ -255,6 +255,7 @@ bt_refill_locked(vmem_t *vm)
 	    vm->vm_nfreetags <= BT_MINRESERVE) {
 		bt = LIST_FIRST(&vmem_btag_freelist);
 		LIST_REMOVE(bt, bt_freelist);
+		bt->bt_flags = 0;
 		LIST_INSERT_HEAD(&vm->vm_freetags, bt, bt_freelist);
 		vm->vm_nfreetags++;
 		vmem_btag_freelist_count--;
@@ -271,6 +272,7 @@ bt_refill_locked(vmem_t *vm)
 		VMEM_LOCK(vm);
 		if (bt == NULL)
 			break;
+		bt->bt_flags = 0;
 		LIST_INSERT_HEAD(&vm->vm_freetags, bt, bt_freelist);
 		vm->vm_nfreetags++;
 	}

Index: src/sys/sys/vmem_impl.h
diff -u src/sys/sys/vmem_impl.h:1.6 src/sys/sys/vmem_impl.h:1.7
--- src/sys/sys/vmem_impl.h:1.6	Sat Dec  2 19:11:52 2023
+++ src/sys/sys/vmem_impl.h	Sun Dec  3 15:06:45 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: vmem_impl.h,v 1.6 2023/12/02 19:11:52 thorpej Exp $	*/
+/*	$NetBSD: vmem_impl.h,v 1.7 2023/12/03 15:06:45 thorpej Exp $	*/
 
 /*-
  * Copyright (c)2006 YAMAMOTO Takashi,
@@ -128,7 +128,8 @@ struct vmem_btag {
 #define	bt_freelist	bt_u.u_freelist
 	vmem_addr_t bt_start;
 	vmem_size_t bt_size;
-	int bt_type;
+	short bt_type;
+	short bt_flags;
 };
 
 #define	BT_TYPE_SPAN		1

Reply via email to