Skip to content

0.22.9 --- pread, pwrite, preadv and pwritev - #67

Merged
Sunrisepeak merged 1 commit into
mainfrom
openkal-musl-0.22.9
Oct 29, 2026
Merged

Sunrisepeak merged 1 commit into
mainfrom
openkal-musl-0.22.9

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

openkal reads and writes a file at its position and has no transfer at an offset. The four positional calls answered ENOSYS, which no configure check sees because the functions link; LLVM reads every file through pread, and clangd built as an ok image could open none (probe Sunrisepeak/mcppls-clangd#11).

  • port/src/okm_syscall.c: do_transfer_at seeks to the offset, transfers, and seeks back, under the descriptor table's lock. A descriptor that is not a file answers ESPIPE.
  • musl/PATCHES.md: the one difference a caller can tell (a plain read in another thread between the two seeks).
  • examples/posix: pread and pwrite at an offset, and the position unchanged.

Co-authored-by: speak-agent 248744407+speak-agent@users.noreply.github.com

…, made of the position

Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
@Sunrisepeak
Sunrisepeak merged commit 16d0b53 into main Oct 29, 2026
10 checks passed
@Sunrisepeak
Sunrisepeak deleted the openkal-musl-0.22.9 branch October 29, 2026 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant