Do you execute sidt and patch the IDT with interrupts turned off? (IF=0)
Sidt is a non-faulting supervisor instruction that will give you our shadow tables if it's not patched. If you clear IF,
then you will get the right guest table pointer.

This limitation does not apply to hardware virtualization (VT-x & AMD-V).

Regards,

Sander

albert wrote:
Greetings all,

My apologies if this is not the correct newsgroup for the following question:

I am patiently migrating the rr0d kernel debugger (http://rr0d.droids-corp.org/) to run smoothly inside a windows xp guest. The host system is a Debian running virtualbox 1.6.2. <http://1.6.2.>

Video direct memory access seems to be partially fine, but the biggest problem seems to be the interrupt table patching.

It would appear that Virtualbox doesn't like anybody from touching the kernel supervisor arena, even from ring 0. Is this a limitation of the software? Or is the debugger really doing something nasty?

The debugger code calls the mnemonic sidt to obain the base address to the IDT (which works fine) and then patches several entries to get control over certain interrupts (int 0, 3, 13 and a few others)

During this operation, I get the following entries in the virtualbox log file:

FATAL ERROR: trpmgcShadowIDTWriteHandler: eip=F4226AD2 pvFault=F700F468 pvRange=F700F450
             CheckPageFault: write to hypervisor region f700f46c
FATAL ERROR: trpmgcShadowIDTWriteHandler: eip=F4226AF3 pvFault=F700F46C pvRange=F700F450

Any suggestions greatly appreciated.

cheers,
albert
------------------------------------------------------------------------

_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev


--
Kind regards / Mit freundlichen Gruessen / Met vriendelijke groet

--

Sun Microsystems GmbH        Sander van Leeuwen
Werkstrasse 24               Senior Staff Engineer, VirtualBox
71384 Weinstadt, Germany     mailto:[EMAIL PROTECTED]


================================================
Sitz der Gesellschaft: Sun Microsystems GmbH,
Sonnenallee 1, 85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder,
Wolfgang Engels, Dr. Roland Boehmer
Vorsitzender des Aufsichtsrates: Martin Haering
================================================

_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev

Reply via email to