[PATCH v2 1/3] xen, xen-tools: add recommendation for Qemu for non-hvm x86


Christopher Clark
 

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1


Bertrand Marquis
 

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Bruce Ashfield
 

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.

Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Bertrand Marquis
 

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.

Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Bruce Ashfield
 

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?

Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Bertrand Marquis
 

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
I was last time I tried but I will retry with the current status and confirm.

Cheers
Bertrand


Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Bertrand Marquis
 

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Bruce Ashfield
 

On Fri, May 6, 2022 at 9:04 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.
Thanks for the data point .. it is very helpful!

Would it be possible to get a log of the image you built, and how you
launched it ? I'm assuming it is standard, but i'm looking for
anything that might show how I'm doing something differently!

Bruce

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Bertrand Marquis
 

On 6 May 2022, at 14:39, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, May 6, 2022 at 9:04 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.
Thanks for the data point .. it is very helpful!

Would it be possible to get a log of the image you built, and how you
launched it ? I'm assuming it is standard, but i'm looking for
anything that might show how I'm doing something differently!
For the easy parts:
- config: MACHINE=qemuarm64, DISTRO_FEATURES = " virtualization xen"
- build Xen-image-minimal
- launch: runqemu serialstdio nographic

I am using current xen staging with a modified xen recipe but I just tried with stable 4.16 and I have exactly the same.

Here is my build config:
Build Configuration:
BB_VERSION = "2.0.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "aarch64-poky-linux"
MACHINE = "qemuarm64"
DISTRO = "poky"
DISTRO_VERSION = "4.0"
TUNE_FEATURES = "aarch64 armv8a crc cortexa57"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "stable:d53ac6e9561d782818d5491b7c4066f4a712d358"
meta-oe
meta-python
meta-filesystems
meta-networking = "stable:bb2b5b31a80eb164e47649036878773614e4dbdf"
meta-virtualization = "stable:ea91e97711e3ceda4f4eab9db0d393568ee8bb46"
meta-arm-toolchain
meta-arm
meta-arm-bsp = "stable:50b34c5cc9496441152ad28bf1022e5fc5ab0a7e"

For the build log could you be a bit more specific as there are a lot of logs.

Meta-virtualization status is kirkstone + patch for qemu-arm32 support.

Cheers
Bertrand


Bruce

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Bruce Ashfield
 

On Fri, May 6, 2022 at 11:08 AM Bertrand Marquis
<bertrand.marquis@...> wrote:



On 6 May 2022, at 14:39, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, May 6, 2022 at 9:04 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.
Thanks for the data point .. it is very helpful!

Would it be possible to get a log of the image you built, and how you
launched it ? I'm assuming it is standard, but i'm looking for
anything that might show how I'm doing something differently!
For the easy parts:
- config: MACHINE=qemuarm64, DISTRO_FEATURES = " virtualization xen"
- build Xen-image-minimal
- launch: runqemu serialstdio nographic

I am using current xen staging with a modified xen recipe but I just tried with stable 4.16 and I have exactly the same.

Here is my build config:
Build Configuration:
BB_VERSION = "2.0.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "aarch64-poky-linux"
MACHINE = "qemuarm64"
DISTRO = "poky"
DISTRO_VERSION = "4.0"
TUNE_FEATURES = "aarch64 armv8a crc cortexa57"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "stable:d53ac6e9561d782818d5491b7c4066f4a712d358"
meta-oe
meta-python
meta-filesystems
meta-networking = "stable:bb2b5b31a80eb164e47649036878773614e4dbdf"
meta-virtualization = "stable:ea91e97711e3ceda4f4eab9db0d393568ee8bb46"
meta-arm-toolchain
meta-arm
meta-arm-bsp = "stable:50b34c5cc9496441152ad28bf1022e5fc5ab0a7e"

For the build log could you be a bit more specific as there are a lot of logs.
I'm ok without the build logs, what you have above lets me get close.

My main development box uses systemd as the init system for the
distro, are you using poky + sysvinit ?

Poky (Yocto Project Reference Distro)
4.1+snapshot-5f85f75ecf1d5ea48975a04436bce947fd2bb41f qemux86-64 hvc0
qemux86-64 login: root
root@qemux86-64:~# uname -a
Linux qemux86-64 5.15.37-yocto-standard #1 SMP PREEMPT Tue May 3
23:43:14 UTC 2022 x86_64 GNU/Linux

I'll keep trying to reproduce the issues here.

Bruce

Meta-virtualization status is kirkstone + patch for qemu-arm32 support.

