summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2006-03-25 03:08:09 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-25 08:22:59 -0800
commit3d18bd74a22d0bed3bc81fc64c4ba6344a10f155 (patch)
tree414b44796651db833481e17030f0b18a1be3527b
parentccb46000f4bb459777686611157ac0eac928704e (diff)
downloadlinux-stable-3d18bd74a22d0bed3bc81fc64c4ba6344a10f155.tar.gz
linux-stable-3d18bd74a22d0bed3bc81fc64c4ba6344a10f155.tar.bz2
linux-stable-3d18bd74a22d0bed3bc81fc64c4ba6344a10f155.zip
[PATCH] cpumask: uninline next_cpu()
text data bss dec hex filename before: 3488027 1322496 360128 5170651 4ee5db vmlinux after: 3485112 1322480 359968 5167560 4ed9c8 vmlinux 2931 bytes saved Cc: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--include/linux/cpumask.h11
-rw-r--r--lib/cpumask.c5
2 files changed, 9 insertions, 7 deletions
diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h
index 9b702fd24a72..4b29e508a0b6 100644
--- a/include/linux/cpumask.h
+++ b/include/linux/cpumask.h
@@ -215,16 +215,13 @@ static inline void __cpus_shift_left(cpumask_t *dstp,
#ifdef CONFIG_SMP
int __first_cpu(const cpumask_t *srcp);
#define first_cpu(src) __first_cpu(&(src))
+int __next_cpu(int n, const cpumask_t *srcp);
+#define next_cpu(n, src) __next_cpu((n), &(src))
#else
-#define first_cpu(src) 0
+#define first_cpu(src) 0
+#define next_cpu(n, src) 1
#endif
-#define next_cpu(n, src) __next_cpu((n), &(src), NR_CPUS)
-static inline int __next_cpu(int n, const cpumask_t *srcp, int nbits)
-{
- return min_t(int, nbits, find_next_bit(srcp->bits, nbits, n+1));
-}
-
#define cpumask_of_cpu(cpu) \
({ \
typeof(_unused_cpumask_arg_) m; \
diff --git a/lib/cpumask.c b/lib/cpumask.c
index 1560d97390dd..ba2f8543052c 100644
--- a/lib/cpumask.c
+++ b/lib/cpumask.c
@@ -9,3 +9,8 @@ int __first_cpu(const cpumask_t *srcp)
}
EXPORT_SYMBOL(__first_cpu);
+int __next_cpu(int n, const cpumask_t *srcp)
+{
+ return min_t(int, NR_CPUS, find_next_bit(srcp->bits, NR_CPUS, n+1));
+}
+EXPORT_SYMBOL(__next_cpu);