Re: [edk2-devel] [PATCH v4 00/35] Specific platform to run OVMF in Xen PVH and HVM guests
On 08/12/19 17:12, Anthony PERARD wrote: > On Tue, Jul 30, 2019 at 03:10:13PM +0200, Laszlo Ersek wrote: >> Hi Anthony, >> >> On 07/29/19 17:39, Anthony PERARD wrote: >>> Patch series available in this git branch: >>> https://xenbits.xen.org/git-http/people/aperard/ovmf.git >>> br.platform-xen-pvh-v4 >>> >>> Changes in v4: >>> - patch "OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it has >>> run" was removed, and instead a different change is done in >>> "OvmfPkg/XenPlatformPei: Rework memory detection" >>> - other changes detailed in the notes of each patch >> >> I've gone through the v4 series. If reviewers on the xen-devel list >> think v4 is okay to merge, I can do that (with the small fixups I >> offered here and there). I suggest that we wait a few days -- please >> ping me when you believe the review on xen-devel has concluded. >> >> If you prefer to post v5, that works as well of course. > > There's a few more small fixup proposed by Roger, should I post a v5 for > them? (and maybe only CC you and the lists.) > > Otherwise, I've pushed the branch br.platform-xen-pvh-v4.1 to my repo [1] > where I believe I've collected all the small fixups. > [1] https://xenbits.xen.org/git-http/people/aperard/ovmf.git > br.platform-xen-pvh-v4.1 Please post v5. Thanks! Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#45511): https://edk2.groups.io/g/devel/message/45511 Mute This Topic: https://groups.io/mt/32643834/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH v4 00/35] Specific platform to run OVMF in Xen PVH and HVM guests
On Tue, Jul 30, 2019 at 03:10:13PM +0200, Laszlo Ersek wrote: > Hi Anthony, > > On 07/29/19 17:39, Anthony PERARD wrote: > > Patch series available in this git branch: > > https://xenbits.xen.org/git-http/people/aperard/ovmf.git > > br.platform-xen-pvh-v4 > > > > Changes in v4: > > - patch "OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it has > > run" was removed, and instead a different change is done in > > "OvmfPkg/XenPlatformPei: Rework memory detection" > > - other changes detailed in the notes of each patch > > I've gone through the v4 series. If reviewers on the xen-devel list > think v4 is okay to merge, I can do that (with the small fixups I > offered here and there). I suggest that we wait a few days -- please > ping me when you believe the review on xen-devel has concluded. > > If you prefer to post v5, that works as well of course. There's a few more small fixup proposed by Roger, should I post a v5 for them? (and maybe only CC you and the lists.) Otherwise, I've pushed the branch br.platform-xen-pvh-v4.1 to my repo [1] where I believe I've collected all the small fixups. [1] https://xenbits.xen.org/git-http/people/aperard/ovmf.git br.platform-xen-pvh-v4.1 Thanks, -- Anthony PERARD -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#45456): https://edk2.groups.io/g/devel/message/45456 Mute This Topic: https://groups.io/mt/32643834/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH v4 00/35] Specific platform to run OVMF in Xen PVH and HVM guests
Hi Anthony, On 07/29/19 17:39, Anthony PERARD wrote: > Patch series available in this git branch: > https://xenbits.xen.org/git-http/people/aperard/ovmf.git > br.platform-xen-pvh-v4 > > Changes in v4: > - patch "OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it has > run" was removed, and instead a different change is done in > "OvmfPkg/XenPlatformPei: Rework memory detection" > - other changes detailed in the notes of each patch I've gone through the v4 series. If reviewers on the xen-devel list think v4 is okay to merge, I can do that (with the small fixups I offered here and there). I suggest that we wait a few days -- please ping me when you believe the review on xen-devel has concluded. If you prefer to post v5, that works as well of course. Thanks, Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#44624): https://edk2.groups.io/g/devel/message/44624 Mute This Topic: https://groups.io/mt/32643834/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH v4 00/35] Specific platform to run OVMF in Xen PVH and HVM guests
On 07/29/19 17:39, Anthony PERARD wrote: > Patch series available in this git branch: > https://xenbits.xen.org/git-http/people/aperard/ovmf.git > br.platform-xen-pvh-v4 > > Changes in v4: > - patch "OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it has > run" was removed, and instead a different change is done in > "OvmfPkg/XenPlatformPei: Rework memory detection" > - other changes detailed in the notes of each patch I didn't understand why we'd still have 35 patches with one from v3 removed in v4 -- but I've found the new patch now: "OvmfPkg: Introduce PcdXenGrantFrames". Hopefully a v5 will not be necessary, but as a "precaution", you could run "git notes edit" on patch v4 32/35 at once, in order to state "introduced in v4", or something similar. Thanks, Laszlo > > Hi, > > I've started to create a Xen specific platform, in OvmfPkg/XenOvmf.dsc > with the goal to make it work on both Xen HVM and Xen PVH. > > The first few patches only create the platform and duplicate some code from > OvmfPkg and the later patches makes OVMF boot in a Xen PVH guest and can boot > a Linux guest. > > After this patch series, I'd like to wait a bit before removing Xen support > from the OvmfPkg*.dsc, to allow time to switch to the new Xen only platform, > maybe 1 year. > > To build and boot: > > To build, simply run OvmfPkg/build.sh -p OvmfPkg/OvmfXen.dsc > Then use OVMF.fd as a kernel of a pvh guest config file (with xl/libxl). > > Patch series available in this git branch: > https://xenbits.xen.org/git-http/people/aperard/ovmf.git > br.platform-xen-pvh-v4 > > Anthony PERARD (35): > OvmfPkg/ResetSystemLib: Add missing dependency on PciLib > OvmfPkg: Create platform OvmfXen > OvmfPkg: Introduce XenResetVector > OvmfPkg: Introduce XenPlatformPei > OvmfPkg/OvmfXen: Creating an ELF header > OvmfPkg/XenResetVector: Add new entry point for Xen PVH > OvmfPkg/XenResetVector: Saving start of day pointer for PVH guests > OvmfPkg/XenResetVector: Allow jumpstart from either hvmloader or PVH > OvmfPkg/OvmfXen: use a TimerLib instance that depends only on the CPU > OvmfPkg/XenPlatformPei: Detect OVMF_INFO from hvmloader > OvmfPkg/XenPlatformPei: Use mXenHvmloaderInfo to get E820 > OvmfPkg/XenPlatformPei: Grab RSDP from PVH guest start of day struct > OvmfPkg/Library/XenPlatformLib: New library > OvmfPkg/AcpiPlatformDxe: Use XenPlatformLib > OvmfPkg/AcpiPlatformDxe: Use Xen PVH RSDP if it exist > OvmfPkg/XenHypercallLib: Enable it in PEIM > OvmfPkg/XenPlatformPei: Reinit XenHypercallLib > OvmfPkg/XenPlatformPei: Introduce XenHvmloaderDetected > OvmfPkg/XenPlatformPei: Setup HyperPages earlier > OvmfPkg/XenPlatformPei: Introduce XenPvhDetected > OvmfPkg: Import XENMEM_memory_map hypercall to Xen/memory.h > OvmfPkg/XenPlatformPei: no hvmloader: get the E820 table via hypercall > OvmfPkg/XenPlatformPei: Rework memory detection > OvmfPkg/XenPlatformPei: Reserve VGA memory region, to boot Linux > OvmfPkg/XenPlatformPei: Ignore missing PCI Host Bridge on Xen PVH > OvmfPkg/XenPlatformLib: Cache result for XenDetected > OvmfPkg/PlatformBootManagerLib: Use XenDetected from XenPlatformLib > OvmfPkg/PlatformBootManagerLib: Handle the absence of PCI bus on Xen > PVH > OvmfPkg/OvmfXen: Override PcdFSBClock to Xen vLAPIC timer frequency > OvmfPkg/OvmfXen: Introduce XenTimerDxe > OvmfPkg/PlatformBootManagerLib: Use a Xen console for ConOut/ConIn > OvmfPkg: Introduce PcdXenGrantFrames > OvmfPkg: Introduce XenIoPvhDxe to initialize Grant Tables > OvmfPkg: Move XenRealTimeClockLib from ArmVirtPkg > OvmfPkg/OvmfXen: use RealTimeClockRuntimeDxe from EmbeddedPkg > > OvmfPkg/OvmfPkg.dec | 10 + > ArmVirtPkg/ArmVirtXen.dsc | 2 +- > OvmfPkg/OvmfPkgIa32.dsc | 1 + > OvmfPkg/OvmfPkgIa32X64.dsc| 1 + > OvmfPkg/OvmfPkgX64.dsc| 1 + > OvmfPkg/{OvmfPkgX64.dsc => OvmfXen.dsc} | 238 +--- > OvmfPkg/OvmfXen.fdf | 539 ++ > OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf | 3 +- > .../PlatformBootManagerLib.inf| 6 +- > .../Library/ResetSystemLib/ResetSystemLib.inf | 1 + > .../XenHypercallLib/XenHypercallLib.inf | 4 +- > .../Library/XenPlatformLib/XenPlatformLib.inf | 33 ++ > .../XenRealTimeClockLib.inf | 0 > OvmfPkg/XenBusDxe/XenBusDxe.inf | 2 + > OvmfPkg/XenIoPvhDxe/XenIoPvhDxe.inf | 35 ++ > OvmfPkg/XenPlatformPei/XenPlatformPei.inf | 100 > OvmfPkg/XenResetVector/XenResetVector.inf | 41 ++ > OvmfPkg/XenTimerDxe/XenTimerDxe.inf | 42 ++ > OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h| 6 +- > OvmfPkg/Include/Guid/XenInfo.h| 8 +- > .../Xen/arch-x86/hvm/start_info.h | 143 + > OvmfPkg/Include/IndustryStandard/Xen/memory.h | 23 + >
[edk2-devel] [PATCH v4 00/35] Specific platform to run OVMF in Xen PVH and HVM guests
Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/ovmf.git br.platform-xen-pvh-v4 Changes in v4: - patch "OvmfPkg/XenPlatformPei: Reserve hvmloader's memory only when it has run" was removed, and instead a different change is done in "OvmfPkg/XenPlatformPei: Rework memory detection" - other changes detailed in the notes of each patch Hi, I've started to create a Xen specific platform, in OvmfPkg/XenOvmf.dsc with the goal to make it work on both Xen HVM and Xen PVH. The first few patches only create the platform and duplicate some code from OvmfPkg and the later patches makes OVMF boot in a Xen PVH guest and can boot a Linux guest. After this patch series, I'd like to wait a bit before removing Xen support from the OvmfPkg*.dsc, to allow time to switch to the new Xen only platform, maybe 1 year. To build and boot: To build, simply run OvmfPkg/build.sh -p OvmfPkg/OvmfXen.dsc Then use OVMF.fd as a kernel of a pvh guest config file (with xl/libxl). Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/ovmf.git br.platform-xen-pvh-v4 Anthony PERARD (35): OvmfPkg/ResetSystemLib: Add missing dependency on PciLib OvmfPkg: Create platform OvmfXen OvmfPkg: Introduce XenResetVector OvmfPkg: Introduce XenPlatformPei OvmfPkg/OvmfXen: Creating an ELF header OvmfPkg/XenResetVector: Add new entry point for Xen PVH OvmfPkg/XenResetVector: Saving start of day pointer for PVH guests OvmfPkg/XenResetVector: Allow jumpstart from either hvmloader or PVH OvmfPkg/OvmfXen: use a TimerLib instance that depends only on the CPU OvmfPkg/XenPlatformPei: Detect OVMF_INFO from hvmloader OvmfPkg/XenPlatformPei: Use mXenHvmloaderInfo to get E820 OvmfPkg/XenPlatformPei: Grab RSDP from PVH guest start of day struct OvmfPkg/Library/XenPlatformLib: New library OvmfPkg/AcpiPlatformDxe: Use XenPlatformLib OvmfPkg/AcpiPlatformDxe: Use Xen PVH RSDP if it exist OvmfPkg/XenHypercallLib: Enable it in PEIM OvmfPkg/XenPlatformPei: Reinit XenHypercallLib OvmfPkg/XenPlatformPei: Introduce XenHvmloaderDetected OvmfPkg/XenPlatformPei: Setup HyperPages earlier OvmfPkg/XenPlatformPei: Introduce XenPvhDetected OvmfPkg: Import XENMEM_memory_map hypercall to Xen/memory.h OvmfPkg/XenPlatformPei: no hvmloader: get the E820 table via hypercall OvmfPkg/XenPlatformPei: Rework memory detection OvmfPkg/XenPlatformPei: Reserve VGA memory region, to boot Linux OvmfPkg/XenPlatformPei: Ignore missing PCI Host Bridge on Xen PVH OvmfPkg/XenPlatformLib: Cache result for XenDetected OvmfPkg/PlatformBootManagerLib: Use XenDetected from XenPlatformLib OvmfPkg/PlatformBootManagerLib: Handle the absence of PCI bus on Xen PVH OvmfPkg/OvmfXen: Override PcdFSBClock to Xen vLAPIC timer frequency OvmfPkg/OvmfXen: Introduce XenTimerDxe OvmfPkg/PlatformBootManagerLib: Use a Xen console for ConOut/ConIn OvmfPkg: Introduce PcdXenGrantFrames OvmfPkg: Introduce XenIoPvhDxe to initialize Grant Tables OvmfPkg: Move XenRealTimeClockLib from ArmVirtPkg OvmfPkg/OvmfXen: use RealTimeClockRuntimeDxe from EmbeddedPkg OvmfPkg/OvmfPkg.dec | 10 + ArmVirtPkg/ArmVirtXen.dsc | 2 +- OvmfPkg/OvmfPkgIa32.dsc | 1 + OvmfPkg/OvmfPkgIa32X64.dsc| 1 + OvmfPkg/OvmfPkgX64.dsc| 1 + OvmfPkg/{OvmfPkgX64.dsc => OvmfXen.dsc} | 238 +--- OvmfPkg/OvmfXen.fdf | 539 ++ OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf | 3 +- .../PlatformBootManagerLib.inf| 6 +- .../Library/ResetSystemLib/ResetSystemLib.inf | 1 + .../XenHypercallLib/XenHypercallLib.inf | 4 +- .../Library/XenPlatformLib/XenPlatformLib.inf | 33 ++ .../XenRealTimeClockLib.inf | 0 OvmfPkg/XenBusDxe/XenBusDxe.inf | 2 + OvmfPkg/XenIoPvhDxe/XenIoPvhDxe.inf | 35 ++ OvmfPkg/XenPlatformPei/XenPlatformPei.inf | 100 OvmfPkg/XenResetVector/XenResetVector.inf | 41 ++ OvmfPkg/XenTimerDxe/XenTimerDxe.inf | 42 ++ OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h| 6 +- OvmfPkg/Include/Guid/XenInfo.h| 8 +- .../Xen/arch-x86/hvm/start_info.h | 143 + OvmfPkg/Include/IndustryStandard/Xen/memory.h | 23 + OvmfPkg/Include/Library/XenHypercallLib.h | 12 + OvmfPkg/Include/Library/XenPlatformLib.h | 53 ++ .../PlatformBootManagerLib/BdsPlatform.h | 1 + OvmfPkg/XenBusDxe/XenBusDxe.h | 1 + OvmfPkg/XenPlatformPei/Cmos.h | 52 ++ OvmfPkg/XenPlatformPei/Platform.h | 136 + OvmfPkg/XenPlatformPei/Xen.h | 39 ++ OvmfPkg/XenTimerDxe/XenTimerDxe.h | 177 ++ OvmfPkg/AcpiPlatformDxe/Xen.c | 41 +- .../PlatformBootManagerLib/BdsPlatform.c | 43 +-