浏览代码

[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>
Andrew Morton 19 年之前
父节点
当前提交
3d18bd74a2
共有 2 个文件被更改,包括 9 次插入7 次删除
  1. 4 7
      include/linux/cpumask.h
  2. 5 0
      lib/cpumask.c

+ 4 - 7
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;					\

+ 5 - 0
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);