2021-10-26 13:31:16

by Jiasheng Jiang

[permalink] [raw]
Subject: [PATCH] scsi: fcoe: Fix implicit type conversion

The variable 'selected_cpu' is defined as unsigned int.
However in the cpumask_next() it is implicitly type conversed to
int.
It is universally accepted that the implicit type conversion is
terrible.
Also, having the good programming custom will set an example for
others.
Thus, it might be better to change the definition of 'cpu' from
unsigned int to int.

Fixes: 064287e ("[SCSI] fcoe: Round-robin based selection of CPU for post-processing of incoming commands")
Signed-off-by: Jiasheng Jiang <[email protected]>
---
drivers/scsi/fcoe/fcoe.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c
index 89ec735..2479dc1 100644
--- a/drivers/scsi/fcoe/fcoe.c
+++ b/drivers/scsi/fcoe/fcoe.c
@@ -1311,7 +1311,7 @@ static void fcoe_thread_cleanup_local(unsigned int cpu)
*/
static inline unsigned int fcoe_select_cpu(void)
{
- static unsigned int selected_cpu;
+ static int selected_cpu;

selected_cpu = cpumask_next(selected_cpu, cpu_online_mask);
if (selected_cpu >= nr_cpu_ids)
--
2.7.4