I remember this issue years ago. Basically, the libc read()/write() functions didn't loop until they finished reading the number of bytes specified. While that behavior may technically meet POSIX standards, it isn't standard behavior. Incomplete reads and writes normally only happen with special files, e.g. pipes and sockets. I don't remember what changes were merged, but it sounds like the solution was only partial. There should be a closed GitHub issue about this.

On Tue, Feb 6, 2024, 5:08 AM Michael Grunditz <michael.grunditz@gmail.com> wrote:
Hi

Is open() read() close() supposed to work? For me they doesn’t. It works sometimes but not all times. It also doesn’t read the file it just reads the first bytes or kbytes if large file.

fopen fread fclose is ok and stat.

Michael
_______________________________________________
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users