[PATCH] drivers: rpmsg: class_destroy() is deprecated

Jori Koolstra posted 1 patch 1 month ago
drivers/rpmsg/rpmsg_core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] drivers: rpmsg: class_destroy() is deprecated
Posted by Jori Koolstra 1 month ago
The class_destroy() function documents that:

  Note, the pointer to be destroyed must have been created with a call
  to class_create().

However, class_create() is deprecated. rpmsg already uses
class_register() but the class_destroy() calls should also be replaced
with class_unregister().

Link: https://lore.kernel.org/all/2023040244-duffel-pushpin-f738@gregkh/
Signed-off-by: Jori Koolstra <jkoolstra@xs4all.nl>
---
 drivers/rpmsg/rpmsg_core.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c
index 96964745065b..948541656950 100644
--- a/drivers/rpmsg/rpmsg_core.c
+++ b/drivers/rpmsg/rpmsg_core.c
@@ -650,7 +650,7 @@ static int __init rpmsg_init(void)
 	ret = bus_register(&rpmsg_bus);
 	if (ret) {
 		pr_err("failed to register rpmsg bus: %d\n", ret);
-		class_destroy(&rpmsg_class);
+		class_unregister(&rpmsg_class);
 	}
 	return ret;
 }
@@ -659,7 +659,7 @@ postcore_initcall(rpmsg_init);
 static void __exit rpmsg_fini(void)
 {
 	bus_unregister(&rpmsg_bus);
-	class_destroy(&rpmsg_class);
+	class_unregister(&rpmsg_class);
 }
 module_exit(rpmsg_fini);
 

base-commit: d466c332e106fe666d1e2f5a24d08e308bebbfa1
-- 
2.53.0
Re: [PATCH] drivers: rpmsg: class_destroy() is deprecated
Posted by Mathieu Poirier 1 month ago
On Sun, Mar 08, 2026 at 03:08:49PM +0100, Jori Koolstra wrote:
> The class_destroy() function documents that:
> 
>   Note, the pointer to be destroyed must have been created with a call
>   to class_create().
> 
> However, class_create() is deprecated. rpmsg already uses
> class_register() but the class_destroy() calls should also be replaced
> with class_unregister().
> 
> Link: https://lore.kernel.org/all/2023040244-duffel-pushpin-f738@gregkh/
> Signed-off-by: Jori Koolstra <jkoolstra@xs4all.nl>
> ---
>  drivers/rpmsg/rpmsg_core.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>

Applied - thanks,
Mathieu
 
> diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c
> index 96964745065b..948541656950 100644
> --- a/drivers/rpmsg/rpmsg_core.c
> +++ b/drivers/rpmsg/rpmsg_core.c
> @@ -650,7 +650,7 @@ static int __init rpmsg_init(void)
>  	ret = bus_register(&rpmsg_bus);
>  	if (ret) {
>  		pr_err("failed to register rpmsg bus: %d\n", ret);
> -		class_destroy(&rpmsg_class);
> +		class_unregister(&rpmsg_class);
>  	}
>  	return ret;
>  }
> @@ -659,7 +659,7 @@ postcore_initcall(rpmsg_init);
>  static void __exit rpmsg_fini(void)
>  {
>  	bus_unregister(&rpmsg_bus);
> -	class_destroy(&rpmsg_class);
> +	class_unregister(&rpmsg_class);
>  }
>  module_exit(rpmsg_fini);
>  
> 
> base-commit: d466c332e106fe666d1e2f5a24d08e308bebbfa1
> -- 
> 2.53.0
>
Re: [PATCH] drivers: rpmsg: class_destroy() is deprecated
Posted by Greg KH 1 month ago
On Sun, Mar 08, 2026 at 03:08:49PM +0100, Jori Koolstra wrote:
> The class_destroy() function documents that:
> 
>   Note, the pointer to be destroyed must have been created with a call
>   to class_create().
> 
> However, class_create() is deprecated. rpmsg already uses
> class_register() but the class_destroy() calls should also be replaced
> with class_unregister().
> 
> Link: https://lore.kernel.org/all/2023040244-duffel-pushpin-f738@gregkh/
> Signed-off-by: Jori Koolstra <jkoolstra@xs4all.nl>
> ---
>  drivers/rpmsg/rpmsg_core.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>