From nobody Fri Feb 13 15:46:48 2026 X-Original-To: dev-commits-src-main@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 4fCGkJ5xD2z6S1Xq for ; Fri, 13 Feb 2026 15:46:48 +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 4fCGkJ3DTGz3fcm for ; Fri, 13 Feb 2026 15:46:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770997608; 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=05QheqqnwGMrltdFwI5bFCZW4PwusaVxp1e4S5cSRDM=; b=boEp/iliwreJqLZKNiYCqk6lbO6WsGFJNIR4KV/+UfOGzJ13PJgTG6PA97RpOhWk9XB3wr h33k5TcY0PsEcFeqt6ikijEZml17zCOENy6XjETxjEjk9j1XfMafCRfLuQY52ayo4ahOWE dfTpt5X0awr+jyoTaPS6M84wy+c+jmDFvgDr5UL0vuxT7dycCXfwijJ7WI3A2sr/gqgEBo Zscs2Phl9m7OcEx6BNgYr0YEi3ZV4+w9PfwhfSf7L1Que+QLJdkKHLQJgyZCM6tOrU8O85 PmV8KSuDQij7YkSVTGbyJ83L9ElRf0WLgEnv2FBzw91zEwutGSDSoGeC2POzgw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770997608; a=rsa-sha256; cv=none; b=LwW4WcD+a+sGisn4hS6BXgc+pqKS0cSOVHCdOR2g8IWrco2Yex3AsAG6jFcDuMhzThLRwQ iY6MTV/K2x/5Jy1GnrPDcDY5F29q35j1K8ROhvf1kj92DNdoxJq9ZZyjUvTm/1pTeU63Rs kHfNesg4GZlk98/qE9vABrZ28V1F2FzZi1a2vMbR61GWFRTBorA8rFghIKJMa6pmx5NhWX q0FADzfhmqwZ7anvJoCTeUgSvc+sEozEXuBYr958eHhppv9Z2utJ+JESQe3lFHzDaNkRSy kODastDnRuQ2s1DGko+DWq+sNvg7lPSEFZ+EScbKn3C9u4+71tYeAiw+JN6bFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770997608; 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=05QheqqnwGMrltdFwI5bFCZW4PwusaVxp1e4S5cSRDM=; b=Qo2Ok7ggwuPlvSZMTo3CkUukyY5MqazBFMW0zKqsW/3mNTonr3UEpb4N++lGUlIEPrG8R6 b1ms5AOVduwddQ0zWiuXF0DnQkRZdNCA9bc27MNMACwQueK0kjilH1DjPEgH4iIPcT1c87 lWtA/wkJiBiUBM5+JAFzauAKV89Ylm7o9EzoHy2ox9CTZh28n9lsExYeJ7q+h2QWqiR+tl VfopJ7JtQE15jnqkiTHNZpPa0fsjWqJWtSXD9JiCw/r95JoIvGYk69SLKThsTcEo45LQ2C /CiXhgm+bva6WS8SD56Rrbj1vbL+aPlB38b7CuA2wB2tmcJxF/w89L0k1Ox7eA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fCGkJ1s3JzBtY for ; Fri, 13 Feb 2026 15:46:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 20cbc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 13 Feb 2026 15:46:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 75a30ea09f4e - main - filt_timerexpire_l(): re-insert restarted timer into head instead of tail List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@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: 75a30ea09f4e75480743fae5c2369d50a6d8526c Auto-Submitted: auto-generated Date: Fri, 13 Feb 2026 15:46:48 +0000 Message-Id: <698f4768.20cbc.53f3cde2@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=75a30ea09f4e75480743fae5c2369d50a6d8526c commit 75a30ea09f4e75480743fae5c2369d50a6d8526c Author: Konstantin Belousov AuthorDate: 2026-02-12 20:24:13 +0000 Commit: Konstantin Belousov CommitDate: 2026-02-13 15:46:41 +0000 filt_timerexpire_l(): re-insert restarted timer into head instead of tail of the resumed timers list, so that kqtimer_proc_continue() does not iterated into the same timer again. PR: 293141 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55264 --- sys/kern/kern_event.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index a48408fd482a..85b7b6c953af 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -873,8 +873,13 @@ filt_timerexpire_l(struct knote *kn, bool proc_locked) PROC_LOCK(p); if (P_SHOULDSTOP(p) || P_KILLED(p)) { if ((kc->flags & KQ_TIMER_CB_ENQUEUED) == 0) { + /* + * Insert into head so that + * kqtimer_proc_continue() does not + * iterate into us again. + */ kc->flags |= KQ_TIMER_CB_ENQUEUED; - TAILQ_INSERT_TAIL(&p->p_kqtim_stop, kc, link); + TAILQ_INSERT_HEAD(&p->p_kqtim_stop, kc, link); } if (!proc_locked) PROC_UNLOCK(p);