Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Sep 2000 01:35:21 -0700
From:      Alfred Perlstein <bright@wintelcom.net>
To:        Roman Shterenzon <roman@harmonic.co.il>
Cc:        freebsd-stable@FreeBSD.ORG
Subject:   Re: pthreads bug?
Message-ID:  <20000929013521.C27736@fw.wintelcom.net>
In-Reply-To: <970215688.39d451088fbef@webmail.harmonic.co.il>; from roman@harmonic.co.il on Fri, Sep 29, 2000 at 10:21:28AM %2B0200
References:  <970215688.39d451088fbef@webmail.harmonic.co.il>

next in thread | previous in thread | raw e-mail | index | archive | help
* Roman Shterenzon <roman@harmonic.co.il> [000929 01:23] wrote:
> Hello,
> I noticed some strange behavior in pthreads applications,
> close on socket which is in accept() will be blocked untill there's a connection
> to port and accept returns.
> It's observed on 4.0 - 4.1-STABLE, perhaps 4.1.1-STABLE as well, but I didn't 
> try it. I don't have 3.5.1-STABLE system to test it there.
> It affects, for example, openldap - start it , then kill -15 it.
> It won't die (and it should). Now, try to telnet localhost 389 ; now it died.
> The same behavior is a program we're writing right now, it's very annoying, in
> fact we don't know how to deal with it. It works on solaris and linux.
> btw, linux doesn't dump core on threaded application, how one's supposed to
> debug it?

No clue on that one. :(

> I attach example program, which, when receives SIGUSR1 should close the socket,
> but, in fact gets blocked in the close() function.
> Obviously it's waiting to acquire some lock.
> Does anyone have an idea?

Yes, I have an idea and an idea how to fix it, I'm wondering what
the thread in accept() sees after this happens?

what is the errno from accept?

-- 
-Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
"I have the heart of a child; I keep it in a jar on my desk."


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000929013521.C27736>