Cheers
Bertrand


Bruce

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Bruce Ashfield
 

On Fri, May 6, 2022 at 12:27 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, May 6, 2022 at 11:08 AM Bertrand Marquis
<bertrand.marquis@...> wrote:



On 6 May 2022, at 14:39, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, May 6, 2022 at 9:04 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.
Thanks for the data point .. it is very helpful!

Would it be possible to get a log of the image you built, and how you
launched it ? I'm assuming it is standard, but i'm looking for
anything that might show how I'm doing something differently!
For the easy parts:
- config: MACHINE=qemuarm64, DISTRO_FEATURES = " virtualization xen"
- build Xen-image-minimal
- launch: runqemu serialstdio nographic

I am using current xen staging with a modified xen recipe but I just tried with stable 4.16 and I have exactly the same.

Here is my build config:
Build Configuration:
BB_VERSION = "2.0.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "aarch64-poky-linux"
MACHINE = "qemuarm64"
DISTRO = "poky"
DISTRO_VERSION = "4.0"
TUNE_FEATURES = "aarch64 armv8a crc cortexa57"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "stable:d53ac6e9561d782818d5491b7c4066f4a712d358"
meta-oe
meta-python
meta-filesystems
meta-networking = "stable:bb2b5b31a80eb164e47649036878773614e4dbdf"
meta-virtualization = "stable:ea91e97711e3ceda4f4eab9db0d393568ee8bb46"
meta-arm-toolchain
meta-arm
meta-arm-bsp = "stable:50b34c5cc9496441152ad28bf1022e5fc5ab0a7e"

For the build log could you be a bit more specific as there are a lot of logs.
I'm ok without the build logs, what you have above lets me get close.

My main development box uses systemd as the init system for the
distro, are you using poky + sysvinit ?

Poky (Yocto Project Reference Distro)
4.1+snapshot-5f85f75ecf1d5ea48975a04436bce947fd2bb41f qemux86-64 hvc0
qemux86-64 login: root
root@qemux86-64:~# uname -a
Linux qemux86-64 5.15.37-yocto-standard #1 SMP PREEMPT Tue May 3
23:43:14 UTC 2022 x86_64 GNU/Linux

I'll keep trying to reproduce the issues here.
A clean build with sysvinit has failed to bring up the console on a
secondary builder (both qemux86-64 and quemarm64)

I'll do some debug and see how it has gone wrong (since xencommon
should be firing for sysvinit).

Bruce


Bruce


Bruce

Meta-virtualization status is kirkstone + patch for qemu-arm32 support.

Cheers
Bertrand


Bruce

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Bruce Ashfield
 

On Fri, May 6, 2022 at 4:12 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, May 6, 2022 at 12:27 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, May 6, 2022 at 11:08 AM Bertrand Marquis
<bertrand.marquis@...> wrote:



On 6 May 2022, at 14:39, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, May 6, 2022 at 9:04 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 5 May 2022, at 15:44, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:40 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Bruce,

On 29 Apr 2022, at 14:30, Bruce Ashfield <bruce.ashfield@...> wrote:

On Fri, Apr 29, 2022 at 9:23 AM Bertrand Marquis
<Bertrand.Marquis@...> wrote:

Hi Christopher,

On 28 Apr 2022, at 01:06, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

The Spectre and Meltdown mitigations for Xen run PV guests within
HVM virtual machines, so Qemu is no longer only needed for systems
configured to run HVM guests.

With the split xen hypervisor and tools recipes, the bios dependencies
belong in the tools recipe, so move them and replace the hvm
PACKAGECONFIG option with the recommendation based on target arch.

Signed-off-by: Christopher Clark <christopher.clark@...>
Reviewed-by: Bertrand Marquis <bertrand.marquis@...>

I can build and run on x86 qemu and I get stuck during init in Dom0 (which is apparently already known).
It is likely the xencommond init.d still causing issues.

I'm doing a revert of all those changes locally, and will start some tests.
Please let me know if you need some testing.
On my side, I have the issue on arm64, arm32 and x86 at the moment.
I'm still able to build and boot here, so I haven't reproduced the
issue .. so I'm still hesitating to revert all the xencommons changes,
as I can't prove to myself they are the issue.

I created a kirkstone branch today, and I'll be adding the latest Xen
patches to it, but I need to get a handle on what everyone is seeing
for failures.

