Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp312407ioo; Thu, 26 May 2022 04:23:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwBsbzvRvLIVLdePjX/VHePhCtBkdK4G97NcBHSnPyvMMXa5P0reNgSV/ru90dmwITmLFss X-Received: by 2002:a17:902:c944:b0:161:7b60:e707 with SMTP id i4-20020a170902c94400b001617b60e707mr36534791pla.70.1653564187906; Thu, 26 May 2022 04:23:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653564187; cv=none; d=google.com; s=arc-20160816; b=J+U55P8zb3QCOSJRsIPvIiuVWDeCtSPTLFfSaWKtQb+6ShwrmFI3nWtgn9bwmMk9hD kNp03v3BRW7L2B6j25X+PunMegiaYwS6qUy4kH8YxxiPgDXTaWvYgSEW1h7Y/7VzJfRN uWoRGBWuJzJA5QQwa7CNEeSEzfhwuDAtgGdEGmG/u+crthfkbED+CXEY7uxocLyMeygC D37WMAKUan3ecwFz27uG1uIu8/tEApXO9ysquhrvD85scjdCAx0L5GIPXejZa8O9gZSD jxZTZd2SI8HJAwpYnhPG86srpimzX5ZZ3W+Uzcn7sivK/pvunGnHF485H9imYdIuwBIf mTiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=MlfGy88ZCD4lOyKadsaMaTpiuM8NkVCXt/blXBLLSuM=; b=EqyQ566gcxUIN7Hv6i/qYCTfKRWaqHbTynEduAqG9ONozO8JD+WTI62QdaokcVvyjf N7jL+XpuQZYF02FfpaOJfm+sdVeJThYP2Rvb+h/pRbybz2oJsCwwP+zBqEYre3cZOKeD Qu4CKLEgfOIFE57VzVKc8zHE+b/UyWMfR0fzP2W1F2FwMH2iSQo3OZ+Y8n9lU7JXZTPJ vU+aBn8HlBLEOejnzog/jIwH0JO13ho5cIBq83ud98ItTxR4Od7PWrCN3gpnxUCWYLCs KBQV1+OEKUs0RMZ34mApr/6NSKbkTHFVw6tASOARZm+6B9oX9AI5A7cjT4JzrhBFiKFi e8iQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=WHFRS+3Q; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y9-20020aa78049000000b0050dde3c0d4csi1399598pfm.284.2022.05.26.04.22.56; Thu, 26 May 2022 04:23:07 -0700 (PDT) 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=@google.com header.s=20210112 header.b=WHFRS+3Q; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237766AbiEYM6a (ORCPT + 99 others); Wed, 25 May 2022 08:58:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229831AbiEYM62 (ORCPT ); Wed, 25 May 2022 08:58:28 -0400 Received: from mail-ua1-x92f.google.com (mail-ua1-x92f.google.com [IPv6:2607:f8b0:4864:20::92f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7B5E8A2053 for ; Wed, 25 May 2022 05:58:27 -0700 (PDT) Received: by mail-ua1-x92f.google.com with SMTP id 90so7286249uam.8 for ; Wed, 25 May 2022 05:58:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=MlfGy88ZCD4lOyKadsaMaTpiuM8NkVCXt/blXBLLSuM=; b=WHFRS+3QBk6oxN3FURojB0WbB+U5Yk4Tva5DSe1TmlglfwC6xSB79PK/twKoeeqJ1Y gQflcIaHygkWIFezpZLWDfiOFK22NGlWiFbkUz+Yj9mUz4IxO5AgavlQVUh0kzFDtPAK a+B3yfQtzc9NgH4DISF44l9SiUYBu3GDdx9ixgMeH5sxMf8Yvs+zgemvkbfX2vO6ONo0 r+YOZWI+r7OSj8wrgAO+9rps8TxuTpl3N6RfXJGU/gnwbeyBYfnPaB5nXonXH+0eXJS9 D5Hdo1CY2iAnRhw5CeM976/rMLav8uhQr3sPxmOyPXwcb6ZJDQ9mbfgXWWb9SebA8+Lx HtDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=MlfGy88ZCD4lOyKadsaMaTpiuM8NkVCXt/blXBLLSuM=; b=qST4jl4eZl0dwuPjhIqk+GI3KsEnc+yyaThclYa7zEfFsoGgnHVDuwgPrsPUXLUVRR wodaDyR49lXzQomWY++7wosoTE15uRfVvxVoqVZUZnHie8fJunTXEGPTIXNQdWkp948W 7tlW8qcm1P6gPSGYFVA5u7vljRfVNpPZN5tsF40Cl6a3gK4M+LsFeZ62XOWW+Bh4zpGQ jLxs5fEfFGUla2P9wP17oFig5B9gA9jZb38Y2M+fMxZZFRd3yqqifVwu0xlQVJn5ycJN SqV0mlZcAeXR+cxMIZJC4SmOUUZ0ChZwkOHKu28y//EL0iTm2M7Sqj5KPrWx+zVr6eAK zAjw== X-Gm-Message-State: AOAM530N7TAVq61oY9ChXzBZDkIpkZjUTiTNsEer2qkZ/cpQWxC3dyMV BDxoRXqtzJr7MA1RLKG9VscHo4H3ZAUmyEQrVdJP2g== X-Received: by 2002:ab0:310b:0:b0:368:c7b0:5a6c with SMTP id e11-20020ab0310b000000b00368c7b05a6cmr10054921ual.108.1653483506483; Wed, 25 May 2022 05:58:26 -0700 (PDT) MIME-Version: 1.0 References: <20220525093938.4101-1-ravi.bangoria@amd.com> <20220525093938.4101-5-ravi.bangoria@amd.com> In-Reply-To: <20220525093938.4101-5-ravi.bangoria@amd.com> From: Stephane Eranian Date: Wed, 25 May 2022 15:58:15 +0300 Message-ID: Subject: Re: [PATCH 04/13] perf/x86/amd: Support PERF_SAMPLE_WEIGHT using IBS OP_DATA3[IbsDcMissLat] To: Ravi Bangoria Cc: peterz@infradead.org, acme@kernel.org, jolsa@kernel.org, namhyung@kernel.org, irogers@google.com, jmario@redhat.com, leo.yan@linaro.org, alisaidi@amazon.com, ak@linux.intel.com, kan.liang@linux.intel.com, dave.hansen@linux.intel.com, hpa@zytor.com, mingo@redhat.com, mark.rutland@arm.com, alexander.shishkin@linux.intel.com, tglx@linutronix.de, bp@alien8.de, x86@kernel.org, linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, sandipan.das@amd.com, ananth.narayan@amd.com, kim.phillips@amd.com, santosh.shukla@amd.com Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-17.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL 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: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 25, 2022 at 12:42 PM Ravi Bangoria wrote: > > IBS Op data3 provides data cache miss latency which can be passed as > sample->weight along with perf_mem_data_src. Note that sample->weight > will be populated only when PERF_SAMPLE_DATA_SRC is also set, although > both sample types are independent. > > Signed-off-by: Ravi Bangoria > --- > arch/x86/events/amd/ibs.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/arch/x86/events/amd/ibs.c b/arch/x86/events/amd/ibs.c > index 6626caeed6a1..5a6e278713f4 100644 > --- a/arch/x86/events/amd/ibs.c > +++ b/arch/x86/events/amd/ibs.c > @@ -738,6 +738,12 @@ static void perf_ibs_get_mem_lvl(struct perf_event *event, u64 op_data2, > return; > } > > + /* Load latency (Data cache miss latency) */ > + if (data_src->mem_op == PERF_MEM_OP_LOAD && > + event->attr.sample_type & PERF_SAMPLE_WEIGHT) { > + data->weight.full = (op_data3 & IBS_DC_MISS_LAT_MASK) >> IBS_DC_MISS_LAT_SHIFT; > + } > + I think here you also need to handle the WEIGHT_STRUCT case and put the cache miss latency in the right field. This IBS field covers the cache line movement and not the whole instruction latency which is the tag to ret field. In the case of WEIGHT_STRUCT you need to fill out the two fields. > /* L2 Hit */ > if ((op_data3 & IBS_L2_MISS_MASK) == 0) { > /* Erratum #1293 */ > -- > 2.31.1 >