|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] pagetable maps itself
On 13 Mar 2005, at 15:21, David Becker wrote:
I'm trying to put the shared_info page entry(0x001b6007) in
a pte at 0xc0116404 and get
(XEN) DOM77: (file=memory.c, line=1821) PTWR failure! Pagetable maps
itself at c0116404
Doubtless this is operator error, but I'm at a loss as to what my
error is.
I am confident the pte address is correct and that the domain build
says the
share_info mfn is 0x1b6.
The pgd page entry for 0xc0116404 is 0x01c28067, which also appears OK.
I don't understand how my table is mapping itself when I write that
pte.
It's a current weakness of the writable pagetable implementation -- if
you try to directly write to a pagetable that maps itself then the
usual wrpt implementation cannot work. It wants to temporarily make the
page a non-pt page and make it writable: but it can't do both (think
about it).
I will be fixing this in the unstable tree in the next few days, using
my new instruction emulator to 'fill in' this unfortunate corner case
and a few others. Shorter term, please use the batched interface
(do_mmu_update) to add the mapping. I use that in preference to
writable pagetables to update most kernel mappings in Linux right now,
to avoid just the problem that you have just hit.
-- Keir
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel
|
|
|
|
|