tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: netbsd-5 + wip/pdnsd + pthread = hang up
On Sat, Mar 21, 2009 at 10:43:14AM +0200, Aleksey Cheusov wrote:
> >> > ktrace -i: from daemon start to recieving SIGTERM and hang up.
> >>
> >> Any news? Is the problem in netbsd or pdnsd?
>
> > Can you use "ps axs" to see what the thread is waiting on?
>
> I sent you simple pdnsd config. Can you reproduce the problem?
>
> Before sending SIGTERM
> 1008 19529 1 3072 5 5 85 0 2784 2216 netio I- ?
> 0:00.07 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 4 5 85 0 2784 2216 socket I- ?
> 0:00.07 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 3 5 85 0 2784 2216 socket I- ?
> 0:00.07 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 2 5 42 0 2784 2216 - ZL- ?
> 0:00.07 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 1 5 85 0 2784 2216 sigwait I ?
> 0:00.07 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
>
> After SIGTERM
> 1008 19529 1 3072 5 5 85 0 2784 2224 netio I- ?
> 0:00.12 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 4 5 85 0 2784 2224 socket I- ?
> 0:00.12 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 3 5 85 0 2784 2224 socket I- ?
> 0:00.12 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 2 5 42 0 2784 2224 - ZL- ?
> 0:00.12 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
> 1008 19529 1 3072 1 5 85 0 2784 2224 fdclose D ?
> 0:00.12 /usr/pkg/sbin/pdnsd -d -p /var/run/pdnsd.pid
What you see is a selection of threads using the file descriptor that thread
1 is trying to close. It can't close the descriptor because there exist
active short-term references to it elsewhere in the system.
I would describe this as both a bug in the kernel, and a bug in the
application. I'll try to figure out what a good fix would be.
Home |
Main Index |
Thread Index |
Old Index