]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
perf record: Change warning for missing sysfs entry to debug
authorThomas Richter <tmricht@linux.ibm.com>
Thu, 12 Apr 2018 13:32:46 +0000 (15:32 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 13 Apr 2018 12:59:56 +0000 (09:59 -0300)
commit4f75f1cbf95e2f0853cd229d042b203931b899af
tree4c0fbd52584ffe69b3a96e253599b3b3b0d971b9
parent4b163ca343b45855b03114ef2ab47c454989d55c
perf record: Change warning for missing sysfs entry to debug

Using perf on 4.16.0 kernel on s390 shows this warning:

   failed: can't open node sysfs data

each time I run command perf record ... for example:

  [root@s35lp76 perf]# ./perf record -e rB0000 -- sleep 1
  [ perf record: Woken up 1 times to write data ]
  failed: can't open node sysfs data
  [ perf record: Captured and wrote 0.001 MB perf.data (4 samples) ]
  [root@s35lp76 perf]#

It turns out commit e2091cedd51bf ("perf tools: Add MEM_TOPOLOGY feature
to perf data file") tries to open directory named /sys/devices/system/node/
which does not exist on s390.

This is the call stack:
 __cmd_record
 +---> perf_session__write_header
       +---> perf_header__adds_write
             +---> do_write_feat
           +---> write_mem_topology
         +---> build_mem_topology
       prints warning

The issue starts in do_write_feat() which unconditionally loops over all
features and now includes HEADER_MEM_TOPOLOGY and calls write_mem_topology().

Function record__init_features() at the beginning of __cmd_record() sets
all features and then turns off some of them.

Fix this by changing the warning to a level 2 debug output statement.

So it is only shown when debug level 2 or higher is set.

Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Link: http://lkml.kernel.org/r/20180412133246.92801-1-tmricht@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/header.c