Commit 8238c7bd authored by Selvin Xavier's avatar Selvin Xavier Committed by Leon Romanovsky
Browse files

RDMA/bnxt_re: Fix the statistics for Gen P7 VF



Gen P7 VF support the extended stats and is prevented
by a VF check. Fix the check to issue the FW command
for GenP7 VFs also.

Fixes: 1801d87b ("RDMA/bnxt_re: Support new 5760X P7 devices")
Signed-off-by: default avatarSelvin Xavier <selvin.xavier@broadcom.com>
Link: https://patch.msgid.link/1738657285-23968-5-git-send-email-selvin.xavier@broadcom.com


Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
parent e2f10527
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -348,8 +348,8 @@ int bnxt_re_ib_get_hw_stats(struct ib_device *ibdev,
			goto done;
		}
		bnxt_re_copy_err_stats(rdev, stats, err_s);
		if (_is_ext_stats_supported(rdev->dev_attr->dev_cap_flags) &&
		    !rdev->is_virtfn) {
		if (bnxt_ext_stats_supported(rdev->chip_ctx, rdev->dev_attr->dev_cap_flags,
					     rdev->is_virtfn)) {
			rc = bnxt_re_get_ext_stat(rdev, stats);
			if (rc) {
				clear_bit(BNXT_RE_FLAG_ISSUE_ROCE_STATS,
+8 −0
Original line number Diff line number Diff line
@@ -547,6 +547,14 @@ static inline bool _is_ext_stats_supported(u16 dev_cap_flags)
		CREQ_QUERY_FUNC_RESP_SB_EXT_STATS;
}

static inline int bnxt_ext_stats_supported(struct bnxt_qplib_chip_ctx *ctx,
					   u16 flags, bool virtfn)
{
	/* ext stats supported if cap flag is set AND is a PF OR a Thor2 VF */
	return (_is_ext_stats_supported(flags) &&
		((virtfn && bnxt_qplib_is_chip_gen_p7(ctx)) || (!virtfn)));
}

static inline bool _is_hw_retx_supported(u16 dev_cap_flags)
{
	return dev_cap_flags &