Module Name: src Committed By: martin Date: Mon Jul 31 14:40:04 UTC 2023
Modified Files: src/sys/kern [netbsd-9]: kern_lock.c kern_mutex.c kern_rwlock.c Log Message: Pull up following revision(s) (requested by riastradh in ticket #1677): sys/kern/kern_rwlock.c: revision 1.67 sys/kern/kern_lock.c: revision 1.182 sys/kern/kern_mutex.c: revision 1.102 Sprinkle __predict_{true,false} for panicstr checks To generate a diff of this commit: cvs rdiff -u -r1.163 -r1.163.2.1 src/sys/kern/kern_lock.c cvs rdiff -u -r1.79.2.1 -r1.79.2.2 src/sys/kern/kern_mutex.c cvs rdiff -u -r1.54 -r1.54.2.1 src/sys/kern/kern_rwlock.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/kern_lock.c diff -u src/sys/kern/kern_lock.c:1.163 src/sys/kern/kern_lock.c:1.163.2.1 --- src/sys/kern/kern_lock.c:1.163 Thu May 9 05:00:31 2019 +++ src/sys/kern/kern_lock.c Mon Jul 31 14:40:04 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_lock.c,v 1.163 2019/05/09 05:00:31 ozaki-r Exp $ */ +/* $NetBSD: kern_lock.c,v 1.163.2.1 2023/07/31 14:40:04 martin Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_lock.c,v 1.163 2019/05/09 05:00:31 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_lock.c,v 1.163.2.1 2023/07/31 14:40:04 martin Exp $"); #include <sys/param.h> #include <sys/proc.h> @@ -63,7 +63,7 @@ assert_sleepable(void) uint64_t pctr; bool idle; - if (panicstr != NULL) { + if (__predict_false(panicstr != NULL)) { return; } Index: src/sys/kern/kern_mutex.c diff -u src/sys/kern/kern_mutex.c:1.79.2.1 src/sys/kern/kern_mutex.c:1.79.2.2 --- src/sys/kern/kern_mutex.c:1.79.2.1 Sun Mar 8 11:21:29 2020 +++ src/sys/kern/kern_mutex.c Mon Jul 31 14:40:04 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_mutex.c,v 1.79.2.1 2020/03/08 11:21:29 martin Exp $ */ +/* $NetBSD: kern_mutex.c,v 1.79.2.2 2023/07/31 14:40:04 martin Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -40,7 +40,7 @@ #define __MUTEX_PRIVATE #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_mutex.c,v 1.79.2.1 2020/03/08 11:21:29 martin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_mutex.c,v 1.79.2.2 2023/07/31 14:40:04 martin Exp $"); #include <sys/param.h> #include <sys/atomic.h> @@ -525,7 +525,7 @@ mutex_vector_enter(kmutex_t *mtx) MUTEX_ASSERT(mtx, !cpu_intr_p()); MUTEX_WANTLOCK(mtx); - if (panicstr == NULL) { + if (__predict_true(panicstr == NULL)) { KDASSERT(pserialize_not_in_read_section()); LOCKDEBUG_BARRIER(&kernel_lock, 1); } Index: src/sys/kern/kern_rwlock.c diff -u src/sys/kern/kern_rwlock.c:1.54 src/sys/kern/kern_rwlock.c:1.54.2.1 --- src/sys/kern/kern_rwlock.c:1.54 Thu May 9 05:00:31 2019 +++ src/sys/kern/kern_rwlock.c Mon Jul 31 14:40:04 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_rwlock.c,v 1.54 2019/05/09 05:00:31 ozaki-r Exp $ */ +/* $NetBSD: kern_rwlock.c,v 1.54.2.1 2023/07/31 14:40:04 martin Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc. @@ -38,7 +38,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.54 2019/05/09 05:00:31 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.54.2.1 2023/07/31 14:40:04 martin Exp $"); #define __RWLOCK_PRIVATE @@ -187,7 +187,7 @@ static void __noinline rw_abort(const char *func, size_t line, krwlock_t *rw, const char *msg) { - if (panicstr != NULL) + if (__predict_false(panicstr != NULL)) return; LOCKDEBUG_ABORT(func, line, rw, &rwlock_lockops, msg); @@ -291,7 +291,7 @@ rw_vector_enter(krwlock_t *rw, const krw RW_ASSERT(rw, curthread != 0); RW_WANTLOCK(rw, op); - if (panicstr == NULL) { + if (__predict_true(panicstr == NULL)) { KDASSERT(pserialize_not_in_read_section()); LOCKDEBUG_BARRIER(&kernel_lock, 1); }