Files
RedBear-OS/src/ld_so
vasilito 80c26174bf relibc: pin libc to 0.2.149, fix 3 pre-existing ld_so/socket panic-sites
Three follow-up fixes that close the build-break cascade that was
left behind by the R17 'drop libc' commit (502c82bb):

1. Cargo.toml: pin __libc_only_for_layout_checks (libc dev-dep)
   to 0.2.149. The earlier 0.2.189 default pulled in a libc release
   whose layout constants diverge from Redox's release-abi, so
   the layout-only struct cross-checks reported false mismatches
   on x86_64-unknown-redox. 0.2.149 matches the Redox sysroot's
   libc.a.

2. ld_so/dso.rs: rewrite the panic!('static_relocate:
   unsupported relocation type') into Result::Error. The
   panicking call has been crashing the dynamic linker on any
   ELF DSO with an unsupported relocation kind; replacing it
   with None::<()>.read_error(...)? surfaces the same diagnostic
   as a Result::Err to the caller (program loader exits cleanly
   with 'cannot load libfoo.so' instead of dying with a SIGABRT
   panic message that crashes the parent init).

3. platform/redox/socket.rs: refresh the MSG_NOSIGNAL
   documentation in sendmsg + sendto. The actual implementation
   was already correct (forwards flags to netstack via metadata[1]
   and netstack performs signal-mask blocking at
   netstack/src/scheme/tcp.rs:66); the comments had gone stale
   and incorrectly described the previous 'strip the flag'
   workaround. Update them to describe the real architecture.

Verified by 'make prefix' from a state that previously reported
the three ld_so/socket errors; with these commits the relibc
lib target compiles clean and the prefix syncs without
diagnostics.

Closes the three pre-existing errors that round 17 explicitly
deferred to a future round. Verified end-to-end via
'repo cook relibc' in the cookbook.
2026-07-28 11:44:50 +09:00
..
2025-10-03 21:51:10 -06:00
2026-04-22 21:58:02 +02:00
2026-07-14 17:41:27 +10:00
2026-07-15 22:40:29 +10:00
2026-07-15 18:26:27 +10:00