drivers/dma/idxd/cdev.c | 5 ----- 1 file changed, 5 deletions(-)
ida_alloc()/ida_free() don't need any mutex, so remove this one.
It was introduced by commit e6fd6d7e5f0f ("dmaengine: idxd: add a device to
represent the file opened").
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
See:
https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L375
https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L484
---
drivers/dma/idxd/cdev.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/dma/idxd/cdev.c b/drivers/dma/idxd/cdev.c
index 57f1bf2ab20b..ff94ee892339 100644
--- a/drivers/dma/idxd/cdev.c
+++ b/drivers/dma/idxd/cdev.c
@@ -28,7 +28,6 @@ struct idxd_cdev_context {
* global to avoid conflict file names.
*/
static DEFINE_IDA(file_ida);
-static DEFINE_MUTEX(ida_lock);
/*
* ictx is an array based off of accelerator types. enum idxd_type
@@ -123,9 +122,7 @@ static void idxd_file_dev_release(struct device *dev)
struct idxd_device *idxd = wq->idxd;
int rc;
- mutex_lock(&ida_lock);
ida_free(&file_ida, ctx->id);
- mutex_unlock(&ida_lock);
/* Wait for in-flight operations to complete. */
if (wq_shared(wq)) {
@@ -284,9 +281,7 @@ static int idxd_cdev_open(struct inode *inode, struct file *filp)
}
idxd_cdev = wq->idxd_cdev;
- mutex_lock(&ida_lock);
ctx->id = ida_alloc(&file_ida, GFP_KERNEL);
- mutex_unlock(&ida_lock);
if (ctx->id < 0) {
dev_warn(dev, "ida alloc failure\n");
goto failed_ida;
--
2.47.0
On 11/2/24 4:46 AM, Christophe JAILLET wrote: > ida_alloc()/ida_free() don't need any mutex, so remove this one. > > It was introduced by commit e6fd6d7e5f0f ("dmaengine: idxd: add a device to > represent the file opened"). > > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Dave Jiang <dave.jiang@intel.com> > --- > See: > https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L375 > https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L484 > --- > drivers/dma/idxd/cdev.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/drivers/dma/idxd/cdev.c b/drivers/dma/idxd/cdev.c > index 57f1bf2ab20b..ff94ee892339 100644 > --- a/drivers/dma/idxd/cdev.c > +++ b/drivers/dma/idxd/cdev.c > @@ -28,7 +28,6 @@ struct idxd_cdev_context { > * global to avoid conflict file names. > */ > static DEFINE_IDA(file_ida); > -static DEFINE_MUTEX(ida_lock); > > /* > * ictx is an array based off of accelerator types. enum idxd_type > @@ -123,9 +122,7 @@ static void idxd_file_dev_release(struct device *dev) > struct idxd_device *idxd = wq->idxd; > int rc; > > - mutex_lock(&ida_lock); > ida_free(&file_ida, ctx->id); > - mutex_unlock(&ida_lock); > > /* Wait for in-flight operations to complete. */ > if (wq_shared(wq)) { > @@ -284,9 +281,7 @@ static int idxd_cdev_open(struct inode *inode, struct file *filp) > } > > idxd_cdev = wq->idxd_cdev; > - mutex_lock(&ida_lock); > ctx->id = ida_alloc(&file_ida, GFP_KERNEL); > - mutex_unlock(&ida_lock); > if (ctx->id < 0) { > dev_warn(dev, "ida alloc failure\n"); > goto failed_ida;
On 11/2/24 04:46, Christophe JAILLET wrote: > ida_alloc()/ida_free() don't need any mutex, so remove this one. > > It was introduced by commit e6fd6d7e5f0f ("dmaengine: idxd: add a device to > represent the file opened"). > > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Fenghua Yu <fenghua.yu@intel.com> Thanks. -Fenghua > --- > See: > https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L375 > https://elixir.bootlin.com/linux/v6.11.2/source/lib/idr.c#L484 > --- > drivers/dma/idxd/cdev.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/drivers/dma/idxd/cdev.c b/drivers/dma/idxd/cdev.c > index 57f1bf2ab20b..ff94ee892339 100644 > --- a/drivers/dma/idxd/cdev.c > +++ b/drivers/dma/idxd/cdev.c > @@ -28,7 +28,6 @@ struct idxd_cdev_context { > * global to avoid conflict file names. > */ > static DEFINE_IDA(file_ida); > -static DEFINE_MUTEX(ida_lock); > > /* > * ictx is an array based off of accelerator types. enum idxd_type > @@ -123,9 +122,7 @@ static void idxd_file_dev_release(struct device *dev) > struct idxd_device *idxd = wq->idxd; > int rc; > > - mutex_lock(&ida_lock); > ida_free(&file_ida, ctx->id); > - mutex_unlock(&ida_lock); > > /* Wait for in-flight operations to complete. */ > if (wq_shared(wq)) { > @@ -284,9 +281,7 @@ static int idxd_cdev_open(struct inode *inode, struct file *filp) > } > > idxd_cdev = wq->idxd_cdev; > - mutex_lock(&ida_lock); > ctx->id = ida_alloc(&file_ida, GFP_KERNEL); > - mutex_unlock(&ida_lock); > if (ctx->id < 0) { > dev_warn(dev, "ida alloc failure\n"); > goto failed_ida;
© 2016 - 2024 Red Hat, Inc.