2023-12-16 16:55:32

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH] slimbus: core: Remove usage of the deprecated ida_simple_xx() API

ida_alloc() and ida_free() should be preferred to the deprecated
ida_simple_get() and ida_simple_remove().

Note that the upper limit of ida_simple_get() is exclusive, but the one of
ida_alloc_range() is inclusive. So change this change allows one more
device. Previously address 0xFE was never used.

Fixes: 46a2bb5a7f7e ("slimbus: core: Add slim controllers support")
Signed-off-by: Christophe JAILLET <[email protected]>
---
/!\ Untested /!\

The change of behavior is motivated by the comment in
drivers/slimbus/slimbus.h stating that /* Manager's logical address is set
to 0xFF per spec */, so all other values, including 0xFE should be valid,
IMHO.

So considering this as a bug-fix, I added a Fixes tag.
---
drivers/slimbus/core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/slimbus/core.c b/drivers/slimbus/core.c
index d43873bb5fe6..01cbd4621981 100644
--- a/drivers/slimbus/core.c
+++ b/drivers/slimbus/core.c
@@ -436,8 +436,8 @@ static int slim_device_alloc_laddr(struct slim_device *sbdev,
if (ret < 0)
goto err;
} else if (report_present) {
- ret = ida_simple_get(&ctrl->laddr_ida,
- 0, SLIM_LA_MANAGER - 1, GFP_KERNEL);
+ ret = ida_alloc_max(&ctrl->laddr_ida,
+ SLIM_LA_MANAGER - 1, GFP_KERNEL);
if (ret < 0)
goto err;

--
2.34.1



2024-02-08 17:59:05

by Christophe JAILLET

[permalink] [raw]
Subject: Re: [PATCH] slimbus: core: Remove usage of the deprecated ida_simple_xx() API

Le 16/12/2023 à 17:47, Christophe JAILLET a écrit :
> ida_alloc() and ida_free() should be preferred to the deprecated
> ida_simple_get() and ida_simple_remove().
>
> Note that the upper limit of ida_simple_get() is exclusive, but the one of
> ida_alloc_range() is inclusive. So change this change allows one more
> device. Previously address 0xFE was never used.
>
> Fixes: 46a2bb5a7f7e ("slimbus: core: Add slim controllers support")
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> /!\ Untested /!\
>
> The change of behavior is motivated by the comment in
> drivers/slimbus/slimbus.h stating that /* Manager's logical address is set
> to 0xFF per spec */, so all other values, including 0xFE should be valid,
> IMHO.
>
> So considering this as a bug-fix, I added a Fixes tag.
> ---
> drivers/slimbus/core.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/slimbus/core.c b/drivers/slimbus/core.c
> index d43873bb5fe6..01cbd4621981 100644
> --- a/drivers/slimbus/core.c
> +++ b/drivers/slimbus/core.c
> @@ -436,8 +436,8 @@ static int slim_device_alloc_laddr(struct slim_device *sbdev,
> if (ret < 0)
> goto err;
> } else if (report_present) {
> - ret = ida_simple_get(&ctrl->laddr_ida,
> - 0, SLIM_LA_MANAGER - 1, GFP_KERNEL);
> + ret = ida_alloc_max(&ctrl->laddr_ida,
> + SLIM_LA_MANAGER - 1, GFP_KERNEL);
> if (ret < 0)
> goto err;
>

Hi,

gentle reminder.

All patches to remove the ida_simple API have been sent.
And Matthew Wilcox seems happy with the on going work. (see [1])

Based on next-20240207
$git grep ida_simple_get | wc -l
38

https://elixir.bootlin.com/linux/v6.8-rc3/A/ident/ida_simple_get
50

https://elixir.bootlin.com/linux/v6.7.4/A/ident/ida_simple_get
81

Thanks
CJ

[1]: https://lore.kernel.org/all/[email protected]/

2024-02-21 10:30:26

by Srinivas Kandagatla

[permalink] [raw]
Subject: Re: [PATCH] slimbus: core: Remove usage of the deprecated ida_simple_xx() API


On Sat, 16 Dec 2023 17:47:34 +0100, Christophe JAILLET wrote:
> ida_alloc() and ida_free() should be preferred to the deprecated
> ida_simple_get() and ida_simple_remove().
>
> Note that the upper limit of ida_simple_get() is exclusive, but the one of
> ida_alloc_range() is inclusive. So change this change allows one more
> device. Previously address 0xFE was never used.
>
> [...]

Applied, thanks!

[1/1] slimbus: core: Remove usage of the deprecated ida_simple_xx() API
commit: 6e8ba95e17eede7045e673d9e1b6b8ee1055a46c

Best regards,
--
Srinivas Kandagatla <[email protected]>