platform_get_irq() and platform_get_resource() can fail here and we must check its return value.
Signed-off-by: Arvind Yadav <arvind.yadav...@gmail.com> --- drivers/net/fjes/fjes_main.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/net/fjes/fjes_main.c b/drivers/net/fjes/fjes_main.c index 750954b..540dd51 100644 --- a/drivers/net/fjes/fjes_main.c +++ b/drivers/net/fjes/fjes_main.c @@ -1265,9 +1265,19 @@ static int fjes_probe(struct platform_device *plat_dev) adapter->interrupt_watch_enable = false; res = platform_get_resource(plat_dev, IORESOURCE_MEM, 0); + if (!res) { + err = -EINVAL; + goto err_free_netdev; + } + hw->hw_res.start = res->start; hw->hw_res.size = resource_size(res); hw->hw_res.irq = platform_get_irq(plat_dev, 0); + if (hw->hw_res.irq <= 0) { + err = hw->hw_res.irq ? hw->hw_res.irq : -ENODEV; + goto err_free_netdev; + } + err = fjes_hw_init(&adapter->hw); if (err) goto err_free_netdev; -- 2.7.4