RDMA/srp: Use the attribute group mechanism for sysfs attributes

Simplify the SRP driver by using the attribute group mechanism instead
of calling device_create_file() explicitly.

Link: https://lore.kernel.org/r/20220825213900.864587-5-bvanassche@acm.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
Bart Van Assche 2022-08-25 14:39:00 -07:00 committed by Leon Romanovsky
parent 351e458f72
commit b8a9c18c2f

View File

@ -3181,8 +3181,13 @@ static void srp_release_dev(struct device *dev)
kfree(host);
}
static struct attribute *srp_class_attrs[];
ATTRIBUTE_GROUPS(srp_class);
static struct class srp_class = {
.name = "infiniband_srp",
.dev_groups = srp_class_groups,
.dev_release = srp_release_dev
};
@ -3888,6 +3893,13 @@ static ssize_t port_show(struct device *dev, struct device_attribute *attr,
static DEVICE_ATTR_RO(port);
static struct attribute *srp_class_attrs[] = {
&dev_attr_add_target.attr,
&dev_attr_ibdev.attr,
&dev_attr_port.attr,
NULL
};
static struct srp_host *srp_add_port(struct srp_device *device, u8 port)
{
struct srp_host *host;
@ -3910,12 +3922,6 @@ static struct srp_host *srp_add_port(struct srp_device *device, u8 port)
goto put_host;
if (device_add(&host->dev))
goto put_host;
if (device_create_file(&host->dev, &dev_attr_add_target))
goto put_host;
if (device_create_file(&host->dev, &dev_attr_ibdev))
goto put_host;
if (device_create_file(&host->dev, &dev_attr_port))
goto put_host;
return host;