[Intel-wired-lan] fm10k driver - flow control question

Alexander Duyck alexander.duyck at gmail.com
Tue Oct 9 17:24:26 UTC 2018


On Tue, Oct 9, 2018 at 10:12 AM Jags N <jagsnn at gmail.com> wrote:
>
> Hi,
>
> In FM10k intel data sheet, I see that the PCIe End Point (PEP) does not support generation of link based flow control or class based/priority based flow control pause frames to prevent Host Congestion.
>
> The same behaviour is oberved in dpdk 18.08 fm10k driver, wherein there is no pfc get or set driver functions defined, which I believe is consistent with data sheet.
>
> But, in FM10K linux driver ver 0.26.1 (latest), there is code for setting dcb ets, pfc, dcbx. So I am a bit confused as to how the fm10k driver could support pfc if the hardware data sheet does not mention about it.
>
> Could someone help me understand or provide any pointers to documents that details what kind of support is present in 0.26.1 with respect to pfc on PEP, and if fm10k can support pfc setting/getting on PEP interface to protect Host Congestion.
>
> Regards,
> Jagdish

It has been a little over 4 years since I wrote the driver so my
recollection on this could be a bit rusty, but I believe most of the
DCB code in the fm10k linux driver is related to configuring queues
associated with traffic classes. Also while the part doesn't support
PFC from the PCIe End Point it does have a bit called "DROP_ON_EMPTY"
in the RXDCTL register of each queue that determines if we just drop
the packet or put backpressure on the internal switch if the Rx ring
doesn't have available descriptors. I believe that is how the DCB
implementation for the Linux driver is configured.

Thanks.

- Alex


More information about the Intel-wired-lan mailing list