The variable 'cpu' is defined as unsigned int.
However in the for_each_cpu, its values is assigned to -1.
That doesn't make sense and 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.
Signed-off-by: Jiasheng Jiang <[email protected]>
---
kernel/stop_machine.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
index cbc3027..db6ea9f 100644
--- a/kernel/stop_machine.c
+++ b/kernel/stop_machine.c
@@ -393,7 +393,7 @@ static bool queue_stop_cpus_work(const struct cpumask *cpumask,
struct cpu_stop_done *done)
{
struct cpu_stop_work *work;
- unsigned int cpu;
+ int cpu;
bool queued = false;
/*
--
2.7.4