bnxt_re: Fix memory leak in FRMR path
authorSelvin Xavier <selvin.xavier@broadcom.com>
Thu, 31 Aug 2017 03:57:34 +0000 (09:27 +0530)
committerDoug Ledford <dledford@redhat.com>
Fri, 22 Sep 2017 17:57:33 +0000 (13:57 -0400)
commit1993519be8bc86342687c61d8d11c3ade62b3b84
treedb6cbdbbb27b17c695418327fea93e00b934a15f
parent74828b128115033ff25d4140d732a05a36eaeaf0
bnxt_re: Fix memory leak in FRMR path

This patch fixes a memory leak issue when alloc_mr is used.
mr->pages and mr->npages are used only in alloc_mr path. mr->pages
is allocated when alloc_mr is called or in the case of FRMR, while
creating the MR. mr->npages is updated only when the MR created
is used i.e. after invoking map_mr_sg verb, before data transfer.
In the dereg_mr path, if mr->npages is 0, driver ends up not freeing
the memory created.
Removing the npages check from the dereg_mr path for kernel consumers.

Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/bnxt_re/ib_verbs.c