!xmLtiCaAJxfhURjrXl:matrix.org

NixOS RISC-V

237 Members
NixOS on RISC-V https://wiki.nixos.org/wiki/RISC-V https://pad.lassul.us/NixOS-riscv64-linux https://github.com/orgs/NixOS/teams/risc-v69 Servers

Load older messages


SenderMessageTime
31 Mar 2024
@alex:tunstall.xyzAlex I don't know, I never use dmesg 20:58:55
@hive:the-apothecary.clubDr. Wormyeah on the system that ran the build21:00:23
@hive:the-apothecary.clubDr. Wormto be fair i don't really know what i'm looking for21:00:29
@hive:the-apothecary.clubDr. Wormi skimmed the logs and tried to / search for SEG or FAULT but i couldn't find anything21:00:48
@alex:tunstall.xyzAlex

Example:

ghc_worker[772846]: unhandled signal 11 code 0x1 at 0x0000004e3584b582
CPU: 2 PID: 772846 Comm: ghc_worker Not tainted 6.5.0 #1-NixOS
Hardware name: StarFive VisionFive 2 v1.3B (DT)
epc : 0000004e3584b582 ra : 0000003ff3e06900 sp : 00000004e3ffa730
 gp : 000000000006ea80 tp : 00000004e3fff8e0 t0 : 0000000000004000
 t1 : 0000003ff3e00628 t2 : 0000003ff6f86598 s0 : 00000004f148d652
 s1 : 0000003fedb8afd8 a0 : 0000000000000000 a1 : 0000003fed8dd038
 a2 : 0000000000000002 a3 : 0000000000000002 a4 : 0000000000000032
 a5 : 09e1854e3584b583 a6 : 0000000000000000 a7 : 0000003ff7ffdd50
 s2 : 00000004f311b9f8 s3 : 00000004f16d93c8 s4 : 0000003fed8dc5e0
 s5 : 00000004f31140c0 s6 : 00000004f148d638 s7 : 00000004f36d2870
 s8 : 00000004f2ce1000 s9 : 00000000000003bd s10: 0000003fedb59058
 s11: 00000004f31140c0 t3 : 0000003fed2f0514 t4 : 0000000000000001
 t5 : 0000003fed9c6e2a t6 : 000000000000002e
status: 8000000200006020 badaddr: 0000004e3584b582 cause: 000000000000000c
21:01:11
@alex:tunstall.xyzAlexIn case you're not familiar: a segfault (short for segmentation fault) is what happens when a process tries to access memory that it isn't supposed to.21:02:51
@hive:the-apothecary.clubDr. Wormcouldn't find "unhandled" anywhere21:02:52
@alex:tunstall.xyzAlex

How odd. It probably wouldn't be very useful to you anyway, since they're quite low-level details.

Just in case, maybe try nix store verify --all --no-trust?

21:03:51
@alex:tunstall.xyzAlex If nix store verify doesn't find any corrupted store paths, then it's definitely a bug in the program, the toolchain that produced the program, or the emulator emulating the platform the program was built for. 21:05:07
@hive:the-apothecary.clubDr. Wormfair21:05:19
@hive:the-apothecary.clubDr. Wormthe verify command finished with no errors so22:01:30
@hive:the-apothecary.clubDr. Wormprolly not on my end22:01:39
@alex:tunstall.xyzAlex

Until it's fixed, you can add an overlay to disable the checkPhase.
Something like this ought to work:

diffutils = super.diffutils.overrideAttrs (old: {
  doCheck = false;
});
22:09:21
@hive:the-apothecary.clubDr. Wormstill waiting for the build to segfault lol22:10:00
@hive:the-apothecary.clubDr. Worm https://github.com/NixOS/nixpkgs/pull/300571 22:22:12
@hive:the-apothecary.clubDr. Wormok the build segfaulted as expected, but unfortunately still no output in journalctl -ekf22:23:49
1 Apr 2024
@hive:the-apothecary.clubDr. Wormugh same issue with gnugrep after 2 hours02:24:21
@hive:the-apothecary.clubDr. Wormthis is so frustrating02:24:23
@alex:tunstall.xyzAlex
In reply to @hive:the-apothecary.club
ugh same issue with gnugrep after 2 hours
It really sounds like there's something wrong with your system/emulator.
(diffutils builds fine for me.)
05:49:47
@hive:the-apothecary.clubDr. Wormi don't know what that would be ?18:36:15
@hive:the-apothecary.clubDr. Wormi wrote this script to push all packages of a specific architecture to a cachix cache23:55:53
@hive:the-apothecary.clubDr. Worm
for path in (nix path-info --all)
  set deriver (nix-store --query --deriver $path)
  if test $deriver != "unknown-deriver"
    echo "Checking $path..."
    echo "Deriver: $deriver"
    set system (nix derivation show "$deriver"^'*' | grep "\"system\":")
    echo "System: $system"
    if string match -q "*\"system\": \"riscv64-linux\"" $system
      echo "Pushing $path to riscv64-ghc-cache..."
      cachix push riscv64-ghc-cache $path
      echo "Done pushing $path to riscv64-ghc-cache."
    else
      echo "$path is not built for riscv64-linux."
    end
  end
end
23:55:56
2 Apr 2024
@hive:the-apothecary.clubDr. Worm
In reply to @alex:tunstall.xyz
It really sounds like there's something wrong with your system/emulator.
(diffutils builds fine for me.)
tried again on a seperate machine, build failed
05:57:29
@hive:the-apothecary.clubDr. WormDont think its just on my end05:58:22
@hive:the-apothecary.clubDr. Wormis there any further information or tests i should provide ?06:20:07
@hive:the-apothecary.clubDr. Worm* is there any further information or test results i should provide ?06:20:12
@alex:tunstall.xyzAlex

Given that you can reproduce on multiple x86 machines, it looks like:

native riscv => ok
emulated riscv => failure

I'm running the build emulated locally to be extra sure of the above.

I'm not really sure how Nixpkgs handles fixes for emulator-only issues.
(It could also just be that my RISC-V hardware is more forgiving than QEMU of non-standard behaviour?)

06:24:56
@hive:the-apothecary.clubDr. Wormhm possibly06:25:26
@hive:the-apothecary.clubDr. Wormwhat riscv device are you building on ?06:28:02
@alex:tunstall.xyzAlexStarFive VisionFive 206:28:50

Show newer messages


Back to Room ListRoom Version: 10