cvs commit: src/sys/netgraph ng_base.c

Hartmut Brandt harti at FreeBSD.org
Wed Nov 5 02:32:22 PST 2003


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


More information about the cvs-src mailing list