Re: [GIT PULL] virtio: features

From: Ning, Hongyu
Date: Wed Nov 29 2023 - 05:46:46 EST



On 2023/11/29 18:20, Jason Wang wrote:
On Wed, Nov 29, 2023 at 6:12 PM Ning, Hongyu
<hongyu.ning@xxxxxxxxxxxxxxx> wrote:


On 2023/11/29 17:16, Jason Wang wrote:
On Wed, Nov 29, 2023 at 5:05 PM Ning, Hongyu
<hongyu.ning@xxxxxxxxxxxxxxx> wrote:



On 2023/9/4 6:13, Michael S. Tsirkin wrote:
The following changes since commit 2dde18cd1d8fac735875f2e4987f11817cc0bc2c:

Linux 6.5 (2023-08-27 14:49:51 -0700)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git tags/for_linus

for you to fetch changes up to 1acfe2c1225899eab5ab724c91b7e1eb2881b9ab:

virtio_ring: fix avail_wrap_counter in virtqueue_add_packed (2023-09-03 18:10:24 -0400)

----------------------------------------------------------------
virtio: features

a small pull request this time around, mostly because the
vduse network got postponed to next relase so we can be sure
we got the security store right.

Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

----------------------------------------------------------------
Eugenio Pérez (4):
vdpa: add VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK flag
vdpa: accept VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK backend feature
vdpa: add get_backend_features vdpa operation
vdpa_sim: offer VHOST_BACKEND_F_ENABLE_AFTER_DRIVER_OK

Jason Wang (1):
virtio_vdpa: build affinity masks conditionally

Xuan Zhuo (12):
virtio_ring: check use_dma_api before unmap desc for indirect
virtio_ring: put mapping error check in vring_map_one_sg
virtio_ring: introduce virtqueue_set_dma_premapped()
virtio_ring: support add premapped buf
virtio_ring: introduce virtqueue_dma_dev()
virtio_ring: skip unmap for premapped
virtio_ring: correct the expression of the description of virtqueue_resize()
virtio_ring: separate the logic of reset/enable from virtqueue_resize
virtio_ring: introduce virtqueue_reset()
virtio_ring: introduce dma map api for virtqueue
virtio_ring: introduce dma sync api for virtqueue
virtio_net: merge dma operations when filling mergeable buffers

Hi,
above patch (upstream commit 295525e29a5b) seems causing a virtnet
related Call Trace after WARNING from kernel/dma/debug.c.

details (log and test setup) tracked in
https://bugzilla.kernel.org/show_bug.cgi?id=218204

it's recently noticed in a TDX guest testing since v6.6.0 release cycle
and can still be reproduced in latest v6.7.0-rc3.

as local bisects results show, above WARNING and Call Trace is linked
with this patch, do you mind to take a look?

Looks like virtqueue_dma_sync_single_range_for_cpu() use
DMA_BIDIRECTIONAL unconditionally.

We should use dir here.

Mind to try?

Thanks


sure, but what I see in the code
virtqueue_dma_sync_single_range_for_cpu() is using DMA_FROM_DEVICE,
probably I misunderstood your point?

Please let me know any patch/setting to try here.

Something like attached. (Not even compiling test).

Thanks


Oh, this patch works, WARNING and Call Trace are no more reproduced in the same Linux Guest Kernel setup.





Yuan Yao (1):
virtio_ring: fix avail_wrap_counter in virtqueue_add_packed

Yue Haibing (1):
vdpa/mlx5: Remove unused function declarations

drivers/net/virtio_net.c | 230 ++++++++++++++++++---
drivers/vdpa/mlx5/core/mlx5_vdpa.h | 3 -
drivers/vdpa/vdpa_sim/vdpa_sim.c | 8 +
drivers/vhost/vdpa.c | 15 +-
drivers/virtio/virtio_ring.c | 412 ++++++++++++++++++++++++++++++++-----
drivers/virtio/virtio_vdpa.c | 17 +-
include/linux/vdpa.h | 4 +
include/linux/virtio.h | 22 ++
include/uapi/linux/vhost_types.h | 4 +
9 files changed, 625 insertions(+), 90 deletions(-)