public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Mohammed Gamal <m.gamal005@gmail.com>
Cc: kvm@vger.kernel.org, mtosatti@redhat.com
Subject: Re: [RFC PATCH v3 0/4] Real mode interrupt injection
Date: Mon, 16 Aug 2010 11:51:57 +0300	[thread overview]
Message-ID: <4C68FC2D.5070208@redhat.com> (raw)
In-Reply-To: <AANLkTik5ZQ5cRu6JmHN8HAN3mu-m9EgKh=UHRPndzmUq@mail.gmail.com>

  On 08/16/2010 02:37 AM, Mohammed Gamal wrote:
>
> Here is a full trace of a MINIX guest since bootup. Looks like we get
> stuck somewhere in the BIOS.
> https://docs.google.com/leaf?id=0B9UodZT1IuENMzJhNWQxM2YtYzE3YS00YWY4LTk2YTgtZWY3ODNhMWUxMDkx&sort=name&layout=list&num=50

>  qemu-system-x86-28953 [000]  1927.399942: kvm_inj_virq: irq 16
>  qemu-system-x86-28953 [000]  1927.399949: 
> kvm_inject_realmode_interrupt: cs=c000
>  qemu-system-x86-28953 [000]  1927.399951: 
> kvm_inject_realmode_interrupt: eip=40a3
>  qemu-system-x86-28953 [000]  1927.399957: 
> kvm_inject_realmode_interrupt: cs=c000
>  qemu-system-x86-28953 [000]  1927.399958: 
> kvm_inject_realmode_interrupt: eip=8339
>  qemu-system-x86-28953 [000]  1927.399960: kvm_entry: vcpu 0
>  qemu-system-x86-28953 [000]  1927.399965: kvm_exit: reason 
> EXCEPTION_NMI rip 0x8339
>  qemu-system-x86-28953 [000]  1927.399966: kvm_page_fault: address 
> c8339 error_code 1d
>  qemu-system-x86-28953 [000]  1927.399970: kvm_entry: vcpu 0
>  qemu-system-x86-28953 [000]  1927.399975: kvm_exit: reason 
> IO_INSTRUCTION rip 0x67d9
>  qemu-system-x86-28953 [000]  1927.399976: kvm_pio: pio_read at 0x3c4 
> size 2 count 1
>  qemu-system-x86-28953 [000]  1927.399985: kvm_entry: vcpu 0
>  qemu-system-x86-28953 [000]  1927.399991: kvm_exit: reason 
> EXCEPTION_NMI rip 0x3d4

This is bogus, it's in the middle of an instruction:

    f93d1:       2e 67 8b 9a 00 00 f1    addr32 mov %cs:-0xf0000(%edx),%bx
    f93d8:       ff
    f93d9:       66 0f b7 eb             movzwl %bx,%ebp

Everything after that is invalid.

So we need to know how we got to rip = 0x3d4, it looks like an I/O port 
used by vga.  Please rerun with emulation on all real mode instructions.

>  qemu-system-x86-28953 [000]  1927.399992: kvm_page_fault: address 
> f93d4 error_code 1d
>  qemu-system-x86-28953 [000]  1927.399996: kvm_entry: vcpu 0
>  qemu-system-x86-28953 [000]  1927.400000: kvm_exit: reason 
> EXCEPTION_NMI rip 0x0
>  qemu-system-x86-28953 [000]  1927.400003: kvm_inj_exception: #DB (0x0)
>  qemu-system-x86-28953 [000]  1927.400005: 
> kvm_inject_realmode_interrupt: cs=fff1
>  qemu-system-x86-28953 [000]  1927.400006: 
> kvm_inject_realmode_interrupt: eip=0
>  qemu-system-x86-28953 [000]  1927.400011: 
> kvm_inject_realmode_interrupt: cs=f000
>  qemu-system-x86-28953 [000]  1927.400012: 
> kvm_inject_realmode_interrupt: eip=ff53
>  qemu-system-x86-28953 [000]  1927.400014: kvm_entry: vcpu 0

-- 
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.


  reply	other threads:[~2010-08-16  8:52 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-15 21:46 [RFC PATCH v3 0/4] Real mode interrupt injection Mohammed Gamal
2010-08-15 21:47 ` [RFC PATCH v3 1/4] x86 emulator: Expose emulate_int_real() Mohammed Gamal
2010-08-15 21:47 ` [RFC PATCH v3 2/4] x86: Separate emulation context initialization in a separate function Mohammed Gamal
2010-08-15 21:47 ` [RFC PATCH v3 3/4] x86: Add kvm_inject_realmode_interrupt() wrapper Mohammed Gamal
2010-08-15 21:47 ` [RFC PATCH v3 4/4] VMX: Emulated real mode interrupt injection Mohammed Gamal
2010-08-15 23:37 ` [RFC PATCH v3 0/4] Real " Mohammed Gamal
2010-08-16  8:51   ` Avi Kivity [this message]
2010-08-16 13:19   ` Avi Kivity
2010-08-16 13:28     ` Mohammed Gamal
2010-08-16 14:16       ` Avi Kivity
2010-08-16 14:29         ` Gleb Natapov
2010-08-16 14:47           ` Avi Kivity
2010-08-16 15:23             ` Mohammed Gamal
2010-08-16 15:31               ` Gleb Natapov
2010-08-16 15:33                 ` Avi Kivity
2010-08-16 15:43                 ` Mohammed Gamal
2010-08-16 10:14 ` Avi Kivity

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=4C68FC2D.5070208@redhat.com \
    --to=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=m.gamal005@gmail.com \
    --cc=mtosatti@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox