[PATCH rdma-next 0/4] Provide more error details when a QP moves to
Patrisious Haddad
phaddad at nvidia.com
Wed Sep 7 04:37:56 PDT 2022
The following series adds debug prints for fatal QP events that are
helpful for finding the root cause of the errors.
The ib_get_qp_err_syndrome is called at a work queue since the QP event callback is
running on an interrupt context that can't sleep.
The functions is especially useful for debugging purposes for few
reasons:
First of all it provides the information in a human readable way, that
would make it easier to identify the bug root cause.
Secondly it also allows providing vendor specfic error codes or information
that could be very useful to users who know them.
Lastly and most importantly the function provides information about the
reason the QP moved to error state, in cases where CQE isn't generated
and without this feature it would have been way harder to know the root cause
of the error.
An example of such case would be a remote write with RKEY violation,
whereas on the remote side no CQE would be generated but this print
allows to know the reason behind the failure.
Thanks.
Israel Rukshin (1):
nvme-rdma: add more error details when a QP moves to an error state
Patrisious Haddad (3):
net/mlx5: Introduce CQE error syndrome
RDMA/core: Introduce ib_get_qp_err_syndrome function
RDMA/mlx5: Implement ib_get_qp_err_syndrome
drivers/infiniband/core/device.c | 1 +
drivers/infiniband/core/verbs.c | 8 +++++
drivers/infiniband/hw/mlx5/main.c | 1 +
drivers/infiniband/hw/mlx5/mlx5_ib.h | 1 +
drivers/infiniband/hw/mlx5/qp.c | 42 ++++++++++++++++++++++++-
drivers/infiniband/hw/mlx5/qp.h | 2 +-
drivers/infiniband/hw/mlx5/qpc.c | 4 ++-
drivers/nvme/host/rdma.c | 24 ++++++++++++++
include/linux/mlx5/mlx5_ifc.h | 47 +++++++++++++++++++++++++---
include/rdma/ib_verbs.h | 13 ++++++++
10 files changed, 135 insertions(+), 8 deletions(-)
--
2.18.1
More information about the Linux-nvme
mailing list