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

Re: [Xen-devel] x86_emulate(): forgot to generate_exception_if() for0xff?



>>> "Liu, Eric E" <eric.e.liu@xxxxxxxxx> 19.12.07 10:34 >>>
>Hi all,
>In arch/x86/x86_emulate.c: x86_emulate():
>   1716     case 0xfe: /* Grp4 */
>   1717         generate_exception_if((m odrm_reg & 7) >= 2, EXC_UD);
>   1718     case 0xff: /* Grp5 */
>   1719         switch ( modrm_reg & 7 )
>   1720         {
>   1721         case 0: /* inc */
>   1722             emulate_1op("inc", dst, _regs.eflags);
>   1723             break;
>   1724         case 1: /* dec */
>   1725             emulate_1op("dec", dst, _regs.eflags);
>   1726             break;
>
>Here we only check 0xfe for "reg >= 2"? I think we should also check
>0xff -- we should swap line 1717 and 1718?

Definitely not - 2...6 are valid for opcode 0xff (but aren't for 0xfe).

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