On 10/6/06, Keir Fraser <Keir.Fraser@cl.cam.ac.uk>
wrote:> On 6/10/06 10:54, "Jacob Gorm Hansen" <jacobg@diku.dk>
wrote:
>
> > can I count on all pages in a domU that are changed by Xen, backend
> > drivers, or writable pagetable magic, being marked as PG_foreign?
>
> I''m not sure what you mean by ''changed''. But I
expect you misunderstand the
> meaning of PG_foreign anyway. What it means is ''foreign''
from the
> point-of-view of Linux''s buddy allocator -- i.e., it is a page
that actually
> comes from a different allocator, which is wanting to hook off of
> free_pages(). It doesn''t (necessarily) mean that the page is
actually from a
> foreign virtual machine.
I had a problem with self-checkpoint consistency -- page contents
would change without my knowledge (I would get no page faults, and the
pages did not seem to come from netfront or blkfront drivers), and I
''solved'' that in a very ugly way by looping through all pages
and
explicitly checkpointing those with the PG_foreign bit set.
The offending pages looked like page tables, they would be all zero,
and then a single entry would somehow sneak in without warning, even
though I was taking care to flush all writable pagetable actions
before taking the checkpoint.
This is in -testing, perhaps I should try -unstable, where writable
page tables are rumoured to have gone away.
Jacob
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel