Annotation of wikisrc/projects/project/mpsafe_net_driver.mdwn, revision 1.1
1.1 ! maya 1: [[!template id=project
! 2:
! 3: title="Making a network driver MPSAFE"
! 4:
! 5: contact="""
! 6: [tech-net](mailto:tech-net@NetBSD.org)
! 7: """
! 8:
! 9: category="kernel"
! 10: difficulty="easy"
! 11: duration="1 month"
! 12:
! 13: description="""
! 14:
! 15: Access to some hardware registers and other things can only be done by one CPU at a time.
! 16: An easy way to do this is to make the entire network stack runs with a single lock held, so operations only take place on one core.
! 17: This is inefficient, if you ever want to use more than one core, for faster performing cards.
! 18:
! 19: Adapting old drivers to be able to run with the rest of the network stack not having this lock will improve NetBSD networking.
! 20: A large number of drivers must be adapted, and some of them can be emulated from virtual machines too, some examples:
! 21:
! 22: * [RealTek ethernet](http://netbsd.gw.com/cgi-bin/man-cgi?re++NetBSD-current) (QEMU)
! 23: * [Atheros ethernet](http://netbsd.gw.com/cgi-bin/man-cgi?alc++NetBSD-current)
! 24:
! 25: <!-- XXX list more -->
! 26: """
! 27:
! 28: ]]
! 29:
! 30: [[!tag gsoc]]
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb