Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PM / devfreq: event: Call of_node_put() only once in devfreq_event_get_edev_by_phandle()

An of_node_put(node) call was immediately used after a null pointer check
for the local variable “edev” at the end of this function implementation.
Thus call such a function only once instead directly before the check.

This issue was transformed by using the Coccinelle software.

Link: https://lore.kernel.org/lkml/0f103384-376c-41f0-a35c-8ad98327d6cb@web.de/
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>

authored by

Markus Elfring and committed by
Chanwoo Choi
ed33fbb5 40384c84

+2 -6
+2 -6
drivers/devfreq/devfreq-event.c
··· 244 244 edev = NULL; 245 245 out: 246 246 mutex_unlock(&devfreq_event_list_lock); 247 - 248 - if (!edev) { 249 - of_node_put(node); 250 - return ERR_PTR(-ENODEV); 251 - } 252 - 253 247 of_node_put(node); 248 + if (!edev) 249 + return ERR_PTR(-ENODEV); 254 250 255 251 return edev; 256 252 }