mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 19:29:37 +00:00
PM / clk: Fix clock error check in __pm_clk_add()
In the final iteration of commit245bd6f6af
("PM / clock_ops: Add pm_clk_add_clk()"), a refcount increment was added by Grygorii Strashko. However, the accompanying IS_ERR() check operates on the wrong clock pointer, which is always zero at this point, i.e. not an error. This may lead to a NULL pointer dereference later, when __clk_get() tries to dereference an error pointer. Check the passed clock pointer instead to fix this. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Fixes:245bd6f6af
("PM / clock_ops: Add pm_clk_add_clk()") Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
d2c4b43d88
commit
3fc3a0be0d
1 changed files with 1 additions and 1 deletions
|
@ -94,7 +94,7 @@ static int __pm_clk_add(struct device *dev, const char *con_id,
|
|||
return -ENOMEM;
|
||||
}
|
||||
} else {
|
||||
if (IS_ERR(ce->clk) || !__clk_get(clk)) {
|
||||
if (IS_ERR(clk) || !__clk_get(clk)) {
|
||||
kfree(ce);
|
||||
return -ENOENT;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue