All of lore.kernel.org
 help / color / mirror / Atom feed
* Reproducibility issue due to use of uname
@ 2022-06-09 16:06 Vagrant Cascadian
  2022-06-10 12:33 ` Heinrich Schuchardt
  0 siblings, 1 reply; 2+ messages in thread
From: Vagrant Cascadian @ 2022-06-09 16:06 UTC (permalink / raw)
  To: u-boot; +Cc: Heinrich Schuchardt

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

It looks like u-boot 2022.07-rc1 introduced a reproducibility issue that
is dependent on the running kernel.

I believe the commit that triggered this issue is:

  f7691a6d736bec7915c227ac14076f9993a27367 sandbox: allow cross-compiling sandbox

While the use of uname in the Makefile goes back well before this
commit, previously it had no apparent effect on the builds...

When building natively (e.g. CROSS_COMPILE is not set) with a 32-bit
userland toolchain, but running a 64-bit kernel, 32-bit arm targets end up
with BOOTAA64.EFI embedded in the binaries:

  https://tests.reproducible-builds.org/debian/rb-pkg/experimental/armhf/diffoscope-results/u-boot.html

  /EFI/BOOT/BOOTARM.EFI
  vs.
  /EFI/BOOT/BOOTAA64.EFI


live well,
  vagrant

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

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

* Re: Reproducibility issue due to use of uname
  2022-06-09 16:06 Reproducibility issue due to use of uname Vagrant Cascadian
@ 2022-06-10 12:33 ` Heinrich Schuchardt
  0 siblings, 0 replies; 2+ messages in thread
From: Heinrich Schuchardt @ 2022-06-10 12:33 UTC (permalink / raw)
  To: Vagrant Cascadian
  Cc: u-boot, AKASHI Takahiro, Masahisa Kojima, Vagrant Cascadian

On 6/9/22 18:06, Vagrant Cascadian wrote:
> It looks like u-boot 2022.07-rc1 introduced a reproducibility issue that
> is dependent on the running kernel.
>
> I believe the commit that triggered this issue is:
>
>    f7691a6d736bec7915c227ac14076f9993a27367 sandbox: allow cross-compiling sandbox

Thanks for reporting the issue.

Said patch does not change the value of MK_ARCH for CROSS_COMPILE="".
So this is not the relevant patch.

>
> While the use of uname in the Makefile goes back well before this
> commit, previously it had no apparent effect on the builds...
>
> When building natively (e.g. CROSS_COMPILE is not set) with a 32-bit
> userland toolchain, but running a 64-bit kernel, 32-bit arm targets end up
> with BOOTAA64.EFI embedded in the binaries:
>
>    https://tests.reproducible-builds.org/debian/rb-pkg/experimental/armhf/diffoscope-results/u-boot.html

The EFI boot manager can boot according to boot options define as UEFI
variables BOOTxxxx. We recently introduced support for booting via these
variables if they only point to a block device without a filename. In
this case we need to provide the name of the EFI binary. Only for the
sandbox this should depend on host architecture.

I need to correct include/efi_default_filename.h to only use variable
HOST_ARCH for the sandbox.

Best regards

Heinrich

>
>    /EFI/BOOT/BOOTARM.EFI
>    vs.
>    /EFI/BOOT/BOOTAA64.EFI
>
>
> live well,
>    vagrant


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

end of thread, other threads:[~2022-06-10 12:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-09 16:06 Reproducibility issue due to use of uname Vagrant Cascadian
2022-06-10 12:33 ` Heinrich Schuchardt

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.