Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Feb 2018 15:06:35 -0800
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Peter Holm <peter@holm.cc>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r328916 - in head/sys: kern vm
Message-ID:  <20180206230635.GE1063@FreeBSD.org>
In-Reply-To: <20180206225244.GA40529@x2.osted.lan>
References:  <201802060416.w164G0va096970@repo.freebsd.org> <20180206113017.GA25428@x2.osted.lan> <20180206182839.GB1063@FreeBSD.org> <20180206193430.GA36054@x2.osted.lan> <20180206221555.GC1063@FreeBSD.org> <20180206225244.GA40529@x2.osted.lan>

next in thread | previous in thread | raw e-mail | index | archive | help

--sdtB3X0nJg68CQEu
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Feb 06, 2018 at 11:52:44PM +0100, Peter Holm wrote:
P> On Tue, Feb 06, 2018 at 02:15:55PM -0800, Gleb Smirnoff wrote:
P> >   Peter,
P> > 
P> >   can you please check post r328952 kernel?
P> > 
P> 
P> Sure.
P> 
P> FreeBSD 12.0-CURRENT #0 r328956: Tue Feb  6 23:26:58 CET 2018
P>     pho@x4.osted.lan:/usr/src/sys/i386/compile/PHO i386
P> FreeBSD clang version 6.0.0 (branches/release_60 321788) (based on LLVM 6.0.0)
P> WARNING: WITNESS option enabled, expect reduced performance.
P> WARNING: DIAGNOSTIC option enabled, expect reduced performance.
P> Entering uma_startup with 9 boot pages configured
P> startup_alloc from "UMA Kegs", 8 boot pages left
P> startup_alloc from "UMA Zones", 7 boot pages left
P> startup_alloc from "UMA Hash", 6 boot pages left
P> startup_alloc from "UMA Zones", 5 boot pages left
P> startup_alloc from "vmem btag", 4 boot pages left
P> startup_alloc from "MAP", 3 boot pages left
P> startup_alloc from "UMA Kegs", 2 boot pages left
P> startup_alloc from "KMAP ENTRY", 1 boot pages left
P> panic: UMA: Increase vm.boot_pages

Off by one :( Can you please boot with this patch and show dmesg?


-- 
Gleb Smirnoff

--sdtB3X0nJg68CQEu
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="boot_pages_verbose.diff"

Index: sys/vm/uma_core.c
===================================================================
--- sys/vm/uma_core.c	(revision 328955)
+++ sys/vm/uma_core.c	(working copy)
@@ -1800,6 +1800,7 @@ uma_startup_count(int zones)
 	/* Memory for the zone of zones and zone of kegs. */
 	pages = howmany(roundup(zsize, CACHE_LINE_SIZE) * 2 +
 	    roundup(ksize, CACHE_LINE_SIZE), PAGE_SIZE);
+	printf("boot_pages master %d\n", pages);
 
 	zones += UMA_BOOT_ZONES;
 
@@ -1808,9 +1809,11 @@ uma_startup_count(int zones)
 		pages += zones * howmany(zsize, UMA_SLAB_SIZE);
 	else
 		pages += howmany(zones, UMA_SLAB_SIZE / zsize);
+	printf("boot_pages zones %d\n", pages);
 
 	/* ... and their kegs. */
 	pages += howmany(zones, UMA_SLAB_SIZE / ksize);
+	printf("boot_pages kegs %d\n", pages);
 
 	/*
 	 * Take conservative approach that every zone
@@ -1818,6 +1821,7 @@ uma_startup_count(int zones)
 	 */
 	pages += howmany(zones, UMA_SLAB_SIZE /
 	    (sizeof(struct slabhead *) * UMA_HASH_SIZE_INIT));
+	printf("boot_pages hash %d\n", pages);
 
 	return (pages);
 }
Index: sys/vm/vm_page.c
===================================================================
--- sys/vm/vm_page.c	(revision 328955)
+++ sys/vm/vm_page.c	(working copy)
@@ -518,8 +518,10 @@ vm_page_startup(vm_offset_t vaddr)
 
 	/* vmem_startup() calls uma_prealloc(). */
 	boot_pages += vmem_startup_count();
+	printf("boot_pages vmem %s\n", boot_pages);
 	/* vm_map_startup() calls uma_prealloc(). */
 	boot_pages += howmany(MAX_KMAP, UMA_SLAB_SIZE / sizeof(struct vm_map));
+	printf("boot_pages kmap %s\n", boot_pages);
 
 	/*
 	 * Before going fully functional kmem_init() does allocation

--sdtB3X0nJg68CQEu--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180206230635.GE1063>