httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <>
Subject Re: svn commit: r735093 - /httpd/httpd/trunk/server/mpm/winnt/child.c
Date Wed, 21 Jan 2009 17:30:11 GMT
Rainer Jung wrote:
> On 19.01.2009 19:48, Rainer Jung wrote:
>> On 19.01.2009 18:33, William A. Rowe, Jr. wrote:
>>> Rainer Jung wrote:
>>>> I built trunk on XP today. When trying to run it, I get a restart loop
>>>> for the child process, and the error log contains repetitions of:
>>>> [Sun Jan 18 19:20:43 2009] [notice] Child 4556: Starting thread to
>>>> listen on port 8000.
>>>> [Sun Jan 18 19:20:43 2009] [error] (OS 10038)Ein Vorgang bezog sich auf
>>>> ein Objekt, das kein Socket ist. : Child 4556: Encountered too many
>>>> AcceptEx faults accepting client connections. Possible causes: dynamic
>>>> address renewal, or incompatible VPN or firewall software.
>>> I'd love to know what leads into this WSAENOTSOCK ... failing to recycle
>>> the socket or the listener socket falling apart. Needs review, maybe
>>> some
>>> extra magic to log this distinction.
>>> The "falling back on 'none'" is going to be a problem till I finish that
>>> code this week. I'm actually attacking two problems, having each listen
>>> thread pay attention to up to 62 different sockets, and adding the
>>> required
>>> classic accept() logic. So... this listener may be accepting on both the
>>> classic listen logic and the AcceptEx logic on different listeners at
>>> the
>>> same time.
> When running with httpd -X, I can't observe the problem. Inspecting the
> structures indicates, that the problem might actually be the listen
> socket in AcceptEx (nlsd), not the accept socket.
> Could be, that there's something wrong with the code that copies the
> listen sockets from the main process to the child.

Exactly; one of the primary possibilities is that a well documented API,
WSADuplicateSocket does not behave for a given socket provider.

View raw message