delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/09/20/11:33:03

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Date: Thu, 20 Sep 2001 11:32:53 -0400
From: Christopher Faylor <cgf AT redhat DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Cygwin 1.3.3: Win2K: select() returning EBADF (causes thrashing in Boa)
Message-ID: <20010920113253.C28377@redhat.com>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <009201c141e5$9c3c0560$d50b19ac AT LSIL DOT COM>
Mime-Version: 1.0
In-Reply-To: <009201c141e5$9c3c0560$d50b19ac@LSIL.COM>
User-Agent: Mutt/1.3.21i

On Thu, Sep 20, 2001 at 04:02:21PM +0100, Phil Dempster wrote:
>I've compiled boa (http//www.boa.org) under Cygwin and it seems to work
>(incidentally much better than it did with 1.3.2).
>
>However, the select() call in Boa's main loop continually fails with
>errno==EBADF.  Whilst this doesn't actually break it functionally, it does
>cause it to thrash taking up 99% CPU time.
>
>            if (select(OPEN_MAX, &block_read_fdset,
>                       &block_write_fdset, NULL,
>                       (request_block ? &req_timeout : NULL)) == -1) {
>                /* what is the appropriate thing to do here on EBADF */
>                if (errno == EINTR)
>                    continue;   /* while(1) */
>                else if (errno != EBADF) {
>                    log_error_mesg(__FILE__, __LINE__, "select");
>                    exit(errno);
>                }
>            }
>
>Thoughts?

The obvious question is why is boa sending a bad fd to select?

What thoughts were you expecting?  You obviously need to debug the code.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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