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

Re: [Xen-devel] qemu(-dm): aborting on wrong mmio size?



>>> On 31.01.12 at 12:04, Laszlo Ersek <lersek@xxxxxxxxxx> wrote:
> On 01/31/12 11:36, Jan Beulich wrote:
>>>>> On 31.01.12 at 10:34, Laszlo Ersek<lersek@xxxxxxxxxx>  wrote:
> 
>>> Is it justified to kill the emulator when this happens (eg. memory
>>> mapped IO with 64-bit operand)?
> 
>> The AMD manual specifies that REX.W is ignored; the Intel manual
>> doesn't mention REX at all here. However, if a decoder incorrectly
>> decodes the guest instruction, that's a bug there. So imo qemu
>> validly treats this condition as fatal.
> 
>  From the Itanium(R) SDM rev 2.3,
> 
> 10.7.2.1 I/O Port Addressing Restrictions
> 
>      For the 64MB physical I/O port block the following operations are
>      undefined and may result in unpredictable processor operation;
>      references larger than 4-bytes, [...]
> 
> It seems that not only a decoding failure can trigger this.

Oh, yes, I forgot that port I/O goes via MMIO on ia64. So yes, for
that case your observation is correct, though killing qemu-dm in
that case still seems to fall well under "undefined behavior". But
improving the situation wouldn't be bad then.

Jan


_______________________________________________
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®.