[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E93B2D0E-8862-4873-B49F-F74D83CEEDAD@linux.vnet.ibm.com>
Date: Sun, 4 Dec 2022 22:38:28 +0530
From: Athira Rajeev <atrajeev@...ux.vnet.ibm.com>
To: James Clark <james.clark@....com>
Cc: Namhyung Kim <namhyung@...nel.org>,
linux-perf-users@...r.kernel.org,
Arnaldo Carvalho de Melo <acme@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>, Ian Rogers <irogers@...gle.com>
Subject: Re: [PATCH 2/2] perf stat: Fix invalid output handle
> On 01-Dec-2022, at 3:36 PM, James Clark <james.clark@....com> wrote:
>
>
>
> On 30/11/2022 18:32, Namhyung Kim wrote:
>> On Wed, Nov 30, 2022 at 3:15 AM James Clark <james.clark@....com> wrote:
>>>
>>> In this context, 'os' is already a pointer so the extra dereference
>>> isn't required. This fixes the following test failure on aarch64:
>>>
>>> $ ./perf test "json output" -vvv
>>> 92: perf stat JSON output linter :
>>> --- start ---
>>> Checking json output: no args Test failed for input:
>>> ...
>>> Fatal error: glibc detected an invalid stdio handle
>>> ---- end ----
>>> perf stat JSON output linter: FAILED!
>>>
>>> Fixes: e7f4da312259 ("perf stat: Pass struct outstate to printout()")
>>> Signed-off-by: James Clark <james.clark@....com>
>>
>> Thanks for fixing this. I'm not sure how I missed it.. :(
>>
>
> It seems to only go down that path on some configuration. At least on
> x86 the test was passing fine for me.
>
>> Acked-by: Namhyung Kim <namhyung@...nel.org>
>
> Thanks for the review!
Faced same issue on powerpc. Tested with this change and it works with this patch.
Tested-by: Athira Rajeev <atrajeev@...ux.vnet.ibm.com>
Thanks
Athira
>
>>
>> Thanks,
>> Namhyung
>>
>>
>>> ---
>>> tools/perf/util/stat-display.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
>>> index 847acdb5dc40..eac5ac3a734c 100644
>>> --- a/tools/perf/util/stat-display.c
>>> +++ b/tools/perf/util/stat-display.c
>>> @@ -741,7 +741,7 @@ static void printout(struct perf_stat_config *config, struct outstate *os,
>>> perf_stat__print_shadow_stats(config, counter, uval, map_idx,
>>> &out, &config->metric_events, &rt_stat);
>>> } else {
>>> - pm(config, &os, /*color=*/NULL, /*format=*/NULL, /*unit=*/"", /*val=*/0);
>>> + pm(config, os, /*color=*/NULL, /*format=*/NULL, /*unit=*/"", /*val=*/0);
>>> }
>>>
>>> if (!config->metric_only) {
>>> --
>>> 2.25.1
Powered by blists - more mailing lists