Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp13478585ybl; Sun, 29 Dec 2019 12:53:11 -0800 (PST) X-Google-Smtp-Source: APXvYqzrXk8rJuGLjscwaE0liLoirb4Nd/OGLqI/2qgH+CropNtV1lvq2vGWGdglnkWFGfyPQHbI X-Received: by 2002:a9d:21f5:: with SMTP id s108mr52282981otb.152.1577652791192; Sun, 29 Dec 2019 12:53:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1577652791; cv=none; d=google.com; s=arc-20160816; b=vW6vctdkBJ1SvpVIVyt/yL8du9xAhMKImMa6QIuVR+gQ4OO8zdlcM2bmDALpuI4//W VqGsv4cLmQyTuIFVYB3rm9akWszxEbGAxGfGywv24+iGTJRGAWAlITwuckcgVIOZ3Wuu szWWK2fohG+5z5j9dOfAmJ8dlNoaeVz2XlI4lDWdeErxRPXXxzjHSFw37UX7Q5O5emeo se+9h9DcZwsPfZnMdfqQCA9ORHZq6AkrU58NYl9HBn4hNXer3NEisseK0hDFW2DcmHlk +CuUv30KWbh/mbMSgVRTncHpBTRor8Nt+QkuW+WUTw25uib6bay5RhELLN4prkZ7FOpa 5a/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:date:message-id:from :references:cc:to:subject; bh=2OqO1WBxU68k+eqFUJLjPsRzXdwI8dByrSnydz3arvg=; b=eWf27rF8h0iwAmcKlXMd5JZBVUTdc2lL6uSn0wgfj8tm2+h0xWeVs63bRQmY16FAzd lFC0ADRzyh8e13zWAvXyorF8grgbzfrV0L4nMIacnyqwIZba5GXBI7uyaT0q5n6j5fAv 6Vw446FgkUNdHMPc5IJrVkWrpcNij7wYTbyIPbb4QH8tfQf0w9dR33eG8qvkYFlKpzpf Rxlm6Tapg7maAom2+dQYeWF7dU7/wnIIHZ3BgcUBw1Hhl2q5Jmklxrm87GJEtTJ+O23t fYs0wzXNerM5Q2+VOiUkAfk51brzLZds/7s7ENw59BCrrcGSDlO63cSmBfnOnUHdyIFZ e5fA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t28si22045015otr.16.2019.12.29.12.52.59; Sun, 29 Dec 2019 12:53:11 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726855AbfL2Sex (ORCPT + 99 others); Sun, 29 Dec 2019 13:34:53 -0500 Received: from mx1.yrkesakademin.fi ([85.134.45.194]:15928 "EHLO mx1.yrkesakademin.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726455AbfL2Sew (ORCPT ); Sun, 29 Dec 2019 13:34:52 -0500 Subject: Re: [PATCH 5.4 249/434] perf probe: Fix to show ranges of variables in functions without entry_pc To: Greg Kroah-Hartman , CC: , Masami Hiramatsu , Arnaldo Carvalho de Melo , Jiri Olsa , Namhyung Kim , Sasha Levin References: <20191229172702.393141737@linuxfoundation.org> <20191229172718.427913832@linuxfoundation.org> From: Thomas Backlund Message-ID: <52cea79f-324f-983d-e3d3-a4ee928a1ff3@mageia.org> Date: Sun, 29 Dec 2019 20:34:48 +0200 MIME-Version: 1.0 In-Reply-To: <20191229172718.427913832@linuxfoundation.org> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-WatchGuard-Spam-ID: str=0001.0A0C0204.5E08F1CA.0038,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0 X-WatchGuard-Spam-Score: 0, clean; 0, virus threat unknown X-WatchGuard-Mail-Client-IP: 85.134.45.194 X-WatchGuard-Mail-From: tmb@mageia.org Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Den 29-12-2019 kl. 19:25, skrev Greg Kroah-Hartman: > From: Masami Hiramatsu > > [ Upstream commit af04dd2f8ebaa8fbd46f698714acbf43da14da45 ] > > Fix to show ranges of variables (--range and --vars option) in functions > which DIE has only ranges but no entry_pc attribute. > > Without this fix: > > # perf probe --range -V clear_tasks_mm_cpumask > Available variables at clear_tasks_mm_cpumask > @ > (No matched variables) > > With this fix: > > # perf probe --range -V clear_tasks_mm_cpumask > Available variables at clear_tasks_mm_cpumask > @ > [VAL] int cpu @ > > Committer testing: > > Before: > > [root@quaco ~]# perf probe --range -V clear_tasks_mm_cpumask > Available variables at clear_tasks_mm_cpumask > @ > (No matched variables) > [root@quaco ~]# > > After: > > [root@quaco ~]# perf probe --range -V clear_tasks_mm_cpumask > Available variables at clear_tasks_mm_cpumask > @ > [VAL] int cpu @ > [root@quaco ~]# > > Using it: > > [root@quaco ~]# perf probe clear_tasks_mm_cpumask cpu > Added new event: > probe:clear_tasks_mm_cpumask (on clear_tasks_mm_cpumask with cpu) > > You can now use it in all perf tools, such as: > > perf record -e probe:clear_tasks_mm_cpumask -aR sleep 1 > > [root@quaco ~]# perf probe -l > probe:clear_tasks_mm_cpumask (on clear_tasks_mm_cpumask@kernel/cpu.c with cpu) > [root@quaco ~]# > [root@quaco ~]# perf trace -e probe:*cpumask > ^C[root@quaco ~]# > > Fixes: 349e8d261131 ("perf probe: Add --range option to show a variable's location range") > Signed-off-by: Masami Hiramatsu > Tested-by: Arnaldo Carvalho de Melo > Cc: Jiri Olsa > Cc: Namhyung Kim > Link: http://lore.kernel.org/lkml/157199323018.8075.8179744380479673672.stgit@devnote2 > Signed-off-by: Arnaldo Carvalho de Melo > Signed-off-by: Sasha Levin > --- > tools/perf/util/dwarf-aux.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/perf/util/dwarf-aux.c b/tools/perf/util/dwarf-aux.c > index 929b7c0567f4..4b1890204e99 100644 > --- a/tools/perf/util/dwarf-aux.c > +++ b/tools/perf/util/dwarf-aux.c > @@ -997,7 +997,7 @@ static int die_get_var_innermost_scope(Dwarf_Die *sp_die, Dwarf_Die *vr_die, > bool first = true; > const char *name; > > - ret = dwarf_entrypc(sp_die, &entry); > + ret = die_entrypc(sp_die, &entry); > if (ret) > return ret; > > @@ -1060,7 +1060,7 @@ int die_get_var_range(Dwarf_Die *sp_die, Dwarf_Die *vr_die, struct strbuf *buf) > bool first = true; > const char *name; > > - ret = dwarf_entrypc(sp_die, &entry); > + ret = die_entrypc(sp_die, &entry); > if (ret) > return ret; > > Still broken... /usr/bin/ld: perf-in.o: in function `die_get_var_range': /work/rpmbuild/BUILD/kernel-x86_64/linux-5.4/tools/perf/util/dwarf-aux.c:1085: undefined reference to `die_entrypc' /usr/bin/ld: perf-in.o: in function `die_get_var_innermost_scope': /work/rpmbuild/BUILD/kernel-x86_64/linux-5.4/tools/perf/util/dwarf-aux.c:1022: undefined reference to `die_entrypc' collect2: error: ld returned 1 exit status -- Thomas