mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Rodolfo Giometti <giometti@enneenne.com>
To: Jori Koolstra <jkoolstra@xs4all.nl>, linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [PATCH] pps: change pps_class to a const struct
Date: Mon, 2 Mar 2026 16:24:40 +0100	[thread overview]
Message-ID: <196781d0-5d92-4b5d-b863-780609147f5b@enneenne.com> (raw)
In-Reply-To: <20260302151132.3302993-1-jkoolstra@xs4all.nl>

On 3/2/26 16:11, Jori Koolstra wrote:
> The class_create() call has been deprecated in favor of class_register()
> as the driver core now allows for a struct class to be in read-only
> memory. Change pps_class to be a const struct class and drop the
> class_create() call.
> 
> Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Jori Koolstra <jkoolstra@xs4all.nl>

Acked-by: Rodolfo Giometti <giometti@enneenne.com>

> ---
>   drivers/pps/pps.c | 24 ++++++++++++++----------
>   1 file changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/pps/pps.c b/drivers/pps/pps.c
> index c6b8b6478276..de1122bb69ea 100644
> --- a/drivers/pps/pps.c
> +++ b/drivers/pps/pps.c
> @@ -26,7 +26,10 @@
>    */
>   
>   static int pps_major;
> -static struct class *pps_class;
> +static const struct class pps_class = {
> +	.name		= "pps",
> +	.dev_groups	= pps_groups
> +};
>   
>   static DEFINE_MUTEX(pps_idr_lock);
>   static DEFINE_IDR(pps_idr);
> @@ -379,7 +382,7 @@ int pps_register_cdev(struct pps_device *pps)
>   	}
>   	pps->id = err;
>   
> -	pps->dev.class = pps_class;
> +	pps->dev.class = &pps_class;
>   	pps->dev.parent = pps->info.dev;
>   	pps->dev.devt = MKDEV(pps_major, pps->id);
>   	dev_set_drvdata(&pps->dev, pps);
> @@ -408,7 +411,7 @@ void pps_unregister_cdev(struct pps_device *pps)
>   {
>   	pr_debug("unregistering pps%d\n", pps->id);
>   	pps->lookup_cookie = NULL;
> -	device_destroy(pps_class, pps->dev.devt);
> +	device_destroy(&pps_class, pps->dev.devt);
>   
>   	/* Now we can release the ID for re-use */
>   	mutex_lock(&pps_idr_lock);
> @@ -460,18 +463,19 @@ EXPORT_SYMBOL(pps_lookup_dev);
>   
>   static void __exit pps_exit(void)
>   {
> -	class_destroy(pps_class);
> +	class_unregister(&pps_class);
>   	__unregister_chrdev(pps_major, 0, PPS_MAX_SOURCES, "pps");
>   }
>   
>   static int __init pps_init(void)
>   {
> -	pps_class = class_create("pps");
> -	if (IS_ERR(pps_class)) {
> -		pr_err("failed to allocate class\n");
> -		return PTR_ERR(pps_class);
> +	int err;
> +
> +	err = class_register(&pps_class);
> +	if (err) {
> +		pr_err("failed to register class\n");
> +		return err;
>   	}
> -	pps_class->dev_groups = pps_groups;
>   
>   	pps_major = __register_chrdev(0, 0, PPS_MAX_SOURCES, "pps",
>   				      &pps_cdev_fops);
> @@ -487,7 +491,7 @@ static int __init pps_init(void)
>   	return 0;
>   
>   remove_class:
> -	class_destroy(pps_class);
> +	class_unregister(&pps_class);
>   	return pps_major;
>   }
>   
> 
> base-commit: d466c332e106fe666d1e2f5a24d08e308bebbfa1


-- 
GNU/Linux Solutions                  e-mail: giometti@enneenne.com
Linux Device Driver                          giometti@linux.it
Embedded Systems                     phone:  +39 349 2432127
UNIX programming

  reply	other threads:[~2026-03-02 15:24 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-02 15:11 Jori Koolstra
2026-03-02 15:24 ` Rodolfo Giometti [this message]
2026-03-02 16:43   ` Greg Kroah-Hartman
2026-03-02 17:03     ` Rodolfo Giometti
2026-03-02 19:09       ` Greg Kroah-Hartman
2026-04-01 17:01       ` Jori Koolstra
2026-03-02 16:42 ` Greg Kroah-Hartman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=196781d0-5d92-4b5d-b863-780609147f5b@enneenne.com \
    --to=giometti@enneenne.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jkoolstra@xs4all.nl \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®