Date: Tue, 27 Nov 2018 22:32:34 +0000 (UTC) From: Eric van Gyzen <vangyzen@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r341099 - stable/12/sys/kern Message-ID: <201811272232.wARMWYV8026438@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: vangyzen Date: Tue Nov 27 22:32:34 2018 New Revision: 341099 URL: https://svnweb.freebsd.org/changeset/base/341099 Log: MFC r340409 Make no assertions about lock state when the scheduler is stopped. Change the assert paths in rm, rw, and sx locks to match the lock and unlock paths. I did this for mutexes in r306346. Reported by: Travis Lane <tlane@isilon.com> Sponsored by: Dell EMC Isilon Modified: stable/12/sys/kern/kern_rmlock.c stable/12/sys/kern/kern_rwlock.c stable/12/sys/kern/kern_sx.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/kern_rmlock.c ============================================================================== --- stable/12/sys/kern/kern_rmlock.c Tue Nov 27 22:02:54 2018 (r341098) +++ stable/12/sys/kern/kern_rmlock.c Tue Nov 27 22:32:34 2018 (r341099) @@ -742,7 +742,7 @@ _rm_assert(const struct rmlock *rm, int what, const ch { int count; - if (panicstr != NULL) + if (SCHEDULER_STOPPED()) return; switch (what) { case RA_LOCKED: Modified: stable/12/sys/kern/kern_rwlock.c ============================================================================== --- stable/12/sys/kern/kern_rwlock.c Tue Nov 27 22:02:54 2018 (r341098) +++ stable/12/sys/kern/kern_rwlock.c Tue Nov 27 22:32:34 2018 (r341099) @@ -1439,7 +1439,7 @@ __rw_assert(const volatile uintptr_t *c, int what, con { const struct rwlock *rw; - if (panicstr != NULL) + if (SCHEDULER_STOPPED()) return; rw = rwlock2rw(c); Modified: stable/12/sys/kern/kern_sx.c ============================================================================== --- stable/12/sys/kern/kern_sx.c Tue Nov 27 22:02:54 2018 (r341098) +++ stable/12/sys/kern/kern_sx.c Tue Nov 27 22:32:34 2018 (r341099) @@ -1416,7 +1416,7 @@ _sx_assert(const struct sx *sx, int what, const char * int slocked = 0; #endif - if (panicstr != NULL) + if (SCHEDULER_STOPPED()) return; switch (what) { case SA_SLOCKED:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201811272232.wARMWYV8026438>