]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
hw/char: sifive_uart: Avoid pushing Tx FIFO when size is zero
authorFrank Chang <frank.chang@sifive.com>
Thu, 11 Sep 2025 16:06:44 +0000 (00:06 +0800)
committerAlistair Francis <alistair.francis@wdc.com>
Thu, 2 Oct 2025 05:08:36 +0000 (15:08 +1000)
There's no need to call fifo8_push_all() when size is zero.

Signed-off-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20250911160647.5710-3-frank.chang@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
hw/char/sifive_uart.c

index 138c31fcabf4c6cfe2fc474cff8c5188fada12bd..401f869680dc8276a0d7ebcfe30b09bfb8333927 100644 (file)
@@ -122,7 +122,9 @@ static void sifive_uart_write_tx_fifo(SiFiveUARTState *s, const uint8_t *buf,
         qemu_log_mask(LOG_GUEST_ERROR, "sifive_uart: TX FIFO overflow");
     }
 
-    fifo8_push_all(&s->tx_fifo, buf, size);
+    if (size > 0) {
+        fifo8_push_all(&s->tx_fifo, buf, size);
+    }
 
     if (fifo8_is_full(&s->tx_fifo)) {
         s->txfifo |= SIFIVE_UART_TXFIFO_FULL;