Date: Wed, 5 Nov 2003 02:32:21 -0800 (PST) From: Hartmut Brandt <harti@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/netgraph ng_base.c Message-ID: <200311051032.hA5AWLtd050681@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
harti 2003/11/05 02:32:21 PST
FreeBSD src repository
Modified files:
sys/netgraph ng_base.c
Log:
Replace the lock-less algorithm for the free item list with a more
conservative lock. The problem with the lock-less algorithm is that
it suffers from the ABA problem. Running an application with funnels
a couple of 100kpkts/s through the netgraph system on a dual CPU system
with MPSAFE drivers will panic almost immediatly with the old algorithm.
It may be possible to eliminate the contention between threads that insert
free items into the list and those that get free items by using the
Michael/Scott queue algorithm that has two locks.
Revision Changes Path
1.71 +36 -64 src/sys/netgraph/ng_base.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311051032.hA5AWLtd050681>
