summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdlib
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2006-10-15 23:42:56 +0000
committerscottl <scottl@FreeBSD.org>2006-10-15 23:42:56 +0000
commitc4037be3791d0f3c0e68b184957eb65bdfae4362 (patch)
treee97a69d6e0f7b1cbca93b466a8e22b680b6ed8b0 /lib/libc/stdlib
parent57c8475ce7b25f1fa8bc4b9500be6e1ad08150b7 (diff)
downloadFreeBSD-src-c4037be3791d0f3c0e68b184957eb65bdfae4362.zip
FreeBSD-src-c4037be3791d0f3c0e68b184957eb65bdfae4362.tar.gz
Overhaul the transmit and dma paths:
- Use bus_dmamap_load_mbuf_sg() to eliminate the need for the callback and all of the extra bookkeeping associated with it. - Eliminate the bce_dmamap_arg structure and streamline the memory allocation routines to not need it. This does change some of the debugging messages. - Refactor the loop that fills the buffer descriptor so that it can be done with a single set of logic in a single loop instead of two sets of logic. - Eliminate the need to cache and pass descriptor indexes between the start loop and the encap function. - Change the start loop to always check the ifnet sendq for more work. This significantly helps the driver withstand large UDP workloads, though it's still not perfect. I suspect the remaining work lies with handling the OACTIVE flag, and also in possibly streamlining the interrupt handler some. It is, however, nearly on par with the other popular gigabit drivers in terms of stability now.
Diffstat (limited to 'lib/libc/stdlib')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud