Bug fix for queue capacity calculation
Reduce queue capacity by one byte, else it will not be possible to
distinguish between an empty and full queue.
Change-Id: Ia243a7175833826dc816d536cc79ac5a252f3e3a
diff --git a/kernel/ethosu_mailbox.c b/kernel/ethosu_mailbox.c
index 014ceb8..b5cde0d 100644
--- a/kernel/ethosu_mailbox.c
+++ b/kernel/ethosu_mailbox.c
@@ -105,7 +105,8 @@
static size_t ethosu_queue_capacity(struct ethosu_core_queue *queue)
{
- return queue->header.size - ethosu_queue_available(queue);
+ return max_t(ssize_t,
+ queue->header.size - ethosu_queue_available(queue) - 1, 0);
}
static int ethosu_queue_write(struct ethosu_mailbox *mbox,