Message ID | 20221123195010.6859-12-mike.leach@linaro.org |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp2994780wrr; Wed, 23 Nov 2022 11:54:21 -0800 (PST) X-Google-Smtp-Source: AA0mqf5hoIKig/WUp8d4tBP3zkfsQ1BRAXyQKNQWIjShtJXpriPE23C3fja+8xJSUSJ4lkCkKmI7 X-Received: by 2002:a17:903:40cc:b0:189:33cd:63d with SMTP id t12-20020a17090340cc00b0018933cd063dmr9466898pld.99.1669233261026; Wed, 23 Nov 2022 11:54:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669233261; cv=none; d=google.com; s=arc-20160816; b=wHF6rtX1SNWbN98dJsZ8ucsvNgQXbu6rfjOt/2Byyf4P5pbxfgUBlnkTutZk20i/4k Z0TRrP1jdDecwBG61FSnLwweXCZVIzqpyBThJBIdJVbxVVaLGsTGwYhFNI20b+mdd3M9 sU+WsXferaNJ5rMqUXffTfgN2cSLw12luSRFiuLztoKJ61lSMnN2/cVoT+LLl2as12ua mwLhrQm57l7jm2JqujAjldo/3wuxKxx6rLj2b1eBuRx6cCoxL3Qmq9hp/cvkLCVfg9Oy 80RAAWnYNBQ7YspnlVSTwbjzNnRZb/VHVqn8wh0IQjfQFSzvQlQBAIR37vcD6Yz1+Mpl /BYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:dkim-signature; bh=q/rZtCQJIH1tcdWsQUgVvKDosjDAE+Gq7OIwmjNOiDI=; b=WNX9HY8SJUwry19izNl6IffZG0fUHCliwD4g2FPLzG9P2PbxUXe+XdwwdIzPS3ajSP npDX9Df3ICUal8tQyVCfuwWc/UDGNip4Ue/w1RbY/p32b84W9tBWHVST+lAWQ4SDLaR3 sOI5shg8oBuhNVvb/uw9WWJMIRzdAcDstg4x1UyIUaIM4/Bh+v7hRDR8wHE80Vq1M+iR 399YvMzJnsAaL9jxNXZraOh4/PY/8s6KlaaApQtoHWsgqz8189t7MpA0ZyxA0BBSYWX4 /V21Udu0Vn46sUtiwW12LPGAi5iLZCmoYWvBoFpwK1Mo3r2zHL3dJAdd7OjdOaKYR920 jlrQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="Y0wzeg/9"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o13-20020a17090a420d00b0020d457c5083si134618pjg.147.2022.11.23.11.54.08; Wed, 23 Nov 2022 11:54:21 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="Y0wzeg/9"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239144AbiKWTvf (ORCPT <rfc822;fengqi706@gmail.com> + 99 others); Wed, 23 Nov 2022 14:51:35 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41394 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238655AbiKWTuv (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Wed, 23 Nov 2022 14:50:51 -0500 Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 58137A1A23 for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 11:50:34 -0800 (PST) Received: by mail-wr1-x42c.google.com with SMTP id x5so26965895wrt.7 for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 11:50:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=references:in-reply-to:message-id:date:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to; bh=q/rZtCQJIH1tcdWsQUgVvKDosjDAE+Gq7OIwmjNOiDI=; b=Y0wzeg/9IEcrSrRDjm7ewn/WmRVLl9UfqDflyrgJ9IvuIAkyBU71uuBK++bvGEkdBS cBKsQM9HBAjhqCRA05xgQhQfmSaQ32g/6tLlrugADv7VQQ1B46VcGwY1VGRZ+0XePHqo tUU2qNaUxoTJVRD3r3y7Kx+lb35dMY7UBYvUrG6J+YOzEomA//1xxqz6gdk2bxBUkihB RgRMCwsDeT8HCDqK0TuLt5kJTl9bI0/b/eG5k+FzAfSz5IyYKGZU3qDb8UP/0FcAa1aS stE219YI2e8ekdnspHR7Xns+ih/fw88y9ATSKPvblGnWdf405TqixObxDC4Fs9o7Ywv1 nY7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=references:in-reply-to:message-id:date:subject:cc:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=q/rZtCQJIH1tcdWsQUgVvKDosjDAE+Gq7OIwmjNOiDI=; b=gjzuxW8SekFitGB8DlAtDTolBkf8XtUsBcWmaHu31QhJBJzthfLlsMtaePru1Q/OsX JecSrZBRorOnp8a2OZk7P5Bn4vh5TZ8y8sQleEytEo/mIN6keTk8JIut7FggK6mFA3lZ FIg1B8fGKPcryJhVu1U1TcBmTdyrylkMMtRitsi9hQgJagpuEzdMH1jLNLlnVu2PdlUL sUvz5cc2ylUz7w/KBaCAGTHeJVl/4dK3EqT5ASFJWybVUa8lHK0eVqQwb9spaHGUXZV3 1dNNfcdqpwI41piwL9hx7XQJv0AQ/001RnCZq2RfppIIQh3P6zZ1Up87y4X0QL5AUbnp fFBA== X-Gm-Message-State: ANoB5plGi4zIiT4TefCr6L+5hInKXyxfieXi9JeSBEP4f1dTlvw/TdoW HETwlbHUdDjAgshnOxOH/jxnrg== X-Received: by 2002:adf:f805:0:b0:236:ef0b:68c5 with SMTP id s5-20020adff805000000b00236ef0b68c5mr18911996wrp.373.1669233032908; Wed, 23 Nov 2022 11:50:32 -0800 (PST) Received: from linaro.org ([2a00:23c5:6809:2201:fcbc:7b5d:8d6c:43a4]) by smtp.gmail.com with ESMTPSA id w5-20020a5d6805000000b002364c77bcacsm7267414wru.38.2022.11.23.11.50.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Nov 2022 11:50:32 -0800 (PST) From: Mike Leach <mike.leach@linaro.org> To: coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: mathieu.poirier@linaro.org, suzuki.poulose@arm.com, peterz@infradead.org, mingo@redhat.com, acme@kernel.org, linux-perf-users@vger.kernel.org, leo.yan@linaro.org, quic_jinlmao@quicinc.com, Mike Leach <mike.leach@linaro.org> Subject: [PATCH v6 11/14] kernel: events: Export perf_report_aux_output_id() Date: Wed, 23 Nov 2022 19:50:07 +0000 Message-Id: <20221123195010.6859-12-mike.leach@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20221123195010.6859-1-mike.leach@linaro.org> References: <20221123195010.6859-1-mike.leach@linaro.org> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750317935826486981?= X-GMAIL-MSGID: =?utf-8?q?1750317935826486981?= |
Series |
coresight: Add new API to allocate trace source ID values
|
|
Commit Message
Mike Leach
Nov. 23, 2022, 7:50 p.m. UTC
CoreSight trace being updated to use the perf_report_aux_output_id() in a similar way to intel-pt. This function in needs export visibility to allow it to be called from kernel loadable modules, which CoreSight may configured to be built as. Signed-off-by: Mike Leach <mike.leach@linaro.org> Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> --- kernel/events/core.c | 1 + 1 file changed, 1 insertion(+)
Comments
Peter On 23/11/2022 19:50, Mike Leach wrote: > CoreSight trace being updated to use the perf_report_aux_output_id() > in a similar way to intel-pt. > > This function in needs export visibility to allow it to be called from > kernel loadable modules, which CoreSight may configured to be built as. > > Signed-off-by: Mike Leach <mike.leach@linaro.org> > Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> > --- > kernel/events/core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index 4ec3717003d5..ad388552f1d5 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -9231,6 +9231,7 @@ void perf_report_aux_output_id(struct perf_event *event, u64 hw_id) > > perf_output_end(&handle); > } > +EXPORT_SYMBOL_GPL(perf_report_aux_output_id); > Are you happy with me picking up this change through the coresight tree ? Suzuki > static int > __perf_event_account_interrupt(struct perf_event *event, int throttle)
Peter, On 24/11/2022 11:04, Suzuki Kuruppassery Poulose wrote: > Peter > > > On 23/11/2022 19:50, Mike Leach wrote: >> CoreSight trace being updated to use the perf_report_aux_output_id() >> in a similar way to intel-pt. >> >> This function in needs export visibility to allow it to be called from >> kernel loadable modules, which CoreSight may configured to be built as. >> >> Signed-off-by: Mike Leach <mike.leach@linaro.org> >> Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> >> --- >> kernel/events/core.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/kernel/events/core.c b/kernel/events/core.c >> index 4ec3717003d5..ad388552f1d5 100644 >> --- a/kernel/events/core.c >> +++ b/kernel/events/core.c >> @@ -9231,6 +9231,7 @@ void perf_report_aux_output_id(struct perf_event >> *event, u64 hw_id) >> perf_output_end(&handle); >> } >> +EXPORT_SYMBOL_GPL(perf_report_aux_output_id); > > Are you happy with me picking up this change through the coresight tree ? > > Suzuki > Please could you let me know your thoughts on this ? Coresight PMU would use this to inform the dynamically allocated trace id for a CPU to the perf via this HWID packet. If you are happy with the above change, I could pick it up via the coresight tree with your Ack. Otherwise, please could you pick it up ? Suzuki
Peter, Ingo, Arnaldo On 13/12/2022 10:08, Suzuki K Poulose wrote: > Peter, > > On 24/11/2022 11:04, Suzuki Kuruppassery Poulose wrote: >> Peter >> >> >> On 23/11/2022 19:50, Mike Leach wrote: >>> CoreSight trace being updated to use the perf_report_aux_output_id() >>> in a similar way to intel-pt. >>> >>> This function in needs export visibility to allow it to be called from >>> kernel loadable modules, which CoreSight may configured to be built as. >>> >>> Signed-off-by: Mike Leach <mike.leach@linaro.org> >>> Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> >>> --- >>> kernel/events/core.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/kernel/events/core.c b/kernel/events/core.c >>> index 4ec3717003d5..ad388552f1d5 100644 >>> --- a/kernel/events/core.c >>> +++ b/kernel/events/core.c >>> @@ -9231,6 +9231,7 @@ void perf_report_aux_output_id(struct >>> perf_event *event, u64 hw_id) >>> perf_output_end(&handle); >>> } >>> +EXPORT_SYMBOL_GPL(perf_report_aux_output_id); >> >> Are you happy with me picking up this change through the coresight >> tree ? >> >> Suzuki >> > > Please could you let me know your thoughts on this ? Coresight PMU would > use this to inform the dynamically allocated trace id for a CPU to the > perf via this HWID packet. > > If you are happy with the above change, I could pick it up via the > coresight tree with your Ack. Otherwise, please could you pick it > up ? > Please could you let us know if this is acceptable and if so, how can this be pushed ? CoreSight PMU (which can be built as a module) is using these packets to advertise the traceID allocated for a given CPU bound ETM (which is made dynamic due to the limited number of ids available). The perf tool can use these packets to then decode and separate the trace data from shared buffer. As of now, the series to enable the dynamic trace id allocation is blocked on this change. Kind regards Suzuki > Suzuki >
On Wed, Nov 23, 2022 at 07:50:07PM +0000, Mike Leach wrote: > CoreSight trace being updated to use the perf_report_aux_output_id() > in a similar way to intel-pt. > > This function in needs export visibility to allow it to be called from > kernel loadable modules, which CoreSight may configured to be built as. > > Signed-off-by: Mike Leach <mike.leach@linaro.org> > Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> > --- > kernel/events/core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index 4ec3717003d5..ad388552f1d5 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -9231,6 +9231,7 @@ void perf_report_aux_output_id(struct perf_event *event, u64 hw_id) > > perf_output_end(&handle); > } > +EXPORT_SYMBOL_GPL(perf_report_aux_output_id); > > static int > __perf_event_account_interrupt(struct perf_event *event, int throttle) > -- > 2.17.1 >
diff --git a/kernel/events/core.c b/kernel/events/core.c index 4ec3717003d5..ad388552f1d5 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -9231,6 +9231,7 @@ void perf_report_aux_output_id(struct perf_event *event, u64 hw_id) perf_output_end(&handle); } +EXPORT_SYMBOL_GPL(perf_report_aux_output_id); static int __perf_event_account_interrupt(struct perf_event *event, int throttle)