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

scsi: message: fusion: Switch to attribute groups

struct device supports attribute groups directly but does not support
struct device_attribute directly. Hence switch to attribute groups.

Link: https://lore.kernel.org/r/20211012233558.4066756-6-bvanassche@acm.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

authored by

Bart Van Assche and committed by
Martin K. Petersen
2899836f a3cf94c9

+26 -18
+1 -1
drivers/message/fusion/mptfc.c
··· 129 129 .sg_tablesize = MPT_SCSI_SG_DEPTH, 130 130 .max_sectors = 8192, 131 131 .cmd_per_lun = 7, 132 - .shost_attrs = mptscsih_host_attrs, 132 + .shost_groups = mptscsih_host_attr_groups, 133 133 }; 134 134 135 135 /****************************************************************************
+1 -1
drivers/message/fusion/mptsas.c
··· 2020 2020 .sg_tablesize = MPT_SCSI_SG_DEPTH, 2021 2021 .max_sectors = 8192, 2022 2022 .cmd_per_lun = 7, 2023 - .shost_attrs = mptscsih_host_attrs, 2023 + .shost_groups = mptscsih_host_attr_groups, 2024 2024 .no_write_same = 1, 2025 2025 }; 2026 2026
+22 -14
drivers/message/fusion/mptscsih.c
··· 3218 3218 static DEVICE_ATTR(debug_level, S_IRUGO | S_IWUSR, 3219 3219 mptscsih_debug_level_show, mptscsih_debug_level_store); 3220 3220 3221 - struct device_attribute *mptscsih_host_attrs[] = { 3222 - &dev_attr_version_fw, 3223 - &dev_attr_version_bios, 3224 - &dev_attr_version_mpi, 3225 - &dev_attr_version_product, 3226 - &dev_attr_version_nvdata_persistent, 3227 - &dev_attr_version_nvdata_default, 3228 - &dev_attr_board_name, 3229 - &dev_attr_board_assembly, 3230 - &dev_attr_board_tracer, 3231 - &dev_attr_io_delay, 3232 - &dev_attr_device_delay, 3233 - &dev_attr_debug_level, 3221 + static struct attribute *mptscsih_host_attrs[] = { 3222 + &dev_attr_version_fw.attr, 3223 + &dev_attr_version_bios.attr, 3224 + &dev_attr_version_mpi.attr, 3225 + &dev_attr_version_product.attr, 3226 + &dev_attr_version_nvdata_persistent.attr, 3227 + &dev_attr_version_nvdata_default.attr, 3228 + &dev_attr_board_name.attr, 3229 + &dev_attr_board_assembly.attr, 3230 + &dev_attr_board_tracer.attr, 3231 + &dev_attr_io_delay.attr, 3232 + &dev_attr_device_delay.attr, 3233 + &dev_attr_debug_level.attr, 3234 3234 NULL, 3235 3235 }; 3236 3236 3237 - EXPORT_SYMBOL(mptscsih_host_attrs); 3237 + static const struct attribute_group mptscsih_host_attr_group = { 3238 + .attrs = mptscsih_host_attrs 3239 + }; 3240 + 3241 + const struct attribute_group *mptscsih_host_attr_groups[] = { 3242 + &mptscsih_host_attr_group, 3243 + NULL 3244 + }; 3245 + EXPORT_SYMBOL(mptscsih_host_attr_groups); 3238 3246 3239 3247 EXPORT_SYMBOL(mptscsih_remove); 3240 3248 EXPORT_SYMBOL(mptscsih_shutdown);
+1 -1
drivers/message/fusion/mptscsih.h
··· 131 131 extern int mptscsih_change_queue_depth(struct scsi_device *sdev, int qdepth); 132 132 extern u8 mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id); 133 133 extern int mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id); 134 - extern struct device_attribute *mptscsih_host_attrs[]; 134 + extern const struct attribute_group *mptscsih_host_attr_groups[]; 135 135 extern struct scsi_cmnd *mptscsih_get_scsi_lookup(MPT_ADAPTER *ioc, int i); 136 136 extern void mptscsih_taskmgmt_response_code(MPT_ADAPTER *ioc, u8 response_code); 137 137 extern void mptscsih_flush_running_cmds(MPT_SCSI_HOST *hd);
+1 -1
drivers/message/fusion/mptspi.c
··· 843 843 .sg_tablesize = MPT_SCSI_SG_DEPTH, 844 844 .max_sectors = 8192, 845 845 .cmd_per_lun = 7, 846 - .shost_attrs = mptscsih_host_attrs, 846 + .shost_groups = mptscsih_host_attr_groups, 847 847 }; 848 848 849 849 static int mptspi_write_spi_device_pg1(struct scsi_target *starget,