I assume you are still seeing problems with the boot on all the
platforms you mentioned above ?
Here is the linux logs for dom0 on my system:
[ 7.854317] EXT4-fs (vda): re-mounted. Opts: (null). Quota mode: disabled.
Configuring packages on first boot....
(This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
Removing any system startup links for run-postinsts ...
/etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.35.0
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: no lease, failing
ifup: failed to bring up eth0
Starting random number generator daemon.
Starting OpenBSD Secure Shell server: sshd
generating ssh RSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ECDSA host key...
sync: ignoring all arguments
sync: ignoring all arguments
generating ssh ED25519 host key...
sync: ignoring all arguments
sync: ignoring all arguments
done.
Starting syslogd/klogd: done
Starting domain watchdog daemon: xenwatchdogd startup


And it stays stuck there.

This is arm64 but I have the same on x86 with almost the same logs.

If you want me to test something in particular to check if it solves the issue, just tell me what.
I do not have much time to investigate right now but I will try to dig a bit from middle of next week so please keep me in touch.
Thanks for the data point .. it is very helpful!

Would it be possible to get a log of the image you built, and how you
launched it ? I'm assuming it is standard, but i'm looking for
anything that might show how I'm doing something differently!
For the easy parts:
- config: MACHINE=qemuarm64, DISTRO_FEATURES = " virtualization xen"
- build Xen-image-minimal
- launch: runqemu serialstdio nographic

I am using current xen staging with a modified xen recipe but I just tried with stable 4.16 and I have exactly the same.

Here is my build config:
Build Configuration:
BB_VERSION = "2.0.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "aarch64-poky-linux"
MACHINE = "qemuarm64"
DISTRO = "poky"
DISTRO_VERSION = "4.0"
TUNE_FEATURES = "aarch64 armv8a crc cortexa57"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "stable:d53ac6e9561d782818d5491b7c4066f4a712d358"
meta-oe
meta-python
meta-filesystems
meta-networking = "stable:bb2b5b31a80eb164e47649036878773614e4dbdf"
meta-virtualization = "stable:ea91e97711e3ceda4f4eab9db0d393568ee8bb46"
meta-arm-toolchain
meta-arm
meta-arm-bsp = "stable:50b34c5cc9496441152ad28bf1022e5fc5ab0a7e"

For the build log could you be a bit more specific as there are a lot of logs.
I'm ok without the build logs, what you have above lets me get close.

My main development box uses systemd as the init system for the
distro, are you using poky + sysvinit ?

Poky (Yocto Project Reference Distro)
4.1+snapshot-5f85f75ecf1d5ea48975a04436bce947fd2bb41f qemux86-64 hvc0
qemux86-64 login: root
root@qemux86-64:~# uname -a
Linux qemux86-64 5.15.37-yocto-standard #1 SMP PREEMPT Tue May 3
23:43:14 UTC 2022 x86_64 GNU/Linux

I'll keep trying to reproduce the issues here.
A clean build with sysvinit has failed to bring up the console on a
secondary builder (both qemux86-64 and quemarm64)

I'll do some debug and see how it has gone wrong (since xencommon
should be firing for sysvinit).
I've fixed up the sysvinit boot, and will double check both systemd
and sysvinit in my latest builds.

I expect to have a fix in the tree on Monday, and we can move on with
the other changes :)

Bruce


Bruce


Bruce


Bruce

Meta-virtualization status is kirkstone + patch for qemu-arm32 support.

Cheers
Bertrand


Bruce

Cheers
Bertrand



Bruce


Chees
Bertrand


Bruce

Cheers
Bertrand


---
Unchanged since v1

recipes-extended/xen/xen-tools.inc | 9 ++-------
recipes-extended/xen/xen.inc | 6 +++---
2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6bbc8cd..54bc477 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -30,14 +30,9 @@ RDEPENDS:${PN} = "\

RDEPENDS:${PN}-dev = ""

-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 8b86de5..4c38ccf 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -9,13 +9,11 @@ require xen-arch.inc
PACKAGECONFIG ??= " \
sdl \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'hvm', '', d)} \
"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl,"
PACKAGECONFIG[xsm] = "--enable-xsmpolicy,--disable-xsmpolicy,checkpolicy-native,"
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd,"
-PACKAGECONFIG[hvm] = "--with-system-seabios="/usr/share/firmware/bios.bin",--disable-seabios,seabios ipxe vgabios,"
PACKAGECONFIG[externalblktap] = ",,,"

DEPENDS = " \
@@ -132,7 +130,9 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
- ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', \
+ '--enable-pvshim --with-system-seabios="/usr/share/firmware/bios.bin"', \
+ '--disable-pvshim --disable-seabios', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II