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/11] ia64: kexec: Map EFI memory in the same l

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [patch 00/11] ia64: kexec: Map EFI memory in the same location as Linux (v20080320)
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: Thu, 20 Mar 2008 15:52:48 +0900
Cc: Aron Griffis <aron@xxxxxx>, Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, Alex Williamson <alex.williamson@xxxxxx>
Delivery-date: Thu, 20 Mar 2008 00:13:07 -0700
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
Hi,

here is another spin of the kexec EFI patches. I think we are getting
very close if we aren't there already.

Standard Intro:

This series is what I believe to be a fairly complete set of patches to map
EFI memory into the same location that Linux does.  The memory is protected
by an RID so that it doesn't conflict with domain memory - which also
protects it from malicious access from HVM domains.

The primary motivation for this is that EFI memory can only be mapped once
- a restriction in the EFI specification. Thus for kexec betwen Xen and
Linux, including kdump of Xen (into Linux), EFI memory needs to be mapped in
the same location in both Xen and Linux.


The first goal of these patches it to create a kexec enabled xen ia64
without regressions. The second is to create a working kexec for ia64. I
believe that this series is very close to reaching the first goal, and
driver issues aside (more below), also very close to reaching the second
goal.


I have tested these patches on a Tiger 4, Tiger 2, RX rx2620 and HP rx3600.
Thanks to Alex Williamson and HP for making the latter available to me.
Thanks to Fujitsu for supplying most of the other machines.

I recommend testing these patches using:

  Xen
  http://xenbits.xensource.com/ext/ia64/xen-unstbale.hg
  Revision: 17209:8c921adf4833

  Linux-Xen
  http://xenbits.xensource.com/ext/ia64/linux-2.6.18-xen.hg
  Revision: 471:ba72914de93a

  Kexec-Tools
  git://git.kernel.org/pub/scm/linux/kernel/git/horms/kexec-tools-testing.git
  Revision: 94afdd9f7ab2b07997f80a297741842f9cdbdc25

  Linux
  Revision: 2.6.25-rc3


Notable changes since the last time this series was posted:

* Omit patch (formerly 13/15)
  "ia64: kexec: Set page size identity mapping of EFI in alt_itlb_miss"

  This patch causes problems on machines that it is supposed to
  fix problems on - obviously I made a mistake when collating fixes.

* Omit the following patches, as they don't seem to be used,
  although they don't seem to cause much harm either.

  "ia64: kexec: Add identity mapping of EFI memory to dtlb_miss"
                        (formerly 09/15)
  "ia64: kexec: identity mapping of EFI memory to itlb_miss"
                        (formerly 10/15)
  "ia64: kexec: Set protection key of identity mapping of EFI in alt_dtlb_miss"
                        (formerly 11/15)
  "ia64: kexec: Set protection key of identity mapping of EFI in alt_itlb_miss"
                        (formerly 12/15)

* Add "ia64: kexec: add __va_efi"


Known problem:

The hypervisor boots on all machines mentioned above using these patches.
In addition, Alex Williamson has tested a patch set very similar to this
one and found it to work on a variety of HP hardware.

As for successfully kexecing, I have tested Xen->Xen transitions
successfully on the machines mentioned above, with the following caveat.

The HP rc3600 has an Intel e100 network card. I have found that
kexec hangs at the following position when the eepro100 (original Donald
Becker) driver is used. This hang does not occur when either no driver
is supplied or the Intel e100 driver is used. 

  Brought up 1 CPUs
  Total of 1 processors activated (2247.88 BogoMIPS).
  migration_cost=0
  (XEN) mm.c:575:d0 Warning: UC to WB for mpaddr=3fb3a010
  DMI 2.3 present.
  NET: Registered protocol family 16
  ACPI: bus type pci registered
  (XEN) mm.c:575:d0 Warning: UC to WB for mpaddr=3fb2e000
  ACPI: Interpreter enabled
  ACPI: Using IOSAPIC for interrupt routing
  ACPI: PCI Root Bridge [PCI0] (0000:00)

I will investigate this problem further, but I do not view it as
blocking this patch set as it does not effect the initial boot,
only kexec boots, which don't work at all without this patch set.

In any case, it is the nature of kexec that driver-specific problems
occur, and these can be sensibly weeded out over time as they are observed.

-- 
Horms -> on a rainy holiday Thursday


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