delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2019/03/11/03:21:28

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:subject:to:references:from:message-id:date
:mime-version:in-reply-to:content-type
:content-transfer-encoding; q=dns; s=default; b=hwHfWC2PTGpxrW6+
mnBHXwqIbb5ERZ2OboAdZfGQPFiuOnnyT8LTQTX33BSl4KU11G2ewxIiMyyvLN91
4i+yKmOBbYe7LcoDK4gxX7+MZYyUyDyDIp7PaJOt7BaDExhjStGudHESTTQzm7br
2IoeEjiypgvyH6mleY+vjuNOuMU=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:subject:to:references:from:message-id:date
:mime-version:in-reply-to:content-type
:content-transfer-encoding; s=default; bh=ETKx/6OfTOajqkwXp6Pp6i
GntII=; b=Tnvu1hGhM53ebxwA6UbNRSsxP97bQLlA0xEsGvPpKDPdIcuHYGQyn8
j2XFYz/vYRU6wXnf5EHx67Hu/Sq9aCLQ2hUc/WE5uWpWcPsOu2eFtObIVfC4YZfa
hjT8541Wl5XHZymaAls4Om5D3RIG4ULhjoJ+Dt1Bew2N1x+pP+q/A=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Spam-SWARE-Status: No, score=-6.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GIT_PATCH_3 autolearn=ham version=3.3.1 spammy=HX-Languages-Length:2819, dissimilar, explain, H*UA:6.1
X-HELO: m0.truegem.net
Subject: Re: Patch request to qt 5.9.4 (Re: [ANNOUNCEMENT] Qt 5.9.4)
To: cygwin AT cygwin DOT com
References: <1439412702 DOT 1866573 DOT 1551653028041 DOT JavaMail DOT yahoo DOT ref AT mail DOT yahoo DOT co DOT jp> <1439412702 DOT 1866573 DOT 1551653028041 DOT JavaMail DOT yahoo AT mail DOT yahoo DOT co DOT jp> <0faa5fb55a0af4803fcdff786dba8be440355609 DOT camel AT cygwin DOT com> <2014394607 DOT 770377 DOT 1552264089735 DOT JavaMail DOT yahoo AT mail DOT yahoo DOT co DOT jp> <72f4ecd86329b97d1c3cc1b796bf9393d02228f0 DOT camel AT cygwin DOT com> <881759885 DOT 934635 DOT 1552275216926 DOT JavaMail DOT yahoo AT mail DOT yahoo DOT co DOT jp>
From: Mark Geisert <mark AT maxrnd DOT com>
Message-ID: <30cae96a-7c70-5634-85ce-3fe6b36a7d21@maxrnd.com>
Date: Mon, 11 Mar 2019 00:21:04 -0700
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0 SeaMonkey/2.46
MIME-Version: 1.0
In-Reply-To: <881759885.934635.1552275216926.JavaMail.yahoo@mail.yahoo.co.jp>

Tatsuro MATSUOKA wrote:
> ----- Original Message -----
>
>> From: Yaakov Selkowitz <yselkowitz
>> To: cygwin
>> Cc:
>> Date: 2019/3/11, Mon 09:53
>> Subject: Re: Patch request to qt 5.9.4 (Re: [ANNOUNCEMENT] Qt 5.9.4)
>>
>> On Mon, 2019-03-11 at 09:28 +0900, Tatsuro MATSUOKA wrote:
>>>  > On Mon, 2019-03-04 at 07:43 +0900, Tatsuro MATSUOKA wrote:
>>>  > >  I ask alpply a patch the below which enables to use qt terminal
>> on gnuplot
>>>  > for Cygwin.
>>>  > >  (cygQt5Network-5.dll is affected.)
>>>  > >
>>>  > >  ---
>> a/qtbase-opensource-src-5.9.4/src/network/socket/qlocalsocket_unix.cpp
>>>  > >  +++
>> b/qtbase-opensource-src-5.9.4/src/network/socket/qlocalsocket_unix.cpp
>>>  > >  @@ -239,7 +239,7 @@ void QLocalSocket::connectToServer(OpenM
>>>  > >      }
>>>  > >      // create the socket
>>>  > >  -    if (-1 == (d->connectingSocket = qt_safe_socket(PF_UNIX,
>> SOCK_STREAM, 0, O_NONBLOCK))) {
>>>  > >  +    if (-1 == (d->connectingSocket = qt_safe_socket(PF_UNIX,
>> SOCK_STREAM, 0))) {
>>>  > >          d->errorOccurred(UnsupportedSocketOperationError,
>> QLatin1String("QLocalSocket::connectToServer"));
>>>  > >          return;
>>>  > >
>>>  >
>>>  > It seems we keep going in circles on this point.  If there is a bug in
>>>  > O_NONBLOCK, then please either narrow it down to an STC, or provide a
>>>  > patch to Cygwin.
>>>
>>>  Very basic question. What is STC?
>>>  I googled but I cannot find what is it.
>>
>> https://cygwin.com/acronyms/#STC
>
>
> Sorry I cannot make STC due to lack of knowledge of QT.
> In stead, I explain what gnuplot do.
>
> On gnuplot for qt,
> plot is done by child process named gnuplot_qt.
>
> When gnuplot connect with gnuplot with
>   qt->socket.connectToServer(server);
>
>
> without the above patch ()
> qt_safe_socket(PF_UNIX, SOCK_STREAM, 0, O_NONBLOCK)))
> gnuplot cannot connect with gnuplot_qt.
>
> with the above patch ()
> qt_safe_socket(PF_UNIX, SOCK_STREAM, 0))
> gnuplot can connect with gnuplot_qt.
>
> Perhaps qt with O_NONBLOCK is some wrong with process connection.

Hi Tatsuro,
For the record, what Enrico supplied is what we'd call an STC, a Simple Test 
Case.  Unfortunately his STC dealt with select() on a named pipe.

Your gnuplot issue has to do with "Unix sockets", a form of IPC between 
processes.  Cygwin uses Windows named pipes to implement "Unix sockets" on 
Windows.  This means we are mapping Unix/Linux socket constructs onto a 
dissimilar feature of Windows, and there are many opportunities for mismatch.

Can you run your gnuplot under strace?  You would set up your environment as 
needed to reproduce the issue, then launch gnuplot as so:
     strace -o gnuplot.trace gnuplot
This will create a trace file of Cygwin syscalls and operations.  Let us know 
how big (how many lines) are in the trace file and we'll see what's next.

..mark


--
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019