提交 77254950 编写于 作者: R Rafael J. Wysocki

PM: Make dev_pm_get_subsys_data() always return 0 on success

Commits 1d5fcfec (PM / Domains: Add device domain data reference
counter) and 62d44902 (PM / Domains: Allow device callbacks to be
added at any time) added checks for the return value of
dev_pm_get_subsys_data(), but those checks were incorrect, because
that function returned 1 on success in some cases.

Since all of the existing users of dev_pm_get_subsys_data() don't use
the positive value returned by it on success, change its definition
so that it always returns 0 when successful.
Reported-by: NHeiko Stübner <heiko@sntech.de>
Reported-by: NTushar Behera <tushar.behera@linaro.org>
Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
上级 d06a8a4f
......@@ -169,8 +169,7 @@ void pm_clk_init(struct device *dev)
*/
int pm_clk_create(struct device *dev)
{
int ret = dev_pm_get_subsys_data(dev);
return ret < 0 ? ret : 0;
return dev_pm_get_subsys_data(dev);
}
/**
......
......@@ -24,7 +24,6 @@
int dev_pm_get_subsys_data(struct device *dev)
{
struct pm_subsys_data *psd;
int ret = 0;
psd = kzalloc(sizeof(*psd), GFP_KERNEL);
if (!psd)
......@@ -40,7 +39,6 @@ int dev_pm_get_subsys_data(struct device *dev)
dev->power.subsys_data = psd;
pm_clk_init(dev);
psd = NULL;
ret = 1;
}
spin_unlock_irq(&dev->power.lock);
......@@ -48,7 +46,7 @@ int dev_pm_get_subsys_data(struct device *dev)
/* kfree() verifies that its argument is nonzero. */
kfree(psd);
return ret;
return 0;
}
EXPORT_SYMBOL_GPL(dev_pm_get_subsys_data);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册