kern/172166: Deadlock in the networking code, possible due to a bug in the SCHED_ULE

Eugene Grosbein egrosbein at rdtc.ru
Tue Oct 2 08:00:27 UTC 2012


The following reply was made to PR kern/172166; it has been noted by GNATS.

From: Eugene Grosbein <egrosbein at rdtc.ru>
To: Alexander Motin <mav at FreeBSD.org>
Cc: bug-followup at FreeBSD.org, eugen at eg.sd.rdtc.ru,
        Andriy Gapon <avg at FreeBSD.org>
Subject: Re: kern/172166: Deadlock in the networking code, possible due to
 a bug in the SCHED_ULE
Date: Tue, 02 Oct 2012 14:59:31 +0700

 02.10.2012 14:53, Alexander Motin ÐÉÛÅÔ:
 > On 02.10.2012 10:48, Eugene Grosbein wrote:
 >> 02.10.2012 13:58, Alexander Motin ÐÉÛÅÔ:
 >>> About rw_lock priority propagation locking(9) tells:
 >>> The rw_lock locks have priority propagation like mutexes, but priority
 >>> can be propagated only to an exclusive holder.  This limitation comes
 >>> from the fact that shared owners are anonymous.
 >>>
 >>> What's about idle stealing threshold, it was fixed in HEAD at r239194,
 >>> but wasn't merged yet. It should be trivial to merge it.
 >>
 >> Would it fix my problem with 6-CPU box?
 >> Your commit log talks about "8 or more cores".
 > 
 > Hmm. Then I see no reason why threads were not stolen, unless they are 
 > bound to specific CPU. Check `sysctl kern.sched.steal_thresh` output to 
 > be sure.
 
 All NIC's threads and dummynet are bound in my boxes.
 igb(4) in RELENG_8 bounds its threads by default in very wrong way,
 so I rebound them. dummynet(8) in RELENG_8 goes wild under severe load
 unless bound to single or two cores.
 
 kern.sched.steal_thresh: 2


More information about the freebsd-bugs mailing list