Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e1446551 authored by Arnaldo Carvalho de Melo's avatar Arnaldo Carvalho de Melo
Browse files

perf session: Destructors should accept NULL

And do nothing, just like free(), to avoid having to test it in callers,
usually in error paths.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-dyuupcj0hnoyt96vma8b3anv@git.kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 0b04b3dc
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -419,7 +419,6 @@ int cmd_buildid_cache(int argc, const char **argv,
		pr_warning("Couldn't add %s\n", kcore_filename);

out:
	if (session)
	perf_session__delete(session);

	return ret;
+1 −3
Original line number Diff line number Diff line
@@ -756,9 +756,7 @@ static int __cmd_diff(void)

 out_delete:
	data__for_each_file(i, d) {
		if (d->session)
		perf_session__delete(d->session);

		data__free(d);
	}

+1 −2
Original line number Diff line number Diff line
@@ -1426,7 +1426,6 @@ static int kvm_events_live(struct perf_kvm_stat *kvm,
	err = kvm_events_live_report(kvm);

out:
	if (kvm->session)
	perf_session__delete(kvm->session);
	kvm->session = NULL;
	perf_evlist__delete(kvm->evlist);
+2 −0
Original line number Diff line number Diff line
@@ -178,6 +178,8 @@ static void perf_session__delete_threads(struct perf_session *session)

void perf_session__delete(struct perf_session *session)
{
	if (session == NULL)
		return;
	auxtrace__free(session);
	auxtrace_index__free(&session->auxtrace_index);
	perf_session__destroy_kernel_maps(session);