alc: Stablize this driver and fix various porting overlooks
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 6 Aug 2012 12:15:15 +0000 (20:15 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Wed, 8 Aug 2012 03:20:55 +0000 (11:20 +0800)
commita0e18bfd77e762327b379dcd37bf9b545c792950
treec54ee47cbefa7f66202adcd63b6450108096966e
parente27e6728f653b70f5d41b5a3c332e9be4b3c434c
alc: Stablize this driver and fix various porting overlooks

- Use ifnet serializer to protect driver data.  This should fix the
  various panics that were observed on the network output path.
- Fix busdma setup.
- Always allocate the descriptor rings and status blocks at the lower
  4GB.  The original way will require the RX/TX bufs to be located at
  the lower 4GB, which is a great waste of bounce buffers, cpu cycles
  and memory bandwidth.
- Don't mess up M_PKTHDR on RX path.
- Allocate mbuf w/ MB_WAIT on initialization path.
- Enable MSI by default.
sys/dev/netif/alc/if_alc.c
sys/dev/netif/alc/if_alcvar.h