xen-devel
[Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate
To: |
"Kamble, Nitin A" <nitin.a.kamble@xxxxxxxxx> |
Subject: |
[Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate |
From: |
Anthony Liguori <aliguori@xxxxxxxxxx> |
Date: |
Fri, 30 Mar 2007 17:11:39 -0500 |
Cc: |
"Yu, Wilfred" <wilfred.yu@xxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, Keir Fraser <keir@xxxxxxxxxxxxx>, "Nakajima, Jun" <jun.nakajima@xxxxxxxxx> |
Delivery-date: |
Fri, 30 Mar 2007 23:13:04 +0100 |
Envelope-to: |
Keir.Fraser@xxxxxxxxxxxx |
In-reply-to: |
<1175289886.32115.26.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<4607074E.1030807@xxxxxxxxxx> <1175203075.27076.17.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <460C4AAE.5020707@xxxxxxxxxx> <1175212362.27076.32.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <460C55BD.5050202@xxxxxxxxxx> <1175216381.27076.39.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <1175221214.27076.43.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <460C8207.8000604@xxxxxxxxxx> <1175280781.32115.13.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <460D5E34.2080803@xxxxxxxxxx> <1175288913.32115.20.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> <1175289886.32115.26.camel@xxxxxxxxxxxxxxxxxxxxxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Thunderbird 1.5.0.10 (X11/20070307) |
Kamble, Nitin A wrote:
Anthony,
eip of 0x0 is the right address.
Because the trampoline_Start code is relocated to address 0.
/* Relocate real-mode trampoline to 0x0. */
" mov $trampoline_start,%esi \n"
" xor %edi,%edi \n"
" mov $trampoline_end,%ecx \n"
" sub %esi,%ecx \n"
" rep movsb \n"
Still there is no progress in the emulation. The guest is dying with
triple-fault just like before.
Thanks & Regards,
Nitin
Open Source Technology Center, Intel Corporation.
-------------------------------------------------------------------------
The mind is like a parachute; it works much better when it's open.
On Fri, 2007-03-30 at 14:08 -0700, Nitin A Kamble wrote:
Hi Anthony,
On Fri, 2007-03-30 at 14:00 -0500, Anthony Liguori wrote:
/* Enter real mode, reload all segment registers and IDT. */
" ljmp $0x8,$0x0 \n"
"trampoline_start: .code16 \n"
" mov %eax,%cr0 \n"
That change was pretty recent so unless it was reverted it should Just Work.
Regards,
Anthony Liguori
Now I see cr0 is updated after returning from main.
I enabled the debug log in the xen code now.
(XEN) HVM2: Creating MP tables
...
(XEN) HVM2: Loading Cirrus VGABIOS
...
(XEN) HVM2: Loading ACPI
...
(XEN) HVM2: Loading VMXAssist ...
deadbeef
(XEN) HVM2:
foo
(XEN)
hvmop_emulate_realmode
(XEN) guest requests real mode
emulation
(XEN) foo
221
(XEN) HVM2: Invoking ROMBIOS
...
(XEN) vmx_vmexit_handler called. eip =
0x0
(XEN) vmx_cr_access called
eip=0x0
(XEN) mov_to_cr 0 called
eip=0x0
(XEN) vmx_set_cr0 called
eip=0x0
(XEN) Transfering -- control to x86_emulate eip
0x0
(XEN) hvm.c:446:d2 Triple fault on VCPU0 - invoking HVM system reset.
It shows cr0 is getting modified. But the eip is still 0x0.
set_cr0 is returning 1 though which should increment eip to the next
instruction.
I'm a bit perplexed about my eip now and also why your eip is still 0.
It should be the instruction following the mov cr0.
Regards,
Anthony Liguori
Thanks & Regards,
Nitin
Open Source Technology Center, Intel Corporation.
-------------------------------------------------------------------------
The mind is like a parachute; it works much better when it's open.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, (continued)
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Anthony Liguori
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Anthony Liguori
- Re: [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Anthony Liguori
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Anthony Liguori
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate, Kamble, Nitin A
- [Xen-devel] Re: [PATCH][RFC] Emulating real mode with x86_emulate,
Anthony Liguori <=
Message not available
|
|
|