]> git.baikalelectronics.ru Git - kernel.git/commit
RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds
authorSelvin Xavier <selvin.xavier@broadcom.com>
Mon, 24 Aug 2020 18:14:31 +0000 (11:14 -0700)
committerJason Gunthorpe <jgg@nvidia.com>
Thu, 27 Aug 2020 12:30:44 +0000 (09:30 -0300)
commit46f0ef48c8516c37f67aa5e60e4b2df20c9045d2
tree8706b5f36d24495d2cb44c6b8ea9a3175ce56a77
parent8840c88079dae71dfab0f6d77a8309d7d33ce548
RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds

Driver crashes when destroy_qp is re-tried because of an error
returned. This is because the qp entry was removed from the qp list during
the first call.

Remove qp from the list only if destroy_qp returns success.

The driver will still trigger a WARN_ON due to the memory leaking, but at
least it isn't corrupting memory too.

Fixes: 86ca3319795a ("RDMA/bnxt_re: Refactor queue pair creation code")
Link: https://lore.kernel.org/r/1598292876-26529-2-git-send-email-selvin.xavier@broadcom.com
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/bnxt_re/ib_verbs.c