cygrunsrv + sshd + rsync = 20 times too slow -- throttled?

Ken Brown kbrown@cornell.edu
Fri Sep 3 20:05:45 GMT 2021


On 9/3/2021 3:54 PM, Corinna Vinschen wrote:
> On Sep  3 15:00, Ken Brown wrote:
>> On 9/3/2021 5:12 AM, Corinna Vinschen wrote:
>>> I pushed my stuff to the topic/pipe branch split into hopefully useful
>>> chunks.  Kick me if anything is wrong or not working.
>>
>> Some of the bugs you fixed in the pipe code exist in the fifo code also.  I
>> started going through them and fixing them, but then I realized that
>> fhandler_pipe::raw_write and fhandler_fifo::raw_write are identical.  For
>> ease of maintenance, I'm thinking we should have a single function, say
>> fhandler_base::raw_write_pipe or fhandler_base::raw_write_pipe_fifo, which
>> is called by both of them.
>>
>> WDYT?
> 
> Returning to fhandler_base_overlapped?  :)

Touché.

> No, seriously, the cleanest way is probably to implement a parent class
> for fhandler_pipe and fhandler_fifo, derived from fhandler_base, and
> just collect the common code there.  For a start it could simply provide
> raw_write and nothing else.  fhandler_pipe_fifo, perhaps?

Sounds good.  Thanks.  Since the new class has only raw_write for now, I think I 
could just define that function in fhandler_pipe.cc rather than a new file 
fhandler_pipe_fifo.cc.  But I could also do the latter if you prefer.

Ken


More information about the Cygwin-developers mailing list