cvs commit: src/sys/dev/hatm if_hatm.c if_hatmvar.h [MPSAFE
network]
Harti Brandt
brandt at fokus.fraunhofer.de
Thu Nov 6 01:52:04 PST 2003
On Wed, 5 Nov 2003, Sam Leffler wrote:
SL>On Wednesday 05 November 2003 03:47 am, Hartmut Brandt wrote:
SL>> harti 2003/11/05 03:47:32 PST
SL>>
SL>> FreeBSD src repository
SL>>
SL>> Modified files:
SL>> sys/dev/hatm if_hatm.c if_hatmvar.h
SL>> Log:
SL>> Make the driver conditionally MPSAFE. MPSAFEty defaults to not-mpsafe
SL>> but can be enabled by setting hw.atm.hatmN.mpsafe in the kernel
SL>> environment to a non-zero value before loading the driver. When
SL>> the problems with network MPSAFEty have been sorted out this will
SL>> be removed and the driver will default to MPSAFE.
SL>
SL>I'm about to commit mods to make debug_mpsafenet globally visible so other
SL>parts of the system (to be committed) can use it too. Perhaps your stuff
SL>should reference it also?
The reason I did it this way is that I want to be able to set it
per-interface. As soon as the IP stack works with MPSAFE drivers I'm going
to remove this. I have a simulation system that has 3 ATM cards - one for
connection to the outside world runs IP, the other two interface only to
netgraph. I want to keep the first card non-mpsafe (obviously), but the
other two mpsafe. This works just great. After fixing a problem in ng_base
now the entire simulation path ATM-netgraph-ATM runs without giant on my
dual-CPU system. This setup allows me to work on fixing locking issues
while keeping the machine on-line.
Currently I set debug_mpsafenet to true, because the driver cannot
override it. For my use that's no problem, because I have not other
network driver that is MPSAFE in the system.
harti
--
harti brandt,
http://www.fokus.fraunhofer.de/research/cc/cats/employees/hartmut.brandt/private
brandt at fokus.fraunhofer.de, harti at freebsd.org
More information about the cvs-src
mailing list