Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.1/patches/2220897/?format=api
{ "id": 2220897, "url": "http://patchwork.ozlabs.org/api/1.1/patches/2220897/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netfilter-devel/patch/20260408114952.062400833@kernel.org/", "project": { "id": 26, "url": "http://patchwork.ozlabs.org/api/1.1/projects/26/?format=api", "name": "Netfilter Development", "link_name": "netfilter-devel", "list_id": "netfilter-devel.vger.kernel.org", "list_email": "netfilter-devel@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null }, "msgid": "<20260408114952.062400833@kernel.org>", "date": "2026-04-08T11:53:52", "name": "[V2,02/11] hrtimer: Use hrtimer_start_expires_user() for hrtimer sleepers", "commit_ref": null, "pull_url": null, "state": "handled-elsewhere", "archived": true, "hash": "4a915f00c66783cf7e4afa9e3f53e3a84d0b6e9e", "submitter": { "id": 92397, "url": "http://patchwork.ozlabs.org/api/1.1/people/92397/?format=api", "name": "Thomas Gleixner", "email": "tglx@kernel.org" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/netfilter-devel/patch/20260408114952.062400833@kernel.org/mbox/", "series": [ { "id": 499126, "url": "http://patchwork.ozlabs.org/api/1.1/series/499126/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netfilter-devel/list/?series=499126", "date": "2026-04-08T11:53:41", "name": "hrtimers: Prevent hrtimer interrupt starvation", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/499126/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2220897/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2220897/checks/", "tags": {}, "headers": { "Return-Path": "\n <netfilter-devel+bounces-11715-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "netfilter-devel@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=fvHoN7iD;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c15:e001:75::12fc:5321; helo=sin.lore.kernel.org;\n envelope-from=netfilter-devel+bounces-11715-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"fvHoN7iD\"", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201" ], "Received": [ "from sin.lore.kernel.org (sin.lore.kernel.org\n [IPv6:2600:3c15:e001:75::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4frM1p6g2nz1xy1\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 08 Apr 2026 21:54:54 +1000 (AEST)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id E8B05303356F\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 8 Apr 2026 11:54:11 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 0519D3BD65A;\n\tWed, 8 Apr 2026 11:53:56 +0000 (UTC)", "from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 690B73BB9F3;\n\tWed, 8 Apr 2026 11:53:55 +0000 (UTC)", "by smtp.kernel.org (Postfix) with ESMTPSA id A1547C2BCB5;\n\tWed, 8 Apr 2026 11:53:54 +0000 (UTC)" ], "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775649235; cv=none;\n b=J65AcozGT0/CIflFnRcEbrHKGRRL6o1eJltHPrY5AvfpFdKgewfUljVU9c5ysBpa57lDixsjIoLZ3/KYoiqul7WqT7z0dbD2TnNihTnBw9O2SNvbOZtY7OajHME1Wp1sCMYMHKbYw5ZuPLxypKVyVRiwGyDPgJ/HaifZ9re1e3w=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775649235; c=relaxed/simple;\n\tbh=l6wY0qxLdk/x5El2G70gv1eRbDyNVtHmMtimpYI4jGY=;\n\th=Date:Message-ID:From:To:Cc:Subject:References:MIME-Version:\n\t Content-Type;\n b=Uk4fzTPAFMRv+rGy3Hq2CAjc/5g4tb4cGfoNWD9UIaMXADL8Xj57vbnqY9w1z2ELMzKh9y1cRpkLXbdiLoXAoEtaNNipj1eREt8EjkEPexOFnNixQpS19Vp01rCPOoClGmqN+Q1otkt4BUj0PhmZednYOqZbkr5qIaevDmaUQ8w=", "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=fvHoN7iD; arc=none smtp.client-ip=10.30.226.201", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1775649235;\n\tbh=l6wY0qxLdk/x5El2G70gv1eRbDyNVtHmMtimpYI4jGY=;\n\th=Date:From:To:Cc:Subject:References:From;\n\tb=fvHoN7iDlcOoDX5wUQ0iBHqPn12l/BthKcIDoc/dGoGhT8O2JjBvH6HjzqASJvUmO\n\t 3Ux9oTqGupW/zM2tPAcLOZMEIrvlzcThPj9QtVhVJo2Gq/gZ+KLpK1iAltEUYnOY/O\n\t JH9W4acyuLHyYFvFLqpeT8k0/hoLprLNo5WvvVp3MWbYvS+zCjv/dzcqsV4098Zw+z\n\t eKy46J9CYGtDtH9aTVcBCeWe+JkM/LGi+vZFuLPcQqKYCUiykvZG/4LklmyiqUD4VW\n\t 5nTc6a8v0+X6LaujPoWjBDUVaTc6dndy36u5/2HgJASlvUy7UjwB9s9d0KfUjxgy58\n\t gmwC4W+jsxK2g==", "Date": "Wed, 08 Apr 2026 13:53:52 +0200", "Message-ID": "<20260408114952.062400833@kernel.org>", "User-Agent": "quilt/0.68", "From": "Thomas Gleixner <tglx@kernel.org>", "To": "LKML <linux-kernel@vger.kernel.org>", "Cc": "\"Peter Zijlstra (Intel)\" <peterz@infradead.org>,\n Anna-Maria Behnsen <anna-maria@linutronix.de>,\n Frederic Weisbecker <frederic@kernel.org>,\n Calvin Owens <calvin@wbinvd.org>,\n John Stultz <jstultz@google.com>,\n Stephen Boyd <sboyd@kernel.org>,\n Alexander Viro <viro@zeniv.linux.org.uk>,\n Christian Brauner <brauner@kernel.org>,\n Jan Kara <jack@suse.cz>,\n linux-fsdevel@vger.kernel.org,\n Sebastian Reichel <sre@kernel.org>,\n linux-pm@vger.kernel.org,\n Pablo Neira Ayuso <pablo@netfilter.org>,\n Florian Westphal <fw@strlen.de>,\n Phil Sutter <phil@nwl.cc>,\n netfilter-devel@vger.kernel.org,\n coreteam@netfilter.org", "Subject": "[patch V2 02/11] hrtimer: Use hrtimer_start_expires_user() for\n hrtimer sleepers", "References": "<20260408102356.783133335@kernel.org>", "Precedence": "bulk", "X-Mailing-List": "netfilter-devel@vger.kernel.org", "List-Id": "<netfilter-devel.vger.kernel.org>", "List-Subscribe": "<mailto:netfilter-devel+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:netfilter-devel+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8" }, "content": "Most hrtimer sleepers are user controlled and user space can hand arbitrary\nexpiry values in as long as they are valid timespecs. If the expiry value\nis in the past then this requires a full loop through reprogramming the\nclock event device, taking the hrtimer interrupt, waking the task and\nreprogram again.\n\nUse hrtimer_start_expires_user() which avoids the full round trip by\nchecking the timer for expiry on enqueue.\n\nSigned-off-by: Thomas Gleixner <tglx@kernel.org>\nAcked-by: Peter Zijlstra (Intel) <peterz@infradead.org>\nCc: Anna-Maria Behnsen <anna-maria@linutronix.de>\nCc: Frederic Weisbecker <frederic@kernel.org>\n\n---\n kernel/time/hrtimer.c | 6 +++++-\n 1 file changed, 5 insertions(+), 1 deletion(-)", "diff": "--- a/kernel/time/hrtimer.c\n+++ b/kernel/time/hrtimer.c\n@@ -2152,7 +2152,11 @@ void hrtimer_sleeper_start_expires(struc\n \tif (IS_ENABLED(CONFIG_PREEMPT_RT) && sl->timer.is_hard)\n \t\tmode |= HRTIMER_MODE_HARD;\n \n-\thrtimer_start_expires(&sl->timer, mode);\n+\t/* If already expired, clear the task pointer and set current state to running */\n+\tif (!hrtimer_start_expires_user(&sl->timer, mode)) {\n+\t\tsl->task = NULL;\n+\t\t__set_current_state(TASK_RUNNING);\n+\t}\n }\n EXPORT_SYMBOL_GPL(hrtimer_sleeper_start_expires);\n \n", "prefixes": [ "V2", "02/11" ] }