git: 879b0604a894 - main - proc: Remove assertion that P_WEXIT is not set in proc_rwmem()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 01 Mar 2022 20:10:08 UTC
The branch main has been updated by markj:
URL: https://cgit.FreeBSD.org/src/commit/?id=879b0604a8940f575f03bde5457bcf13e64c1ae8
commit 879b0604a8940f575f03bde5457bcf13e64c1ae8
Author: Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2022-03-01 20:08:25 +0000
Commit: Mark Johnston <markj@FreeBSD.org>
CommitDate: 2022-03-01 20:09:45 +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
---
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 8d8c5a1d34ff..965e22a38598 100644
--- a/sys/kern/sys_process.c
+++ b/sys/kern/sys_process.c
@@ -340,8 +340,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);
/*