File:  [NetBSD Developer Wiki] / wikisrc / projects / project / mpsafe_net_driver.mdwn
Revision 1.3: download - view: text, annotated - select for diffs
Tue Mar 1 10:38:49 2022 UTC (3 months, 3 weeks ago) by martin
Branches: MAIN
CVS tags: HEAD
Adapt open gsoc project suggestion to new gsoc rules, mark as 175/350h

[[!template id=project

title="Making a network driver MPSAFE (175h)"

contact="""
[tech-net](mailto:tech-net@NetBSD.org)
"""

category="kernel"
difficulty="easy"
duration="175h"

description="""

Access to some hardware registers and other things can only be done by one CPU at a time.  
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.  
This is inefficient, if you ever want to use more than one core, for faster performing cards.

Adapting old drivers to be able to run with the rest of the network stack not having this lock will improve NetBSD networking.  
A large number of drivers must be adapted, and some of them can be emulated from virtual machines too, some examples:  

* RealTek ethernet [[!template id=man name="re" section="4"]] (QEMU)
* Atheros ethernet [[!template id=man name="alc" section="4"]]

When applying for this project, please note which driver you would like
to work on.
<!-- XXX list more -->
"""

]]

[[!tag gsoc]]
[[!tag gsoc175h]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb