WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] [patch 00/12] Kexec: EFI Mapping: Take IV

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [patch 00/12] Kexec: EFI Mapping: Take IV
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: Tue, 27 Nov 2007 18:19:13 +0900
Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, Aron Griffis <aron@xxxxxx>, Alex Williamson <alex.williamson@xxxxxx>
Delivery-date: Tue, 27 Nov 2007 01:37:56 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: quilt/0.46-1
Its been about a month since I posted a fresh series, so here goes.
Most of the changes are based on bugs reported by Alex Williamson
and mostly fixed using an rx3600 that he has given me access too -
very much appreciated, it would have been near impossible for me to
debug the problems otherwise.

Specifically, the following problems have been addressed:

* Compile warnings.
  - I have fixed a bunch of these that resulted from the patch
    that creates the XEN_EFI_RR_ macros. I also fixed things
    up so the #if !XEN case compiles, which was previously
    completely broken. Alex, if there are other compile warnings
    please let me know as I'm not noticing any.

* Fails to boot on rx3600
  - This has been fixed by ensuring that the protection key is
    set up correctly. Very simple but took a long time to find.

* Userspace segfaults - e.g. vi xen/arch/ia64/xen/ivt.S,
                             make in the xen source tree
  - This has been fixed by removing the asm cleanup patch that I provided
    to consolidate some logic into branch_on_xen_memory. It was a dubious
    change at best. Good riddance.

Other changes:
  - Minnor whitespace / comment changes

  - Split asm code up into several small paches
    + I found this the most convenient way to develop the code.
      It allows me to pull out bits and push outher bits in to
      see what breaks and what doesn't. I can consolodate if need be.
    + This is why there are more patches this time around.
      There is actually slightly less code.

Known problems:

* Fails to boot on rx2600
  - Alex reported that take III of these patches dies in PAL calls.
    I'm not sure if any of the above fixes resolve this problem.
    But it would be worth testing.

  - I've been mainly concerntrating on first-kernel boot problems,
    but it does seem that the following problems exist in relation
    to kexec. They may or may not be related to these patches.
    I mention them because the entire purpose of these patches
    is for kexec.

    I have not spent much time on these problems, I only mention
    them in case others see them.

    + Tiger2 kexec (xen->xen) hangs when booting the second kernel
    + I am having trouble setting up a crashkernel region on the rx3600
      Thus I have not been able to test kdump
    + Kexec (xen->xen) seems to die in purgatory on the rx3600

    As always, everything is working just fine on my rx2620 :-)

Lastly for the sake of completeness, the description posted with
the original series is below.

-- 
Horms

This series is my latest attempt to solve the EFI mapping problem for
Kexec. In short the problem is that the mapping can only be made once,
which presents a problem when kexecing (or kdumping) between Xen and Linux
which place the EFI at different virtual addresses.

Put simply this series resolves this problem by having Xen map EFI into the
same place as Linux. The problem and this solution are discussed in more
detail in the comment attached to the third patch in the series.

The first four patches in this series were previously posted along with the
rest of the kexec patches. Kexec has been merged, however these patches
were left out because of some concerns:

1. VMX domains should not be able to access the EFI memory directly

2. Domains should be able to use the virtual addresses that are
   now used for EFI, as these virtual addresses are in the space used
   by domains, not the space usually used by Xen.

To resolve this problem the fifth pach has been added to the series.  As
suggested by Yamahata-san, this patch uses a special RID for EFI memory
accesses, thus allowing the page handler to restrict access to Xen, which
should resolve both of the problems above. This is discussed in a little


_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel