<div dir="ltr"><span class="Apple-style-span" style="border-collapse: collapse; ">Greetings all,<br><br>My apologies if this is not the correct newsgroup for the following question:<br><br>I am patiently migrating the rr0d kernel debugger (<a href="http://rr0d.droids-corp.org/" target="_blank" style="color: rgb(0, 0, 204); ">http://rr0d.droids-corp.org/</a>)<br>
to run smoothly inside a windows xp guest. The host system is a Debian running virtualbox <a href="http://1.6.2." target="_blank" style="color: rgb(0, 0, 204); ">1.6.2.</a><br><br>Video direct memory access seems to be partially fine, but the biggest problem seems to be the interrupt table patching.<br>
<br>It would appear that Virtualbox doesn't like anybody from touching the kernel supervisor arena,<br>even from ring 0. Is this a limitation of the software? Or is the debugger really doing something nasty?</span><div>
<span class="Apple-style-span" style="border-collapse: collapse;"><br></span></div><div><span class="Apple-style-span" style="border-collapse: collapse; ">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)<br>
<br>During this operation, I get the following entries in the virtualbox log file:<br><br> FATAL ERROR: trpmgcShadowIDTWriteHandler: eip=F4226AD2 pvFault=F700F468 pvRange=F700F450<br> CheckPageFault: write to hypervisor region f700f46c<br>
FATAL ERROR: trpmgcShadowIDTWriteHandler: eip=F4226AF3 pvFault=F700F46C pvRange=F700F450<br><br>Any suggestions greatly appreciated.<br><br>cheers,<br>albert</span><br></div></div>