On Mon, Jun 04, 2007 at 08:57:16PM +0200, Roman Zippel wrote: > On Mon, 4 Jun 2007, Theodore Tso wrote: > > > Hmm, I'm not sure I would go that far. Per the POSIX specification, > > we support the optional BSD-style restartable system calls for signals > > which will avoid short reads; but this is only true if SA_RESTART is > > passed to sigaction(). Without SA_RESTART, we will indeed return > > short reads, as required by POSIX. > > > > I don't think Linus has said that short reads are always evil; I > > certainly can't remember him ever making that statement. Do you have > > a pointer to a LKML message where he's said that? > > That's the last discussion about signals and I/O I can remember: > http://www.ussg.iu.edu/hypermail/linux/kernel/0208.0/0188.html He said 'disk read', not 'read(2)'. I'd expect he means certain things like stat(2) and readdir(2) when they have to go to disk. read(2) explicitly lists EINTR as a valid result, and often folks use signals to interrupt read(2). The world certainly writes programs to expect short read(2). Joel -- "Gone to plant a weeping willow On the bank's green edge it will roll, roll, roll. Sing a lulaby beside the waters. Lovers come and go, the river roll, roll, rolls." Joel Becker Principal Software Developer Oracle E-mail: joel.becker@xxxxxxxxxx Phone: (650) 506-8127 - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html