[Bug 287566] sleeping thread holds process lock (drm-kmod most likely)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 18 Jun 2025 17:58:41 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287566
--- Comment #9 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:
URL:
https://cgit.FreeBSD.org/src/commit/?id=0452f5f7b37af81dba3953c7127385fe6f307790
commit 0452f5f7b37af81dba3953c7127385fe6f307790
Author: Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2025-06-16 16:01:12 +0000
Commit: Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2025-06-18 17:57:49 +0000
audit: move the wait from the queue length from the commit to alloc
AUDIT_SYSCALL_EXIT() and indirectly audit_commit() is intended to be
called from arbitrary top-level context. This means that any sleepable
locks can be owned by the caller, and which makes the sleeping in
audit_commit() forbidden.
Since we need to sleep for the record in audit_alloc() anyway, move the
sleep for the queue limit there. At worst, if the audit is suspended is
disabled when we actually reach the commit location, this means that we
lost time uselessly.
PR: 287566
Reviewed by: markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D50879
sys/security/audit/audit.c | 27 +++++++++++----------------
1 file changed, 11 insertions(+), 16 deletions(-)
--
You are receiving this mail because:
You are the assignee for the bug.