From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752204Ab3CKHn1 (ORCPT ); Mon, 11 Mar 2013 03:43:27 -0400 Received: from LGEMRELSE6Q.lge.com ([156.147.1.121]:42341 "EHLO LGEMRELSE6Q.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751305Ab3CKHnZ (ORCPT ); Mon, 11 Mar 2013 03:43:25 -0400 X-AuditID: 9c930179-b7c78ae000000e4b-52-513d8b1833de From: Namhyung Kim To: Arnaldo Carvalho de Melo Cc: Peter Zijlstra , Paul Mackerras , Ingo Molnar , LKML , Jiri Olsa , David Ahern , Namhyung Kim Subject: [PATCH 2/7] perf evlist: Use cpu_map__nr() helper Date: Mon, 11 Mar 2013 16:43:13 +0900 Message-Id: <1362987798-24969-2-git-send-email-namhyung@kernel.org> X-Mailer: git-send-email 1.7.11.7 In-Reply-To: <1362987798-24969-1-git-send-email-namhyung@kernel.org> References: <1362987798-24969-1-git-send-email-namhyung@kernel.org> X-Brightmail-Tracker: AAAAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Namhyung Kim Use the cpu_map__nr() helper to protect a possible NULL cpu map dereference. Signed-off-by: Namhyung Kim --- tools/perf/util/evlist.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c index a199f1887bef..a482547495b6 100644 --- a/tools/perf/util/evlist.c +++ b/tools/perf/util/evlist.c @@ -228,7 +228,7 @@ void perf_evlist__disable(struct perf_evlist *evlist) int cpu, thread; struct perf_evsel *pos; - for (cpu = 0; cpu < evlist->cpus->nr; cpu++) { + for (cpu = 0; cpu < cpu_map__nr(evlist->cpus); cpu++) { list_for_each_entry(pos, &evlist->entries, node) { if (!perf_evsel__is_group_leader(pos)) continue; @@ -443,7 +443,7 @@ static int perf_evlist__mmap_per_cpu(struct perf_evlist *evlist, int prot, int m struct perf_evsel *evsel; int cpu, thread; - for (cpu = 0; cpu < evlist->cpus->nr; cpu++) { + for (cpu = 0; cpu < cpu_map__nr(evlist->cpus); cpu++) { int output = -1; for (thread = 0; thread < evlist->threads->nr; thread++) { @@ -470,7 +470,7 @@ static int perf_evlist__mmap_per_cpu(struct perf_evlist *evlist, int prot, int m return 0; out_unmap: - for (cpu = 0; cpu < evlist->cpus->nr; cpu++) { + for (cpu = 0; cpu < cpu_map__nr(evlist->cpus); cpu++) { if (evlist->mmap[cpu].base != NULL) { munmap(evlist->mmap[cpu].base, evlist->mmap_len); evlist->mmap[cpu].base = NULL; @@ -725,7 +725,7 @@ int perf_evlist__open(struct perf_evlist *evlist) return 0; out_err: - ncpus = evlist->cpus ? evlist->cpus->nr : 1; + ncpus = cpu_map__nr(evlist->cpus); nthreads = evlist->threads ? evlist->threads->nr : 1; list_for_each_entry_reverse(evsel, &evlist->entries, node) -- 1.7.11.7