[PATCH] another minor bit of cpumask cleanup

From: Paul Jackson
Date: Sun Dec 21 2003 - 20:58:35 EST


Ingo Oeser pointed out to me in private email that one of the cpumask
macros was broken - the macro for for_each_online_cpu() starts its loop
with _any_ cpu from the provided mask, and only worries about restricting
itself to _online_ cpus when looping to the next cpu:

include/linux/cpumask.h:
> #define for_each_online_cpu(cpu, map) \
> for (cpu = first_cpu_const(mk_cpumask_const(map)); \
> cpu < NR_CPUS; \
> cpu = next_online_cpu(cpu,map))

Looking further, I see this macro is never used, and its subordinate
inline macro next_online_cpu() used no where else. What's more, it's
redundant. Calling it with a map of "cpu_online_map" (which you have to
do, given it's broken thus) is just as good as calling the macro right
above, "for_each_cpu()", with that same "cpu_online_map". Indeed the
only uses of "for_each_cpu()", in arch/i386/mach-voyager/voyager_smp.c,
do pass "cpu_online_map" explicitly, in 5 of 6 calls there from.

So, having found a piece of code that is broken, redundant and unused,
I hereby off the following patch to remove it.

Thank-you, Ingo.


# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.1497 -> 1.1498
# include/linux/cpumask.h 1.2 -> 1.3
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/12/21 pj@xxxxxxx 1.1498
# Remove a couple unused, redundant, confused macros
# --------------------------------------------
#
diff -Nru a/include/linux/cpumask.h b/include/linux/cpumask.h
--- a/include/linux/cpumask.h Sun Dec 21 17:37:14 2003
+++ b/include/linux/cpumask.h Sun Dec 21 17:37:14 2003
@@ -17,22 +17,9 @@
#define cpu_online(cpu) ({ BUG_ON((cpu) != 0); 1; })
#endif

-static inline int next_online_cpu(int cpu, cpumask_t map)
-{
- do
- cpu = next_cpu_const(cpu, map);
- while (cpu < NR_CPUS && !cpu_online(cpu));
- return cpu;
-}
-
#define for_each_cpu(cpu, map) \
for (cpu = first_cpu_const(map); \
cpu < NR_CPUS; \
cpu = next_cpu_const(cpu,map))
-
-#define for_each_online_cpu(cpu, map) \
- for (cpu = first_cpu_const(map); \
- cpu < NR_CPUS; \
- cpu = next_online_cpu(cpu,map))

#endif /* __LINUX_CPUMASK_H */


--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@xxxxxxx> 1.650.933.1373
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/