xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
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

  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).