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)
Mon, Sep 29, 7:21 AM
Unknown Object (File)
Sat, Sep 27, 9:50 AM
Unknown Object (File)
Sat, Sep 27, 4:45 AM
Unknown Object (File)
Sat, Sep 27, 4:38 AM
Unknown Object (File)
Sat, Sep 27, 3:02 AM
Unknown Object (File)
Sat, Sep 27, 1:40 AM
Unknown Object (File)
Fri, Sep 26, 11:49 PM
Unknown Object (File)
Mon, Sep 22, 12:26 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