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

Commit 81f981d7 authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

perf machine: Free root_dir in machine__init() error path



Free root_dir in machine__init() error path.

Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20180215122635.24029-4-jolsa@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent c3962961
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -50,6 +50,8 @@ static void machine__threads_init(struct machine *machine)

int machine__init(struct machine *machine, const char *root_dir, pid_t pid)
{
	int err = -ENOMEM;

	memset(machine, 0, sizeof(*machine));
	map_groups__init(&machine->kmaps, machine);
	RB_CLEAR_NODE(&machine->rb_node);
@@ -79,7 +81,7 @@ int machine__init(struct machine *machine, const char *root_dir, pid_t pid)
		char comm[64];

		if (thread == NULL)
			return -ENOMEM;
			goto out;

		snprintf(comm, sizeof(comm), "[guest/%d]", pid);
		thread__set_comm(thread, comm, 0);
@@ -87,7 +89,11 @@ int machine__init(struct machine *machine, const char *root_dir, pid_t pid)
	}

	machine->current_tid = NULL;
	err = 0;

out:
	if (err)
		zfree(&machine->root_dir);
	return 0;
}