Re: [PATCH 4/4] perf intel-pt/bts: fix potential NULL pointer dereference in intel_bts_process_auxtrace_info

From: Adrian Hunter
Date: Wed Nov 21 2018 - 04:15:04 EST


On 21/11/18 9:43 AM, Wen Yang wrote:
> This patch fixes a possible null pointer dereference in
> intel_bts_process_auxtrace_info, detected by the semantic patch
> deref_null.cocci, with the following warning:
>
> ./tools/perf/util/intel-bts.c:921:32-49: ERROR: session -> itrace_synth_opts is NULL but dereferenced.
>
> Signed-off-by: Wen Yang <wen.yang99@xxxxxxxxxx>
> Reviewed-by: Tan Hu <tan.hu@xxxxxxxxxx>
> CC: Julia Lawall <julia.lawall@xxxxxxx>
> ---
> tools/perf/util/intel-bts.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/intel-bts.c b/tools/perf/util/intel-bts.c
> index 7b27d77..b0258f4 100644
> --- a/tools/perf/util/intel-bts.c
> +++ b/tools/perf/util/intel-bts.c
> @@ -917,7 +917,8 @@ int intel_bts_process_auxtrace_info(union perf_event *event,
> if (session->itrace_synth_opts && session->itrace_synth_opts->set) {
> bts->synth_opts = *session->itrace_synth_opts;
> } else {
> - itrace_synth_opts__set_default(&bts->synth_opts,
> + if (session->itrace_synth_opts)
> + 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 =
>

See response to patch 1.