NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
16.66k stars 13.11k forks source link

Build failure: libuv (riscv64) #304666

Open theotheroracle opened 3 months ago

theotheroracle commented 3 months ago

Steps To Reproduce

Steps to reproduce the behavior:

  1. build github:NixOS/nixpkgs/19331e6aa5a84d0a65e711b832f93b37110ccf78#legacyPackages.riscv64-linux.libuvt

Build log

Additional context

Add any other context about the problem here.

Notify maintainers

@marsam @vcunat

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

» nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.8.2-zen2, NixOS, 24.05 (Uakari), 24.05.20240329.d8fe5e6`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.21.0`
 - nixpkgs: `/nix/store/cb1gs888vfqxawvc65q1dk6jzbayh3wz-source`

Add a :+1: reaction to issues you find important.

xzfc commented 2 months ago

I assume you are using qemu-user binfmt on x86_64 system to run riscv64 binaries?

  1. Tests udp_multicast_interface, udp_multicast_interface6, and udp_no_autobind are known to fail under QEMU.

    To disable them, a switch -DQEMU=ON should be used (ref). This switch affects only tests, not the library itself. Perhaps we need to add this switch to the nix expression.

  2. The test fork_threadpool_queue_work_simple is not among tests being disabled under QEMU flag. Perhaps, it is failing only under qemu-user, but not qemu-system? Needs to be investigated/reported to the upstream.

  3. I've tried to build this on a native RISC-V machine, not QEMU. None of these tests failed.

  4. However, I've got a new failure on a native machine:

    not ok 242 - spawn_exercise_sigchld_issue
    # timeout
    # Output from process `spawn_exercise_sigchld_issue`: (no output)

    This could be caused by slow hardware, or my system being overloaded by other processes, or different nixpkgs revision. Also needs to be investigated. Maybe we should add it to toDisable, like other tests that are timing out on slow machines.

theotheroracle commented 2 months ago

I assume you are using qemu-user binfmt on x86_64 system to run riscv64 binaries?

correct

romner-set commented 1 month ago

Not sure if this is related, but I'm getting the same failure when compiling on a native x86-64 7950X3D with nixpkgs.localSystem.gcc.arch = "znver4". Build log here, latest 24.05.