> -----Original Message----- > From: Jason Gunthorpe <jgg@xxxxxxxx> > Sent: Tuesday, February 5, 2019 10:05 AM > To: Gal Pressman <galpress@xxxxxxxxxx> > Cc: linux-rdma@xxxxxxxxxxxxxxx; Parav Pandit <parav@xxxxxxxxxxxx> > Subject: Re: [PATCH 1/8] RDMA/device: Check that the rename is nop under > the lock > > On Tue, Feb 05, 2019 at 04:14:28PM +0200, Gal Pressman wrote: > > On 04-Feb-19 23:17, Jason Gunthorpe wrote: > > > From: Jason Gunthorpe <jgg@xxxxxxxxxxxx> > > > > > > Since another rename could be running in parallel it is safer to > > > check that the name is not changing inside the lock, where we > > > already know the device name will not change. > > > > > > Fixes: d21943dd19b5 ("RDMA/core: Implement IB device rename > > > function") > > > Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxxxx> > > > Reviewed-by: Parav Pandit <parav@xxxxxxxxxxxx> > > > drivers/infiniband/core/device.c | 10 ++++++---- > > > 1 file changed, 6 insertions(+), 4 deletions(-) > > > > > > diff --git a/drivers/infiniband/core/device.c > > > b/drivers/infiniband/core/device.c > > > index 55221990d946b2..f9f33e842c16b6 100644 > > > +++ b/drivers/infiniband/core/device.c > > > @@ -189,12 +189,14 @@ static struct ib_device > > > *__ib_device_get_by_name(const char *name) > > > > > > int ib_device_rename(struct ib_device *ibdev, const char *name) { > > > - int ret = 0; > > > - > > > - if (!strcmp(name, dev_name(&ibdev->dev))) > > > - return ret; > > > + int ret; > > > > > > mutex_lock(&device_mutex); > > > + if (!strcmp(name, dev_name(&ibdev->dev))) { > > > + ret = -EEXIST; > > > > Why did this change to an error? > > Hmm.. Probably shouldn't change it - even though I think this version is > more appropriate. > I think we should return 0 for same name. > Jason