2024-04-14 10:10:49

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH RESEND] pps: 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().

This is less verbose.

Signed-off-by: Christophe JAILLET <[email protected]>
---
This patch has been sent about 3 months ago [1].
A gentle reminder has been sent 1 month later [2].

Neither one got any reply.

So, I'm adding Andrew Morton in To:, in order to help in the merge process.

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

Based on next-20240412
$git grep ida_simple_get | wc -l
25

Based on next-20240220
$git grep ida_simple_get | wc -l
36

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/5065a9fe3101dcb7ee0a79bde0ec84de03c637ec.1702230047.git.christophe.jaillet@wanadoo.fr/
[2]: https://lore.kernel.org/all/[email protected]/
[3]: https://lore.kernel.org/all/[email protected]/
---
drivers/pps/clients/pps_parport.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/pps/clients/pps_parport.c b/drivers/pps/clients/pps_parport.c
index 42f93d4c6ee3..af972cdc04b5 100644
--- a/drivers/pps/clients/pps_parport.c
+++ b/drivers/pps/clients/pps_parport.c
@@ -148,7 +148,7 @@ static void parport_attach(struct parport *port)
return;
}

- index = ida_simple_get(&pps_client_index, 0, 0, GFP_KERNEL);
+ index = ida_alloc(&pps_client_index, GFP_KERNEL);
memset(&pps_client_cb, 0, sizeof(pps_client_cb));
pps_client_cb.private = device;
pps_client_cb.irq_func = parport_irq;
@@ -188,7 +188,7 @@ static void parport_attach(struct parport *port)
err_unregister_dev:
parport_unregister_device(device->pardev);
err_free:
- ida_simple_remove(&pps_client_index, index);
+ ida_free(&pps_client_index, index);
kfree(device);
}

@@ -208,7 +208,7 @@ static void parport_detach(struct parport *port)
pps_unregister_source(device->pps);
parport_release(pardev);
parport_unregister_device(pardev);
- ida_simple_remove(&pps_client_index, device->index);
+ ida_free(&pps_client_index, device->index);
kfree(device);
}

--
2.44.0



2024-04-15 06:20:55

by Rodolfo Giometti

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

On 14/04/24 12:10, 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 <[email protected]>

Acked-by: Rodolfo Giometti <[email protected]>

> ---
> This patch has been sent about 3 months ago [1].
> A gentle reminder has been sent 1 month later [2].
>
> Neither one got any reply.
>
> So, I'm adding Andrew Morton in To:, in order to help in the merge process.
>
> Context:
> =======
> All patches to remove the ida_simple API have been sent.
> Matthew Wilcox seems happy with the on going work. (see [3])
>
> Based on next-20240412
> $git grep ida_simple_get | wc -l
> 25
>
> Based on next-20240220
> $git grep ida_simple_get | wc -l
> 36
>
> 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/5065a9fe3101dcb7ee0a79bde0ec84de03c637ec.1702230047.git.christophe.jaillet@wanadoo.fr/
> [2]: https://lore.kernel.org/all/[email protected]/
> [3]: https://lore.kernel.org/all/[email protected]/
> ---
> drivers/pps/clients/pps_parport.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pps/clients/pps_parport.c b/drivers/pps/clients/pps_parport.c
> index 42f93d4c6ee3..af972cdc04b5 100644
> --- a/drivers/pps/clients/pps_parport.c
> +++ b/drivers/pps/clients/pps_parport.c
> @@ -148,7 +148,7 @@ static void parport_attach(struct parport *port)
> return;
> }
>
> - index = ida_simple_get(&pps_client_index, 0, 0, GFP_KERNEL);
> + index = ida_alloc(&pps_client_index, GFP_KERNEL);
> memset(&pps_client_cb, 0, sizeof(pps_client_cb));
> pps_client_cb.private = device;
> pps_client_cb.irq_func = parport_irq;
> @@ -188,7 +188,7 @@ static void parport_attach(struct parport *port)
> err_unregister_dev:
> parport_unregister_device(device->pardev);
> err_free:
> - ida_simple_remove(&pps_client_index, index);
> + ida_free(&pps_client_index, index);
> kfree(device);
> }
>
> @@ -208,7 +208,7 @@ static void parport_detach(struct parport *port)
> pps_unregister_source(device->pps);
> parport_release(pardev);
> parport_unregister_device(pardev);
> - ida_simple_remove(&pps_client_index, device->index);
> + ida_free(&pps_client_index, device->index);
> kfree(device);
> }
>

--
GNU/Linux Solutions e-mail: [email protected]
Linux Device Driver [email protected]
Embedded Systems phone: +39 349 2432127
UNIX programming