This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Cygwin 1.3.3: Win2K: select() returning EBADF (causes thrashing in Boa)


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?

Regards,
Phil

cygcheck.out

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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]