ENOMEM on socket writes

Paul Mackerras (paulus@linuxcare.com.au)
Fri, 12 Jan 2001 12:13:59 +1100 (EST)


Using 2.4, and the prereleases since about early December or so, I
have been seeing rsync dying with an error "write: unable to allocate
memory". Rsync is writing on a socket which is set non-blocking and
the write is apparently returning ENOMEM.

Is this actually a new behaviour, or just something which was possible
all along but which has been made more likely by the recent VM
changes?

deal with constructively. Select will say that the socket is
writable, so there doesn't seem to be a good way of waiting until the
write has a chance of succeeding. About the only thing that I can see
to do is just to spin trying the write over and over - does anyone
have a better idea?

Paul.

-- 
Paul Mackerras, Open Source Research Fellow, Linuxcare, Inc.
+61 2 6262 8990 tel, +61 2 6262 8991 fax
paulus@linuxcare.com.au, http://www.linuxcare.com.au/
Linuxcare.  Support for the revolution.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/