staging: nvec: Handle filled up RX buffers

If no RX buffer is available in state 1, jump to state
0 again. This will produce an incredible amount of
warnings, but it is not supposed to happen anyway.

Signed-off-by: Julian Andres Klode <jak@jak-linux.org>
Acked-by: Marc Dietrich <marvin24@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Julian Andres Klode 2011-09-27 19:01:00 +02:00 committed by Greg Kroah-Hartman
parent bb0590e272
commit 8da7986343
1 changed files with 5 additions and 0 deletions

View File

@ -554,6 +554,11 @@ static irqreturn_t nvec_interrupt(int irq, void *dev)
nvec_invalid_flags(nvec, status, true);
} else {
nvec->rx = nvec_msg_alloc(nvec, NVEC_MSG_RX);
/* Should not happen in a normal world */
if (unlikely(nvec->rx == NULL)) {
nvec->state = 0;
break;
}
nvec->rx->data[0] = received;
nvec->rx->pos = 1;
nvec->state = 2;