Re: [v2 5/7] x86: Add emulation code for UMIP instructions

Ricardo Neri <[email protected]>
Newsgroups org.kernel.vger.linux-msdos,org.kernel.vger.linux-kernel
Message-ID <1482885636.106950.30.camel@ranerica-desktop>
On Mon, 2016-12-26 at 00:49 +0900, Masami Hiramatsu wrote:
> On Fri, 23 Dec 2016 17:37:43 -0800
> Ricardo Neri <[email protected]> wrote:
> 
> > +static int __identify_insn(struct insn *insn)
> > +{
> > +	/* by getting modrm we also get the opcode */
> > +	insn_get_modrm(insn);
> > +	if (insn->opcode.bytes[0] != 0xf)
> > +		return -EINVAL;
> > +
> > +	if (insn->opcode.bytes[1] == 0x1) {
> > +		switch (X86_MODRM_REG(insn->modrm.value)) {
> > +		case 0:
> > +			return UMIP_SGDT;
> > +		case 1:
> > +			return UMIP_SIDT;
> > +		case 4:
> > +			return UMIP_SMSW;
> > +		default:
> > +			return -EINVAL;
> > +		}
> > +	} else if (insn->opcode.bytes[1] == 0x0) {
> > +		if (X86_MODRM_REG(insn->modrm.value) == 0)
> > +			return UMIP_SLDT;
> > +		else if (X86_MODRM_REG(insn->modrm.value) == 1)
> > +			return UMIP_STR;
> > +		else
> > +			return -EINVAL;
> > +	}
> 
> gcc detected an error here, you may need return "-EINVAL".

I will make this change. I removed this EINVAL at the last minute as it
didn't look right. It was indeed right.

Thanks and BR,
Ricardo
> 
> Thanks,
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.