On 12/10/23 10:13, Christophe JAILLET wrote: > ida_alloc() and ida_free() should be preferred to the deprecated > ida_simple_get() and ida_simple_remove(). > > This is less verbose. > > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> Reviewed-by: Dave Jiang <dave.jiang@xxxxxxxxx> > --- > drivers/nvdimm/btt_devs.c | 6 +++--- > drivers/nvdimm/bus.c | 4 ++-- > drivers/nvdimm/dax_devs.c | 4 ++-- > drivers/nvdimm/dimm_devs.c | 4 ++-- > drivers/nvdimm/namespace_devs.c | 7 +++---- > drivers/nvdimm/pfn_devs.c | 4 ++-- > 6 files changed, 14 insertions(+), 15 deletions(-) > > diff --git a/drivers/nvdimm/btt_devs.c b/drivers/nvdimm/btt_devs.c > index fabbb31f2c35..497fd434a6a1 100644 > --- a/drivers/nvdimm/btt_devs.c > +++ b/drivers/nvdimm/btt_devs.c > @@ -19,7 +19,7 @@ static void nd_btt_release(struct device *dev) > > dev_dbg(dev, "trace\n"); > nd_detach_ndns(&nd_btt->dev, &nd_btt->ndns); > - ida_simple_remove(&nd_region->btt_ida, nd_btt->id); > + ida_free(&nd_region->btt_ida, nd_btt->id); > kfree(nd_btt->uuid); > kfree(nd_btt); > } > @@ -191,7 +191,7 @@ static struct device *__nd_btt_create(struct nd_region *nd_region, > if (!nd_btt) > return NULL; > > - nd_btt->id = ida_simple_get(&nd_region->btt_ida, 0, 0, GFP_KERNEL); > + nd_btt->id = ida_alloc(&nd_region->btt_ida, GFP_KERNEL); > if (nd_btt->id < 0) > goto out_nd_btt; > > @@ -217,7 +217,7 @@ static struct device *__nd_btt_create(struct nd_region *nd_region, > return dev; > > out_put_id: > - ida_simple_remove(&nd_region->btt_ida, nd_btt->id); > + ida_free(&nd_region->btt_ida, nd_btt->id); > > out_nd_btt: > kfree(nd_btt); > diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c > index 5852fe290523..ef3d0f83318b 100644 > --- a/drivers/nvdimm/bus.c > +++ b/drivers/nvdimm/bus.c > @@ -285,7 +285,7 @@ static void nvdimm_bus_release(struct device *dev) > struct nvdimm_bus *nvdimm_bus; > > nvdimm_bus = container_of(dev, struct nvdimm_bus, dev); > - ida_simple_remove(&nd_ida, nvdimm_bus->id); > + ida_free(&nd_ida, nvdimm_bus->id); > kfree(nvdimm_bus); > } > > @@ -342,7 +342,7 @@ struct nvdimm_bus *nvdimm_bus_register(struct device *parent, > INIT_LIST_HEAD(&nvdimm_bus->list); > INIT_LIST_HEAD(&nvdimm_bus->mapping_list); > init_waitqueue_head(&nvdimm_bus->wait); > - nvdimm_bus->id = ida_simple_get(&nd_ida, 0, 0, GFP_KERNEL); > + nvdimm_bus->id = ida_alloc(&nd_ida, GFP_KERNEL); > if (nvdimm_bus->id < 0) { > kfree(nvdimm_bus); > return NULL; > diff --git a/drivers/nvdimm/dax_devs.c b/drivers/nvdimm/dax_devs.c > index 3bd61f245788..6b4922de3047 100644 > --- a/drivers/nvdimm/dax_devs.c > +++ b/drivers/nvdimm/dax_devs.c > @@ -18,7 +18,7 @@ static void nd_dax_release(struct device *dev) > > dev_dbg(dev, "trace\n"); > nd_detach_ndns(dev, &nd_pfn->ndns); > - ida_simple_remove(&nd_region->dax_ida, nd_pfn->id); > + ida_free(&nd_region->dax_ida, nd_pfn->id); > kfree(nd_pfn->uuid); > kfree(nd_dax); > } > @@ -55,7 +55,7 @@ static struct nd_dax *nd_dax_alloc(struct nd_region *nd_region) > return NULL; > > nd_pfn = &nd_dax->nd_pfn; > - nd_pfn->id = ida_simple_get(&nd_region->dax_ida, 0, 0, GFP_KERNEL); > + nd_pfn->id = ida_alloc(&nd_region->dax_ida, GFP_KERNEL); > if (nd_pfn->id < 0) { > kfree(nd_dax); > return NULL; > diff --git a/drivers/nvdimm/dimm_devs.c b/drivers/nvdimm/dimm_devs.c > index 1273873582be..3ceddae0509f 100644 > --- a/drivers/nvdimm/dimm_devs.c > +++ b/drivers/nvdimm/dimm_devs.c > @@ -194,7 +194,7 @@ static void nvdimm_release(struct device *dev) > { > struct nvdimm *nvdimm = to_nvdimm(dev); > > - ida_simple_remove(&dimm_ida, nvdimm->id); > + ida_free(&dimm_ida, nvdimm->id); > kfree(nvdimm); > } > > @@ -592,7 +592,7 @@ struct nvdimm *__nvdimm_create(struct nvdimm_bus *nvdimm_bus, > if (!nvdimm) > return NULL; > > - nvdimm->id = ida_simple_get(&dimm_ida, 0, 0, GFP_KERNEL); > + nvdimm->id = ida_alloc(&dimm_ida, GFP_KERNEL); > if (nvdimm->id < 0) { > kfree(nvdimm); > return NULL; > diff --git a/drivers/nvdimm/namespace_devs.c b/drivers/nvdimm/namespace_devs.c > index 07177eadc56e..fa1202e848d9 100644 > --- a/drivers/nvdimm/namespace_devs.c > +++ b/drivers/nvdimm/namespace_devs.c > @@ -27,7 +27,7 @@ static void namespace_pmem_release(struct device *dev) > struct nd_region *nd_region = to_nd_region(dev->parent); > > if (nspm->id >= 0) > - ida_simple_remove(&nd_region->ns_ida, nspm->id); > + ida_free(&nd_region->ns_ida, nspm->id); > kfree(nspm->alt_name); > kfree(nspm->uuid); > kfree(nspm); > @@ -1810,7 +1810,7 @@ static struct device *nd_namespace_pmem_create(struct nd_region *nd_region) > res->name = dev_name(&nd_region->dev); > res->flags = IORESOURCE_MEM; > > - nspm->id = ida_simple_get(&nd_region->ns_ida, 0, 0, GFP_KERNEL); > + nspm->id = ida_alloc(&nd_region->ns_ida, GFP_KERNEL); > if (nspm->id < 0) { > kfree(nspm); > return NULL; > @@ -2188,8 +2188,7 @@ int nd_region_register_namespaces(struct nd_region *nd_region, int *err) > struct nd_namespace_pmem *nspm; > > nspm = to_nd_namespace_pmem(dev); > - id = ida_simple_get(&nd_region->ns_ida, 0, 0, > - GFP_KERNEL); > + id = ida_alloc(&nd_region->ns_ida, GFP_KERNEL); > nspm->id = id; > } else > id = i; > diff --git a/drivers/nvdimm/pfn_devs.c b/drivers/nvdimm/pfn_devs.c > index 0d08e21a1cea..586348125b61 100644 > --- a/drivers/nvdimm/pfn_devs.c > +++ b/drivers/nvdimm/pfn_devs.c > @@ -22,7 +22,7 @@ static void nd_pfn_release(struct device *dev) > > dev_dbg(dev, "trace\n"); > nd_detach_ndns(&nd_pfn->dev, &nd_pfn->ndns); > - ida_simple_remove(&nd_region->pfn_ida, nd_pfn->id); > + ida_free(&nd_region->pfn_ida, nd_pfn->id); > kfree(nd_pfn->uuid); > kfree(nd_pfn); > } > @@ -326,7 +326,7 @@ static struct nd_pfn *nd_pfn_alloc(struct nd_region *nd_region) > if (!nd_pfn) > return NULL; > > - nd_pfn->id = ida_simple_get(&nd_region->pfn_ida, 0, 0, GFP_KERNEL); > + nd_pfn->id = ida_alloc(&nd_region->pfn_ida, GFP_KERNEL); > if (nd_pfn->id < 0) { > kfree(nd_pfn); > return NULL;