On 10/11/2022 11:48 AM, Viacheslav Galaktionov wrote:
Hi!
We're looking to implement CRC offload in our driver and we're having
difficulties understanding what
the feature changes from the application's point of view. If we enable
the KEEP_CRC offload, then the
NIC is supposed to preserve the CRC in the packet, that much is clear.
But we checked other drivers
and it seems common for PMDs to remove the CRC from the final mbufs. Why
is that?
We couldn't find any place where the CRC would be stored after removal,
so it looks like the application
doesn't have access to this piece of data. And if so, what's the point
of having this feature if the CRC
is discarded either way?
We're probably missing something and would really appreciate any help
with this.
Hi Viacheslav,
As you said default behavior is to strip the CRC from packet, even some
devices doesn't support having CRC in the packet it is removed by HW
automatically. In this case application can't access to the CRC.
For the devices that has capability to keep CRC, KEEP_CRC offload should
enable having CRC as part of the packet. There is no special field to
store the CRC.