This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]