[GSoC'20 Update] NetFPGA SUME reference NIC device driver

Denis Salopek denissal at freebsd.org
Mon Jul 20 06:53:24 UTC 2020


Hi everyone!

What was done:
 - Improved locking mechanisms for RX / TX. In RX path, we release the lock
 before giving the mbuf to the OS. In TX path, we dequeue the packet before
 acquiring the lock and sending the packet to hardware.
 - Removed additional mutexes for control / status register read / write in
 order to synchronize its locking with the rest of the code.
 - It is now possible to set the interfaces' MTU. The hardware does not
 permit frames over 1514 bytes, so it's not possible to set IFCAP_VLAN_MTU
 capability on the interfaces.
 - Added sysctl software packet counters.
 - Enabled padding for smaller packets.
 - Cleaned the code to better match the style(9) guidelines.

TODO:
 - The detach function is not safe, this needs to be revisited (panics when
 unloading module if tcpdump is listening on the interface, or if we're in
 the middle of RX / TX path).
 - Benchmark the driver on FreeBSD 11.4, 12.1 and CURRENT.
 - Write a manual page.

Project github with more details:
https://github.com/denisSal/freebsd-sume

Regards,
Denis Salopek


More information about the soc-status mailing list