Re: git: c499ad6f997c - main - virtio: Use bus_dma for ring and indirect buffer allocations

From: Herbert J. Skuhra <herbert_at_gojira.at>
Date: Sun, 08 Mar 2026 17:39:50 UTC
On Tue, 03 Mar 2026 18:37:57 +0100, Andrew Turner wrote:
> 
> The branch main has been updated by andrew:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=c499ad6f997c8c5f61c88925e6d1e826d0c0f6c4
> 
> commit c499ad6f997c8c5f61c88925e6d1e826d0c0f6c4
> Author:     Sarah Walker <sarah.walker2@arm.com>
> AuthorDate: 2026-03-03 16:08:11 +0000
> Commit:     Andrew Turner <andrew@FreeBSD.org>
> CommitDate: 2026-03-03 16:29:15 +0000
> 
>     virtio: Use bus_dma for ring and indirect buffer allocations
>     
>     While the majority of virtio platforms will be fully coherent, some may
>     require cache maintenance or other specific device memory handling (eg for
>     secure partitioning). Using bus_dma allows for these usecases.
>     
>     The virtio buffers are marked as coherent; this should ensure that sync
>     calls are no-ops in the common cases.
>     
>     Reviewed by:    andrew
>     Sponsored by:   Arm Ltd
>     Differential Revision:  https://reviews.freebsd.org/D54959
> ---
>  sys/dev/virtio/virtio_ring.h |  27 ++++--
>  sys/dev/virtio/virtqueue.c   | 216 +++++++++++++++++++++++++++++++++++++------
>  2 files changed, 209 insertions(+), 34 deletions(-)

After this change I see a lot of "kernel: vtnet0: watchdog timeout on
queue xx" errors on amd64 (arm64 seems to be OK).

Reverting this commit resolves the issue.