arm: mach-davinci: check irq2ctlr() result
If irq2ctlr() fails return IRQ_NONE. Also as it can fail make 'ctlr' signed. The semantic patch that finds this problem (many false-positive results): (http://coccinelle.lip6.fr/) // <smpl> @ r1 @ identifier f; @@ int f(...) { ... } @@ identifier r1.f; type T; unsigned T x; @@ *x = f(...) ... *x > 0 Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
This commit is contained in:
Родитель
85b8307fd0
Коммит
93fe23d8a9
|
@ -354,10 +354,12 @@ static int irq2ctlr(int irq)
|
|||
static irqreturn_t dma_irq_handler(int irq, void *data)
|
||||
{
|
||||
int i;
|
||||
unsigned ctlr;
|
||||
int ctlr;
|
||||
unsigned int cnt = 0;
|
||||
|
||||
ctlr = irq2ctlr(irq);
|
||||
if (ctlr < 0)
|
||||
return IRQ_NONE;
|
||||
|
||||
dev_dbg(data, "dma_irq_handler\n");
|
||||
|
||||
|
@ -408,10 +410,12 @@ static irqreturn_t dma_irq_handler(int irq, void *data)
|
|||
static irqreturn_t dma_ccerr_handler(int irq, void *data)
|
||||
{
|
||||
int i;
|
||||
unsigned ctlr;
|
||||
int ctlr;
|
||||
unsigned int cnt = 0;
|
||||
|
||||
ctlr = irq2ctlr(irq);
|
||||
if (ctlr < 0)
|
||||
return IRQ_NONE;
|
||||
|
||||
dev_dbg(data, "dma_ccerr_handler\n");
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче