Re: [PATCH] mISDN: remove unneeded mISDN_class_release()

From: Simon Horman
Date: Wed Mar 29 2023 - 15:40:15 EST


On Wed, Mar 29, 2023 at 08:01:27AM +0200, Greg Kroah-Hartman wrote:
> The mISDN_class_release() is not needed at all, as the class structure
> is static, and it does not actually do anything either, so it is safe to
> remove as struct class does not require a release callback.
>
> Cc: Karsten Keil <isdn@xxxxxxxxxxxxxx>
> Cc: netdev@xxxxxxxxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> ---
> Note: I would like to take this through the driver-core tree as I have
> later struct class cleanups that depend on this change being made to the
> tree if that's ok with the maintainer of this file.
>
> drivers/isdn/mISDN/core.c | 6 ------
> 1 file changed, 6 deletions(-)

I assume this will hit the following in drivers/base/class.c:class_release():

if (class->class_release)
class->class_release(class);
else
pr_debug("class '%s' does not have a release() function, "
"be careful\n", class->name);

So I also assume that you are being careful :)

Reviewed-by: Simon Horman <simon.horman@xxxxxxxxxxxx>

> diff --git a/drivers/isdn/mISDN/core.c b/drivers/isdn/mISDN/core.c
> index f5989c9907ee..ab8513a7acd5 100644
> --- a/drivers/isdn/mISDN/core.c
> +++ b/drivers/isdn/mISDN/core.c
> @@ -152,17 +152,11 @@ static int mISDN_uevent(const struct device *dev, struct kobj_uevent_env *env)
> return 0;
> }
>
> -static void mISDN_class_release(struct class *cls)
> -{
> - /* do nothing, it's static */
> -}
> -
> static struct class mISDN_class = {
> .name = "mISDN",
> .dev_uevent = mISDN_uevent,
> .dev_groups = mISDN_groups,
> .dev_release = mISDN_dev_release,
> - .class_release = mISDN_class_release,
> };
>
> static int
> --
> 2.40.0
>