On 1/8/21 7:04 PM, Peter Maydell wrote:
> A copy-and-paste error meant that the return value for register offset 0x44
> (the RX Status FIFO PEEK register) returned a byte from a bogus offset in
> the rx status FIFO. Fix the typo.
Wow, nice catch :)
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Cc: qemu-stable@nongnu.org
> Fixes: https://bugs.launchpad.net/qemu/+bug/1904954
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> hw/net/lan9118.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c
> index ab57c02c8e1..13d469fe24f 100644
> --- a/hw/net/lan9118.c
> +++ b/hw/net/lan9118.c
> @@ -1206,7 +1206,7 @@ static uint64_t lan9118_readl(void *opaque, hwaddr offset,
> case 0x40:
> return rx_status_fifo_pop(s);
> case 0x44:
> - return s->rx_status_fifo[s->tx_status_fifo_head];
> + return s->rx_status_fifo[s->rx_status_fifo_head];
> case 0x48:
> return tx_status_fifo_pop(s);
> case 0x4c:
>