* [PATCH linux-next] perf report: remove warning on missing raw data for s390
@ 2023-11-22 9:27 Thomas Richter
2023-11-23 2:34 ` Namhyung Kim
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Richter @ 2023-11-22 9:27 UTC (permalink / raw)
To: linux-kernel, linux-perf-users, acme
Cc: svens, gor, sumanthk, hca, Thomas Richter
Command
# ./perf report -i /tmp/111 -D > /dev/null
emits an error message when a sample for event CRYPTO_ALL in the
perf.data file does not contain any raw data. This is ok.
Do not trigger this warning when the sample in the perf.data files
does not contain any raw data at all.
Check for availability of raw data for all events and return if
none is available.
Output before:
# ./perf report -i /tmp/111 -D > /dev/null
Invalid CRYPTO_ALL raw data encountered
Invalid CRYPTO_ALL raw data encountered
Invalid CRYPTO_ALL raw data encountered
#
Output after:
# ./perf report -i /tmp/111 -D > /dev/null
#
Fixes: b539deafbadb ("perf report: Add s390 raw data interpretation for PAI counters")
Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
---
tools/perf/util/s390-sample-raw.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tools/perf/util/s390-sample-raw.c b/tools/perf/util/s390-sample-raw.c
index 29a744eeb71e..53383e97ec9d 100644
--- a/tools/perf/util/s390-sample-raw.c
+++ b/tools/perf/util/s390-sample-raw.c
@@ -51,8 +51,6 @@ static bool s390_cpumcfdg_testctr(struct perf_sample *sample)
struct cf_trailer_entry *te;
struct cf_ctrset_entry *cep, ce;
- if (!len)
- return false;
while (offset < len) {
cep = (struct cf_ctrset_entry *)(buf + offset);
ce.def = be16_to_cpu(cep->def);
@@ -234,10 +232,9 @@ struct pai_data { /* Event number and value */
*/
static bool s390_pai_all_test(struct perf_sample *sample)
{
- unsigned char *buf = sample->raw_data;
size_t len = sample->raw_size;
- if (len < 0xa || !buf)
+ if (len < 0xa)
return false;
return true;
}
@@ -299,6 +296,10 @@ void evlist__s390_sample_raw(struct evlist *evlist, union perf_event *event,
if (!evsel)
return;
+ /* Check for raw data in sample */
+ if (!sample->raw_size || !sample->raw_data)
+ return;
+
/* Display raw data on screen */
if (evsel->core.attr.config == PERF_EVENT_CPUM_CF_DIAG) {
if (!evsel->pmu)
--
2.41.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH linux-next] perf report: remove warning on missing raw data for s390
2023-11-22 9:27 [PATCH linux-next] perf report: remove warning on missing raw data for s390 Thomas Richter
@ 2023-11-23 2:34 ` Namhyung Kim
2023-11-27 15:07 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 3+ messages in thread
From: Namhyung Kim @ 2023-11-23 2:34 UTC (permalink / raw)
To: Thomas Richter
Cc: linux-kernel, linux-perf-users, acme, svens, gor, sumanthk, hca
Hello,
On Wed, Nov 22, 2023 at 1:27 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
>
> Command
> # ./perf report -i /tmp/111 -D > /dev/null
> emits an error message when a sample for event CRYPTO_ALL in the
> perf.data file does not contain any raw data. This is ok.
> Do not trigger this warning when the sample in the perf.data files
> does not contain any raw data at all.
> Check for availability of raw data for all events and return if
> none is available.
>
> Output before:
> # ./perf report -i /tmp/111 -D > /dev/null
> Invalid CRYPTO_ALL raw data encountered
> Invalid CRYPTO_ALL raw data encountered
> Invalid CRYPTO_ALL raw data encountered
> #
>
> Output after:
> # ./perf report -i /tmp/111 -D > /dev/null
> #
>
> Fixes: b539deafbadb ("perf report: Add s390 raw data interpretation for PAI counters")
> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
> ---
> tools/perf/util/s390-sample-raw.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/tools/perf/util/s390-sample-raw.c b/tools/perf/util/s390-sample-raw.c
> index 29a744eeb71e..53383e97ec9d 100644
> --- a/tools/perf/util/s390-sample-raw.c
> +++ b/tools/perf/util/s390-sample-raw.c
> @@ -51,8 +51,6 @@ static bool s390_cpumcfdg_testctr(struct perf_sample *sample)
> struct cf_trailer_entry *te;
> struct cf_ctrset_entry *cep, ce;
>
> - if (!len)
> - return false;
> while (offset < len) {
> cep = (struct cf_ctrset_entry *)(buf + offset);
> ce.def = be16_to_cpu(cep->def);
> @@ -234,10 +232,9 @@ struct pai_data { /* Event number and value */
> */
> static bool s390_pai_all_test(struct perf_sample *sample)
> {
> - unsigned char *buf = sample->raw_data;
> size_t len = sample->raw_size;
>
> - if (len < 0xa || !buf)
> + if (len < 0xa)
> return false;
> return true;
> }
> @@ -299,6 +296,10 @@ void evlist__s390_sample_raw(struct evlist *evlist, union perf_event *event,
> if (!evsel)
> return;
>
> + /* Check for raw data in sample */
> + if (!sample->raw_size || !sample->raw_data)
> + return;
I was thinking it should check if evsel->attr.sample_type has
PERF_SAMPLE_RAW. But evsel__parse_sample() sets the
sample->raw_data and ->raw_size only if it has the flag.
So I think it's fine.
Thanks,
Namhyung
> +
> /* Display raw data on screen */
> if (evsel->core.attr.config == PERF_EVENT_CPUM_CF_DIAG) {
> if (!evsel->pmu)
> --
> 2.41.0
>
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH linux-next] perf report: remove warning on missing raw data for s390
2023-11-23 2:34 ` Namhyung Kim
@ 2023-11-27 15:07 ` Arnaldo Carvalho de Melo
0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-11-27 15:07 UTC (permalink / raw)
To: Namhyung Kim
Cc: Thomas Richter, linux-kernel, linux-perf-users, svens, gor,
sumanthk, hca
Em Wed, Nov 22, 2023 at 06:34:14PM -0800, Namhyung Kim escreveu:
> Hello,
>
> On Wed, Nov 22, 2023 at 1:27 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
> >
> > Command
> > # ./perf report -i /tmp/111 -D > /dev/null
> > emits an error message when a sample for event CRYPTO_ALL in the
> > perf.data file does not contain any raw data. This is ok.
> > Do not trigger this warning when the sample in the perf.data files
> > does not contain any raw data at all.
> > Check for availability of raw data for all events and return if
> > none is available.
> >
> > Output before:
> > # ./perf report -i /tmp/111 -D > /dev/null
> > Invalid CRYPTO_ALL raw data encountered
> > Invalid CRYPTO_ALL raw data encountered
> > Invalid CRYPTO_ALL raw data encountered
> > #
> >
> > Output after:
> > # ./perf report -i /tmp/111 -D > /dev/null
> > #
> >
> > Fixes: b539deafbadb ("perf report: Add s390 raw data interpretation for PAI counters")
> > Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> > Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
>
> Acked-by: Namhyung Kim <namhyung@kernel.org>
Thanks, applied to perf-tools-next.
- Arnaldo
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-11-27 15:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-22 9:27 [PATCH linux-next] perf report: remove warning on missing raw data for s390 Thomas Richter
2023-11-23 2:34 ` Namhyung Kim
2023-11-27 15:07 ` Arnaldo Carvalho de Melo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).