Re: [PATCH v7 2/3] vhost/vsock: discard IOTLB when ACCESS_PLATFORM is cleared
flat view
From: Jia Jia <hidden>
Date: 2026-08-20 12:26:49
Also in:
kvm, lkml, virtualization
On Thu, Aug 20, 2026 at 04:03:31PM +0800, Jia Jia wrote:quoted
Clear the device IOTLB when userspace clears VIRTIO_F_ACCESS_PLATFORM. Otherwise descriptor translation can continue to use mappings installed before the feature change. The common helper invalidates cached vring access and applies the transition even while a backend is attached. The backend remains attached, but userspace must configure the vring addresses for the new address mode after a successful live transition. Fixes: e13a6915a03f ("vhost/vsock: add IOTLB API support") Suggested-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Jia Jia <redacted> --- drivers/vhost/vsock.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)diff --git a/drivers/vhost/vsock.c b/drivers/vhost/vsock.c index 9aaab6bb8061..e1e9d002d6ae 100644 --- a/drivers/vhost/vsock.c +++ b/drivers/vhost/vsock.c@@ -865,9 +865,11 @@ static int vhost_vsock_set_features(struct vhost_vsock *vsock, u64 features) goto err; } - if ((features & (1ULL << VIRTIO_F_ACCESS_PLATFORM))) { + if (features & (1ULL << VIRTIO_F_ACCESS_PLATFORM)) {Unrelated change... I think I've already pointed something like this in previous versions: for a patch that fixes a specific issue, these unrelated changes should be avoided. Please keep this in mind. Stefano
You're right, thanks for the reminder. That was my oversight—I should have cleaned it up more carefully. I'll remember that going forward.
quoted
if (vhost_init_device_iotlb(&vsock->dev)) goto err; + } else { + vhost_clear_device_iotlb(&vsock->dev); } vsock->seqpacket_allow = features & (1ULL << VIRTIO_VSOCK_F_SEQPACKET); -- 2.34.1