Message ID | 20190721181536.GA13450@hari-Inspiron-1545 (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | irqchip/tango: Add NULL check after memory operation | expand |
Hariprasad Kelam <hariprasad.kelam@gmail.com> writes: > Add NULL check after kzalloc operation. > > Fix below issue reported by coccicheck > ./drivers/irqchip/irq-tango.c:189:1-5: alloc with no test, possible > model on line 193 > > Signed-off-by: Hariprasad Kelam <hariprasad.kelam@gmail.com> > --- > drivers/irqchip/irq-tango.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c > index 34290f0..761b9fa 100644 > --- a/drivers/irqchip/irq-tango.c > +++ b/drivers/irqchip/irq-tango.c > @@ -187,6 +187,8 @@ static int __init tangox_irq_init(void __iomem *base, struct resource *baseres, > panic("%pOFn: failed to get address", node); > > chip = kzalloc(sizeof(*chip), GFP_KERNEL); > + if (!chip) > + return -ENOMEM; > chip->ctl = res.start - baseres->start; > chip->base = base; > > -- Nothing checks the return value of that function, so bad things will still happen, only more confusing to debug. If you really want to "fix" this, you should either: - Simply panic() like the other error cases. If anything here fails, the system will not work anyway. - Replace the panic() calls with error returns and check the return value in tangox_of_irq_init(). The system will still end up unusable.
diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c index 34290f0..761b9fa 100644 --- a/drivers/irqchip/irq-tango.c +++ b/drivers/irqchip/irq-tango.c @@ -187,6 +187,8 @@ static int __init tangox_irq_init(void __iomem *base, struct resource *baseres, panic("%pOFn: failed to get address", node); chip = kzalloc(sizeof(*chip), GFP_KERNEL); + if (!chip) + return -ENOMEM; chip->ctl = res.start - baseres->start; chip->base = base;
Add NULL check after kzalloc operation. Fix below issue reported by coccicheck ./drivers/irqchip/irq-tango.c:189:1-5: alloc with no test, possible model on line 193 Signed-off-by: Hariprasad Kelam <hariprasad.kelam@gmail.com> --- drivers/irqchip/irq-tango.c | 2 ++ 1 file changed, 2 insertions(+)