Page MenuHomeFreeBSD

iflib: Take iri_pad into account when processing small frames
ClosedPublic

Authored by kd on Apr 27 2021, 10:49 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Apr 5, 8:12 AM
Unknown Object (File)
Sat, Apr 4, 12:22 AM
Unknown Object (File)
Fri, Apr 3, 5:49 AM
Unknown Object (File)
Sat, Mar 21, 3:26 AM
Unknown Object (File)
Mon, Mar 16, 1:56 PM
Unknown Object (File)
Sun, Mar 15, 11:07 PM
Unknown Object (File)
Sat, Mar 14, 4:47 PM
Unknown Object (File)
Sat, Mar 14, 3:43 AM
Subscribers

Details

Summary

Drivers can specify padding of received frames with iri_pad field.
This can be used to enforce ip alignment by hardware.
Iflib ignores that padding when processing small frames, which renders this feature inoperable.
I found it while writing a driver for a NIC that can ip align received packets.
Note that this doesn't change behavior of existing drivers as they all set iri_pad to 0.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable