This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: 1.7.8: write fails with EAGAIN
On Thu, Mar 10, 2011 at 04:11:41PM -0500, Christopher Faylor wrote:
>On Thu, Mar 10, 2011 at 09:11:52PM +0100, Robert Wruck wrote:
>>Hi,
>>
>>tested with cvs HEAD:
>>
>>> Just terminating the loop after write_overlapped_fallback is not enough.
>>> When the size to write exceeds MAX_OVERLAPPED_WRITE_LEN and WriteFile
>>> fails for MAX_OVERLAPPED_WRITE_LEN, write() will always return 0.
>>
>>Now any write with length > MAX_OVERLAPPED_WRITE_LEN fails with -1 /
>>EFBIG (on the machine that has the WriteFile limitation).
>
>How about if you try a snapshot rather than your own home-built version?
I've just run your test script a number of times and saw a failure a couple
of times. It's a race condition that is fixable.
The irritating thing that I noticed is that, despite returning an error,
WriteFile nevertheless still writes 64K of the data. That's pretty
annoying and is something that I have to fix.
cgf
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple