This bug causes some pages not to be properly freed by xen, hence
after a cycle of 50 save\restore we don't have enough spare memory to
start 2 VMs any more. This patch fixes the issue properly unmapping
all the pages needed by the shared ring.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
while (!xenbus_frontend_state_changed(mount, STATE_CLOSING));
xenbus_write_backend_state(mount, STATE_CLOSED);
- xc_gnttab_munmap(mount->gnth, mount->ring.sring, 1);
+ xc_gnttab_munmap(mount->gnth, mount->ring.sring, mount->shared_ring_size);
xc_gnttab_close(mount->gnth);
xc_evtchn_unbind(mount->evth, mount->local_evtchn);
xc_evtchn_close(mount->evth);