Page MenuHomeFreeBSD

mlx5ib: Avoid system crash when enabling many VFs
Needs ReviewPublic

Authored by vag.singh_oneconvergence.com on Sep 28 2021, 1:37 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 16, 4:03 PM
Unknown Object (File)
Dec 31 2023, 4:03 AM
Unknown Object (File)
Dec 20 2023, 2:34 AM
Unknown Object (File)
Nov 8 2023, 2:40 AM
Unknown Object (File)
Nov 1 2023, 10:15 AM
Unknown Object (File)
Oct 29 2023, 6:50 PM
Unknown Object (File)
Sep 16 2023, 7:10 PM
Unknown Object (File)
Jun 12 2023, 2:22 PM

Details

Reviewers
kib
hselasky
Summary

[PATCH 12/31] FreeBSD OFED support for DPDK MLX5 PMD

a) When enabling many VFs, the total amount of DMA mappings increase
significantly. This causes DMA allocations to take a lot of time
since they are serialized in the kernel.

As a result the driver enters into fatal condition due to
timeout and the system hangs. To recover from this we disable
MR cache for VFs. This also resolves Rx-Error MLX5 PMD issue.

PFs will still have a full cache and VFs cache can be manipulated
as usual after driver load.

b) The fast_registration length is used to convey length for memory
registrations through UMR which can be of any size up to 2^64.
Change the length type to be u64.

Test Plan

Tested on KVM, ESXi, and HyperV/Azure Hypervisors with FreeBSD 14.0-CURRENT and FreeBSD12.1-STABLE.

iperf
DPDK MLX5 PMD/testpmd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped