From patchwork Thu Sep 17 08:07:44 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jisheng Zhang X-Patchwork-Id: 7203191 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 09ED49F380 for ; Thu, 17 Sep 2015 08:14:00 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 34C4F207EB for ; Thu, 17 Sep 2015 08:13:59 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5142B207E8 for ; Thu, 17 Sep 2015 08:13:58 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1ZcUIV-0006UY-K4; Thu, 17 Sep 2015 08:12:03 +0000 Received: from mx0a-0016f401.pphosted.com ([67.231.148.174]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1ZcUIS-0006TV-Sm for linux-arm-kernel@lists.infradead.org; Thu, 17 Sep 2015 08:12:01 +0000 Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.15.0.59/8.15.0.59) with SMTP id t8H89ib7027361; Thu, 17 Sep 2015 01:11:25 -0700 Received: from sc-exch04.marvell.com ([199.233.58.184]) by mx0a-0016f401.pphosted.com with ESMTP id 1wy3qpbfhp-1 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 17 Sep 2015 01:11:25 -0700 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Thu, 17 Sep 2015 01:11:24 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server id 15.0.1044.25 via Frontend Transport; Thu, 17 Sep 2015 01:11:24 -0700 Received: from xhacker (unknown [10.37.135.134]) by maili.marvell.com (Postfix) with ESMTP id 9B9AF3F703F; Thu, 17 Sep 2015 01:11:23 -0700 (PDT) Date: Thu, 17 Sep 2015 16:07:44 +0800 From: Jisheng Zhang To: , , , , Subject: Re: [PATCH v2] arm: add cpu_idle tracepoints to arch_cpu_idle Message-ID: <20150917160744.52400e0e@xhacker> In-Reply-To: <1442424760-4104-1-git-send-email-jszhang@marvell.com> References: <1442424760-4104-1-git-send-email-jszhang@marvell.com> X-Mailer: Claws Mail 3.12.0 (GTK+ 2.24.28; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2015-09-17_04:, , signatures=0 X-Proofpoint-Spam-Details: rule=inbound_notspam policy=inbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1507310000 definitions=main-1509170148 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20150917_011200_942467_28C8DFD7 X-CRM114-Status: GOOD ( 16.77 ) X-Spam-Score: -2.6 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Dear all, On Thu, 17 Sep 2015 01:32:40 +0800 Jisheng Zhang wrote: > Currently, if cpuidle is disabled or not supported, powertop reports > zero wakeups and zero events. This is due to the cpu_idle tracepoints > are missing. > > This patch is to make cpu_idle tracepoints always available even if > cpuidle is disabled or not supported. > > Signed-off-by: Jisheng Zhang > --- > Since v1: > - ignore arm_pm_idle. Something related: let's have a look at arch/arm/mach-omap2/pm34xx.c the omap3_pm_idle(void) function, it uses trace_cpu_idle(), should we use the _rcuidle version as below: > arch/arm/kernel/process.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c > index 7a7c4ce..83d2dc5 100644 > --- a/arch/arm/kernel/process.c > +++ b/arch/arm/kernel/process.c > @@ -28,6 +28,7 @@ > #include > #include > #include > +#include > > #include > #include > @@ -66,11 +67,15 @@ void (*arm_pm_idle)(void); > > void arch_cpu_idle(void) > { > - if (arm_pm_idle) > + if (arm_pm_idle) { > arm_pm_idle(); > - else > + local_irq_enable(); > + } else { > + trace_cpu_idle_rcuidle(1, smp_processor_id()); > cpu_do_idle(); > - local_irq_enable(); > + local_irq_enable(); > + trace_cpu_idle_rcuidle(PWR_EVENT_EXIT, smp_processor_id()); > + } > } > > void arch_cpu_idle_prepare(void) diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index 87b98bf9..b3bc972 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@ -301,11 +301,11 @@ static void omap3_pm_idle(void) if (omap_irq_pending()) return; - trace_cpu_idle(1, smp_processor_id()); + trace_cpu_rcuidle(1, smp_processor_id()); omap_sram_idle(); - trace_cpu_idle(PWR_EVENT_EXIT, smp_processor_id()); + trace_cpu_rcuidle(PWR_EVENT_EXIT, smp_processor_id()); } #ifdef CONFIG_SUSPEND