ib_write_lat -d mlx4_0 -i 1 -p 6001 -a -F 10.196.100.10
Disabling dynamic polling
Failed to query device capabilities
Failed to negotiate parameters
This looks to be a result of code introduced by 5453511 ("Perftest: Add parameter negotiation phase"):
#ifdef HAVE_MLX5DV
if (local_params.attr.vendor_id == MLNX_VENDOR_ID) {
struct mlx5dv_context ctx_dv;
#ifdef HAVE_OOO_RECV_WRS
ctx_dv.comp_mask = MLX5DV_CONTEXT_MASK_OOO_RECV_WRS;
#endif
if (mlx5dv_query_device(ctx->context, &ctx_dv)){
fprintf(stderr, " Failed to query device capabilities\n");
return FAILURE;
}
local_params.mlx5dv_comp_mask = hton_64(ctx_dv.comp_mask);
}
#endif
Should this really fail if mlx5dv_query_device() fails? It could just set local_params.mlx5dv_comp_mask if it succeeds. Otherwise, march on just as if HAVE_MLX5DV was not defined. Or did perftest drop support for ConnectX-3?
ib_write_lat -d mlx4_0 -i 1 -p 6001 -a -F 10.196.100.10
Disabling dynamic polling
Failed to query device capabilities
Failed to negotiate parameters
This looks to be a result of code introduced by 5453511 ("Perftest: Add parameter negotiation phase"):
#ifdef HAVE_MLX5DV
if (local_params.attr.vendor_id == MLNX_VENDOR_ID) {
struct mlx5dv_context ctx_dv;
#ifdef HAVE_OOO_RECV_WRS
ctx_dv.comp_mask = MLX5DV_CONTEXT_MASK_OOO_RECV_WRS;
#endif
#endif
Should this really fail if mlx5dv_query_device() fails? It could just set local_params.mlx5dv_comp_mask if it succeeds. Otherwise, march on just as if HAVE_MLX5DV was not defined. Or did perftest drop support for ConnectX-3?