On Sun, Feb 12, 2023 at 08:07:32PM +0200, Leon Romanovsky wrote: > On Wed, Feb 08, 2023 at 10:25:07AM -0600, Sindhu Devale wrote: > > From: Mustafa Ismail <mustafa.ismail@xxxxxxxxx> > > > > Currently, traffic on a RoCEv2 RC QP can continue after the IP address is deleted from the interface. > > Please break lines while you write commit messages. > > > Fix this by finding QP's that use the deleted IP and modify to the error state. > > > > Fixes: cc0315564d6e("RDMA/irdma: Fix sleep from invalid context BUG") > > Signed-off-by: Mustafa Ismail <mustafa.ismail@xxxxxxxxx> > > Signed-off-by: Shiraz Saleem <shiraz.saleem@xxxxxxxxx> > > Signed-off-by: Sindhu Devale <sindhu.devale@xxxxxxxxx> > > --- > > drivers/infiniband/hw/irdma/cm.c | 113 +++++++++++++++++++++++++--- > > drivers/infiniband/hw/irdma/cm.h | 6 +- > > drivers/infiniband/hw/irdma/utils.c | 27 ++++++- > > drivers/infiniband/hw/irdma/verbs.h | 9 +++ > > 4 files changed, 135 insertions(+), 20 deletions(-) > > Why is irdma special here? > > I don't see anything even remotely close in other drivers. Yeah, this doesn't seem quite right The GID table entry is already made invalid, this should cause the drivers to error their QPs. IIRC the GID table entry is not reusable until all the refs held by QPs are released. So, everything seems fine already. Any driver support certainly must not be driven from new crazy net notifiers. If you HW can't handle invalid GID table entries properly then add code to the GID table handling path to fix it, not this. Jason