I'm adding 'force' flagged system calls to the kernel now to allow
blocking I/O or non-blocking I/O to be forced.
pread and pwrite happened to already have a pad argument that libc
always passes as 0, so no new system call will be required there.
I am going to convert that argument to a flags argument and add
O_F* 'force' defines.
preadv and pwritev will need new system calls.
I am adding similar MSG_F* 'force' flags for sendmsg and recvmsg.
If I don't get this committed tonight I'll get it committed tomorrow.
Everything is straightforward through the socket NBIO code needs a bit
of rewriting.
-Matt