diff options
-rw-r--r-- | drivers/staging/comedi/drivers/addi_apci_2032.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/staging/comedi/drivers/addi_apci_2032.c b/drivers/staging/comedi/drivers/addi_apci_2032.c index f04f59d33cc..aeb34dbe02a 100644 --- a/drivers/staging/comedi/drivers/addi_apci_2032.c +++ b/drivers/staging/comedi/drivers/addi_apci_2032.c @@ -248,8 +248,10 @@ static irqreturn_t apci2032_interrupt(int irq, void *d) s->state = inl(dev->iobase + APCI2032_INT_STATUS_REG); outl(0x0, dev->iobase + APCI2032_INT_CTRL_REG); - comedi_buf_put(s->async, s->state); - s->async->events |= COMEDI_CB_BLOCK | COMEDI_CB_EOS; + if (comedi_buf_put(s->async, s->state)) + s->async->events |= COMEDI_CB_BLOCK | COMEDI_CB_EOS; + else + s->async->events |= COMEDI_CB_OVERFLOW; comedi_event(dev, s); return IRQ_HANDLED; |