Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Fatal page fault in cbq_enqueue()



On Wed, Feb 08, 2017 at 11:09:55PM +1100, Paul Ripke wrote:
> On Fri, Jan 27, 2017 at 06:10:52PM +0000, Christos Zoulas wrote:
> > In article <20170127111545.GB9450@slave.private>,
> > Paul Ripke  <stix%stix.id.au@localhost> wrote:
> > >Still happening, although not as often. Maybe the hot weather helps...
> > >
> > >I've got a core this time, on amd64 7.0_STABLE as of 2016-10-12.
> > 
> > How about this? At least you'll not crash....
> > 
> > christos
> > 
> > Index: altq_classq.h
> > ===================================================================
> > RCS file: /cvsroot/src/sys/altq/altq_classq.h,v
> > retrieving revision 1.7
> > diff -u -u -r1.7 altq_classq.h
> > --- altq_classq.h	12 Oct 2006 19:59:08 -0000	1.7
> > +++ altq_classq.h	27 Jan 2017 18:10:12 -0000
> > @@ -108,9 +108,9 @@
> >  {
> >  	struct mbuf  *m, *m0;
> >  
> > -	if ((m = qtail(q)) == NULL)
> > +	if ((m = qtail(q)) == NULL || (m0 = m->m_nextpkt) == NULL)
> >  		return (NULL);
> > -	if ((m0 = m->m_nextpkt) != m)
> > +	if (m0 != m)
> >  		m->m_nextpkt = m0->m_nextpkt;
> >  	else
> >  		qtail(q) = NULL;
> 
> Indeed... Well, we'll see how it goes, I'm running with that now. I've
> had one crash since, so a couple of weeks might be enough to have some
> idea.

Pity. Crashed elsewhere. I think there's a definite race in altq somewhere.

Mar  3 10:45:30 slave /netbsd: panic: _rmc_wrr_dequeue_next
Mar  3 10:45:30 slave /netbsd: cpu0: Begin traceback...
Mar  3 10:45:30 slave /netbsd: vpanic() at netbsd:vpanic+0x13c
Mar  3 10:45:30 slave /netbsd: snprintf() at netbsd:snprintf
Mar  3 10:45:30 slave /netbsd: rmc_dequeue_next() at netbsd:rmc_dequeue_next+0x50f
Mar  3 10:45:30 slave /netbsd: cbq_dequeue() at netbsd:cbq_dequeue+0x27
Mar  3 10:45:30 slave /netbsd: tbr_dequeue() at netbsd:tbr_dequeue+0x72
Mar  3 10:45:30 slave /netbsd: sppp_dequeue() at netbsd:sppp_dequeue+0x111
Mar  3 10:45:30 slave /netbsd: pppoe_start() at netbsd:pppoe_start+0x30
Mar  3 10:45:30 slave /netbsd: tbr_timeout() at netbsd:tbr_timeout+0x4e
Mar  3 10:45:30 slave /netbsd: callout_softclock() at netbsd:callout_softclock+0x248
Mar  3 10:45:30 slave /netbsd: softint_dispatch() at netbsd:softint_dispatch+0x79
Mar  3 10:45:30 slave /netbsd: DDB lost frame for netbsd:Xsoftintr+0x4f, trying 0xfffffe804000bff0
Mar  3 10:45:30 slave /netbsd: Xsoftintr() at netbsd:Xsoftintr+0x4f

-- 
Paul Ripke
"Great minds discuss ideas, average minds discuss events, small minds
 discuss people."
-- Disputed: Often attributed to Eleanor Roosevelt. 1948.


Home | Main Index | Thread Index | Old Index