From 948761701ebc8a0cf820a973780b2fbb931c4390 Mon Sep 17 00:00:00 2001 From: Marcel Telka Date: Wed, 29 Jan 2020 17:03:43 +0100 Subject: 12262 Suboptimal vmem hash table slows down boot Reviewed by: Stefan Behrens Reviewed by: Gergő Mihály Doma Approved by: Dan McDonald MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- usr/src/uts/common/os/main.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'usr') diff --git a/usr/src/uts/common/os/main.c b/usr/src/uts/common/os/main.c index aa58118e48..3579053899 100644 --- a/usr/src/uts/common/os/main.c +++ b/usr/src/uts/common/os/main.c @@ -518,6 +518,14 @@ main(void) */ audit_init(); + /* + * Start the periodic hash rescale for all vmem arenas before we load + * protocol modules and drivers via strplumb() below. Some drivers + * might rely on heavy vmem operations that could hurt performance + * without the rescale. + */ + vmem_update(NULL); + /* * Plumb the protocol modules and drivers only if we are not * networked booted, in this case we already did it in rootconf(). @@ -605,7 +613,6 @@ main(void) * Any per cpu initialization is done here. */ kmem_mp_init(); - vmem_update(NULL); clock_tick_init_post(); -- cgit v1.2.3