git: 9cb6ba29cb70 - main - vm: centralize VM_BATCHQUEUE_SIZE definition

From: Andrew Gallatin <gallatin_at_FreeBSD.org>
Date: Sat, 21 Jan 2023 19:30:55 UTC
The branch main has been updated by gallatin:

URL: https://cgit.FreeBSD.org/src/commit/?id=9cb6ba29cb704c180d5b82f409e280377a641a28

commit 9cb6ba29cb704c180d5b82f409e280377a641a28
Author:     Andrew Gallatin <gallatin@FreeBSD.org>
AuthorDate: 2023-01-21 19:26:25 +0000
Commit:     Andrew Gallatin <gallatin@FreeBSD.org>
CommitDate: 2023-01-21 19:30:00 +0000

    vm: centralize VM_BATCHQUEUE_SIZE definition
    
    Remove the platform-specific definitions of VM_BATCHQUEUE_SIZE
    for amd64 and powerpc64, and instead treat all 64-bit platforms
    identically.  This has the effect of increasing the arm64
    and riscv VM_BATCHQUEUE_SIZE to match that of other platforms.
    
    Reviewed by: jhb, markj
    Sponsored by: Netflix
    Differential Revision: https://reviews.freebsd.org/D37707
---
 sys/amd64/include/vmparam.h   | 6 ------
 sys/powerpc/include/vmparam.h | 8 --------
 sys/vm/vm_pagequeue.h         | 4 +++-
 3 files changed, 3 insertions(+), 15 deletions(-)

diff --git a/sys/amd64/include/vmparam.h b/sys/amd64/include/vmparam.h
index 205848489644..880c46bba84d 100644
--- a/sys/amd64/include/vmparam.h
+++ b/sys/amd64/include/vmparam.h
@@ -289,12 +289,6 @@
 
 #define	ZERO_REGION_SIZE	(2 * 1024 * 1024)	/* 2MB */
 
-/*
- * Use a fairly large batch size since we expect amd64 systems to have lots of
- * memory.
- */
-#define	VM_BATCHQUEUE_SIZE	63
-
 /*
  * The pmap can create non-transparent large page mappings.
  */
diff --git a/sys/powerpc/include/vmparam.h b/sys/powerpc/include/vmparam.h
index 1b9873aede4a..0f3321379b47 100644
--- a/sys/powerpc/include/vmparam.h
+++ b/sys/powerpc/include/vmparam.h
@@ -258,14 +258,6 @@ extern	int vm_level_0_order;
 #define	ZERO_REGION_SIZE	(64 * 1024)	/* 64KB */
 #endif
 
-/*
- * Use a fairly large batch size since we expect ppc64 systems to have lots of
- * memory.
- */
-#ifdef __powerpc64__
-#define	VM_BATCHQUEUE_SIZE	63
-#endif
-
 /*
  * On 32-bit OEA, the only purpose for which sf_buf is used is to implement
  * an opaque pointer required by the machine-independent parts of the kernel.
diff --git a/sys/vm/vm_pagequeue.h b/sys/vm/vm_pagequeue.h
index 268d53a391db..9624d31a75b7 100644
--- a/sys/vm/vm_pagequeue.h
+++ b/sys/vm/vm_pagequeue.h
@@ -74,7 +74,9 @@ struct vm_pagequeue {
 	uint64_t	pq_pdpages;
 } __aligned(CACHE_LINE_SIZE);
 
-#ifndef VM_BATCHQUEUE_SIZE
+#if __SIZEOF_LONG__ == 8
+#define	VM_BATCHQUEUE_SIZE	63
+#else
 #define	VM_BATCHQUEUE_SIZE	15
 #endif