I found out that this behaviour was incorrect on Cosix, even though all relevant tests were succeeding. There are existing tests for checking this behaviour with poll(), but none yet for a blocking read() and recv(). Perhaps we'll want to add symmetric tests for write() and send() as well.
Verified by re-introducing the same bug into Cosix and confirming that the tests do fail.
I found out that this behaviour was incorrect on Cosix, even though all relevant tests were succeeding. There are existing tests for checking this behaviour with poll(), but none yet for a blocking read() and recv(). Perhaps we'll want to add symmetric tests for write() and send() as well.
Verified by re-introducing the same bug into Cosix and confirming that the tests do fail.