Skip to contentSkip to conversation

watchdog: core: check hwdev before use it

PATCH Applied Andreas Schmidt 2 participants 2 messages Apr 22, 2018 – Apr 25, 2018 Watchdog device drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 watchdog: core: check hwdev before use it

Avoid null pointer access, if hwdev was not
set before call watchdog_register.

---
 drivers/watchdog/wd_core.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
drivers/watchdog/wd_core.c +4 -2
index d3305443d..56e8626cb 100644
@@ -112,10 +112,12 @@ static int watchdog_register_dev(struct watchdog *wd, const char *name, int id)
 int watchdog_register(struct watchdog *wd)
 {
 	struct param_d *p;
-	const char *alias;
+	const char *alias = NULL;
 	int ret = 0;
 
-	alias = of_alias_get(wd->hwdev->device_node);
+	if (wd->hwdev)
+		alias = of_alias_get(wd->hwdev->device_node);
+
 	if (alias)
 		ret = watchdog_register_dev(wd, alias, DEVICE_ID_SINGLE);
 
Signature · 7 lines
2.14.1


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
Applied
#1 lore raw
Quoted 7 lines · Andreas Schmidt

Avoid null pointer access, if hwdev was not
set before call watchdog_register.

---
 drivers/watchdog/wd_core.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Applied, thanks

Sascha

Quoted 29 lines
drivers/watchdog/wd_core.c +4 -2
index d3305443d..56e8626cb 100644
@@ -112,10 +112,12 @@ static int watchdog_register_dev(struct watchdog *wd, const char *name, int id)
 int watchdog_register(struct watchdog *wd)
 {
 	struct param_d *p;
-	const char *alias;
+	const char *alias = NULL;
 	int ret = 0;
 
-	alias = of_alias_get(wd->hwdev->device_node);
+	if (wd->hwdev)
+		alias = of_alias_get(wd->hwdev->device_node);
+
 	if (alias)
 		ret = watchdog_register_dev(wd, alias, DEVICE_ID_SINGLE);
 
Signature · 7 lines
2.14.1


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
Signature · 9 lines
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox