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

Re: [Xen-devel] VT/ioemu: vga memory access?




On 16 May 2006, at 17:20, Petersson, Mats wrote:

I think I found the bug.  It's actually in handle_mmio() ;)
The "case INSTR_MOVS" has code which deals with page
boundaries.  The code allways _adds_ the count (ecx) to
figure whenever the "repz movsb" crosses a page boundary or
not.  In case the direction flag is set this isn't correct,
it should subtract instead.  Subsequently it mis-calculates
count, making it _larger_ than it was because the copy
wouldn't have crossed a page boundary, leading to the
negative ecx value in the register dump ...

I think you're right...

I'll write some simple test code to check it out, and let you know...

Hmmm... wouldn't it be nice if we didn't have a bespoke, buggy & incomplete emulator for hvm mmio. ;-)

 -- Keir


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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