On Tue, Dec 18, 2018 at 02:16:00PM +0200, Leon Romanovsky wrote: > From: Parav Pandit <parav@xxxxxxxxxxxx> > > Currently a RoCE GID entry is removed from the hardware when all > references to the GID entry drop to zero. This is incorrect. > GID entry should be removed from the hardware when GID entry deletion > is requested. This allows to terminate ongoing traffic through such RoCE GID. > > While a GID is deleted from the hardware, GID slot in the software GID > cache is not freed. GID slot is freed once all references of such GID > are dropped. This continue to ensure that such GID slot of hardware > is not allocated to new GID entry allocation request. It is allocated > once all references to GID entry drop. > > Fixes: b150c3862d21 ("IB/core: Introduce GID entry reference counts") > Signed-off-by: Parav Pandit <parav@xxxxxxxxxxxx> > Reviewed-by: Mark Bloch <markb@xxxxxxxxxxxx> > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx> > --- > drivers/infiniband/core/cache.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) Applied to for-next Thanks, Jason