The expected behavior will be for the writer to block (unless open in non-blocking mode) - not to exit with an error. You can test this in the shell with "echo" and "cat". "text file busy" results after the writer tries to open the FIFO - it does not even get to the writing stage. I can confirm that with the C program i wrote that tries to open the FIFO with "open" system call and then returns errno 26 - "text file busy".