cvs commit: src/sys/netgraph netgraph.h ng_base.c
glebius at FreeBSD.org
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:
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. 
- 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 
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
18.104.22.168 +41 -32 src/sys/netgraph/netgraph.h
22.214.171.124 +254 -238 src/sys/netgraph/ng_base.c
More information about the cvs-src