[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Stale mfns in update_queue in XenoLinux, and suspend/resume


  • To: Xen list <xen-devel@xxxxxxxxxxxxxxxxxxxxx>
  • From: Jacob Gorm Hansen <jacob@xxxxxxxx>
  • Date: Sun, 04 Apr 2004 18:02:28 +0200
  • Delivery-date: Sun, 04 Apr 2004 17:05:05 +0100
  • List-id: List for Xen developers <xen-devel.lists.sourceforge.net>

hi,

it seems the suspend code in arch/xen/kernel/setup.c does not flush to
mmu_update queue prior to suspend, and that as a result it may crash
after resumption as a result of stale machine page frame references in
the queue. Is this correct/should this behaviour be fixed? I am
currently investigating a crash in my own migration code, and though I
do flush the queue prior to obtaining a checkpoint, I still seem to be
hit occasionally by stale references somewhere. 

If suspension is going to be safe, I guess all uses of machine addresses
should be treated as critical regions, to make sure a suspend/resume
does not happen while they are still in scope? I know this will be
problematic because of the batching of mmu-updates, perhaps it would be
wise to revert to the old behavior of specifying them as virtual
addresses, or maybe they should be converted on the fly, in a cli()
context right before the hypercall?

Jacob



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.