From nobody Tue Jan 20 19:45:19 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwd8b3v1Dz6P2wk for ; Tue, 20 Jan 2026 19:45:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwd8b35Nmz3v4b for ; Tue, 20 Jan 2026 19:45:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768938319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KrLqEp7XTC9BOR4UGSKa9AL6q0cDEYxdkGy09RfaND8=; b=hi/cDe/2xqmMwPXYeaCh3qQh4uRZbcjUaFqgBWino/2hiXKViwBmv3H4sOsPZPCZS95rC0 ycvZLLG8T58DqEsAsT1WUZPzkj5jlnZqhRuLLjIA3QuBUznpcyeDXgkxbZVZFHj6oFHrQr 89bFzTHqPlnUVrxD0cb7E5vfhn9ip+8vo3bYODxrdPec/J/SX7im3FghIvyhyCjrlzzstK Hpie7RtU/CiHPzKf7CFX2IECkDJ1z5nKxyL1xQ3LUPNEQVibXPZnBwPWvGtzLwlPq3ODoh 69JtxPB0FPjHvE1Ji2lzlKxN0Jz+skUKQLtif9XQdTzFiqiPQaRDvzVVwWSYbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768938319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KrLqEp7XTC9BOR4UGSKa9AL6q0cDEYxdkGy09RfaND8=; b=NtORWeR+t/FxAElpVAgOfCQdFyfPA3k02ASrNmBCxOyVgbS3yGu2gC1zRZDaK45nZCSAK0 bNNF3h036X8TtZMU1P/e1NiMixp1tS3aZfpwVAcKyKIYW33hJ8E3iE0P8BZ+9cpJwGQB02 vc2zDVduM4It566bWae6e/HC4oZfH6vkQjBeDmuMAQurMHISumiv1y3OdWm3qY29X276nJ sDpa+LpsDyvx3ovQYIimNuVGK4NWiwdIyGuuChnZQKHx0bBNmb20rgroSzFuW6WNhBvXkR o07JYIFAebihwFYW20pad53VqaNAx2dcQyxVcMtiPG0To03c2T3nJTGrXAQ5Hw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768938319; a=rsa-sha256; cv=none; b=i5vRmqPTuTowVzOC3dMGiB/nwON+qyYT8DbbPvzxhdA+p5RtaQKMCWzclFfS370geXd1IB rwJLiP3IhaSxSf0dc3wUUfc0bhx45NZS1oMhUkU6o2ZZwu00/LCGFts82sAvm/RTNqRmng l+mCjI2QABMRW+J1rJN3Vo7U7fsBh3S3TB6OCKiz6Q8zV9QOAtFlgOtN8u17KYBUZ/O06Y c8YTS4t2xKsD3GIuAB8aKhipUnyFzvvrqVaCfa9hJStNHBWichBsAwNLkjkY2TrKsnTpyr RrN/jXqzFoypwtGv9r8f0odKvgD2Eaccz8ENtTa6gs40OaXuZEu4xIlSTdxyXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dwd8b2hB7z1Mm for ; Tue, 20 Jan 2026 19:45:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c0b6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 19:45:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 6bb3f208617b - main - ktrace: do not enqueue request if the process' ktrioparams are freed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6bb3f208617b58a54e2204eb31bae3f9a86117a7 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 19:45:19 +0000 Message-Id: <696fdb4f.c0b6.47f1bc32@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6bb3f208617b58a54e2204eb31bae3f9a86117a7 commit 6bb3f208617b58a54e2204eb31bae3f9a86117a7 Author: Konstantin Belousov AuthorDate: 2026-01-20 15:01:08 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-20 19:44:54 +0000 ktrace: do not enqueue request if the process' ktrioparams are freed The p_ktrioparms are freed on termination of tracing. Any ktr requests added to the queue after that would hang there and leak on the struct proc recycling, or trigger an assert in the process destructor for debug builds. Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54804 --- sys/kern/kern_ktrace.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_ktrace.c b/sys/kern/kern_ktrace.c index 15a8a4ab4fa4..b58e69a3f38e 100644 --- a/sys/kern/kern_ktrace.c +++ b/sys/kern/kern_ktrace.c @@ -373,11 +373,17 @@ ktr_getrequest(int type) static void ktr_enqueuerequest(struct thread *td, struct ktr_request *req) { + bool sched_ast; mtx_lock(&ktrace_mtx); - STAILQ_INSERT_TAIL(&td->td_proc->p_ktr, req, ktr_list); + sched_ast = td->td_proc->p_ktrioparms != NULL; + if (sched_ast) + STAILQ_INSERT_TAIL(&td->td_proc->p_ktr, req, ktr_list); + else + ktr_freerequest_locked(req); mtx_unlock(&ktrace_mtx); - ast_sched(td, TDA_KTRACE); + if (sched_ast) + ast_sched(td, TDA_KTRACE); } /*