RDMA: Use default_groups in kobj_type
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 3 Jan 2022 15:22:59 +0000 (16:22 +0100)
committerJason Gunthorpe <jgg@nvidia.com>
Wed, 5 Jan 2022 19:15:15 +0000 (15:15 -0400)
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
IB code to use default_groups field which has been the preferred way since
commit aa30f47cf666 ("kobject: Add support for default attribute groups to
kobj_type") so that we can soon get rid of the obsolete default_attrs
field.

Link: https://lore.kernel.org/r/20220103152259.531034-1-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/core/sysfs.c
drivers/infiniband/hw/usnic/usnic_ib_sysfs.c

index a3f84b5..84c53bd 100644 (file)
@@ -433,6 +433,7 @@ static struct attribute *port_default_attrs[] = {
        &ib_port_attr_link_layer.attr,
        NULL
 };
+ATTRIBUTE_GROUPS(port_default);
 
 static ssize_t print_ndev(const struct ib_gid_attr *gid_attr, char *buf)
 {
@@ -774,7 +775,7 @@ static void ib_port_gid_attr_release(struct kobject *kobj)
 static struct kobj_type port_type = {
        .release       = ib_port_release,
        .sysfs_ops     = &port_sysfs_ops,
-       .default_attrs = port_default_attrs
+       .default_groups = port_default_groups,
 };
 
 static struct kobj_type gid_attr_type = {
index 586b0e5..7d868f0 100644 (file)
@@ -243,10 +243,11 @@ static struct attribute *usnic_ib_qpn_default_attrs[] = {
        &qpn_attr_summary.attr,
        NULL
 };
+ATTRIBUTE_GROUPS(usnic_ib_qpn_default);
 
 static struct kobj_type usnic_ib_qpn_type = {
        .sysfs_ops = &usnic_ib_qpn_sysfs_ops,
-       .default_attrs = usnic_ib_qpn_default_attrs
+       .default_groups = usnic_ib_qpn_default_groups,
 };
 
 int usnic_ib_sysfs_register_usdev(struct usnic_ib_dev *us_ibdev)