Module Name: src Committed By: macallan Date: Tue Nov 15 10:29:56 UTC 2022
Modified Files: src/sys/kern: subr_pserialize.c Log Message: don't KASSERT(kpreempt_disabled()) while cold pserialize_read_*() can be called *very* early in kernel startup these days To generate a diff of this commit: cvs rdiff -u -r1.18 -r1.19 src/sys/kern/subr_pserialize.c 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_pserialize.c diff -u src/sys/kern/subr_pserialize.c:1.18 src/sys/kern/subr_pserialize.c:1.19 --- src/sys/kern/subr_pserialize.c:1.18 Sun Oct 10 11:20:46 2021 +++ src/sys/kern/subr_pserialize.c Tue Nov 15 10:29:56 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: subr_pserialize.c,v 1.18 2021/10/10 11:20:46 riastradh Exp $ */ +/* $NetBSD: subr_pserialize.c,v 1.19 2022/11/15 10:29:56 macallan Exp $ */ /*- * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc. @@ -31,11 +31,12 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: subr_pserialize.c,v 1.18 2021/10/10 11:20:46 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: subr_pserialize.c,v 1.19 2022/11/15 10:29:56 macallan Exp $"); #include <sys/param.h> #include <sys/atomic.h> #include <sys/cpu.h> +#include <sys/kernel.h> #include <sys/evcnt.h> #include <sys/kmem.h> #include <sys/mutex.h> @@ -135,7 +136,7 @@ void pserialize_read_exit(int s) { - KASSERT(kpreempt_disabled()); + KASSERT((cold || kpreempt_disabled())); __insn_barrier(); if (__predict_false(curcpu()->ci_psz_read_depth-- == 0))