RE: [PATCH v2 12/25] scsi: snic: Convert sprintf() family to sysfs_emit() family

From: Karan Tilak Kumar (kartilak)
Date: Tue Mar 19 2024 - 19:40:29 EST


On Monday, March 18, 2024 11:31 PM, Li Zhijian <lizhijian@xxxxxxxxxxx> wrote:
>
> Per filesystems/sysfs.rst, show() should only use sysfs_emit() or sysfs_emit_at() when formatting the value to be returned to user space.
>
> coccinelle complains that there are still a couple of functions that use snprintf(). Convert them to sysfs_emit().
>
> sprintf() and scnprintf() will be converted as well if they have.
>
> Generally, this patch is generated by
> make coccicheck M=<path/to/file> MODE=patch \ COCCI=scripts/coccinelle/api/device_attr_show.cocci
>
> No functional change intended
>
> CC: Karan Tilak Kumar <kartilak@xxxxxxxxx>
> CC: Sesidhar Baddela <sebaddel@xxxxxxxxx>
> CC: "James E.J. Bottomley" <jejb@xxxxxxxxxxxxx>
> CC: "Martin K. Petersen" <martin.petersen@xxxxxxxxxx>
> CC: linux-scsi@xxxxxxxxxxxxxxx
> Signed-off-by: Li Zhijian <lizhijian@xxxxxxxxxxx>
> ---
> This is a part of the work "Fix coccicheck device_attr_show warnings"[1] Split them per subsystem so that the maintainer can review it easily [1] https://lore.kernel.org/lkml/20240116041129.3937800-1-lizhijian@xxxxxxxxxxx/
> ---
> drivers/scsi/snic/snic_attrs.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/scsi/snic/snic_attrs.c b/drivers/scsi/snic/snic_attrs.c index 3ddbdbc3ded1..48bf82d042b4 100644
> --- a/drivers/scsi/snic/snic_attrs.c
> +++ b/drivers/scsi/snic/snic_attrs.c
> @@ -13,7 +13,7 @@ snic_show_sym_name(struct device *dev, {
> struct snic *snic = shost_priv(class_to_shost(dev));
>
> - return snprintf(buf, PAGE_SIZE, "%s\n", snic->name);
> + return sysfs_emit(buf, "%s\n", snic->name);
> }
>
> static ssize_t
> @@ -23,8 +23,7 @@ snic_show_state(struct device *dev, {
> struct snic *snic = shost_priv(class_to_shost(dev));
>
> - return snprintf(buf, PAGE_SIZE, "%s\n",
> - snic_state_str[snic_get_state(snic)]);
> + return sysfs_emit(buf, "%s\n", snic_state_str[snic_get_state(snic)]);
> }
>
> static ssize_t
> @@ -32,7 +31,7 @@ snic_show_drv_version(struct device *dev,
> struct device_attribute *attr,
> char *buf)
> {
> - return snprintf(buf, PAGE_SIZE, "%s\n", SNIC_DRV_VERSION);
> + return sysfs_emit(buf, "%s\n", SNIC_DRV_VERSION);
> }
>
> static ssize_t
> @@ -45,8 +44,8 @@ snic_show_link_state(struct device *dev,
> if (snic->config.xpt_type == SNIC_DAS)
> snic->link_status = svnic_dev_link_status(snic->vdev);
>
> - return snprintf(buf, PAGE_SIZE, "%s\n",
> - (snic->link_status) ? "Link Up" : "Link Down");
> + return sysfs_emit(buf, "%s\n",
> + (snic->link_status) ? "Link Up" : "Link Down");
> }
>
> static DEVICE_ATTR(snic_sym_name, S_IRUGO, snic_show_sym_name, NULL);
> --
> 2.29.2
>
>

Reviewed-by: Karan Tilak Kumar <kartilak@xxxxxxxxx>

Regards,
Karan