From: Arnaldo Carvalho de Melo <acme@kernel.org> To: Ingo Molnar <mingo@kernel.org>, Thomas Gleixner <tglx@linutronix.de> Cc: Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>, Clark Williams <williams@redhat.com>, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, Leo Yan <leo.yan@linaro.org>, Adrian Hunter <adrian.hunter@intel.com>, Alexander Shishkin <alexander.shishkin@linux.intel.com>, Andi Kleen <ak@linux.intel.com>, Jiri Olsa <jolsa@redhat.com>, Mathieu Poirier <mathieu.poirier@linaro.org>, Suzuki Poulouse <suzuki.poulose@arm.com>, linux-arm-kernel@lists.infradead.org, Arnaldo Carvalho de Melo <acme@redhat.com> Subject: [PATCH 24/25] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool Date: Tue, 9 Jul 2019 15:31:25 -0300 [thread overview] Message-ID: <20190709183126.30257-25-acme@kernel.org> (raw) In-Reply-To: <20190709183126.30257-1-acme@kernel.org> From: Leo Yan <leo.yan@linaro.org> Based on the following report from Smatch, fix the potential NULL pointer dereference check. tools/perf/util/intel-bts.c:898 intel_bts_process_auxtrace_info() error: we previously assumed 'session->itrace_synth_opts' could be null (see line 894) tools/perf/util/intel-bts.c:899 intel_bts_process_auxtrace_info() warn: variable dereferenced before check 'session->itrace_synth_opts' (see line 898) tools/perf/util/intel-bts.c 894 if (session->itrace_synth_opts && session->itrace_synth_opts->set) { 895 bts->synth_opts = *session->itrace_synth_opts; 896 } else { 897 itrace_synth_opts__set_default(&bts->synth_opts, 898 session->itrace_synth_opts->default_no_sample); ^^^^^^^^^^^^^^^^^^^^^^^^^^ 899 if (session->itrace_synth_opts) ^^^^^^^^^^^^^^^^^^^^^^^^^^ 900 bts->synth_opts.thread_stack = 901 session->itrace_synth_opts->thread_stack; 902 } 'session->itrace_synth_opts' is impossible to be a NULL pointer in intel_bts_process_auxtrace_info(), thus this patch removes the NULL test for 'session->itrace_synth_opts'. Signed-off-by: Leo Yan <leo.yan@linaro.org> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Suzuki Poulouse <suzuki.poulose@arm.com> Cc: linux-arm-kernel@lists.infradead.org Link: http://lkml.kernel.org/r/20190708143937.7722-3-leo.yan@linaro.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> --- tools/perf/util/intel-bts.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/intel-bts.c b/tools/perf/util/intel-bts.c index 5a21bcdb8ef7..5560e95afdda 100644 --- a/tools/perf/util/intel-bts.c +++ b/tools/perf/util/intel-bts.c @@ -891,13 +891,12 @@ int intel_bts_process_auxtrace_info(union perf_event *event, if (dump_trace) return 0; - if (session->itrace_synth_opts && session->itrace_synth_opts->set) { + if (session->itrace_synth_opts->set) { bts->synth_opts = *session->itrace_synth_opts; } else { itrace_synth_opts__set_default(&bts->synth_opts, session->itrace_synth_opts->default_no_sample); - if (session->itrace_synth_opts) - bts->synth_opts.thread_stack = + bts->synth_opts.thread_stack = session->itrace_synth_opts->thread_stack; } -- 2.21.0
WARNING: multiple messages have this Message-ID (diff)
From: Arnaldo Carvalho de Melo <acme@kernel.org> To: Ingo Molnar <mingo@kernel.org>, Thomas Gleixner <tglx@linutronix.de> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>, Andi Kleen <ak@linux.intel.com>, Mathieu Poirier <mathieu.poirier@linaro.org>, Suzuki Poulouse <suzuki.poulose@arm.com>, Clark Williams <williams@redhat.com>, linux-kernel@vger.kernel.org, Adrian Hunter <adrian.hunter@intel.com>, linux-perf-users@vger.kernel.org, Alexander Shishkin <alexander.shishkin@linux.intel.com>, Jiri Olsa <jolsa@kernel.org>, Leo Yan <leo.yan@linaro.org>, Namhyung Kim <namhyung@kernel.org>, Jiri Olsa <jolsa@redhat.com>, linux-arm-kernel@lists.infradead.org Subject: [PATCH 24/25] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool Date: Tue, 9 Jul 2019 15:31:25 -0300 [thread overview] Message-ID: <20190709183126.30257-25-acme@kernel.org> (raw) In-Reply-To: <20190709183126.30257-1-acme@kernel.org> From: Leo Yan <leo.yan@linaro.org> Based on the following report from Smatch, fix the potential NULL pointer dereference check. tools/perf/util/intel-bts.c:898 intel_bts_process_auxtrace_info() error: we previously assumed 'session->itrace_synth_opts' could be null (see line 894) tools/perf/util/intel-bts.c:899 intel_bts_process_auxtrace_info() warn: variable dereferenced before check 'session->itrace_synth_opts' (see line 898) tools/perf/util/intel-bts.c 894 if (session->itrace_synth_opts && session->itrace_synth_opts->set) { 895 bts->synth_opts = *session->itrace_synth_opts; 896 } else { 897 itrace_synth_opts__set_default(&bts->synth_opts, 898 session->itrace_synth_opts->default_no_sample); ^^^^^^^^^^^^^^^^^^^^^^^^^^ 899 if (session->itrace_synth_opts) ^^^^^^^^^^^^^^^^^^^^^^^^^^ 900 bts->synth_opts.thread_stack = 901 session->itrace_synth_opts->thread_stack; 902 } 'session->itrace_synth_opts' is impossible to be a NULL pointer in intel_bts_process_auxtrace_info(), thus this patch removes the NULL test for 'session->itrace_synth_opts'. Signed-off-by: Leo Yan <leo.yan@linaro.org> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Suzuki Poulouse <suzuki.poulose@arm.com> Cc: linux-arm-kernel@lists.infradead.org Link: http://lkml.kernel.org/r/20190708143937.7722-3-leo.yan@linaro.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> --- tools/perf/util/intel-bts.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/intel-bts.c b/tools/perf/util/intel-bts.c index 5a21bcdb8ef7..5560e95afdda 100644 --- a/tools/perf/util/intel-bts.c +++ b/tools/perf/util/intel-bts.c @@ -891,13 +891,12 @@ int intel_bts_process_auxtrace_info(union perf_event *event, if (dump_trace) return 0; - if (session->itrace_synth_opts && session->itrace_synth_opts->set) { + if (session->itrace_synth_opts->set) { bts->synth_opts = *session->itrace_synth_opts; } else { itrace_synth_opts__set_default(&bts->synth_opts, session->itrace_synth_opts->default_no_sample); - if (session->itrace_synth_opts) - bts->synth_opts.thread_stack = + bts->synth_opts.thread_stack = session->itrace_synth_opts->thread_stack; } -- 2.21.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-07-09 18:33 UTC|newest] Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-09 18:31 [GIT PULL] perf/core improvements and fixes Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 01/25] perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 02/25] perf stat: Fix use-after-freed pointer detected by the smatch tool Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 03/25] perf top: Fix potential NULL pointer dereference " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 04/25] perf annotate: Fix dereferencing freed memory found " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 05/25] perf trace: Fix potential NULL pointer dereference " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 06/25] perf map: Fix potential NULL pointer dereference found by " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 07/25] perf inject: The tool->read() call may pass a NULL evsel, handle it Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 08/25] perf session: Fix potential NULL pointer dereference found by the smatch tool Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 09/25] perf evsel: perf_evsel__name(NULL) is valid, no need to check evsel Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 10/25] perf tools: Add missing headers, mostly stdlib.h Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 11/25] perf namespaces: Move the conditional setns() prototype to namespaces.h Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 12/25] perf tools: Move get_current_dir_name() cond prototype out of util.h Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 13/25] tools lib: Adopt zalloc()/zfree() from tools/perf Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 14/25] perf tools: Use zfree() where applicable Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 15/25] perf tools: Use list_del_init() more thorougly Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 16/25] perf metricgroup: Add missing list_del_init() when flushing egroups list Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 17/25] perf parse-events: Remove unused variable 'i' Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 18/25] perf parse-events: Remove unused variable: error Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 19/25] perf cs-etm: Fix potential NULL pointer dereference found by the smatch tool Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 20/25] perf hists browser: " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 21/25] perf scripts python: export-to-postgresql.py: Fix DROP VIEW power_events_view Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 22/25] perf scripts python: export-to-sqlite.py: " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 23/25] perf script: Assume native_arch for pipe mode Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo [this message] 2019-07-09 18:31 ` [PATCH 24/25] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool Arnaldo Carvalho de Melo 2019-07-09 18:31 ` [PATCH 25/25] perf intel-pt: " Arnaldo Carvalho de Melo 2019-07-09 18:31 ` Arnaldo Carvalho de Melo 2019-07-13 9:13 ` [GIT PULL] perf/core improvements and fixes Ingo Molnar
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190709183126.30257-25-acme@kernel.org \ --to=acme@kernel.org \ --cc=acme@redhat.com \ --cc=adrian.hunter@intel.com \ --cc=ak@linux.intel.com \ --cc=alexander.shishkin@linux.intel.com \ --cc=jolsa@kernel.org \ --cc=jolsa@redhat.com \ --cc=leo.yan@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-perf-users@vger.kernel.org \ --cc=mathieu.poirier@linaro.org \ --cc=mingo@kernel.org \ --cc=namhyung@kernel.org \ --cc=suzuki.poulose@arm.com \ --cc=tglx@linutronix.de \ --cc=williams@redhat.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.