Opening of blocking FIFOs not reliable?

From: Teemu Koponen
Date: Fri Aug 12 2005 - 22:19:28 EST


Hi,

Opening a FIFO for WR_ONLY should release a previously blocked RD_ONLY open. I suspect this is not guaranteed on a heavily loaded Linux box.

Consider fs/fifo.c (of 2.6.13-rc6-git4) and its wait_for_partner() and wake_up_partner() functions. I think wait_for_partner()'s while loop never exits, *iff* the writer, after opening the FIFO, closes it before the reader gets scheduled. Shouldn't the writer's open() block until the reader's open() is done?

Teemu

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/