GNU bug report logs - #70943
linux-libre is not reproducible (regression)

Previous Next

Package: guix;

Reported by: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Date: Tue, 14 May 2024 15:41:01 UTC

Severity: normal

To reply to this bug, email your comments to 70943 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#70943; Package guix. (Tue, 14 May 2024 15:41:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 14 May 2024 15:41:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: bug-guix <bug-guix <at> gnu.org>
Subject: linux-libre is not reproducible (regression)
Date: Tue, 14 May 2024 11:40:35 -0400
Hello,

I've investigated non-determinism in our linux-libre package, which
sadly appears to have regressed in that regard since I last looked into
it 3 years ago (see commit 01ea70a29c5c1ded31c37ce8c43192bc1956b2ca
("gnu: linux-libre: Make build reproducible.")).

I'm currently seeing these differing files:

--8<---------------cut here---------------start------------->8---
$ diff -ql /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9{,-check}
Files /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/bzImage and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/bzImage differ
Common subdirectories: /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/lib and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/lib
Common subdirectories: /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/share and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/share
Files /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/System.map and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/System.map differ
--8<---------------cut here---------------end--------------->8---

I'll take a look at what Yocto does differently, if anything.

-- 
Thanks,
Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#70943; Package guix. (Sun, 26 May 2024 18:18:02 GMT) Full text and rfc822 format available.

Message #8 received at 70943 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: 70943 <at> debbugs.gnu.org
Subject: Re: bug#70943: linux-libre is not reproducible (regression)
Date: Sun, 26 May 2024 14:15:59 -0400
Hi,

Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:

> Hello,
>
> I've investigated non-determinism in our linux-libre package, which
> sadly appears to have regressed in that regard since I last looked into
> it 3 years ago (see commit 01ea70a29c5c1ded31c37ce8c43192bc1956b2ca
> ("gnu: linux-libre: Make build reproducible.")).
>
> I'm currently seeing these differing files:
>
> $ diff -ql /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9{,-check}
> Files /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/bzImage and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/bzImage differ
> Common subdirectories: /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/lib and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/lib
> Common subdirectories: /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/share and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/share
> Files /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9/System.map and /gnu/store/6vx6vkranmggv690ggm79zhdhwvmbji9-linux-libre-6.8.9-check/System.map differ
>
> I'll take a look at what Yocto does differently, if anything.

I didn't see anything special, although some BPF switches got turned on
in the kernel by default in newer 6.X releases, and BPF appears to
introduce non-determinism, accordingy to the Reproducible Builds website
which says this [0]:

   Several distributions noticed recent versions of the Linux Kernel are
   no longer reproducible because the BPF Type Format (BTF) metadata is
   not generated in a deterministic way. This was discussed on the
   #reproducible-builds IRC channel, but no solution appears to be in
   sight for now.

[0]  https://reproducible-builds.org/reports/2023-04/

So it seems there'll need to be some reproducibility work for that
feature in the kernel before it can be resolved (we could also disable
all BPF features, but that seems counter-current at this point in time).

-- 
Thanks,
Maxim




This bug report was last modified 5 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.