* [PATCH] scsi: csiostor: replace snprintf with sysfs_emit
@ 2022-02-09 0:40 davidcomponentone
2022-02-09 2:36 ` Damien Le Moal
0 siblings, 1 reply; 5+ messages in thread
From: davidcomponentone @ 2022-02-09 0:40 UTC (permalink / raw)
To: jejb
Cc: davidcomponentone, martin.petersen, bvanassche, yang.guang5,
jiapeng.chong, linux-scsi, linux-kernel, Zeal Robot
From: Yang Guang <yang.guang5@zte.com.cn>
coccinelle report:
./drivers/scsi/csiostor/csio_scsi.c:1433:8-16:
WARNING: use scnprintf or sprintf
./drivers/scsi/csiostor/csio_scsi.c:1369:9-17:
WARNING: use scnprintf or sprintf
./drivers/scsi/csiostor/csio_scsi.c:1479:8-16:
WARNING: use scnprintf or sprintf
Use sysfs_emit instead of scnprintf or sprintf makes more sense.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Yang Guang <yang.guang5@zte.com.cn>
Signed-off-by: David Yang <davidcomponentone@gmail.com>
---
drivers/scsi/csiostor/csio_scsi.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
index 55db02521221..f9b87ae2aa25 100644
--- a/drivers/scsi/csiostor/csio_scsi.c
+++ b/drivers/scsi/csiostor/csio_scsi.c
@@ -1366,9 +1366,9 @@ csio_show_hw_state(struct device *dev,
struct csio_hw *hw = csio_lnode_to_hw(ln);
if (csio_is_hw_ready(hw))
- return snprintf(buf, PAGE_SIZE, "ready\n");
+ return sysfs_emit(buf, "ready\n");
else
- return snprintf(buf, PAGE_SIZE, "not ready\n");
+ return sysfs_emit(buf, "not ready\n");
}
/* Device reset */
@@ -1430,7 +1430,7 @@ csio_show_dbg_level(struct device *dev,
{
struct csio_lnode *ln = shost_priv(class_to_shost(dev));
- return snprintf(buf, PAGE_SIZE, "%x\n", ln->params.log_level);
+ return sysfs_emit(buf, "%x\n", ln->params.log_level);
}
/* Store debug level */
@@ -1476,7 +1476,7 @@ csio_show_num_reg_rnodes(struct device *dev,
{
struct csio_lnode *ln = shost_priv(class_to_shost(dev));
- return snprintf(buf, PAGE_SIZE, "%d\n", ln->num_reg_rnodes);
+ return sysfs_emit(buf, "%d\n", ln->num_reg_rnodes);
}
static DEVICE_ATTR(num_reg_rnodes, S_IRUGO, csio_show_num_reg_rnodes, NULL);
--
2.30.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] scsi: csiostor: replace snprintf with sysfs_emit
2022-02-09 0:40 [PATCH] scsi: csiostor: replace snprintf with sysfs_emit davidcomponentone
@ 2022-02-09 2:36 ` Damien Le Moal
2022-02-09 3:12 ` Joe Perches
0 siblings, 1 reply; 5+ messages in thread
From: Damien Le Moal @ 2022-02-09 2:36 UTC (permalink / raw)
To: davidcomponentone, jejb
Cc: martin.petersen, bvanassche, yang.guang5, jiapeng.chong,
linux-scsi, linux-kernel, Zeal Robot
On 2/9/22 09:40, davidcomponentone@gmail.com wrote:
> From: Yang Guang <yang.guang5@zte.com.cn>
>
> coccinelle report:
> ./drivers/scsi/csiostor/csio_scsi.c:1433:8-16:
> WARNING: use scnprintf or sprintf
> ./drivers/scsi/csiostor/csio_scsi.c:1369:9-17:
> WARNING: use scnprintf or sprintf
> ./drivers/scsi/csiostor/csio_scsi.c:1479:8-16:
> WARNING: use scnprintf or sprintf
>
> Use sysfs_emit instead of scnprintf or sprintf makes more sense.
>
> Reported-by: Zeal Robot <zealci@zte.com.cn>
> Signed-off-by: Yang Guang <yang.guang5@zte.com.cn>
> Signed-off-by: David Yang <davidcomponentone@gmail.com>
> ---
> drivers/scsi/csiostor/csio_scsi.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
> index 55db02521221..f9b87ae2aa25 100644
> --- a/drivers/scsi/csiostor/csio_scsi.c
> +++ b/drivers/scsi/csiostor/csio_scsi.c
> @@ -1366,9 +1366,9 @@ csio_show_hw_state(struct device *dev,
> struct csio_hw *hw = csio_lnode_to_hw(ln);
>
> if (csio_is_hw_ready(hw))
> - return snprintf(buf, PAGE_SIZE, "ready\n");
> + return sysfs_emit(buf, "ready\n");
> else
> - return snprintf(buf, PAGE_SIZE, "not ready\n");
> + return sysfs_emit(buf, "not ready\n");
While at it, you could remove the useless "else" above.
> }
>
> /* Device reset */
> @@ -1430,7 +1430,7 @@ csio_show_dbg_level(struct device *dev,
> {
> struct csio_lnode *ln = shost_priv(class_to_shost(dev));
>
> - return snprintf(buf, PAGE_SIZE, "%x\n", ln->params.log_level);
> + return sysfs_emit(buf, "%x\n", ln->params.log_level);
> }
>
> /* Store debug level */
> @@ -1476,7 +1476,7 @@ csio_show_num_reg_rnodes(struct device *dev,
> {
> struct csio_lnode *ln = shost_priv(class_to_shost(dev));
>
> - return snprintf(buf, PAGE_SIZE, "%d\n", ln->num_reg_rnodes);
> + return sysfs_emit(buf, "%d\n", ln->num_reg_rnodes);
num_reg_rnodes is uint32_t so the format should use %u.
> }
>
> static DEVICE_ATTR(num_reg_rnodes, S_IRUGO, csio_show_num_reg_rnodes, NULL);
--
Damien Le Moal
Western Digital Research
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] scsi: csiostor: replace snprintf with sysfs_emit
2022-02-09 2:36 ` Damien Le Moal
@ 2022-02-09 3:12 ` Joe Perches
2022-02-09 3:16 ` Damien Le Moal
0 siblings, 1 reply; 5+ messages in thread
From: Joe Perches @ 2022-02-09 3:12 UTC (permalink / raw)
To: Damien Le Moal, davidcomponentone, jejb
Cc: martin.petersen, bvanassche, yang.guang5, jiapeng.chong,
linux-scsi, linux-kernel, Zeal Robot
On Wed, 2022-02-09 at 11:36 +0900, Damien Le Moal wrote:
> On 2/9/22 09:40, davidcomponentone@gmail.com wrote:
> > From: Yang Guang <yang.guang5@zte.com.cn>
> >
> > coccinelle report:
> > ./drivers/scsi/csiostor/csio_scsi.c:1433:8-16:
> > WARNING: use scnprintf or sprintf
> > ./drivers/scsi/csiostor/csio_scsi.c:1369:9-17:
> > WARNING: use scnprintf or sprintf
> > ./drivers/scsi/csiostor/csio_scsi.c:1479:8-16:
> > WARNING: use scnprintf or sprintf
> >
> > Use sysfs_emit instead of scnprintf or sprintf makes more sense.
[]
> > diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
[]
> > @@ -1366,9 +1366,9 @@ csio_show_hw_state(struct device *dev,
> > struct csio_hw *hw = csio_lnode_to_hw(ln);
> >
> > if (csio_is_hw_ready(hw))
> > - return snprintf(buf, PAGE_SIZE, "ready\n");
> > + return sysfs_emit(buf, "ready\n");
> > else
> > - return snprintf(buf, PAGE_SIZE, "not ready\n");
> > + return sysfs_emit(buf, "not ready\n");
>
> While at it, you could remove the useless "else" above.
Or not. It's fine as is. It's just a style preference.
Another style option would be to use a ?: like any of
return sysfs_emit(buf, "%sready\n", csio_is_hw_ready(hw) ? "" : "not ");
or
return sysfs_emit(buf, "%s\n", csio_is_hw_ready(hw) ? "ready" : "not ready");
or
return sysfs_emit(buf, csio_is_hw_ready(hw) ? "ready\n" : "not ready\n");
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] scsi: csiostor: replace snprintf with sysfs_emit
2022-02-09 3:12 ` Joe Perches
@ 2022-02-09 3:16 ` Damien Le Moal
2022-02-09 3:34 ` Damien Le Moal
0 siblings, 1 reply; 5+ messages in thread
From: Damien Le Moal @ 2022-02-09 3:16 UTC (permalink / raw)
To: Joe Perches, davidcomponentone, jejb
Cc: martin.petersen, bvanassche, yang.guang5, jiapeng.chong,
linux-scsi, linux-kernel, Zeal Robot
On 2022/02/09 12:12, Joe Perches wrote:
> On Wed, 2022-02-09 at 11:36 +0900, Damien Le Moal wrote:
>> On 2/9/22 09:40, davidcomponentone@gmail.com wrote:
>>> From: Yang Guang <yang.guang5@zte.com.cn>
>>>
>>> coccinelle report:
>>> ./drivers/scsi/csiostor/csio_scsi.c:1433:8-16:
>>> WARNING: use scnprintf or sprintf
>>> ./drivers/scsi/csiostor/csio_scsi.c:1369:9-17:
>>> WARNING: use scnprintf or sprintf
>>> ./drivers/scsi/csiostor/csio_scsi.c:1479:8-16:
>>> WARNING: use scnprintf or sprintf
>>>
>>> Use sysfs_emit instead of scnprintf or sprintf makes more sense.
> []
>>> diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
> []
>>> @@ -1366,9 +1366,9 @@ csio_show_hw_state(struct device *dev,
>>> struct csio_hw *hw = csio_lnode_to_hw(ln);
>>>
>>> if (csio_is_hw_ready(hw))
>>> - return snprintf(buf, PAGE_SIZE, "ready\n");
>>> + return sysfs_emit(buf, "ready\n");
>>> else
>>> - return snprintf(buf, PAGE_SIZE, "not ready\n");
>>> + return sysfs_emit(buf, "not ready\n");
>>
>> While at it, you could remove the useless "else" above.
>
> Or not. It's fine as is. It's just a style preference.
It is. I dislike the useless line of code in this case :)
>
> Another style option would be to use a ?: like any of
>
> return sysfs_emit(buf, "%sready\n", csio_is_hw_ready(hw) ? "" : "not ");
> or
> return sysfs_emit(buf, "%s\n", csio_is_hw_ready(hw) ? "ready" : "not ready");
> or
> return sysfs_emit(buf, csio_is_hw_ready(hw) ? "ready\n" : "not ready\n");
That is nice and can make that
return sysfs_emit(buf, "%sready\n", csio_is_hw_ready(hw) ? "" : "not ");
too :)
--
Damien Le Moal
Western Digital Research
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] scsi: csiostor: replace snprintf with sysfs_emit
2022-02-09 3:16 ` Damien Le Moal
@ 2022-02-09 3:34 ` Damien Le Moal
0 siblings, 0 replies; 5+ messages in thread
From: Damien Le Moal @ 2022-02-09 3:34 UTC (permalink / raw)
To: Joe Perches, davidcomponentone, jejb
Cc: martin.petersen, bvanassche, yang.guang5, jiapeng.chong,
linux-scsi, linux-kernel, Zeal Robot
On 2022/02/09 12:16, Damien Le Moal wrote:
> On 2022/02/09 12:12, Joe Perches wrote:
>> On Wed, 2022-02-09 at 11:36 +0900, Damien Le Moal wrote:
>>> On 2/9/22 09:40, davidcomponentone@gmail.com wrote:
>>>> From: Yang Guang <yang.guang5@zte.com.cn>
>>>>
>>>> coccinelle report:
>>>> ./drivers/scsi/csiostor/csio_scsi.c:1433:8-16:
>>>> WARNING: use scnprintf or sprintf
>>>> ./drivers/scsi/csiostor/csio_scsi.c:1369:9-17:
>>>> WARNING: use scnprintf or sprintf
>>>> ./drivers/scsi/csiostor/csio_scsi.c:1479:8-16:
>>>> WARNING: use scnprintf or sprintf
>>>>
>>>> Use sysfs_emit instead of scnprintf or sprintf makes more sense.
>> []
>>>> diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
>> []
>>>> @@ -1366,9 +1366,9 @@ csio_show_hw_state(struct device *dev,
>>>> struct csio_hw *hw = csio_lnode_to_hw(ln);
>>>>
>>>> if (csio_is_hw_ready(hw))
>>>> - return snprintf(buf, PAGE_SIZE, "ready\n");
>>>> + return sysfs_emit(buf, "ready\n");
>>>> else
>>>> - return snprintf(buf, PAGE_SIZE, "not ready\n");
>>>> + return sysfs_emit(buf, "not ready\n");
>>>
>>> While at it, you could remove the useless "else" above.
>>
>> Or not. It's fine as is. It's just a style preference.
>
> It is. I dislike the useless line of code in this case :)
>
>>
>> Another style option would be to use a ?: like any of
>>
>> return sysfs_emit(buf, "%sready\n", csio_is_hw_ready(hw) ? "" : "not ");
>> or
>> return sysfs_emit(buf, "%s\n", csio_is_hw_ready(hw) ? "ready" : "not ready");
>> or
>> return sysfs_emit(buf, csio_is_hw_ready(hw) ? "ready\n" : "not ready\n");
>
> That is nice and can make that
>
> return sysfs_emit(buf, "%sready\n", csio_is_hw_ready(hw) ? "" : "not ");
Oops. You did have that one listed... Read too quickly...
>
> too :)
>
--
Damien Le Moal
Western Digital Research
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-02-09 4:12 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-09 0:40 [PATCH] scsi: csiostor: replace snprintf with sysfs_emit davidcomponentone
2022-02-09 2:36 ` Damien Le Moal
2022-02-09 3:12 ` Joe Perches
2022-02-09 3:16 ` Damien Le Moal
2022-02-09 3:34 ` Damien Le Moal
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox