Re: [PATCH] x86/platform/uv: use default_groups in kobj_type

From: Hans de Goede
Date: Thu Dec 30 2021 - 13:34:20 EST


Hi,

On 12/29/21 15:13, Greg Kroah-Hartman wrote:
> There are currently 2 ways to create a set of sysfs files for a
> kobj_type, through the default_attrs field, and the default_groups
> field. Move the uv sysfs code to use default_groups field which has
> been the preferred way since aa30f47cf666 ("kobject: Add support for
> default attribute groups to kobj_type") so that we can soon get rid of
> the obsolete default_attrs field.
>
> Cc: Justin Ernst <justin.ernst@xxxxxxx>
> Cc: Hans de Goede <hdegoede@xxxxxxxxxx>
> Cc: Mark Gross <markgross@xxxxxxxxxx>
> Cc: platform-driver-x86@xxxxxxxxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

Thank you for your patch, I've applied this patch to my review-hans
branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.

Regards,

Hans

> ---
> drivers/platform/x86/uv_sysfs.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/platform/x86/uv_sysfs.c b/drivers/platform/x86/uv_sysfs.c
> index 956a354b57c1..625b0b79d185 100644
> --- a/drivers/platform/x86/uv_sysfs.c
> +++ b/drivers/platform/x86/uv_sysfs.c
> @@ -175,6 +175,7 @@ static struct attribute *uv_hub_attrs[] = {
> &cnode_attribute.attr,
> NULL,
> };
> +ATTRIBUTE_GROUPS(uv_hub);
>
> static void hub_release(struct kobject *kobj)
> {
> @@ -205,7 +206,7 @@ static const struct sysfs_ops hub_sysfs_ops = {
> static struct kobj_type hub_attr_type = {
> .release = hub_release,
> .sysfs_ops = &hub_sysfs_ops,
> - .default_attrs = uv_hub_attrs,
> + .default_groups = uv_hub_groups,
> };
>
> static int uv_hubs_init(void)
> @@ -327,6 +328,7 @@ static struct attribute *uv_port_attrs[] = {
> &uv_port_conn_port_attribute.attr,
> NULL,
> };
> +ATTRIBUTE_GROUPS(uv_port);
>
> static void uv_port_release(struct kobject *kobj)
> {
> @@ -357,7 +359,7 @@ static const struct sysfs_ops uv_port_sysfs_ops = {
> static struct kobj_type uv_port_attr_type = {
> .release = uv_port_release,
> .sysfs_ops = &uv_port_sysfs_ops,
> - .default_attrs = uv_port_attrs,
> + .default_groups = uv_port_groups,
> };
>
> static int uv_ports_init(void)
>