diff --git a/drivers/staging/xillybus/xillybus_core.c b/drivers/staging/xillybus/xillybus_core.c index 63c2c14f876e..1b63197843b7 100644 --- a/drivers/staging/xillybus/xillybus_core.c +++ b/drivers/staging/xillybus/xillybus_core.c @@ -172,9 +172,9 @@ irqreturn_t xillybus_isr(int irq, void *data) return IRQ_HANDLED; } - buf_size = i; + buf_size = i + 2; - for (i = 0; i <= buf_size; i += 2) { /* Scan through messages */ + for (i = 0; i < buf_size; i += 2) { /* Scan through messages */ opcode = (buf[i] >> 24) & 0xff; msg_dir = buf[i] & 1;