From: Leon Romanovsky <leon@kernel.org> To: Doug Ledford <dledford@redhat.com>, Jason Gunthorpe <jgg@mellanox.com> Cc: Leon Romanovsky <leonro@mellanox.com>, RDMA mailing list <linux-rdma@vger.kernel.org>, Alex Vainman <alexv@mellanox.com>, Artemy Kovalyov <artemyko@mellanox.com>, Daniel Jurgens <danielj@mellanox.com>, Eli Cohen <eli@mellanox.com>, Haggai Eran <haggaie@mellanox.com>, Mark Zhang <markz@mellanox.com>, Moni Shoua <monis@mellanox.com>, Parav Pandit <parav@mellanox.com>, Sagi Grimberg <sagig@mellanox.com>, Yishai Hadas <yishaih@mellanox.com> Subject: [PATCH rdma-rc 05/10] IB/mlx5: Fix clean_mr() to work in the expected order Date: Tue, 23 Jul 2019 09:57:28 +0300 Message-ID: <20190723065733.4899-6-leon@kernel.org> (raw) In-Reply-To: <20190723065733.4899-1-leon@kernel.org> From: Yishai Hadas <yishaih@mellanox.com> Any dma map underlying the MR should only be freed once the MR is fenced at the hardware. As of the above we first destroy the MKEY and just after that can safely call to dma_unmap_single(). Cc: <stable@vger.kernel.org> # 4.3 Fixes: 8a187ee52b04 ("IB/mlx5: Support the new memory registration API") Signed-off-by: Yishai Hadas <yishaih@mellanox.com> Reviewed-by: Artemy Kovalyov <artemyko@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> --- drivers/infiniband/hw/mlx5/mr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/infiniband/hw/mlx5/mr.c b/drivers/infiniband/hw/mlx5/mr.c index 7274a9b9df58..2c77456f359f 100644 --- a/drivers/infiniband/hw/mlx5/mr.c +++ b/drivers/infiniband/hw/mlx5/mr.c @@ -1582,10 +1582,10 @@ static void clean_mr(struct mlx5_ib_dev *dev, struct mlx5_ib_mr *mr) mr->sig = NULL; } - mlx5_free_priv_descs(mr); - - if (!allocated_from_cache) + if (!allocated_from_cache) { destroy_mkey(dev, mr); + mlx5_free_priv_descs(mr); + } } static void dereg_mr(struct mlx5_ib_dev *dev, struct mlx5_ib_mr *mr) -- 2.20.1
next prev parent reply index Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-23 6:57 [PATCH rdma-rc 00/10] Collection of fixes for 5.3 Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 01/10] RDMA/core: Annotate destroy of mutex to ensure that it is released as unlocked Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 02/10] IB/mlx5: Fix unreg_umr to ignore the mkey state Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 03/10] IB/mlx5: Use direct mkey destroy command upon UMR unreg failure Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 04/10] IB/mlx5: Fix unreg_umr to set a device PD Leon Romanovsky 2019-07-23 6:57 ` Leon Romanovsky [this message] 2019-07-23 6:57 ` [PATCH rdma-rc 06/10] IB/mlx5: Fix RSS Toeplitz function to be specification aligned Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 07/10] IB/mlx5: Prevent concurrent MR updates during invalidation Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 08/10] IB/mlx5: Avoid unnecessary typecast Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 09/10] IB/core: Fix querying total rdma stats Leon Romanovsky 2019-07-23 6:57 ` [PATCH rdma-rc 10/10] IB/counters: Initialize port counter and annotate mutex_destroy Leon Romanovsky 2019-07-25 14:32 ` Jason Gunthorpe 2019-07-25 15:13 ` [PATCH rdma-rc 00/10] Collection of fixes for 5.3 Jason Gunthorpe 2019-07-25 16:05 ` Parav Pandit
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190723065733.4899-6-leon@kernel.org \ --to=leon@kernel.org \ --cc=alexv@mellanox.com \ --cc=artemyko@mellanox.com \ --cc=danielj@mellanox.com \ --cc=dledford@redhat.com \ --cc=eli@mellanox.com \ --cc=haggaie@mellanox.com \ --cc=jgg@mellanox.com \ --cc=leonro@mellanox.com \ --cc=linux-rdma@vger.kernel.org \ --cc=markz@mellanox.com \ --cc=monis@mellanox.com \ --cc=parav@mellanox.com \ --cc=sagig@mellanox.com \ --cc=yishaih@mellanox.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux-RDMA Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-rdma/0 linux-rdma/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-rdma linux-rdma/ https://lore.kernel.org/linux-rdma \ linux-rdma@vger.kernel.org public-inbox-index linux-rdma Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-rdma AGPL code for this site: git clone https://public-inbox.org/public-inbox.git