Date: Mon, 22 Jul 2002 00:24:31 -0700 From: Alfred Perlstein <bright@mu.org> To: Peter Wemm <peter@wemm.org> Cc: current@freebsd.org Subject: Re: Is it just me or has -current suddenly got massively unstable? Message-ID: <20020722072431.GZ77219@elvis.mu.org> In-Reply-To: <20020722071517.D0C733924@overcee.wemm.org> References: <20020722071517.D0C733924@overcee.wemm.org>
next in thread | previous in thread | raw e-mail | index | archive | help
* Peter Wemm <peter@wemm.org> [020722 00:16] wrote:
> It might be just me because I swapped an ISA 'si' card for a PCI version, but
> the problems I've been seeing are pretty spectacular. I'm regularly seeing
> the following panics:
>
> - selwakeup() taking fatal traps (always while running postfix/smtpd,
> presumably this is happening during the traditional 'select collision'
> window - the locking looks rather suspect there too). This killed my box
> 3 times today alone.
What's suspect about the locking?
> This is happening on this line:
>
> 1182 if (td == NULL) {
> 1183 mtx_unlock(&sellock);
> 1184 return;
> 1185 }
> 1186 >>>HERE>>> TAILQ_REMOVE(&td->td_selq, sip, si_thrlist);
> 1187 sip->si_thread = NULL;
> 1188 mtx_lock_spin(&sched_lock);
> 1189 if (td->td_wchan == (caddr_t)&selwait) {
> 1190 if (td->td_state == TDS_SLP)
>
> All of these panics have been at this identical location -it isn't random.
> I briefly went looking and I'm wondering if the locking is adequate here.
I was hoping it was, what problem do you see here? All the td->td_selq
accesses should be protected by the select mutex. Perhaps selwakeup()
is being called on an uninitialized selinfo structure? I guess adding
some sort of diagnostic checks for initialized selinfos might help.
Yes, I've been seeing some instability, but not of the magnitude you're
seeing. :)
--
-Alfred Perlstein [alfred@freebsd.org] [#bsdcode/efnet/irc.prison.net]
'Instead of asking why a piece of software is using "1970s technology,"
start asking why software is ignoring 30 years of accumulated wisdom.'
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020722072431.GZ77219>
