2026-09-02 - (/loop) Bulk port batch 7: scatter/gather, sync, and the ones refused instead

documented   714 needed, 374 missing   ->   715 needed, 366 missing

Nine implemented, five refused. The refusals are the more interesting half.

In

readv, writev, preadv, pwritev, creat, fsync, fdatasync, getpagesize, madvise - all in orbistoun-fs/src/posix.rs, beside the file calls they belong with, with delegation rows in orbistoun-posix.

Three details worth writing down:

getpagesize answers GUEST_PAGE_SIZE rather than the host's page size: a guest rounding an allocation must get the number this emulator's mapper will actually use.

madvise is the rare case where doing nothing is the specification - POSIX says the advice is not binding and an implementation may ignore it - so it answers success without acting, and the comment says which of those two things it is.

Refused, and why each

State

clippy --tests clean, fmt clean, orbistoun-fs and orbistoun-posix tests pass (including the three delegation guards, which are self-adjusting and caught nothing this time because the arities were checked first), identity scan clean, nothing committed.

Next: the remaining ~250 POSIX names, then getsockopt/setsockopt as their own batch. The structural piece after that is the TitleOwn loader, which is unbuilt code rather than an unknown.