Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2218150/?format=api
{ "id": 2218150, "url": "http://patchwork.ozlabs.org/api/patches/2218150/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260331131622.30505-14-frederic@kernel.org/", "project": { "id": 2, "url": "http://patchwork.ozlabs.org/api/projects/2/?format=api", "name": "Linux PPC development", "link_name": "linuxppc-dev", "list_id": "linuxppc-dev.lists.ozlabs.org", "list_email": "linuxppc-dev@lists.ozlabs.org", "web_url": "https://github.com/linuxppc/wiki/wiki", "scm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git", "webscm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/", "list_archive_url_format": "https://lore.kernel.org/linuxppc-dev/{}/", "commit_url_format": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}" }, "msgid": "<20260331131622.30505-14-frederic@kernel.org>", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/20260331131622.30505-14-frederic@kernel.org/", "date": "2026-03-31T13:16:21", "name": "[13/14] sched/cputime: Handle idle irqtime gracefully", "commit_ref": null, "pull_url": null, "state": "handled-elsewhere", "archived": false, "hash": "4cfb1e9bc01ec230a8761db2b678b86c1008d84f", "submitter": { "id": 79411, "url": "http://patchwork.ozlabs.org/api/people/79411/?format=api", "name": "Frederic Weisbecker", "email": "frederic@kernel.org" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260331131622.30505-14-frederic@kernel.org/mbox/", "series": [ { "id": 498198, "url": "http://patchwork.ozlabs.org/api/series/498198/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=498198", "date": "2026-03-31T13:16:08", "name": "tick/sched: Refactor idle cputime accounting", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/498198/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2218150/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2218150/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linuxppc-dev+bounces-19093-incoming=patchwork.ozlabs.org@lists.ozlabs.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linuxppc-dev@lists.ozlabs.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=WeFf0V7Q;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19093-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)", "lists.ozlabs.org;\n arc=none smtp.remote-ip=172.234.252.31", "lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org", "lists.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=WeFf0V7Q;\n\tdkim-atps=neutral", "lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org\n (client-ip=172.234.252.31; helo=sea.source.kernel.org;\n envelope-from=frederic@kernel.org; receiver=lists.ozlabs.org)" ], "Received": [ "from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4flTFj5lXDz1y1q\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 01 Apr 2026 00:18:17 +1100 (AEDT)", "from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4flTFb5JxXz30FR;\n\tWed, 01 Apr 2026 00:18:11 +1100 (AEDT)", "from sea.source.kernel.org (sea.source.kernel.org [172.234.252.31])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4flTFZ4k46z2yfS\n\tfor <linuxppc-dev@lists.ozlabs.org>; Wed, 01 Apr 2026 00:18:10 +1100 (AEDT)", "from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])\n\tby sea.source.kernel.org (Postfix) with ESMTP id 24B7543E1F;\n\tTue, 31 Mar 2026 13:18:09 +0000 (UTC)", "by smtp.kernel.org (Postfix) with ESMTPSA id 09445C19423;\n\tTue, 31 Mar 2026 13:18:01 +0000 (UTC)" ], "ARC-Seal": "i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1774963091;\n\tcv=none;\n b=S/EO63G4nTLDFwffoQjRTQqYv0Amt7LPBs97wv3iFxSVmEW2Nf8e+NTw4mNt5vvwO1xVPqm8y3IQTyJxBlu7YFFi1szle9wsW1neP9+Qc+YKDA5bq2cfhKadTIpMMbDvhuG7q84NNmNauPR78clTm3c2bAY7BhZikao9kkXq7eJLvAgvCRqYQUqeXI3ls3sWytagD0HwHwu+rsMfMU2Jmh6PHmB/kB3gwgJb+T6GisFUscIE0zXiL3sDbQF5VOD6oOvl8HxOJpc9Lw4bjLzjo0BG3xRO5hrrGMHCFlgMibkfXpI/IDmzZNeOXrfEY22z6+cpfngYYzNMoZ/oIJJdcw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1774963091; c=relaxed/relaxed;\n\tbh=aVAn0QsyYLqySZbN8c9MxmOHzS7XmUtx/wvkrV8DR8c=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=hXqij8LSuJ4PVrRpEaymya9iWxTwF5VNQD5TjRkxkipW47PPeGWxaHurXMuFxGMC5UP7GhSyCBx4HcvXq6L7pN1p7Zn9Pycu/LIdocQQ1MrtmoRS4vt1QJCt7JUkR/eI/Fy7YIviNU1Kuobswm0diyC6q26PIJYcuxG4h+09UFYzIgqwySlyQK53A6MktnRaKjDOYNJcJqlOSv3SsCscB29DqrRwkcW4ekCpb1X00/Lq7sdcry4hXP5ubSAdnq6pbPpqNsrT7RMjDllleIV4EZFoogRKrr+NUX2ueHKvXMoBrJpOTRndaJweTod3G+TQsctRje9884+/82neYaZvQw==", "ARC-Authentication-Results": "i=1; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org;\n dkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=WeFf0V7Q; dkim-atps=neutral;\n spf=pass (client-ip=172.234.252.31; helo=sea.source.kernel.org;\n envelope-from=frederic@kernel.org;\n receiver=lists.ozlabs.org) smtp.mailfrom=kernel.org", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1774963089;\n\tbh=92dsTpBynD1g68/x/29CHbwEUuiIPa/Iwbdac5kZ2Xg=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=WeFf0V7Q76pBqWbBm8IGxACxytO3klh4ei3hm4d7O+torfL3SL0J88znMRVk3JZmw\n\t omf84HqK58CsG9RlCrTiYc7+bBSeYHg1vRC3OoshW/Au5njEL+lE6PY15qBPm6wcLt\n\t 2xWjsIqddQJwLG2HYfTTMM7ykffZVMd5qlLTrON6cT1cGi+j3nmvED7/989mH3RHh3\n\t 759W7vogKMpmVJ6QNpAFAaV8mdaMZl2RHtcwjuajIUZT4vsozdYWLQG6ajGRF59nS0\n\t /ceyoU60qKQX7AEOXV+KNEF2biVlKfOj3qUymOffxL4QvLd6ryyQAUT6bAiirxUy+T\n\t aqzSnvT3I0SBA==", "From": "Frederic Weisbecker <frederic@kernel.org>", "To": "LKML <linux-kernel@vger.kernel.org>", "Cc": "Frederic Weisbecker <frederic@kernel.org>,\n\t\"Christophe Leroy (CS GROUP)\" <chleroy@kernel.org>,\n\t\"Rafael J. Wysocki\" <rafael@kernel.org>,\n\tAlexander Gordeev <agordeev@linux.ibm.com>,\n\tAnna-Maria Behnsen <anna-maria@linutronix.de>,\n\tBen Segall <bsegall@google.com>,\n\tBoqun Feng <boqun.feng@gmail.com>,\n\tChristian Borntraeger <borntraeger@linux.ibm.com>,\n\tDietmar Eggemann <dietmar.eggemann@arm.com>,\n\tHeiko Carstens <hca@linux.ibm.com>,\n\tIngo Molnar <mingo@redhat.com>,\n\tJan Kiszka <jan.kiszka@siemens.com>,\n\tJoel Fernandes <joelagnelf@nvidia.com>,\n\tJuri Lelli <juri.lelli@redhat.com>,\n\tKieran Bingham <kbingham@kernel.org>,\n\tMadhavan Srinivasan <maddy@linux.ibm.com>,\n\tMel Gorman <mgorman@suse.de>,\n\tMichael Ellerman <mpe@ellerman.id.au>,\n\tNeeraj Upadhyay <neeraj.upadhyay@kernel.org>,\n\tNicholas Piggin <npiggin@gmail.com>,\n\t\"Paul E . McKenney\" <paulmck@kernel.org>,\n\tPeter Zijlstra <peterz@infradead.org>,\n\tShrikanth Hegde <sshegde@linux.ibm.com>,\n\tSteven Rostedt <rostedt@goodmis.org>,\n\tSven Schnelle <svens@linux.ibm.com>,\n\tThomas Gleixner <tglx@linutronix.de>,\n\tUladzislau Rezki <urezki@gmail.com>,\n\tValentin Schneider <vschneid@redhat.com>,\n\tVasily Gorbik <gor@linux.ibm.com>,\n\tVincent Guittot <vincent.guittot@linaro.org>,\n\tViresh Kumar <viresh.kumar@linaro.org>,\n\tXin Zhao <jackzxcui1989@163.com>,\n\tlinux-pm@vger.kernel.org,\n\tlinux-s390@vger.kernel.org,\n\tlinuxppc-dev@lists.ozlabs.org", "Subject": "[PATCH 13/14] sched/cputime: Handle idle irqtime gracefully", "Date": "Tue, 31 Mar 2026 15:16:21 +0200", "Message-ID": "<20260331131622.30505-14-frederic@kernel.org>", "X-Mailer": "git-send-email 2.53.0", "In-Reply-To": "<20260331131622.30505-1-frederic@kernel.org>", "References": "<20260331131622.30505-1-frederic@kernel.org>", "X-Mailing-List": "linuxppc-dev@lists.ozlabs.org", "List-Id": "<linuxppc-dev.lists.ozlabs.org>", "List-Help": "<mailto:linuxppc-dev+help@lists.ozlabs.org>", "List-Owner": "<mailto:linuxppc-dev+owner@lists.ozlabs.org>", "List-Post": "<mailto:linuxppc-dev@lists.ozlabs.org>", "List-Archive": "<https://lore.kernel.org/linuxppc-dev/>,\n <https://lists.ozlabs.org/pipermail/linuxppc-dev/>", "List-Subscribe": "<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>", "List-Unsubscribe": "<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>", "Precedence": "list", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-Spam-Status": "No, score=-0.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED,\n\tDKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8", "X-Spam-Checker-Version": "SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org" }, "content": "The dyntick-idle cputime accounting always assumes that IRQ time\naccounting is enabled and consequently stops elapsing the idle time\nduring dyntick-idle IRQs.\n\nThis doesn't mix up well with disabled IRQ time accounting because then\nidle IRQs become a cputime blind-spot. Also this feature is disabled\non most configurations and the overhead of pausing dyntick-idle\naccounting while in idle IRQs could then be avoided.\n\nFix the situation with conditionally pausing dyntick-idle accounting\nduring idle IRQs only if neither native vtime (which does IRQ time\naccounting) nor generic IRQ time accounting are enabled.\n\nAlso make sure that the accumulated IRQ time is not accidentally\nsubstracted from later accounting.\n\nSigned-off-by: Frederic Weisbecker <frederic@kernel.org>\nTested-by: Shrikanth Hegde <sshegde@linux.ibm.com>\n---\n kernel/sched/cputime.c | 9 ++++++---\n 1 file changed, 6 insertions(+), 3 deletions(-)", "diff": "diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c\nindex 137e6b099fa9..a77b6f1dbdca 100644\n--- a/kernel/sched/cputime.c\n+++ b/kernel/sched/cputime.c\n@@ -47,7 +47,8 @@ static void irqtime_account_delta(struct irqtime *irqtime, u64 delta,\n \tu64_stats_update_begin(&irqtime->sync);\n \tcpustat[idx] += delta;\n \tirqtime->total += delta;\n-\tirqtime->tick_delta += delta;\n+\tif (!kcpustat_idle_dyntick())\n+\t\tirqtime->tick_delta += delta;\n \tu64_stats_update_end(&irqtime->sync);\n }\n \n@@ -478,7 +479,8 @@ void kcpustat_irq_enter(u64 now)\n {\n \tstruct kernel_cpustat *kc = kcpustat_this_cpu;\n \n-\tif (!vtime_generic_enabled_this_cpu())\n+\tif (!vtime_generic_enabled_this_cpu() &&\n+\t (irqtime_enabled() || vtime_accounting_enabled_this_cpu()))\n \t\tkcpustat_idle_stop(kc, now);\n }\n \n@@ -486,7 +488,8 @@ void kcpustat_irq_exit(u64 now)\n {\n \tstruct kernel_cpustat *kc = kcpustat_this_cpu;\n \n-\tif (!vtime_generic_enabled_this_cpu())\n+\tif (!vtime_generic_enabled_this_cpu() &&\n+\t (irqtime_enabled() || vtime_accounting_enabled_this_cpu()))\n \t\tkcpustat_idle_start(kc, now);\n }\n \n", "prefixes": [ "13/14" ] }