On Jun 04, 2007 06:20 -0400, David H. Lynch Jr. wrote: > The net result is that implimentation would be simpler if I could > just read/write, the amount of data that can be done with the least > amount of work, even if that is less than was requested. > > If I receive a request to read 512 bytes, and I return that I have read > 486, is either the OS, libc, or something else going to treat that as an > error, or are they coming back for the rest in a subsequent call ? > > I though I recalled that read()/write() returning a cound less than > requested is not an error. It is not strictly an error to read/write less than the requested amount, but you will find that a lot of applications don't handle this correctly. They will assume that if the amount read/written is != amount requested that this is an error. Of course the opposite is also true - some applications assume that the amount requested == amount read/written and don't even check whether that is actually the case or not. Cheers, Andreas -- Andreas Dilger Principal Software Engineer Cluster File Systems, Inc. - 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