summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorColin Ian King <colin.king@canonical.com>2018-12-22 12:43:33 +0000
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2018-12-26 10:50:36 +0100
commitf4747b9c68b8864cac32cddc45fdcfdfafb3397c (patch)
tree3c360edc65d35e30269f0a2a608c234fb7e0acd4 /drivers/base
parent1d8f062ebc972053318c3a0e0470c7e0ddc1ebee (diff)
drivers: base: swnode: check if swnode is NULL before dereferencing it
The to_software_mode() macro can potentially return NULL, so also add a NULL check on swnode before dereferencing it to avoid any NULL pointer dereferences. Detected by CoverityScan, CID#1476052 ("Explicit null dereferenced") Fixes: 59abd83672f7 (drivers: base: Introducing software nodes to the firmware node framework) Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/swnode.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
index 28b6eb0e5187..89ad8dee6ad5 100644
--- a/drivers/base/swnode.c
+++ b/drivers/base/swnode.c
@@ -477,7 +477,8 @@ software_node_get_parent(const struct fwnode_handle *fwnode)
{
struct software_node *swnode = to_software_node(fwnode);
- return swnode->parent ? &swnode->parent->fwnode : NULL;
+ return swnode ? (swnode->parent ? &swnode->parent->fwnode : NULL) :
+ NULL;
}
struct fwnode_handle *