[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 04/24] hw/xen: don't clear map_track[] in xen_gnttab_reset()
- To: David Woodhouse <dwmw2@xxxxxxxxxxxxx>, qemu-devel@xxxxxxxxxx
- From: Paul Durrant <xadimgnik@xxxxxxxxx>
- Date: Tue, 24 Oct 2023 16:03:58 +0100
- Cc: Kevin Wolf <kwolf@xxxxxxxxxx>, Hanna Reitz <hreitz@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, Marc-André Lureau <marcandre.lureau@xxxxxxxxxx>, Paolo Bonzini <pbonzini@xxxxxxxxxx>, Richard Henderson <richard.henderson@xxxxxxxxxx>, Eduardo Habkost <eduardo@xxxxxxxxxxx>, "Michael S. Tsirkin" <mst@xxxxxxxxxx>, Marcel Apfelbaum <marcel.apfelbaum@xxxxxxxxx>, Jason Wang <jasowang@xxxxxxxxxx>, Marcelo Tosatti <mtosatti@xxxxxxxxxx>, Cleber Rosa <crosa@xxxxxxxxxx>, Philippe Mathieu-Daudé <philmd@xxxxxxxxxx>, Wainer dos Santos Moschetta <wainersm@xxxxxxxxxx>, Beraldo Leal <bleal@xxxxxxxxxx>, qemu-block@xxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxxx, kvm@xxxxxxxxxxxxxxx, Bernhard Beschow <shentey@xxxxxxxxx>, Joel Upham <jupham125@xxxxxxxxx>
- Delivery-date: Tue, 24 Oct 2023 15:04:05 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 19/10/2023 16:40, David Woodhouse wrote:
From: David Woodhouse <dwmw@xxxxxxxxxxxx>
The refcounts actually correspond to 'active_ref' structures stored in a
GHashTable per "user" on the backend side (mostly, per XenDevice).
If we zero map_track[] on reset, then when the backend drivers get torn
down and release their mapping we hit the assert(s->map_track[ref] != 0)
in gnt_unref().
So leave them in place. Each backend driver will disconnect and reconnect
as the guest comes back up again and reconnects, and it all works out OK
in the end as the old refs get dropped.
Fixes: de26b2619789 ("hw/xen: Implement soft reset for emulated gnttab")
Signed-off-by: David Woodhouse <dwmw@xxxxxxxxxxxx>
---
hw/i386/kvm/xen_gnttab.c | 2 --
1 file changed, 2 deletions(-)
Reviewed-by: Paul Durrant <paul@xxxxxxx>
|