Linux-libre kernel does not build deterministically

  • Done
  • quality assurance status badge
Details
4 participants
  • Bone Baboon
  • Ludovic Courtès
  • Maxim Cournoyer
  • zimoun
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 19 Jul 2016 19:22
(address . bug-guix@gnu.org)
87lh0xfsq2.fsf@gnu.org
As of version 4.6.4, Linux-libre does not build reproducibly:

Toggle snippet (9 lines)
$ guix challenge linux-libre
/gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 contents differ:
local hash: 1py214sd42qcq8l429m4zf4aibp8rl68kpkrzqi1nn65vnbxsx11
https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4: 19hsdsjy5i9nfc1g28s074znzimzhylgkdpwz435j301sn9pxxp9
$ wget -q -O - https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 | bunzip2 | guix archive -x t
$ diff -ur --no-dereference /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 /tmp/t
Binary files /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4/bzImage and /tmp/t/bzImage differ

Apparently people are working on it:

Ludo’.
M
M
Maxim Cournoyer wrote on 9 Oct 2020 23:17
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 24028@debbugs.gnu.org)
87imbjqeuo.fsf@gmail.com
Hello,

ludo@gnu.org (Ludovic Courtès) writes:

Toggle quote (15 lines)
> As of version 4.6.4, Linux-libre does not build reproducibly:
>
> $ guix challenge linux-libre
> /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 contents differ:
> local hash: 1py214sd42qcq8l429m4zf4aibp8rl68kpkrzqi1nn65vnbxsx11
> https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4: 19hsdsjy5i9nfc1g28s074znzimzhylgkdpwz435j301sn9pxxp9
> $ wget -q -O - https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 | bunzip2 | guix archive -x t
> $ diff -ur --no-dereference /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 /tmp/t
> Binary files /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4/bzImage and /tmp/t/bzImage differ
>
> Apparently people are working on it:
> <https://wiki.debian.org/SameKernel>.
>
> Ludo’.

I just tested with linux-libre 5.8.10, and it still suffers from
reproducibility problems, but only for one file:

Toggle snippet (4 lines)
diff -r /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10{,-check}
Binary files /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10/bzImage and /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10-check/bzImage differ

So, we're not far!

Maxim
B
B
Bone Baboon wrote on 17 May 2021 20:38
Re: Linux-libre kernel does not build deterministically
(address . 24028@debbugs.gnu.org)
87im3hcijw.fsf@disroot.org
Linux-libre is not reproducible.

`guix describe` outputs:

```
Generation 24 May 12 2021 18:06:24 (current)
guix d6aeebb
branch: master
commit: d6aeebb23639258311fdfb9dbf5f903079fde51a
```

`guix challenge
/gnu/store/k029d836d3slh3s5k20306zvnph5ggq4-linux-libre-5.11.16`
outputs:

```
/gnu/store/k029d836d3slh3s5k20306zvnph5ggq4-linux-libre-5.11.16 contents differ:
local hash: 1xkzhdkqbnh1prryz2bbbz1fsydsb9srhzpj27mpx1dv47fq2r05
differing file:
/bzImage

1 store items were analyzed:
- 0 (0.0%) were identical
- 1 (100.0%) differed
- 0 (0.0%) were inconclusive
```

`guix challenge
/gnu/store/rcav1xxn4ajkbnkmrnl6jr5d1zb20kq1-linux-libre-5.11.14`
outputs:

```
/gnu/store/rcav1xxn4ajkbnkmrnl6jr5d1zb20kq1-linux-libre-5.11.14 contents differ:
local hash: 1z2v884l98ysl0vass4dchwfpavnk47x8brcx8h31qp3bj1xyhaz
differing file:
/bzImage

1 store items were analyzed:
- 0 (0.0%) were identical
- 1 (100.0%) differed
- 0 (0.0%) were inconclusive
```

Attached is the diffoscope output.
Z
Z
zimoun wrote on 14 Sep 2021 13:59
Re: bug#24028: Linux-libre kernel does not build deterministically
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
86lf3ztljp.fsf@gmail.com
Hi,

On Fri, 09 Oct 2020 at 17:17, Maxim Cournoyer <maxim.cournoyer@gmail.com> wrote:
Toggle quote (24 lines)
> ludo@gnu.org (Ludovic Courtès) writes:
>
>> As of version 4.6.4, Linux-libre does not build reproducibly:
>>
>> $ guix challenge linux-libre
>> /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 contents differ:
>> local hash: 1py214sd42qcq8l429m4zf4aibp8rl68kpkrzqi1nn65vnbxsx11
>> https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4:
>> 19hsdsjy5i9nfc1g28s074znzimzhylgkdpwz435j301sn9pxxp9
>> $ wget -q -O -
>> https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4
>> | bunzip2 | guix archive -x t
>> $ diff -ur --no-dereference /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 /tmp/t
>> Binary files /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4/bzImage and /tmp/t/bzImage differ
>>
>> Apparently people are working on it:
>> <https://wiki.debian.org/SameKernel>.
>
> I just tested with linux-libre 5.8.10, and it still suffers from
> reproducibility problems, but only for one file:
>
> diff -r /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10{,-check}
> Binary files /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10/bzImage and /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10-check/bzImage differ

Still the same issue with 5.13.15.

diff -r --no-dereference /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15{,-check}
Binary files /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15/bzImage and /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15-check/bzImage differ


All the best,
simon
M
M
Maxim Cournoyer wrote on 21 Nov 2021 15:12
(name . zimoun)(address . zimon.toutoune@gmail.com)
87y25hbnsd.fsf@gmail.com
Hello,

zimoun <zimon.toutoune@gmail.com> writes:

Toggle quote (32 lines)
> Hi,
>
> On Fri, 09 Oct 2020 at 17:17, Maxim Cournoyer <maxim.cournoyer@gmail.com> wrote:
>> ludo@gnu.org (Ludovic Courtès) writes:
>>
>>> As of version 4.6.4, Linux-libre does not build reproducibly:
>>>
>>> $ guix challenge linux-libre
>>> /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 contents differ:
>>> local hash: 1py214sd42qcq8l429m4zf4aibp8rl68kpkrzqi1nn65vnbxsx11
>>> https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4:
>>> 19hsdsjy5i9nfc1g28s074znzimzhylgkdpwz435j301sn9pxxp9
>>> $ wget -q -O -
>>> https://hydra.gnu.org/nar/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4
>>> | bunzip2 | guix archive -x t
>>> $ diff -ur --no-dereference /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4 /tmp/t
>>> Binary files /gnu/store/wkdnd1dcgljr0jxmd3li8j0qsr2zwrci-linux-libre-4.6.4/bzImage and /tmp/t/bzImage differ
>>>
>>> Apparently people are working on it:
>>> <https://wiki.debian.org/SameKernel>.
>>
>> I just tested with linux-libre 5.8.10, and it still suffers from
>> reproducibility problems, but only for one file:
>>
>> diff -r /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10{,-check}
>> Binary files /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10/bzImage and /gnu/store/jc1dydmax5sdfljpi5mq5dhq9wdr92xy-linux-libre-5.8.10-check/bzImage differ
>
> Still the same issue with 5.13.15.
>
> diff -r --no-dereference /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15{,-check}
> Binary files /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15/bzImage and /gnu/store/y9r7physjpa23znb7r6rg38wpmxrkp0s-linux-libre-5.13.15-check/bzImage differ

Fixed in 01ea70a29c on core-updates-frozen, after taking hints from

Thanks,

Closing.

Maxim
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 24028@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 24028
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch