freebsd-dev/sys/netgraph
harti 9008e4e06b 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.
2003-11-05 10:32:21 +00:00
..
atm Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
bluetooth Update Bluetooth code. 2003-10-12 22:04:24 +00:00
netgraph.h Don't use "NULL" when "0" is really meant. 2002-08-22 00:30:03 +00:00
ng_async.c
ng_async.h
ng_base.c Replace the lock-less algorithm for the free item list with a more 2003-11-05 10:32:21 +00:00
ng_bpf.c
ng_bpf.h
ng_bridge.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_bridge.h
ng_cisco.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_cisco.h
ng_device.c Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
ng_device.h
ng_echo.c
ng_echo.h
ng_eiface.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_eiface.h
ng_etf.c
ng_etf.h
ng_ether.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_ether.h
ng_fec.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_fec.h Finally get around to committing Bill Paul's FEC netgraph nodes. 2002-10-29 19:12:44 +00:00
ng_frame_relay.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_frame_relay.h
ng_gif_demux.c Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
ng_gif_demux.h Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
ng_gif.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_gif.h
ng_hole.c
ng_hole.h
ng_iface.c Replace the if_name and if_unit members of struct ifnet with new members 2003-10-31 18:32:15 +00:00
ng_iface.h Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
ng_ip_input.c Update netisr handling; Each SWI now registers its queue, and all queue 2003-03-04 23:19:55 +00:00
ng_ip_input.h
ng_ksocket.c Add Protocol Independent Multicast protocol. 2003-08-20 22:11:58 +00:00
ng_ksocket.h
ng_l2tp.c Don't use ovbcopy(). 2003-04-04 12:12:34 +00:00
ng_l2tp.h New L2TP netgraph node type. 2002-08-20 21:59:50 +00:00
ng_lmi.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_lmi.h
ng_message.h Remove a gcc-ism: declaring a variable array at the end of a structure 2003-10-22 07:35:05 +00:00
ng_mppc.c Take the rc4 code out of ng_mppc module so we don't fail to load when 2003-02-05 19:11:11 +00:00
ng_mppc.h
ng_one2many.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_one2many.h
ng_parse.c Use intptr_t to fix various sizeof(int) != sizeof(void *) warnings. 2002-11-08 21:13:18 +00:00
ng_parse.h
ng_ppp.c Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
ng_ppp.h
ng_pppoe.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_pppoe.h use __packed. 2002-09-23 18:54:32 +00:00
ng_pptpgre.c Don't use ovbcopy(). 2003-04-04 12:12:34 +00:00
ng_pptpgre.h
ng_rfc1490.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_rfc1490.h
ng_sample.c
ng_sample.h
ng_socket.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_socket.h
ng_socketvar.h
ng_source.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_source.h Add the netgraph 'source' module. 2002-10-31 23:03:09 +00:00
ng_split.c
ng_split.h
ng_tee.c Allow the caller to get an erro direclty if we sent the packet immediatly. 2003-07-03 22:09:47 +00:00
ng_tee.h
ng_tty.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_tty.h
ng_UI.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_UI.h
ng_vjc.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_vjc.h
NOTES