diff --git a/drivers/can/can.c b/drivers/can/can.c index 389700a03a9..a61142b75f6 100644 --- a/drivers/can/can.c +++ b/drivers/can/can.c @@ -453,6 +453,9 @@ static ssize_t can_read(FAR struct file *filep, FAR char *buffer, if (fifo->rx_head == fifo->rx_tail) { + /* This happens either due to bug or on reader close. */ + + ret = -EIO; canerr("RX FIFO sem posted but FIFO is empty.\n"); goto return_with_irqdisabled; }