All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
@ 2025-07-18  9:01 Mikko Rapeli
  2025-07-18 10:28 ` [OE-core] " Richard Purdie
  2025-07-19  6:34 ` Mathieu Dubois-Briand
  0 siblings, 2 replies; 7+ messages in thread
From: Mikko Rapeli @ 2025-07-18  9:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Fabio Estevam, Mikko Rapeli

From: Fabio Estevam <festevam@gmail.com>

Upgrade to U-Boot 2025.07. Added patches for build race conditions.
Removed qemu KVM USB workaround since issue is fixed upstream.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
---
 .../u-boot/files/disable_CONFIG_USB.cfg       |   1 -
 ...pts-Makefile.lib-fix-_efi.so-depende.patch | 136 ++++++++++++++++++
 ...kefile-change-apps-from-always-to-ta.patch |  57 ++++++++
 meta/recipes-bsp/u-boot/u-boot-common.inc     |   8 +-
 ...ols_2025.04.bb => u-boot-tools_2025.07.bb} |   0
 .../{u-boot_2025.04.bb => u-boot_2025.07.bb}  |   4 +-
 6 files changed, 201 insertions(+), 5 deletions(-)
 delete mode 100644 meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
 create mode 100644 meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
 create mode 100644 meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch
 rename meta/recipes-bsp/u-boot/{u-boot-tools_2025.04.bb => u-boot-tools_2025.07.bb} (100%)
 rename meta/recipes-bsp/u-boot/{u-boot_2025.04.bb => u-boot_2025.07.bb} (64%)

v3: Did not manage to reproduce AB build failures but added delays to more
    linker calls which exposed similar issues. Fixed failures with patches
    which are also submitted upstream.

v2: added upstreamed patch to fix build race conditon, removed qemu kvm workaround
    fixed upstream. Would be nice to check if builds now pass.
    https://lists.openembedded.org/g/openembedded-core/message/220436

v1: https://lists.openembedded.org/g/openembedded-core/message/220004

