Re: [PATCH 2/2] rpmb: Remove some useless locking
From: Jens Wiklander
Date: Mon Oct 14 2024 - 06:39:57 EST
On Wed, Oct 9, 2024 at 10:53 PM Christophe JAILLET
<christophe.jaillet@xxxxxxxxxx> wrote:
>
> There is no need for explicit locking when using the ida API, as stated in
> the doc related to ida_alloc_range() / ida_free().
>
> So remove rpmb_mutex.
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> ---
> 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/misc/rpmb-core.c | 5 -----
> 1 file changed, 5 deletions(-)
I'm picking up this for v6.13.
Thanks,
Jens
>
> diff --git a/drivers/misc/rpmb-core.c b/drivers/misc/rpmb-core.c
> index ad1b5c1a37fa..2d653926cdbb 100644
> --- a/drivers/misc/rpmb-core.c
> +++ b/drivers/misc/rpmb-core.c
> @@ -13,7 +13,6 @@
> #include <linux/slab.h>
>
> static DEFINE_IDA(rpmb_ida);
> -static DEFINE_MUTEX(rpmb_mutex);
>
> /**
> * rpmb_dev_get() - increase rpmb device ref counter
> @@ -63,9 +62,7 @@ static void rpmb_dev_release(struct device *dev)
> {
> struct rpmb_dev *rdev = to_rpmb_dev(dev);
>
> - mutex_lock(&rpmb_mutex);
> ida_free(&rpmb_ida, rdev->id);
> - mutex_unlock(&rpmb_mutex);
> kfree(rdev->descr.dev_id);
> kfree(rdev);
> }
> @@ -175,9 +172,7 @@ struct rpmb_dev *rpmb_dev_register(struct device *dev,
> goto err_free_rdev;
> }
>
> - mutex_lock(&rpmb_mutex);
> ret = ida_alloc(&rpmb_ida, GFP_KERNEL);
> - mutex_unlock(&rpmb_mutex);
> if (ret < 0)
> goto err_free_dev_id;
> rdev->id = ret;
> --
> 2.46.2
>