The branch releng/13.0 has been updated by markj:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=5ad3a9988cc89e41f4c471d7ca5d8b19d216144f

commit 5ad3a9988cc89e41f4c471d7ca5d8b19d216144f
Author:     Mark Johnston <ma...@freebsd.org>
AuthorDate: 2021-02-22 20:50:09 +0000
Commit:     Mark Johnston <ma...@freebsd.org>
CommitDate: 2021-02-25 15:54:17 +0000

    vm_kern: Avoid sign extension in the KVA_QUANTUM definition
    
    Otherwise, on a powerpc64 NUMA system with hashed page tables, the
    first-level superpage reservation size is large enough that the value of
    the kernel KVA arena import quantum, KVA_NUMA_IMPORT_QUANTUM, is
    negative and gets sign-extended when passed to vmem_set_import().  This
    results in a boot-time hang on such platforms.
    
    Approved by:    re (gjb)
    Reported by:    bdragon
    
    (cherry picked from commit 23e875fd97fb9f17b3f5dc2b26082f25e1a86b6f)
    (cherry picked from commit 0486986ad81dbbfca291acf5b15f94d67d8a61bd)
---
 sys/vm/vm_kern.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/vm/vm_kern.c b/sys/vm/vm_kern.c
index f1704f834157..0677d901d408 100644
--- a/sys/vm/vm_kern.c
+++ b/sys/vm/vm_kern.c
@@ -127,7 +127,7 @@ SYSCTL_ULONG(_vm, OID_AUTO, max_kernel_address, CTLFLAG_RD,
 /* On non-superpage architectures we want large import sizes. */
 #define        KVA_QUANTUM_SHIFT       (8 + PAGE_SHIFT)
 #endif
-#define        KVA_QUANTUM             (1 << KVA_QUANTUM_SHIFT)
+#define        KVA_QUANTUM             (1ul << KVA_QUANTUM_SHIFT)
 #define        KVA_NUMA_IMPORT_QUANTUM (KVA_QUANTUM * 128)
 
 extern void     uma_startup2(void);
_______________________________________________
dev-commits-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all
To unsubscribe, send any mail to "dev-commits-src-all-unsubscr...@freebsd.org"

Reply via email to