This is the mail archive of the cygwin-patches 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: [PATCH draft 0/6] Remove the fhandler_base_overlapped class


On 5/26/2019 11:10 AM, Ken Brown wrote:
> fhandler_pipe is currently the only class derived from
> fhandler_base_overlapped.  This patch series rewrites parts of
> fhandler_pipe so that it can be derived from fhandler_base instead.
> We can then simplify the code by removing fhandler_base_overlapped.
> 
> In particular, this gets rid of the peculiar situation in which a
> non-blocking write can return with I/O pending, leading to the
> ugliness in fhandler_base_overlapped::close.
> 
> I've marked these patches as drafts because I've undoubtedly
> overlooked some things.  Also, I haven't systematically done any
> regression tests.  I have, however, run all the sample pipe programs
> in Kerrisk's book "The Linux Programming Interface: Linux and UNIX
> System Programming Handbook".  I've also run emacs-X11, gdb, git,
> make, etc., so far without problems.

This isn't ready for prime time yet.  I've run into occasional errors like this 
when doing a parallel build of emacs (-j13 in this case):

make: INTERNAL: Exiting with 14 jobserver tokens available; should be 13!

This would seem to indicate problems with make's jobserver pipe.  I've already 
found two bugs in patch 4, but I'm still seeing this error once in a while.

I'll send a v2 if/when I find the problem.

Ken

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