git: 9661887500f8 - stable/13 - Fix mismerge in OFED update

Hans Petter Selasky hselasky at FreeBSD.org
Mon Jul 26 16:14:11 UTC 2021


The branch stable/13 has been updated by hselasky:

URL: https://cgit.FreeBSD.org/src/commit/?id=9661887500f8231706ae87b47941af678ad48164

commit 9661887500f8231706ae87b47941af678ad48164
Author:     Hans Petter Selasky <hselasky at FreeBSD.org>
AuthorDate: 2021-07-26 16:12:35 +0000
Commit:     Hans Petter Selasky <hselasky at FreeBSD.org>
CommitDate: 2021-07-26 16:12:35 +0000

    Fix mismerge in OFED update
    
    When OFED was upgraded to Linux v4.9, a bunch of Linux-specific
    netlink changes were dropped.  Unfortunately, there was a mismerge
    in this process and as a result ib_sa_cancel_query() would fail to
    cancel an outstanding MAD.
    
    This was causing rdma_destroy_id() to hang indefinitely waiting
    for the MAD to complete and release the final reference.
    
    Sponsored by: Dell Inc.
    Differential Revision:  https://reviews.freebsd.org/D28421
    Reviewed by: hselasky, kib
    
    (cherry picked from commit 8a06ca2f734c726799688d65a7dad67284275438)
---
 sys/ofed/drivers/infiniband/core/ib_sa_query.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/ofed/drivers/infiniband/core/ib_sa_query.c b/sys/ofed/drivers/infiniband/core/ib_sa_query.c
index ce9c7f8a8998..b423d78d0407 100644
--- a/sys/ofed/drivers/infiniband/core/ib_sa_query.c
+++ b/sys/ofed/drivers/infiniband/core/ib_sa_query.c
@@ -622,6 +622,8 @@ void ib_sa_cancel_query(int id, struct ib_sa_query *query)
 	agent = query->port->agent;
 	mad_buf = query->mad_buf;
 	spin_unlock_irqrestore(&idr_lock, flags);
+
+	ib_cancel_mad(agent, mad_buf);
 }
 EXPORT_SYMBOL(ib_sa_cancel_query);
 


More information about the dev-commits-src-branches mailing list