|
|
|
|
|
|
|
|
|
|
xen-ia64-devel
[Xen-ia64-devel] [patch 00/11] ia64: kexec: Map EFI memory in the same l
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
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-ia64-devel] [patch 00/11] ia64: kexec: Map EFI memory in the same location as Linux (v20080320),
Simon Horman <=
- [Xen-ia64-devel] [patch 03/11] ia64: kexec: Header changes in preparation for EFI RID, Simon Horman
- [Xen-ia64-devel] [patch 01/11] ia64: kexec: Unpin the correct VHPT TR in ia64_do_tlb_purge, Simon Horman
- [Xen-ia64-devel] [patch 02/11] ia64: kexec: Unpin shared_info and mapped_regs TR in ia64_do_tlb_purge, Simon Horman
- [Xen-ia64-devel] [patch 04/11] ia64: kexec: Repining for EFI RID, Simon Horman
- [Xen-ia64-devel] [patch 05/11] ia64: kexec: Define macros for EFI RID, Simon Horman
- [Xen-ia64-devel] [patch 10/11] ia64: kexec: add __va_efi, Simon Horman
- [Xen-ia64-devel] [patch 07/11] ia64: kexec: Allow EFI_RID to be used in ivt.S, Simon Horman
- [Xen-ia64-devel] [patch 08/11] ia64: kexec: Add identity mapping of EFI memory to alt_dtlb_miss, Simon Horman
- [Xen-ia64-devel] [patch 09/11] ia64: kexec: define EFI offsets for identity mapping, Simon Horman
- [Xen-ia64-devel] [patch 06/11] ia64: kexec: Use a separate RID for EFI, Simon Horman
|
|
|
|
|