git: 7c27fee0ea16 - stable/13 - proc: Remove assertion that P_WEXIT is not set in proc_rwmem()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 15 Mar 2022 16:26:40 UTC
The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7c27fee0ea1690445b98e29c12c8939983257c84 commit 7c27fee0ea1690445b98e29c12c8939983257c84 Author: Mark Johnston <markj@FreeBSD.org> AuthorDate: 2022-03-01 20:08:25 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2022-03-15 15:40:22 +0000 proc: Remove assertion that P_WEXIT is not set in proc_rwmem() exit1() sets P_WEXIT before waiting for holding threads to finish, rather than after, so this assertion is racy. Fixes: 12fb39ec3e6b ("proc: Relax proc_rwmem()'s assertion on the process hold count") Reported by: Jenkins (cherry picked from commit 879b0604a8940f575f03bde5457bcf13e64c1ae8) --- sys/kern/sys_process.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c index 273adca19a0d..267ffc3d8d50 100644 --- a/sys/kern/sys_process.c +++ b/sys/kern/sys_process.c @@ -219,8 +219,6 @@ proc_rwmem(struct proc *p, struct uio *uio) */ if (p != curproc) PROC_ASSERT_HELD(p); - KASSERT((p->p_flag & P_WEXIT) == 0, - ("%s: process %p is exiting", __func__, p)); PROC_LOCK_ASSERT(p, MA_NOTOWNED); /*