Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

RDMA: Use default_groups in kobj_type

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>

authored by

Greg Kroah-Hartman and committed by
Jason Gunthorpe
01097139 a7ad9dde

+4 -2
+2 -1
drivers/infiniband/core/sysfs.c
··· 433 433 &ib_port_attr_link_layer.attr, 434 434 NULL 435 435 }; 436 + ATTRIBUTE_GROUPS(port_default); 436 437 437 438 static ssize_t print_ndev(const struct ib_gid_attr *gid_attr, char *buf) 438 439 { ··· 775 774 static struct kobj_type port_type = { 776 775 .release = ib_port_release, 777 776 .sysfs_ops = &port_sysfs_ops, 778 - .default_attrs = port_default_attrs 777 + .default_groups = port_default_groups, 779 778 }; 780 779 781 780 static struct kobj_type gid_attr_type = {
+2 -1
drivers/infiniband/hw/usnic/usnic_ib_sysfs.c
··· 243 243 &qpn_attr_summary.attr, 244 244 NULL 245 245 }; 246 + ATTRIBUTE_GROUPS(usnic_ib_qpn_default); 246 247 247 248 static struct kobj_type usnic_ib_qpn_type = { 248 249 .sysfs_ops = &usnic_ib_qpn_sysfs_ops, 249 - .default_attrs = usnic_ib_qpn_default_attrs 250 + .default_groups = usnic_ib_qpn_default_groups, 250 251 }; 251 252 252 253 int usnic_ib_sysfs_register_usdev(struct usnic_ib_dev *us_ibdev)