|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Re: Making pages writable again in paging_log_dirty mode
> IIRC, They should stay as PGT_writeable, with a type count of zero.
Thanks a bunch Tim. In tracking down my overflow problem, it lead me
to find that that the "get_page_from_l1e()" function has this bit of
code that is causing my problem:
/* Foreign mappings into guests in shadow external mode don't
* contribute to writeable mapping refcounts. (This allows the
* qemu-dm helper process in dom0 to map the domain's memory without
* messing up the count of "real" writable mappings.) */
okay = (((l1f & _PAGE_RW) &&
!(unlikely(paging_mode_external(d) && (d != curr->domain))))
? get_page_and_type(page, d, PGT_writable_page)
: get_page(page, d));
Basically, I'm trying to make an HVM guest's pages writable again via
a hypercall from dom0, and so this piece of code messes up the type
count since I'm actually changing "proper" writeable mapping
refcounts. For now, I'm just calling an extra
"get_page_and_type(page, d, PGT_writable_page)" manually, and I think
it solves this problem, but I'm getting a different kind of kernel
panic now where it complains about not being able to
"rm_write_access()" due to some special mappings. Any ideas?
-- Mike
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|