Mdev alias should be unique among all the mdevs, so that when such alias
is used by the mdev users to derive other objects, there is no
collision in a given system.

Signed-off-by: Parav Pandit <[email protected]>
---
 drivers/vfio/mdev/mdev_core.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/vfio/mdev/mdev_core.c b/drivers/vfio/mdev/mdev_core.c
index e825ff38b037..6eb37f0c6369 100644
--- a/drivers/vfio/mdev/mdev_core.c
+++ b/drivers/vfio/mdev/mdev_core.c
@@ -375,6 +375,11 @@ int mdev_device_create(struct kobject *kobj, struct device 
*dev,
                        ret = -EEXIST;
                        goto mdev_fail;
                }
+               if (tmp->alias && strcmp(tmp->alias, alias) == 0) {
+                       mutex_unlock(&mdev_list_lock);
+                       ret = -EEXIST;
+                       goto mdev_fail;
+               }
        }
 
        mdev = kzalloc(sizeof(*mdev), GFP_KERNEL);
-- 
2.19.2

Reply via email to