[PATCH v2] coresight: Use devm_bitmap_zalloc when applicable

Mathieu Poirier mathieu.poirier at linaro.org
Thu Nov 11 10:25:12 PST 2021


Hi Christophe,

On Wed, 3 Nov 2021 at 12:39, Christophe JAILLET
<christophe.jaillet at wanadoo.fr> wrote:
>
> 'drvdata->chs.guaranteed' is a bitmap. So use 'devm_bitmap_kzalloc()' to
> simplify code, improve the semantic and avoid some open-coded arithmetic
> in allocator arguments.
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet at wanadoo.fr>
> ---
> v1 --> v2: remove the 'guaranteed' variable to be even less verbose
> ---
>  drivers/hwtracing/coresight/coresight-stm.c | 10 +++-------
>  1 file changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight-stm.c b/drivers/hwtracing/coresight/coresight-stm.c
> index 58062a5a8238..bb14a3a8a921 100644
> --- a/drivers/hwtracing/coresight/coresight-stm.c
> +++ b/drivers/hwtracing/coresight/coresight-stm.c
> @@ -856,13 +856,11 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>  {
>         int ret;
>         void __iomem *base;
> -       unsigned long *guaranteed;
>         struct device *dev = &adev->dev;
>         struct coresight_platform_data *pdata = NULL;
>         struct stm_drvdata *drvdata;
>         struct resource *res = &adev->res;
>         struct resource ch_res;
> -       size_t bitmap_size;
>         struct coresight_desc desc = { 0 };
>
>         desc.name = coresight_alloc_device_name(&stm_devs, dev);
> @@ -904,12 +902,10 @@ static int stm_probe(struct amba_device *adev, const struct amba_id *id)
>         else
>                 drvdata->numsp = stm_num_stimulus_port(drvdata);
>
> -       bitmap_size = BITS_TO_LONGS(drvdata->numsp) * sizeof(long);
> -
> -       guaranteed = devm_kzalloc(dev, bitmap_size, GFP_KERNEL);
> -       if (!guaranteed)
> +       drvdata->chs.guaranteed = devm_bitmap_zalloc(dev, drvdata->numsp,
> +                                                    GFP_KERNEL);
> +       if (!drvdata->chs.guaranteed)
>                 return -ENOMEM;
> -       drvdata->chs.guaranteed = guaranteed;

I will pick up this patch when -rc1 gets released.

Thanks,
Mathieu

>
>         spin_lock_init(&drvdata->spinlock);
>
> --
> 2.30.2
>



More information about the linux-arm-kernel mailing list