projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
52b2a05
)
irqchip/sunxi-nmi: Fix error check of of_io_request_and_map()
author
Vladimir Zapolskiy
<
[email protected]
>
Wed, 9 Mar 2016 01:21:29 +0000
(
03:21
+0200)
committer
Thomas Gleixner
<
[email protected]
>
Thu, 10 Mar 2016 15:03:30 +0000
(16:03 +0100)
The of_io_request_and_map() returns a valid pointer in iomem region or
ERR_PTR(), check for NULL always fails and may cause a NULL pointer
dereference on error path.
Fixes: 0e841b04c829 ("irqchip/sunxi-nmi: Switch to of_io_request_and_map() from of_iomap()")
Signed-off-by: Vladimir Zapolskiy <
[email protected]
>
Cc: Jason Cooper <
[email protected]
>
Cc: Marc Zyngier <
[email protected]
>
Cc: Chen-Yu Tsai <
[email protected]
>
Cc: Maxime Ripard <
[email protected]
>
Cc:
[email protected]
Link:
http://lkml.kernel.org/r/
[email protected]
Signed-off-by: Thomas Gleixner <
[email protected]
>
drivers/irqchip/irq-sunxi-nmi.c
patch
|
blob
|
history
diff --git
a/drivers/irqchip/irq-sunxi-nmi.c
b/drivers/irqchip/irq-sunxi-nmi.c
index 0820f67cc9a76b42a8891501c9f04c574d6e27e8..668730c5cb66f3bf4b06846ea4daf4b97dd3675d 100644
(file)
--- a/
drivers/irqchip/irq-sunxi-nmi.c
+++ b/
drivers/irqchip/irq-sunxi-nmi.c
@@
-160,9
+160,9
@@
static int __init sunxi_sc_nmi_irq_init(struct device_node *node,
gc = irq_get_domain_generic_chip(domain, 0);
gc->reg_base = of_io_request_and_map(node, 0, of_node_full_name(node));
- if (
!gc->reg_base
) {
+ if (
IS_ERR(gc->reg_base)
) {
pr_err("unable to map resource\n");
- ret =
-ENOMEM
;
+ ret =
PTR_ERR(gc->reg_base)
;
goto fail_irqd_remove;
}