From: Keir Fraser <keir@xen.org>
To: Lin-Bao Zhang <2004.zhang@gmail.com>,
Paolo Bonzini <pbonzini@redhat.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: xen-kernel and EDD
Date: Wed, 24 Aug 2011 09:03:29 +0100 [thread overview]
Message-ID: <CA7A6EE1.30B78%keir@xen.org> (raw)
In-Reply-To: <CANuKePmGJmOwJXqEK8KNx7VeigJWa0Am-NNT-inNmL3jZoBrgw@mail.gmail.com>
On 24/08/2011 08:50, "Lin-Bao Zhang" <2004.zhang@gmail.com> wrote:
> what a pity !
>
> it seems that our modification :
> 1. Change BOOT_TRAMPOLINE to 0x7c000
> 2. In xen/arch/x86/boot/head.S, change the line 'mov $0x98000,%esp' to
> 'mov $0x80000,%esp'.
> has make things worse ,
Ah yes, the BOOT_TRAMPOLINE address is hardcoded into the trampoline_gdt
array in trampoline.S. You need to replace the definitions at
xen/arch/x86/boot/trampoline.S:trampoline_gdt with the following:
trampoline_gdt:
/* 0x0000: unused */
.quad 0x0000000000000000
/* 0x0008: ring 0 code, 32-bit mode */
.quad 0x00cf9a000000ffff
/* 0x0010: ring 0 code, 64-bit mode */
.quad 0x00af9a000000ffff
/* 0x0018: ring 0 data */
.quad 0x00cf92000000ffff
/* 0x0020: real-mode code @ BOOT_TRAMPOLINE */
.long 0x0000ffff | ((BOOT_TRAMPOLINE & 0x00ffff) << 16)
.long 0x00009a00 | ((BOOT_TRAMPOLINE & 0xff0000) >> 16)
/* 0x0028: real-mode data @ BOOT_TRAMPOLINE */
.long 0x0000ffff | ((BOOT_TRAMPOLINE & 0x00ffff) << 16)
.long 0x00009200 | ((BOOT_TRAMPOLINE & 0xff0000) >> 16)
That should fix things. This is from xen-unstable:16147 by the way.
-- Keir
> after this picture
> :https://picasaweb.google.com/lh/photo/_XQU3pCYJ9bSL4UgvBhFJem26SCOd2WkElE8x5u
> AaOk?feat=directlink
> system no response again ,and then reset .
> I no longer can see
> - 1706-Smart Array Controller EBDA Memory Corrupted
> INT 13h BIOS Cannot Coninue - Sytem Halted
>
> Again !
> I doubt , maybe xen-kernel has corrupted before ³get_edd² due to our
> modification.
> this is indeed a gloomy day indeed!
>
> Now , it seems that things get more complicated :
> I think there are two factors will affect :
> - Ensure Stack can't overlap HP's P410i EBDA area
> - Ensure Brocade card's option rom code can't overwrite P410i EBDA.
>
> I also did another experiment :for speaking exactly, I use
> :5.7s_xen-kernel(0x98000 stack and 0x90000 for BOOT_TRAMPOLINE) and
> modified-xen-kernel(0x80000 STACK and 0x7c000 for BOOT_TRAMPOLINE) .
>
> a)enable Brocade card(two ports) , but disable its option rom code) .
> https://picasaweb.google.com/lh/photo/lVIqQjo2PESpX1JIzpEu0oIUdNTBh7One3tGCKQ3
> AHk?feat=directlink
>
> * 5.7s_xen-kernel can boot successfully(edd=on)
> from this point ,it seems that 0x98000 didn't overlap P410i EBDA. I just
> disabled Brocade option rom.
> * MODIFIED_xen-kernel can't boot successfully ,it also just print
> https://picasaweb.google.com/lh/photo/_XQU3pCYJ9bSL4UgvBhFJem26SCOd2WkElE8x5uA
> aOk?feat=directlink
> no "INT13
> BIOS Cannot Continue - System Halted".
> and no response, and then system reset.
>
> -Bob
next prev parent reply other threads:[~2011-08-24 8:03 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAKdQVUb7s6_1RyMDyCkBZWHdAvDy1yPY4nQarqNbSspi4uHC2w@mail.gmail.com>
2011-08-18 5:08 ` xen-kernel and EDD Lin-Bao Zhang
2011-08-18 6:40 ` Keir Fraser
2011-08-18 10:43 ` Lin-Bao Zhang
2011-08-18 10:52 ` Lin-Bao Zhang
2011-08-18 11:05 ` Keir Fraser
2011-08-18 11:04 ` Keir Fraser
2011-08-18 15:55 ` Lin-Bao Zhang
2011-08-19 8:27 ` Lin-Bao Zhang
2011-08-19 8:49 ` Keir Fraser
2011-08-19 9:15 ` Lin-Bao Zhang
2011-08-19 9:23 ` Keir Fraser
2011-08-19 9:51 ` Lin-Bao Zhang
2011-08-22 3:45 ` Lin-Bao Zhang
2011-08-23 8:48 ` Paolo Bonzini
2011-08-23 10:24 ` Lin-Bao Zhang
2011-08-24 7:50 ` Lin-Bao Zhang
2011-08-24 8:03 ` Keir Fraser [this message]
2011-08-24 9:36 ` BobZhang
2011-08-24 9:49 ` Keir Fraser
2011-08-25 9:37 ` Lin-Bao Zhang
2011-08-25 9:50 ` Lin-Bao Zhang
2011-08-25 10:24 ` Keir Fraser
2011-08-25 14:33 ` Lin-Bao Zhang
2011-08-31 7:50 ` Lin-Bao Zhang
2011-08-31 7:56 ` Keir Fraser
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=CA7A6EE1.30B78%keir@xen.org \
--to=keir@xen.org \
--cc=2004.zhang@gmail.com \
--cc=pbonzini@redhat.com \
--cc=xen-devel@lists.xensource.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;
as well as URLs for NNTP newsgroup(s).