delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/11/23/05:19:23

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Tue, 23 Nov 2010 11:18:56 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: ioctl() on socket fd's take 3 seconds on 1.7.7
Message-ID: <20101123101856.GA18309@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <ibb083$e9c$1 AT dough DOT gmane DOT org> <20101115162242 DOT GF17405 AT calimero DOT vinschen DOT de> <4CE8046F DOT 2090106 AT arcor DOT de> <20101122131729 DOT GT18309 AT calimero DOT vinschen DOT de> <icejqh$3e3$1 AT dough DOT gmane DOT org>
MIME-Version: 1.0
In-Reply-To: <icejqh$3e3$1@dough.gmane.org>
User-Agent: Mutt/1.5.20 (2009-06-14)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT 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

On Nov 22 21:29, Jason Curl wrote:
> The actual delays are caused by SendARP() called from get_xp_ifs().
> Interestingly enough, it isn't always slow, only sometimes.
> [...]

First of all, thanks for looking deeper into this.

> And the interface that is failing: D4B7FEA9 = 169.254.183.212
> doesn't appear by a call to "ipconfig /all". I'm guessing that
> Windows is actually making a network request for this non-existent
> interface.
> 
> ./Windows/v5.0/Include/WinError.h:#define ERROR_BAD_NET_NAME    67L
> 
> ERROR_BAD_NET_NAME
> "The network name cannot be found. This error is returned on Windows
> Vista and later when an ARP reply to the SendARP request was not
> received. This error occurs if the destination IPv4 address could
> not be reached."
> 
> I'm not sure where this IP is currently coming from...

This autoconfig address is returned by GetAdapterAddresses so it has
been configured at one point, even if the interface is not visible.

Ok, so SendARP is kind of a problematic call.  As you can see from the
source code, it's only called to set the IFF_NOARP flag.  Probably
that's a bit over the top.  What about just disabling this code?


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

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