Commit 916f1388 authored by Liao Chang's avatar Liao Chang Committed by Rafael J. Wysocki
Browse files

cpufreq: governor: Free dbs_data directly when gov->init() fails



Due to the kobject embedded in the dbs_data doest not has a release()
method yet, it needs to use kfree() to free dbs_data directly when
governor fails to allocate the tunner field of dbs_data.

Signed-off-by: default avatarLiao Chang <liaochang1@huawei.com>
Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 61bfbf79
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -439,7 +439,7 @@ int cpufreq_dbs_governor_init(struct cpufreq_policy *policy)

	ret = gov->init(dbs_data);
	if (ret)
		goto free_policy_dbs_info;
		goto free_dbs_data;

	/*
	 * The sampling interval should not be less than the transition latency
@@ -474,6 +474,8 @@ int cpufreq_dbs_governor_init(struct cpufreq_policy *policy)
	if (!have_governor_per_policy())
		gov->gdbs_data = NULL;
	gov->exit(dbs_data);

free_dbs_data:
	kfree(dbs_data);

free_policy_dbs_info: