[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] libxc: correctly unmap pages after core-dumping a pv guest
I forgot to put [PATCH] in the subject, sorry about that.
Am Montag 23 Mai 2011 13:42:28 schrieb Markus Groß:
> while implementing core dumping functionality for the libxl driver
> of libvirt, I discovered an issue with mapping pages of a pv guest.
> After dumping the core of a pv guest the domain was not cleared up
> properly and some pages were not unmapped. This issue is similar
> to the one reported here:
> In xc_domain_dumpcore_via_callback in the file xc_core.c the function
> xc_core_arch_map_p2m is called to map P2M_FL_ENTRIES pages to the variable
> But to unmap the pages later, the dinfo->p2m_size has to be set accordingly.
> This was not done, instead a variable named p2m_size was set.
> This way P2M_FL_ENTRIES was always zero and the pages were left mapped.
> The following patch fixes this.
> Best regards,
> diff -r 7c7ef1b6f4e5 tools/libxc/xc_core.c
> --- a/tools/libxc/xc_core.c Tue Apr 26 14:11:18 2011 +0100
> +++ b/tools/libxc/xc_core.c Mon May 23 13:36:23 2011 +0200
> @@ -468,7 +468,6 @@
> int auto_translated_physmap;
> xen_pfn_t *p2m = NULL;
> - unsigned long p2m_size = 0;
> struct xen_dumpcore_p2m *p2m_array = NULL;
> uint64_t *pfn_array = NULL;
> @@ -569,7 +568,7 @@
> sts = xc_core_arch_map_p2m(xch, dinfo->guest_width, &info,
> - &p2m, &p2m_size);
> + &p2m, &dinfo->p2m_size);
> if ( sts != 0 )
> goto out;
> Xen-devel mailing list
Xen-devel mailing list