OSDN Git Service

perf env: Also consider env->arch == NULL as local operation
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 27 Nov 2018 14:45:49 +0000 (11:45 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 Jan 2019 16:38:43 +0000 (17:38 +0100)
commit 804234f27180dcf9a25cb98a88d5212f65b7f3fd upstream.

We'll set a new machine field based on env->arch, which for live mode,
like with 'perf top' means we need to use uname() to figure the name of
the arch, fix perf_env__arch() to consider both (env == NULL) and
(env->arch == NULL) as local operation.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: stable@vger.kernel.org # 4.19
Link: https://lkml.kernel.org/n/tip-vcz4ufzdon7cwy8dm2ua53xk@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tools/perf/util/env.c

index 59f38c7..4c23779 100644 (file)
@@ -166,7 +166,7 @@ const char *perf_env__arch(struct perf_env *env)
        struct utsname uts;
        char *arch_name;
 
-       if (!env) { /* Assume local operation */
+       if (!env || !env->arch) { /* Assume local operation */
                if (uname(&uts) < 0)
                        return NULL;
                arch_name = uts.machine;