The kernel doesn’t have reproducible builds by default because of a handful of 
variables (including timestamps). If you rebuild, you get a different binary 
every time.
Those can be changed and overridden so that you get consistent binary output 
(see here: 
https://www.kernel.org/doc/html/latest/kbuild/reproducible-builds.html) but 
that hasn’t been done on the linux-yocto recipe yet.

I assume that it’s planned because there are efforts going in to making things 
100% reproducible for poky, but I don’t know what the status of everything is 
(although I know that the kernel at least isn’t reproducible as of 22.0.2)

Since this can theoretically happen to any package that doesn’t have a 
reproducible build process, it seemed worth asking the question globally too.

-Sean


From: yocto@lists.yoctoproject.org <yocto@lists.yoctoproject.org> On Behalf Of 
Alexander Kanavin
Sent: Tuesday, April 7, 2020 12:11 PM
To: McKay, Sean <sean.mc...@hpe.com>
Cc: yocto@lists.yoctoproject.org
Subject: Re: [yocto] sstate causing stripped kernel vs symbols mismatch

On Tue, 7 Apr 2020 at 21:03, Sean McKay 
<sean.mc...@hpe.com<mailto:sean.mc...@hpe.com>> wrote:
  If you’re interested, this is quite easy to reproduce – these are my repro 
steps

  *   Check out a clean copy of zeus (22.0.2)
  *   Add kernel-image to core-image-minimal in whatever fashion you choose (I 
just dumped it in the RDEPENDS for packagegroup-core-boot for testing)
  *   bitbake core-image-minimal
  *   bitbake -c clean core-image-minimal linux-yocto (or just wipe your whole 
build dir, since everything should come from sstate now)
  *   Delete the sstate object(s) for linux-yocto’s deploy task.
  *   bitbake core-image-minimal
  *   Compare the BuildID hashes for the kernel in the two locations using file 
(you’ll need to use the kernel’s extract-vmlinux script to get it out of the 
bzImage)

     *   file 
tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/rootfs/boot/vmlinux-5.2.28-yocto-standard
     *   ./tmp/work-shared/qemux86-64/kernel-source/scripts/extract-vmlinux 
tmp/deploy/images/qemux86-64/bzImage > vmlinux-deploy && file vmlinux-deploy
The kernel is still re-built from the same source, so why is this causing 
issues?

Alex
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#49080): https://lists.yoctoproject.org/g/yocto/message/49080
Mute This Topic: https://lists.yoctoproject.org/mt/72857880/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to