CVSROOT: /cvs Module name: src Changes by: s...@cvs.openbsd.org 2024/08/01 05:13:19
Modified files: sys/dev/pv : if_vio.c vioblk.c viogpu.c viocon.c virtio.c Log message: virtio: Fix dmamap_sync calls Add some missing bus_dmamap_sync calls, noticed with SEV and based on an earlier diff by hshoexer@. Some of the required syncing is done in virtio_check_vq(). Make sure to use that function instead of calling call the virtqueue done function directly from device specific drivers. For viogpu this means that we cannot poll with virtio_dequeue() but must use virtio_check_vq() instead. To make this more clear, rename viogpu_vq_wait() into viogpu_vq_done(). While there, set the DRIVER_OK flag even earlier. It must be set before using any virtqueue. ok kettenis@