Re: [PATCH v2 1/2] s390/uv: Refactor uv-sysfs creation

From: Heiko Carstens
Date: Tue Oct 08 2024 - 10:42:37 EST


On Wed, Oct 02, 2024 at 06:04:17PM +0200, Steffen Eiden wrote:
> Streamline the sysfs generation to make it more extensible.
> Add a function to create a sysfs entry in the uv-sysfs dir.
> Use this function for the query directory.
>
> Reviewed-by: Janosch Frank <frankja@xxxxxxxxxxxxx>
> Reviewed-by: Christoph Schlameuss <schlameuss@xxxxxxxxxxxxx>
> Signed-off-by: Steffen Eiden <seiden@xxxxxxxxxxxxx>
> ---
> arch/s390/kernel/uv.c | 34 ++++++++++++++++++++++++----------
> 1 file changed, 24 insertions(+), 10 deletions(-)
...
> -static int __init uv_info_init(void)
> +static int __init uv_sysfs_dir_init(const struct attribute_group *grp,
> + struct kset **uv_dir_kset, const char *name)
> +{
> + struct kset *kset;
> + int rc = -ENOMEM;

rc is unnecessarily preinitialized, so you can wait for a cleanup
patch from some bot.

> + kset = kset_create_and_add(name, NULL, uv_kobj);
> + if (!kset)
> + return -ENOMEM;
> + *uv_dir_kset = kset;
> +
> + rc = sysfs_create_group(&kset->kobj, grp);
> + if (!rc)
> + return 0;
> +
> + kset_unregister(kset);
> + return rc;

doing it like

rc = sysfs_create_group(&kset->kobj, grp);
if (rc)
kset_unregister(kset);
return rc;

is shorter ;)