All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Guillaume Thouvenin <guillaume.thouvenin@ext.bull.net>
Cc: kvm@vger.kernel.org, Avi Kivity <avi@qumranet.com>,
	Anthony Liguori <anthony@codemonkey.ws>,
	Mohammed Gamal <m.gamal005@gmail.com>,
	"Kamble, Nitin A" <nitin.a.kamble@intel.com>,
	Alexander Graf <alex@csgraf.de>
Subject: Re: [RFC] Patch - Big real mode emulation
Date: Wed, 21 May 2008 13:18:05 -0300	[thread overview]
Message-ID: <20080521161805.GA9298@dmt> (raw)
In-Reply-To: <20080521113410.43ec182f@frecb000711.frec.bull.fr>

Hi Guillaume,

On Wed, May 21, 2008 at 11:34:10AM +0200, Guillaume Thouvenin wrote:
> Hello,
> 
> Opensuse 10.3 is it uses a version of gfxboot that reads SS after
> switching from real to protected mode, where SS contains an invalid
> value, which VMX does not allow. So this patch 

<snip>

>  	      add:		/* add */
> +		if ((c->d & ModRM) && c->modrm_mod == 3) {
> +			c->dst.bytes = (c->d & ByteOp) ? 1 : c->op_bytes;
> +			c->dst.ptr =  decode_register(c->modrm_rm, c->regs, c->d & ByteOp);
> +		}
>  		emulate_2op_SrcV("add", c->src, c->dst, ctxt->eflags);
>  		break;

I don't see any difference from the previous patch here (on the issue that
add result was stored in the wrong register) ?

     6486:       66 64 89 3e 72 01       mov    %edi,%fs:0x172
     648c:       66 be 8d 03 00 00       mov    $0x38d,%esi
     6492:       66 c1 e6 04             shl    $0x4,%esi
     6496:       66 b8 98 0a 00 00       mov    $0xa98,%eax
     649c:       66 03 f0                add    %eax,%esi

So "66 03 f0" stores result in eax instead of esi. And of course this
can be fatal (in the FreeDOS case the TSS data was copied to a wrong
location). Better fix that before merging.

Thanks!


  parent reply	other threads:[~2008-05-21 16:16 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-21  9:34 [RFC] Patch - Big real mode emulation Guillaume Thouvenin
2008-05-21 13:59 ` Avi Kivity
2008-05-21 14:10   ` Avi Kivity
2008-05-22  8:55     ` Guillaume Thouvenin
2008-05-21 17:19   ` Marcelo Tosatti
2008-05-21 15:32 ` Mohammed Gamal
2008-05-21 16:18 ` Marcelo Tosatti [this message]
2008-05-22  9:02   ` Guillaume Thouvenin
2008-05-21 23:18 ` Kamble, Nitin A
2008-05-22 22:52   ` Mohammed Gamal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080521161805.GA9298@dmt \
    --to=mtosatti@redhat.com \
    --cc=alex@csgraf.de \
    --cc=anthony@codemonkey.ws \
    --cc=avi@qumranet.com \
    --cc=guillaume.thouvenin@ext.bull.net \
    --cc=kvm@vger.kernel.org \
    --cc=m.gamal005@gmail.com \
    --cc=nitin.a.kamble@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.