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

[Xen-devel] Crash when translating mfn to pfn


I'm a student and trying to port a small experimental operating system to 
Currently I'm stuck when trying to set up the paging correctly. My problem
is that I want to translate all machine frames belonging to the guest 
domain to physical page frames and back.
The conversation from pfn to mfn seems to work well when using the mfn_list
from the start_info_t. But when I try to translate the mfn back to pfn
(using machine_to_phys_mapping from arch-x86_32.h which points to 
HYPERVISOR_VIRT_START) the guest domain crashes when I try to use specific 
array indeces (In the test setup these are 375-389, 2952-54 and possibly 
some more, also seems to depend at which index I'm starting (everything 
above index 2962 seems to work fine)).

Could someone give me a hint what I'm missing?

In the xen sparse tree include/asm-xen/asm-i386/page.h there is a small note
in the pfn_to_mfn function:
  * The array access can fail (e.g., device space beyond end of RAM).
  * In such cases it doesn't matter what we return (we return garbage),
  * but we must handle the fault without crashing!
I guess this doesn't apply to my situation as I'm only trying to translate
mfn which belong to the guest domain, correct?

Best Regards, Markus

PS: Guess I will have some more questions soon :-)

10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse für Mail, Message, More +++

Xen-devel mailing list



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