cvs commit: src/sys/netgraph netgraph.h ng_base.c

Gleb Smirnoff glebius at
Fri Nov 25 14:23:28 GMT 2005

glebius     2005-11-25 14:23:28 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_6)
    sys/netgraph         netgraph.h ng_base.c 
  Sync with HEAD, merging the following:
  revision 1.117
  date: 2005/11/02 15:23:47;  author: glebius;  state: Exp;  lines: +47 -8
  Fix two races which happen when netgraph is restructuring:
    - Introduce ng_topo_mtx, a mutex to protect topology changes.
    - In ng_destroy_node() protect with ng_topo_mtx the process
      of checking and pointing at ng_deadnode. [1]
    - In ng_con_part2() check that our peer is not a ng_deadnode,
      and protect the check with ng_topo_mtx.
    - Add KASSERTs to ng_acquire_read/write, to make more
      understandible synopsis in case if called on ng_deadnode.
  Reported by:    Roselyn Lee [1]
  revision 1.116
  date: 2005/11/02 14:27:24;  author: glebius;  state: Exp;  lines: +106 -121
  Rework the ng_item queueing on nodes:
    - Introduce a new flags NGQF_QREADER and NGQF_QWRITER,
      which tell how the item should be actually applied,
      overriding NGQF_READER/NGQF_WRITER flags.
    - Do not differ between pending reader or writer. Use only
      one flag that is raised, when there are pending items.
    - Schedule netgraph ISR in ng_queue_rw(), so that callers
      do not need to do this job.
    - Fix several comments.
  Submitted by:   julian
  As well as some lesser changes: ng_base.c 1.114, 1.113, 1.107, 1.118.
  Revision   Changes    Path   +41 -32    src/sys/netgraph/netgraph.h  +254 -238  src/sys/netgraph/ng_base.c

More information about the cvs-src mailing list