diff --git a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg b/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
deleted file mode 100644
index 1d2509982be1..000000000000
--- a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_USB is not set
diff --git a/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
new file mode 100644
index 000000000000..e8253a67b211
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
@@ -0,0 +1,136 @@
+From 2e7c1321bb44cc6af4ee4b1026a52e1a0aa7e336 Mon Sep 17 00:00:00 2001
+From: Mikko Rapeli <mikko.rapeli@linaro.org>
+Date: Thu, 10 Jul 2025 14:24:07 +0000
+Subject: [PATCH v3 1/2] Makefile scripts/Makefile.lib: fix *_efi.so dependency
+ to PLATFORM_LIBGCC
+
+When PLATFORM_LIBGCC was added to linker command it was not
+added to the dependency of the .so and other rules. Thus a build can
+try to link *_efi.so files before lib.a from PLATFORM_LIBGCC is available.
+This was seen in yocto autobuilder builds with u-boot 2025.07
+update, see https://lists.openembedded.org/g/openembedded-core/message/220004
+
+https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/raw_inline
+
+|    rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o lib/efi_loader/efi_bootbin.o lib/efi_loader/efi_boottime.o lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o lib/efi_loader/efi_device_path.o lib/efi_loader/efi_device_path_to_text.o lib/efi_loader/efi_device_path_utilities.o lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o lib/efi_loader/efi_hii_config.o lib/efi_loader/efi_image_loader.o lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o lib/efi_loader/efi_setup.o lib/efi_loader/efi_string.o lib/efi_loader/efi_unicode_collation.o lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_file.o lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_conformance.o
+|   arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so
+| arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory
+| make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1
+
+The issue is hard to reproduce but this change can artificially trigger it:
+
+  a/scripts/Makefile.build
+  b/scripts/Makefile.build
+@@ -353,7 +353,7 @@ $(modorder-target): $(subdir-ym) FORCE
+ #
+ ifdef lib-target
+ quiet_cmd_link_l_target = AR      $@
+-cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
++cmd_link_l_target = rm -f $@ && echo "HACK, delaying build!" && sleep 60 && $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
+
+ $(lib-target): $(lib-y) FORCE
+        $(call if_changed,link_l_target)
+
+Then run a rebuild with:
+
+$  rm -f $( find build/ -name lib.a -or -name helloworld_efi.so ) && \
+   make
+...
+  arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /home/mcfrisk/src/base/repo/poky/build_bea
+glebone/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so
+arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory
+make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1
+
+Fix by introducing PLATFORM_LIBGCC_LIBA variable with only lib.a
+filename which is then used to add the dependency in rules which use
+PLATFORM_LIBGCC. This should not impact builds which don't set
+PLATFORM_LIBGCC_LIBA and PLATFORM_LIBGCC usage stays as is.
+
+Fixes: 43d43241d1c9 ("scripts/Makefile.lib: add PLATFORM_LIBGCC to efi linking")
+
+Cc: Adriano Cordova <adrianox@gmail.com>
+Cc: Fabio Estevam <festevam@gmail.com>
+Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
+---
+ Makefile                     | 4 +++-
+ examples/standalone/Makefile | 2 +-
+ scripts/Makefile.lib         | 2 +-
+ scripts/Makefile.xpl         | 3 ++-
+ 4 files changed, 7 insertions(+), 4 deletions(-)
+
+Upstream-Status: Submitted [https://lists.denx.de/pipermail/u-boot/2025-July/594581.html]
+
+v3: added "export PLATFORM_LIBGCC_LIBA" like PLATFORM_LIBGCC, not sure
+    how testing worked without this before
+
+v2: introduced PLATFORM_LIBGCC_LIBA variable with just lib.a filename,
+    PLATFORM_LIBGCC can have other flags too
+    https://lists.denx.de/pipermail/u-boot/2025-July/594034.html
+
+v1: https://lists.denx.de/pipermail/u-boot/2025-July/593982.html
+
+diff --git a/Makefile b/Makefile
+index 1a5c77d7caf0..a0797f36f7f6 100644
+--- a/Makefile
++++ b/Makefile
+@@ -911,7 +911,8 @@ u-boot-main := $(libs-y)
+ 
+ # Add GCC lib
+ ifeq ($(CONFIG_USE_PRIVATE_LIBGCC),y)
+-PLATFORM_LIBGCC = arch/$(ARCH)/lib/lib.a
++PLATFORM_LIBGCC_LIBA = arch/$(ARCH)/lib/lib.a
++PLATFORM_LIBGCC = $(PLATFORM_LIBGCC_LIBA)
+ else
+ ifndef CONFIG_CC_IS_CLANG
+ PLATFORM_LIBGCC := -L $(shell dirname `$(CC) $(c_flags) -print-libgcc-file-name`) -lgcc
+@@ -926,6 +927,7 @@ endif
+ 
+ export PLATFORM_LIBS
+ export PLATFORM_LIBGCC
++export PLATFORM_LIBGCC_LIBA
+ 
+ # Special flags for CPP when processing the linker script.
+ # Pass the version down so we can handle backwards compatibility
+diff --git a/examples/standalone/Makefile b/examples/standalone/Makefile
+index 9b57f1c0c66c..aa9e3121cf9a 100644
+--- a/examples/standalone/Makefile
++++ b/examples/standalone/Makefile
+@@ -64,7 +64,7 @@ quiet_cmd_link_elf = LD      $@
+       cmd_link_elf = $(LD) $(KBUILD_LDFLAGS) $(LDFLAGS_STANDALONE) -g  \
+ 		     -o $@ -e $(SYM_PREFIX)$(@F) $< $(LIB) $(PLATFORM_LIBGCC)
+ 
+-$(ELF): $(obj)/%: $(obj)/%.o $(LIB) FORCE
++$(ELF): $(obj)/%: $(obj)/%.o $(LIB) $(PLATFORM_LIBGCC_LIBA) FORCE
+ 	$(call if_changed,link_elf)
+ 
+ $(obj)/%.srec: OBJCOPYFLAGS += -O srec
+diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+index e89a4a51b74d..cef3863dfdc4 100644
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -508,7 +508,7 @@ $(obj)/efi_reloc.o: $(srctree)/arch/$(ARCH)/lib/$(EFI_RELOC:.o=.c) $(recordmcoun
+ 	$(call cmd,force_checksrc)
+ 	$(call if_changed_rule,cc_o_c)
+ 
+-$(obj)/%_efi.so: $(obj)/%.o $(obj)/efi_crt0.o $(obj)/efi_reloc.o $(obj)/efi_freestanding.o
++$(obj)/%_efi.so: $(PLATFORM_LIBGCC_LIBA) $(obj)/%.o $(obj)/efi_crt0.o $(obj)/efi_reloc.o $(obj)/efi_freestanding.o
+ 	$(call cmd,efi_ld)
+ 
+ targets += $(obj)/efi_crt0.o $(obj)/efi_reloc.o $(obj)/efi_freestanding.o
+diff --git a/scripts/Makefile.xpl b/scripts/Makefile.xpl
+index 43f27874f9fe..68c88293f0d9 100644
+--- a/scripts/Makefile.xpl
++++ b/scripts/Makefile.xpl
+@@ -139,7 +139,8 @@ libs-y := $(patsubst %/, %/built-in.o, $(libs-y))
+ 
+ # Add GCC lib
+ ifeq ($(CONFIG_USE_PRIVATE_LIBGCC),y)
+-PLATFORM_LIBGCC = arch/$(ARCH)/lib/lib.a
++PLATFORM_LIBGCC_LIBA = arch/$(ARCH)/lib/lib.a
++PLATFORM_LIBGCC = $(PLATFORM_LIBGCC_LIBA)
+ PLATFORM_LIBS := $(filter-out %/lib.a, $(filter-out -lgcc, $(PLATFORM_LIBS))) $(PLATFORM_LIBGCC)
+ endif
+ 
+-- 
+2.43.0
+
diff --git a/meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch b/meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch
new file mode 100644
index 000000000000..6b68f7472410
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch
@@ -0,0 +1,57 @@
+From d207ec22429adc94f9e173971e30c675d2ab3de4 Mon Sep 17 00:00:00 2001
+From: Mikko Rapeli <mikko.rapeli@linaro.org>
+Date: Fri, 18 Jul 2025 08:15:25 +0000
+Subject: [PATCH v3 2/2] efi_loader Makefile: change apps from "always" to
+ "targets"
+
+Adding delay to link commands in scripts/Makefile.build
+
+@@ -353,7 +353,7 @@ $(modorder-target): $(subdir-ym) FORCE
+ #
+ ifdef lib-target
+ quiet_cmd_link_l_target = AR      $@
+-cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
++cmd_link_l_target = rm -f $@; echo "HACK delaying lib-target"; sleep 10; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
+
+ $(lib-target): $(lib-y) FORCE
+        $(call if_changed,link_l_target)
+(1/2) Stage this hunk [y,n,q,a,d,j,J,g,/,e,?]? n
+@@ -362,7 +362,7 @@ targets += $(lib-target)
+ endif
+
+ quiet_cmd_link_multi-y = AR      $@
+-cmd_link_multi-y = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(filter %.o,$^)
++cmd_link_multi-y = rm -f $@; echo "HACK delaying cmd_link_multi-y"; sleep 10; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(filter %.o,$^)
+
+ quiet_cmd_link_multi-m = AR [M]  $@
+ cmd_link_multi-m = $(cmd_link_multi-y)
+
+exposes a build failure:
+
+make[3]: *** No rule to make target 'lib/efi_loader/helloworld.efi', needed by '__build'.  Stop.
+make[3]: *** Waiting for unfinished jobs....
+
+This if fixed by using normal targets for .efi apps. The rules
+in scripts/Makefile.lib handle the dependencies correctly.
+
+Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
+---
+ lib/efi_loader/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Upstream-Status: Submitted [https://lists.denx.de/pipermail/u-boot/2025-July/594583.html]
+
+diff --git a/lib/efi_loader/Makefile b/lib/efi_loader/Makefile
+index cf050e5385dd..e929c23b1cb1 100644
+--- a/lib/efi_loader/Makefile
++++ b/lib/efi_loader/Makefile
+@@ -96,5 +96,5 @@ $(foreach f,$(apps-y),\
+ 	$(eval CFLAGS_$(f).o := $(CFLAGS_EFI) -Os -ffreestanding)\
+ 	$(eval CFLAGS_REMOVE_$(f).o := $(CFLAGS_NON_EFI)))
+ 
+-always += $(foreach f,$(apps-y),$(f).efi)
++targets += $(foreach f,$(apps-y),$(f).efi)
+ targets += $(foreach f,$(apps-y),$(f).o)
+-- 
+2.43.0
+
diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
index 8600d4bab6ed..c1395e473c53 100644
--- a/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -12,9 +12,13 @@ PE = "1"
 
 # We use the revision in order to avoid having to fetch it from the
 # repo during parse
-SRCREV = "34820924edbc4ec7803eb89d9852f4b870fa760a"
+SRCREV = "e37de002fac3895e8d0b60ae2015e17bb33e2b5b"
 
-SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
+SRC_URI = "\
+    git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV} \
+    file://v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch \
+    file://v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch \
+"
 
 SRC_URI_RISCV = "\
     file://u-boot-riscv-isa_clear.cfg \
diff --git a/meta/recipes-bsp/u-boot/u-boot-tools_2025.04.bb b/meta/recipes-bsp/u-boot/u-boot-tools_2025.07.bb
similarity index 100%
rename from meta/recipes-bsp/u-boot/u-boot-tools_2025.04.bb
rename to meta/recipes-bsp/u-boot/u-boot-tools_2025.07.bb
diff --git a/meta/recipes-bsp/u-boot/u-boot_2025.04.bb b/meta/recipes-bsp/u-boot/u-boot_2025.07.bb
similarity index 64%
rename from meta/recipes-bsp/u-boot/u-boot_2025.04.bb
rename to meta/recipes-bsp/u-boot/u-boot_2025.07.bb
index 89e964f627e5..25f264c961eb 100644
--- a/meta/recipes-bsp/u-boot/u-boot_2025.04.bb
+++ b/meta/recipes-bsp/u-boot/u-boot_2025.07.bb
@@ -4,5 +4,5 @@ require u-boot.inc
 DEPENDS += "bc-native dtc-native gnutls-native python3-pyelftools-native"
 
 # workarounds for aarch64 kvm qemu boot regressions
-SRC_URI:append:qemuarm64 = " file://disable-CONFIG_BLOBLIST.cfg file://disable_CONFIG_USB.cfg"
-SRC_URI:append:genericarm64 = " file://disable-CONFIG_BLOBLIST.cfg file://disable_CONFIG_USB.cfg"
+SRC_URI:append:qemuarm64 = " file://disable-CONFIG_BLOBLIST.cfg"
+SRC_URI:append:genericarm64 = " file://disable-CONFIG_BLOBLIST.cfg"
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-18  9:01 [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07 Mikko Rapeli
@ 2025-07-18 10:28 ` Richard Purdie
  2025-07-18 10:34   ` Quentin Schulz
  2025-07-19  6:34 ` Mathieu Dubois-Briand
  1 sibling, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2025-07-18 10:28 UTC (permalink / raw)
  To: mikko.rapeli, openembedded-core; +Cc: Fabio Estevam

On Fri, 2025-07-18 at 12:01 +0300, Mikko Rapeli via lists.openembedded.org wrote:
> From: Fabio Estevam <festevam@gmail.com>
> 
> Upgrade to U-Boot 2025.07. Added patches for build race conditions.
> Removed qemu KVM USB workaround since issue is fixed upstream.
> 
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
> ---
>  .../u-boot/files/disable_CONFIG_USB.cfg       |   1 -
>  ...pts-Makefile.lib-fix-_efi.so-depende.patch | 136 ++++++++++++++++++
>  ...kefile-change-apps-from-always-to-ta.patch |  57 ++++++++
>  meta/recipes-bsp/u-boot/u-boot-common.inc     |   8 +-
>  ...ols_2025.04.bb => u-boot-tools_2025.07.bb} |   0
>  .../{u-boot_2025.04.bb => u-boot_2025.07.bb}  |   4 +-
>  6 files changed, 201 insertions(+), 5 deletions(-)
>  delete mode 100644 meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
>  create mode 100644 meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
>  create mode 100644 meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch
>  rename meta/recipes-bsp/u-boot/{u-boot-tools_2025.04.bb => u-boot-tools_2025.07.bb} (100%)
>  rename meta/recipes-bsp/u-boot/{u-boot_2025.04.bb => u-boot_2025.07.bb} (64%)
> 
> v3: Did not manage to reproduce AB build failures but added delays to more
>     linker calls which exposed similar issues. Fixed failures with patches
>     which are also submitted upstream.
> 
> v2: added upstreamed patch to fix build race conditon, removed qemu kvm workaround
>     fixed upstream. Would be nice to check if builds now pass.
>     https://lists.openembedded.org/g/openembedded-core/message/220436
> 
> v1: https://lists.openembedded.org/g/openembedded-core/message/220004
> 
> diff --git a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg b/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
> deleted file mode 100644
> index 1d2509982be1..000000000000
> --- a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
> +++ /dev/null
> @@ -1 +0,0 @@
> -# CONFIG_USB is not set
> diff --git a/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
> new file mode 100644
> index 000000000000..e8253a67b211
> --- /dev/null
> +++ b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
> @@ -0,0 +1,136 @@
> +From 2e7c1321bb44cc6af4ee4b1026a52e1a0aa7e336 Mon Sep 17 00:00:00 2001
> +From: Mikko Rapeli <mikko.rapeli@linaro.org>
> +Date: Thu, 10 Jul 2025 14:24:07 +0000
> +Subject: [PATCH v3 1/2] Makefile scripts/Makefile.lib: fix *_efi.so dependency
> + to PLATFORM_LIBGCC
> +
> +When PLATFORM_LIBGCC was added to linker command it was not
> +added to the dependency of the .so and other rules. Thus a build can
> +try to link *_efi.so files before lib.a from PLATFORM_LIBGCC is available.
> +This was seen in yocto autobuilder builds with u-boot 2025.07
> +update, see https://lists.openembedded.org/g/openembedded-core/message/220004
> +
> +https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/raw_inline
> +
> +|    rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o lib/efi_loader/efi_bootbin.o lib/efi_loader/efi_boottime.o lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o lib/efi_loader/efi_device_path.o lib/efi_loader/efi_device_path_to_text.o lib/efi_loader/efi_device_path_utilities.o lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o lib/efi_loader/efi_hii_config.o lib/efi_loader/efi_image_loader.o lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o lib/efi_loader/efi_setup.o lib/efi_loader/efi_string.o lib/efi_loader/efi_unicode_collation.o lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_file.o lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_conformance.o
> +|   arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so
> +| arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory
> +| make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1
> +
> +The issue is hard to reproduce but this change can artificially trigger it:
> +
> +  a/scripts/Makefile.build
> +  b/scripts/Makefile.build
> +@@ -353,7 +353,7 @@ $(modorder-target): $(subdir-ym) FORCE
> + #
> + ifdef lib-target
> + quiet_cmd_link_l_target = AR      $@
> +-cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
> ++cmd_link_l_target = rm -f $@ && echo "HACK, delaying build!" && sleep 60 && $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
> +

This is not how you solve build races and I've very reluctant to take
patches that look like that, whether submitted to upstream or
otherwise.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-18 10:28 ` [OE-core] " Richard Purdie
@ 2025-07-18 10:34   ` Quentin Schulz
  2025-07-18 11:16     ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Quentin Schulz @ 2025-07-18 10:34 UTC (permalink / raw)
  To: richard.purdie, mikko.rapeli, openembedded-core; +Cc: Fabio Estevam

Hi Richard,

On 7/18/25 12:28 PM, Richard Purdie via lists.openembedded.org wrote:
> On Fri, 2025-07-18 at 12:01 +0300, Mikko Rapeli via lists.openembedded.org wrote:
>> From: Fabio Estevam <festevam@gmail.com>
>>
>> Upgrade to U-Boot 2025.07. Added patches for build race conditions.
>> Removed qemu KVM USB workaround since issue is fixed upstream.
>>
>> Signed-off-by: Fabio Estevam <festevam@gmail.com>
>> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
>> ---
>>   .../u-boot/files/disable_CONFIG_USB.cfg       |   1 -
>>   ...pts-Makefile.lib-fix-_efi.so-depende.patch | 136 ++++++++++++++++++
>>   ...kefile-change-apps-from-always-to-ta.patch |  57 ++++++++
>>   meta/recipes-bsp/u-boot/u-boot-common.inc     |   8 +-
>>   ...ols_2025.04.bb => u-boot-tools_2025.07.bb} |   0
>>   .../{u-boot_2025.04.bb => u-boot_2025.07.bb}  |   4 +-
>>   6 files changed, 201 insertions(+), 5 deletions(-)
>>   delete mode 100644 meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
>>   create mode 100644 meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
>>   create mode 100644 meta/recipes-bsp/u-boot/files/v3-0002-efi_loader-Makefile-change-apps-from-always-to-ta.patch
>>   rename meta/recipes-bsp/u-boot/{u-boot-tools_2025.04.bb => u-boot-tools_2025.07.bb} (100%)
>>   rename meta/recipes-bsp/u-boot/{u-boot_2025.04.bb => u-boot_2025.07.bb} (64%)
>>
>> v3: Did not manage to reproduce AB build failures but added delays to more
>>      linker calls which exposed similar issues. Fixed failures with patches
>>      which are also submitted upstream.
>>
>> v2: added upstreamed patch to fix build race conditon, removed qemu kvm workaround
>>      fixed upstream. Would be nice to check if builds now pass.
>>      https://lists.openembedded.org/g/openembedded-core/message/220436
>>
>> v1: https://lists.openembedded.org/g/openembedded-core/message/220004
>>
>> diff --git a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg b/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
>> deleted file mode 100644
>> index 1d2509982be1..000000000000
>> --- a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
>> +++ /dev/null
>> @@ -1 +0,0 @@
>> -# CONFIG_USB is not set
>> diff --git a/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
>> new file mode 100644
>> index 000000000000..e8253a67b211
>> --- /dev/null
>> +++ b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
>> @@ -0,0 +1,136 @@
>> +From 2e7c1321bb44cc6af4ee4b1026a52e1a0aa7e336 Mon Sep 17 00:00:00 2001
>> +From: Mikko Rapeli <mikko.rapeli@linaro.org>
>> +Date: Thu, 10 Jul 2025 14:24:07 +0000
>> +Subject: [PATCH v3 1/2] Makefile scripts/Makefile.lib: fix *_efi.so dependency
>> + to PLATFORM_LIBGCC
>> +
>> +When PLATFORM_LIBGCC was added to linker command it was not
>> +added to the dependency of the .so and other rules. Thus a build can
>> +try to link *_efi.so files before lib.a from PLATFORM_LIBGCC is available.
>> +This was seen in yocto autobuilder builds with u-boot 2025.07
>> +update, see https://lists.openembedded.org/g/openembedded-core/message/220004
>> +
>> +https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/raw_inline
>> +
>> +|    rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o lib/efi_loader/efi_bootbin.o lib/efi_loader/efi_boottime.o lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o lib/efi_loader/efi_device_path.o lib/efi_loader/efi_device_path_to_text.o lib/efi_loader/efi_device_path_utilities.o lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o lib/efi_loader/efi_hii_config.o lib/efi_loader/efi_image_loader.o lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o lib/efi_loader/efi_setup.o lib/efi_loader/efi_string.o lib/efi_loader/efi_unicode_collation.o lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_file.o lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_conformance.o
>> +|   arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so
>> +| arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory
>> +| make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1
>> +
>> +The issue is hard to reproduce but this change can artificially trigger it:
>> +
>> +  a/scripts/Makefile.build
>> +  b/scripts/Makefile.build
>> +@@ -353,7 +353,7 @@ $(modorder-target): $(subdir-ym) FORCE
>> + #
>> + ifdef lib-target
>> + quiet_cmd_link_l_target = AR      $@
>> +-cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
>> ++cmd_link_l_target = rm -f $@ && echo "HACK, delaying build!" && sleep 60 && $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
>> +
> 
> This is not how you solve build races and I've very reluctant to take
> patches that look like that, whether submitted to upstream or
> otherwise.
> 

If I'm not mistaken, this is not the actual patch (code) content but 
rather how to reproduce the race issue reliably in a patch format 
contained in the commit log but the actual code doesn't add sleep as far 
as I could tell? But it's hard to distinguish a patch in a patch in a 
patch's commit log from a patch in a patch :)

Cheers,
Quentin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-18 10:34   ` Quentin Schulz
@ 2025-07-18 11:16     ` Richard Purdie
  0 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2025-07-18 11:16 UTC (permalink / raw)
  To: Quentin Schulz, mikko.rapeli, openembedded-core; +Cc: Fabio Estevam

On Fri, 2025-07-18 at 12:34 +0200, Quentin Schulz wrote:
> Hi Richard,
> 
> On 7/18/25 12:28 PM, Richard Purdie via lists.openembedded.org wrote:
> > On Fri, 2025-07-18 at 12:01 +0300, Mikko Rapeli via
> > lists.openembedded.org wrote:
> > > From: Fabio Estevam <festevam@gmail.com>
> > > 
> > > Upgrade to U-Boot 2025.07. Added patches for build race
> > > conditions.
> > > Removed qemu KVM USB workaround since issue is fixed upstream.
> > > 
> > > Signed-off-by: Fabio Estevam <festevam@gmail.com>
> > > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
> > > ---
> > >   .../u-boot/files/disable_CONFIG_USB.cfg       |   1 -
> > >   ...pts-Makefile.lib-fix-_efi.so-depende.patch | 136
> > > ++++++++++++++++++
> > >   ...kefile-change-apps-from-always-to-ta.patch |  57 ++++++++
> > >   meta/recipes-bsp/u-boot/u-boot-common.inc     |   8 +-
> > >   ...ols_2025.04.bb => u-boot-tools_2025.07.bb} |   0
> > >   .../{u-boot_2025.04.bb => u-boot_2025.07.bb}  |   4 +-
> > >   6 files changed, 201 insertions(+), 5 deletions(-)
> > >   delete mode 100644 meta/recipes-bsp/u-
> > > boot/files/disable_CONFIG_USB.cfg
> > >   create mode 100644 meta/recipes-bsp/u-boot/files/v3-0001-
> > > Makefile-scripts-Makefile.lib-fix-_efi.so-depende.patch
> > >   create mode 100644 meta/recipes-bsp/u-boot/files/v3-0002-
> > > efi_loader-Makefile-change-apps-from-always-to-ta.patch
> > >   rename meta/recipes-bsp/u-boot/{u-boot-tools_2025.04.bb => u-
> > > boot-tools_2025.07.bb} (100%)
> > >   rename meta/recipes-bsp/u-boot/{u-boot_2025.04.bb => u-
> > > boot_2025.07.bb} (64%)
> > > 
> > > v3: Did not manage to reproduce AB build failures but added
> > > delays to more
> > >      linker calls which exposed similar issues. Fixed failures
> > > with patches
> > >      which are also submitted upstream.
> > > 
> > > v2: added upstreamed patch to fix build race conditon, removed
> > > qemu kvm workaround
> > >      fixed upstream. Would be nice to check if builds now pass.
> > >     
> > > https://lists.openembedded.org/g/openembedded-core/message/220436
> > > 
> > > v1:
> > > https://lists.openembedded.org/g/openembedded-core/message/220004
> > > 
> > > diff --git a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
> > > b/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
> > > deleted file mode 100644
> > > index 1d2509982be1..000000000000
> > > --- a/meta/recipes-bsp/u-boot/files/disable_CONFIG_USB.cfg
> > > +++ /dev/null
> > > @@ -1 +0,0 @@
> > > -# CONFIG_USB is not set
> > > diff --git a/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-
> > > scripts-Makefile.lib-fix-_efi.so-depende.patch b/meta/recipes-
> > > bsp/u-boot/files/v3-0001-Makefile-scripts-Makefile.lib-fix-
> > > _efi.so-depende.patch
> > > new file mode 100644
> > > index 000000000000..e8253a67b211
> > > --- /dev/null
> > > +++ b/meta/recipes-bsp/u-boot/files/v3-0001-Makefile-scripts-
> > > Makefile.lib-fix-_efi.so-depende.patch
> > > @@ -0,0 +1,136 @@
> > > +From 2e7c1321bb44cc6af4ee4b1026a52e1a0aa7e336 Mon Sep 17
> > > 00:00:00 2001
> > > +From: Mikko Rapeli <mikko.rapeli@linaro.org>
> > > +Date: Thu, 10 Jul 2025 14:24:07 +0000
> > > +Subject: [PATCH v3 1/2] Makefile scripts/Makefile.lib: fix
> > > *_efi.so dependency
> > > + to PLATFORM_LIBGCC
> > > +
> > > +When PLATFORM_LIBGCC was added to linker command it was not
> > > +added to the dependency of the .so and other rules. Thus a build
> > > can
> > > +try to link *_efi.so files before lib.a from PLATFORM_LIBGCC is
> > > available.
> > > +This was seen in yocto autobuilder builds with u-boot 2025.07
> > > +update, see
> > > https://lists.openembedded.org/g/openembedded-core/message/220004
> > > +
> > > +
> > > https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/
> > > raw_inline
> > > +
> > > +|    rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar
> > > cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o
> > > lib/efi_loader/efi_bootbin.o lib/efi_loader/efi_boottime.o
> > > lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o
> > > lib/efi_loader/efi_device_path.o
> > > lib/efi_loader/efi_device_path_to_text.o
> > > lib/efi_loader/efi_device_path_utilities.o
> > > lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o
> > > lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o
> > > lib/efi_loader/efi_hii_config.o lib/efi_loader/efi_image_loader.o
> > > lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o
> > > lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o
> > > lib/efi_loader/efi_setup.o lib/efi_loader/efi_string.o
> > > lib/efi_loader/efi_unicode_collation.o
> > > lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o
> > > lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_file.o
> > > lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o
> > > lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o
> > > lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_conformance.o
> > > +|   arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -
> > > znocombreloc -znorelro --no-warn-rwx-segments -L
> > > /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-
> > > 3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-
> > > boot/2025.07/sources/u-boot-2025.07 -T
> > > arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s
> > > lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o
> > > lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o
> > > arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so
> > > +| arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a:
> > > No such file or directory
> > > +| make[3]: *** [scripts/Makefile.lib:512:
> > > lib/efi_loader/helloworld_efi.so] Error 1
> > > +
> > > +The issue is hard to reproduce but this change can artificially
> > > trigger it:
> > > +
> > > +  a/scripts/Makefile.build
> > > +  b/scripts/Makefile.build
> > > +@@ -353,7 +353,7 @@ $(modorder-target): $(subdir-ym) FORCE
> > > + #
> > > + ifdef lib-target
> > > + quiet_cmd_link_l_target = AR      $@
> > > +-cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@
> > > $(lib-y)
> > > ++cmd_link_l_target = rm -f $@ && echo "HACK, delaying build!" &&
> > > sleep 60 && $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
> > > +
> > 
> > This is not how you solve build races and I've very reluctant to
> > take
> > patches that look like that, whether submitted to upstream or
> > otherwise.
> > 
> 
> If I'm not mistaken, this is not the actual patch (code) content but 
> rather how to reproduce the race issue reliably in a patch format 
> contained in the commit log but the actual code doesn't add sleep as far 
> as I could tell? But it's hard to distinguish a patch in a patch in a
> patch's commit log from a patch in a patch :)

That makes much more sense, thanks. I was thinking it was a very
unusual upstream submission!

Cheers,

Richard



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-18  9:01 [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07 Mikko Rapeli
  2025-07-18 10:28 ` [OE-core] " Richard Purdie
@ 2025-07-19  6:34 ` Mathieu Dubois-Briand
  2025-07-21 12:34   ` Fabio Estevam
  1 sibling, 1 reply; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-07-19  6:34 UTC (permalink / raw)
  To: mikko.rapeli, openembedded-core; +Cc: Fabio Estevam

On Fri Jul 18, 2025 at 11:01 AM CEST, Mikko Rapeli via lists.openembedded.org wrote:
> From: Fabio Estevam <festevam@gmail.com>
>
> Upgrade to U-Boot 2025.07. Added patches for build race conditions.
> Removed qemu KVM USB workaround since issue is fixed upstream.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
> ---

Hi Mikko,

Much better, but we have another test failure now, specifically on ARM
host:

QEMU 10.0.2 monitor - type 'help' for more information
...
Loading Environment from Flash... *** Warning - bad CRC, using default environment

In:    serial,usbkbd
Out:   serial,vidconsole
Err:   serial,vidconsole
Register 8001040 NbrPorts 8
Starting the controller
"Synchronous Abort" handler, esr 0x96000010, far 0x10088040
elr: 000000000005a360 lr : 000000000005a344 (reloc)
elr: 000000004f6fc360 lr : 000000004f6fc344
x0 : 0000000010088040 x1 : 0000000000000001
x2 : 0000000000000000 x3 : 0000000000003e80
x4 : 0000000000000038 x5 : 000000004e6708e2
x6 : 0000000000000000 x7 : 0000000000000000
x8 : 0000000000000000 x9 : 000000000001869f
x10: 000000000000000d x11: 0000000000000006
x12: 000000004e561af8 x13: 000000004e561dd0
x14: 0000000000000002 x15: 0000000000000000
x16: 000000004f6ee774 x17: 0000000000000000
x18: 000000004e661dd0 x19: 000000004e670e40
x20: 0000000000000000 x21: 0000000010088040
x22: 0000000010088000 x23: 0000000000000000
x24: 0000000000000000 x25: 0000000000000000
x26: 0000000000000000 x27: 0000000000000000
x28: 00000000
...
2025-07-18 23:17:34,434 - oe-selftest - INFO - ERROR: uboot.UBootTest.test_boot_uboot_kvm_to_full_target (subunit.RemotedTestCase)

https://autobuilder.yoctoproject.org/valkyrie/#/builders/23/builds/2140

Can you look into that error?

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-19  6:34 ` Mathieu Dubois-Briand
@ 2025-07-21 12:34   ` Fabio Estevam
  2025-07-21 13:48     ` Tom Rini
  0 siblings, 1 reply; 7+ messages in thread
From: Fabio Estevam @ 2025-07-21 12:34 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, Tom Rini; +Cc: mikko.rapeli, openembedded-core

Adding Tom.

On Sat, Jul 19, 2025 at 3:34 AM Mathieu Dubois-Briand
<mathieu.dubois-briand@bootlin.com> wrote:
>
> On Fri Jul 18, 2025 at 11:01 AM CEST, Mikko Rapeli via lists.openembedded.org wrote:
> > From: Fabio Estevam <festevam@gmail.com>
> >
> > Upgrade to U-Boot 2025.07. Added patches for build race conditions.
> > Removed qemu KVM USB workaround since issue is fixed upstream.
> >
> > Signed-off-by: Fabio Estevam <festevam@gmail.com>
> > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
> > ---
>
> Hi Mikko,
>
> Much better, but we have another test failure now, specifically on ARM
> host:
>
> QEMU 10.0.2 monitor - type 'help' for more information
> ...
> Loading Environment from Flash... *** Warning - bad CRC, using default environment
>
> In:    serial,usbkbd
> Out:   serial,vidconsole
> Err:   serial,vidconsole
> Register 8001040 NbrPorts 8
> Starting the controller
> "Synchronous Abort" handler, esr 0x96000010, far 0x10088040
> elr: 000000000005a360 lr : 000000000005a344 (reloc)
> elr: 000000004f6fc360 lr : 000000004f6fc344
> x0 : 0000000010088040 x1 : 0000000000000001
> x2 : 0000000000000000 x3 : 0000000000003e80
> x4 : 0000000000000038 x5 : 000000004e6708e2
> x6 : 0000000000000000 x7 : 0000000000000000
> x8 : 0000000000000000 x9 : 000000000001869f
> x10: 000000000000000d x11: 0000000000000006
> x12: 000000004e561af8 x13: 000000004e561dd0
> x14: 0000000000000002 x15: 0000000000000000
> x16: 000000004f6ee774 x17: 0000000000000000
> x18: 000000004e661dd0 x19: 000000004e670e40
> x20: 0000000000000000 x21: 0000000010088040
> x22: 0000000010088000 x23: 0000000000000000
> x24: 0000000000000000 x25: 0000000000000000
> x26: 0000000000000000 x27: 0000000000000000
> x28: 00000000
> ...
> 2025-07-18 23:17:34,434 - oe-selftest - INFO - ERROR: uboot.UBootTest.test_boot_uboot_kvm_to_full_target (subunit.RemotedTestCase)
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/23/builds/2140
>
> Can you look into that error?
>
> --
> Mathieu Dubois-Briand, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [OE-core] [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07
  2025-07-21 12:34   ` Fabio Estevam
@ 2025-07-21 13:48     ` Tom Rini
  0 siblings, 0 replies; 7+ messages in thread
From: Tom Rini @ 2025-07-21 13:48 UTC (permalink / raw)
  To: Fabio Estevam; +Cc: Mathieu Dubois-Briand, mikko.rapeli, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 781 bytes --]

On Mon, Jul 21, 2025 at 09:34:10AM -0300, Fabio Estevam wrote:
> Adding Tom.
> 
> On Sat, Jul 19, 2025 at 3:34 AM Mathieu Dubois-Briand
> <mathieu.dubois-briand@bootlin.com> wrote:
> >
> > On Fri Jul 18, 2025 at 11:01 AM CEST, Mikko Rapeli via lists.openembedded.org wrote:
> > > From: Fabio Estevam <festevam@gmail.com>
> > >
> > > Upgrade to U-Boot 2025.07. Added patches for build race conditions.
> > > Removed qemu KVM USB workaround since issue is fixed upstream.

Here's the problem. Yes, the "KVM USB workaround" was fixed upstream.
But it's not in v2025.07. You need to cherry-pick:

fcc60481ae75 qemu: arm: Enable virtualizable IO accessors
dc512700ad46 arm: io.h: Fix io accessors for KVM
b56c0632ad62 nxp: Prepare macros for KVM changes

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-07-21 13:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-18  9:01 [PATCH v3] u-boot: upgrade 2025.04 -> 2025.07 Mikko Rapeli
2025-07-18 10:28 ` [OE-core] " Richard Purdie
2025-07-18 10:34   ` Quentin Schulz
2025-07-18 11:16     ` Richard Purdie
2025-07-19  6:34 ` Mathieu Dubois-Briand
2025-07-21 12:34   ` Fabio Estevam
2025-07-21 13:48     ` Tom Rini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.