busdma fixes

Sepherosa Ziehau sepherosa at gmail.com
Thu Jan 29 04:04:50 PST 2009

Hi all,

I have done following busdma fixes/enhancement:
- Obey alignment constraints
- Add bounce page support in bus_dmamap_load_mbuf
- Add bounce page support in bus_dmamap_load_uio

Wired NIC drivers using busdma(9) (except vge(4), ale(4) and age(4))
are patched and well tested (by forcing bouncing to lower 512MB).
Wireless NIC drivers' correction is under way, but even without
correction they should just work as expected on our i386 platform (you
may waste some bounce pages due to mis-configured alignment
constraints :).  em(4) is relative clean, however, I plan to bring in
newer em(4) driver from Intel, so no work is done on it so far.

I have run it on all of my boxes ever since I started to work on it,
should be safe to test, so I call for testing if you have spare boxes
that are not involved in release work and is running HEAD.  Any
reviewing is welcome too.

You could pull it from:
busdma branch

gitweb of the above branch:

I plan to push it once 2.2 is branched.  The further plan is to
convert rest of the NIC drivers to use busdma(4) during 2.3 time
frame, so we will not be in trouble once our amd64 is ready to go.

Best Regards,

Live Free or Die

More information about the Submit mailing list