On Thursday 26 June 2008 12:32:11 Gianluca Guida wrote:
> Hello,
>
> Sorry for the late reply. Sending emails is sometimes more
> complicated than what you expect.
>
> On Jun 25, 2008, at 3:17 PM, Christoph Egger wrote:
> > It looks to me, the recent L1 shadow changesets introduced a bug.
>
> Yes. This bug is triggered when the guest shuts down with pages still
> OOS (e.g., paging still enabled and recently touched L1s pagetables,
> or supposedly so). I unfortunately could not reproduce it, but the
> inline patch should fix this.
I can confirm this patch fixes the crash. Tnx.
Keir: Please apply the patch.
Christoph
>
> Thanks!
> Gianluca
>
> Signed-off-by: Gianluca Guida <gianluca.guida@xxxxxxxxxxxxx>
>
> diff -r 2be3c309e446 xen/arch/x86/mm/shadow/common.c
> --- a/xen/arch/x86/mm/shadow/common.c Wed Jun 25 13:39:14 2008 -0400
> +++ b/xen/arch/x86/mm/shadow/common.c Wed Jun 25 14:54:34 2008 -0400
> @@ -630,6 +630,11 @@
> struct domain *d = v->domain;
>
> perfc_incr(shadow_oos_fixup_remove);
> +
> + /* If the domain is dying we might get called when deallocating
> + * the shadows. Fixup tables are already freed so exit now. */
> + if (d->is_dying)
> + return;
>
> idx = mfn_x(gmfn) % SHADOW_OOS_FT_HASH;
> for_each_vcpu(d, v)
> @@ -3168,6 +3173,7 @@
> {
> free_xenheap_pages(v->arch.paging.shadow.oos_fixups,
> SHADOW_OOS_FT_ORDER);
> + v->arch.paging.shadow.oos_fixups = NULL;
> }
>
> {
--
AMD Saxony, Dresden, Germany
Operating System Research Center
Legal Information:
AMD Saxony Limited Liability Company & Co. KG
Sitz (Geschäftsanschrift):
Wilschdorfer Landstr. 101, 01109 Dresden, Deutschland
Registergericht Dresden: HRA 4896
vertretungsberechtigter Komplementär:
AMD Saxony LLC (Sitz Wilmington, Delaware, USA)
Geschäftsführer der AMD Saxony LLC:
Dr. Hans-R. Deppe, Thomas McCoy
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|