3e1b0c31a1
the ni_dpccountlock member is an ndis_kspin_lock, not an ndis_spin_lock (the latter is too big). Run if_ndis.c:ndis_tick() via taskqueue_schedule(). Also run ndis_start() via taskqueue in certain circumstances. Using these tweaks, I can now get the Broadcom BCM5701 NDIS driver to load and run. Unfortunately, the version I have seems to suffer from the same bug as the SMC 83820 driver, which is that it creates a spinlock during its DriverEntry() routine. I'm still debating the right way to deal with this. |
||
---|---|---|
.. | ||
freebsd32 | ||
ia32 | ||
linprocfs | ||
linux | ||
ndis | ||
netbsd | ||
pecoff | ||
svr4 |