Pr #1802 switched most code from `std::os::fd` to use `std::os::hermit::io` because of https://github.com/rust-lang/rust/issues/126198. Revert that back. Depends on https://github.com/rust-lang/rust/issues/126198 being fixed.