mirror of https://gitee.com/openkylin/linux.git
RDMA/device: Check that the rename is nop under the lock
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: d21943dd19
("RDMA/core: Implement IB device rename function")
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Reviewed-by: Parav Pandit <parav@mellanox.com>
This commit is contained in:
parent
21a428a019
commit
e3593b568a
|
@ -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 = 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (__ib_device_get_by_name(name)) {
|
||||
ret = -EEXIST;
|
||||
goto out;
|
||||
|
|
Loading…
Reference in New Issue