Sv: Sv: Problems with native Unix domain sockets on Win 10/2019
Ken Brown
kbrown@cornell.edu
Wed Mar 17 15:47:10 GMT 2021
On 3/17/2021 8:47 AM, sten.kristian.ivarsson@gmail.com wrote:
> [Snip]
>>>> Hi all
>>>>
>>>> Does anyone know the status of these fixes ?
>>>>
>>>> I saw an announcement for cygwin-3.2.0-0.1 that seemed to contain
>>>> some AF_UNIX-related fixes but I fail to find out where that
>>>> distribution exists (if it is supposed to be publicly accessible?),
>>>> but I tried out the
>>>> 2021-03-01 snapshot and perhaps they are similar ?
>>
>> You can install cygwin-3.2.0-0.1 in the usual way, through Cygwin's setup
>> program. Since it's a test release, you'll have to explicitly select that
>> release; setup won't just offer it to you.
>
> Ahh thanks, it took a while before I noticed that Text-checkbox ;-)
>
> See more below
>
>>>> We bumped into some AF_UNIX-related issues when trying the 2021-03-01
>>>> -snapshot though. It might be some flaws in our code base but the
>>>> same code works in quite a few Linux-distros
>>>>
>>>> We're more than willing to help out with testing this and/or trying
>>>> to narrow down any possible cygwin issues, but first we'd be glad if
>>>> someone could give us some kind of status report of this (so no one
>>>> is doing any unnecessary work)
>>>>
>>>>
>>>> Best regards,
>>>> Kristian
>>>>
>>>> p.s.
>>>> I tried to build the topic/af_unix -branch according to the FAQ,
>>>> but there was some issues
>>
>> I'm still in the middle of some things on that branch, and I haven't had
>> much time to work on it recently. I hope to get back to it very soon. In
>> order to build it, you need to add -D__WITH_AF_UNIX to CXXFLAGS.
>
> Is this when building newlib-cygwin ?
It's for building the topic/af_unix branch of the newlib-cygwin repo. If you
try to build the master branch with that flag, it should still build, but the
resulting DLL will be missing a lot of the AF_UNIX functionality.
> I discovered now that I had wrong
> MinGW installed and apparently other things are missing as well
>
> See more below
>
>> In order to test it, you need
>>
>> #undef AF_UNIX
>> #define AF_UNIX 31
>>
>> after including <sys/socket.h>
>>
>> Ken
>
>
> The issues we're experiencing is that messages are lost during heavy load.
> We essentially do have one thread writing a bunch of messages with a fixed
> buffer chunk size and one thread consuming and sometimes messages disappear
> or at least end up in the wrong order. When playing around with the size of
> the buffer (we sometimes get -1 but no errno) from write and/or receive
>
> Another observation is that for smaller number of, it is faster than named
> pipes but the more messages that are written/consumed the performance
> derogates a in the end throughput is getting exponentially slower
>
> Hopefully, this is a defect in our code base, but I will try to narrow it
> down with and try to reproduce the behaviour and I will then possibly make
> another issue at this mailing list
A reproducible test case would be good.
Thanks.
Ken
More information about the Cygwin
mailing list