Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccb46000 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds
Browse files

[PATCH] cpumask: uninline first_cpu()



           text    data     bss     dec     hex filename
before: 3490577 1322408  360000 5172985  4eeef9 vmlinux
after:  3488027 1322496  360128 5170651  4ee5db vmlinux

Cc: Paul Jackson <pj@sgi.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 64b91379
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -212,11 +212,12 @@ static inline void __cpus_shift_left(cpumask_t *dstp,
	bitmap_shift_left(dstp->bits, srcp->bits, n, nbits);
}

#define first_cpu(src) __first_cpu(&(src), NR_CPUS)
static inline int __first_cpu(const cpumask_t *srcp, int nbits)
{
	return min_t(int, nbits, find_first_bit(srcp->bits, nbits));
}
#ifdef CONFIG_SMP
int __first_cpu(const cpumask_t *srcp);
#define first_cpu(src) __first_cpu(&(src))
#else
#define first_cpu(src)	0
#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)
+2 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@ lib-y := errno.o ctype.o string.o vsprintf.o cmdline.o \
	 idr.o div64.o int_sqrt.o bitmap.o extable.o prio_tree.o \
	 sha1.o

lib-$(CONFIG_SMP) += cpumask.o

lib-y	+= kobject.o kref.o kobject_uevent.o klist.o

obj-y += sort.o parser.o halfmd4.o iomap_copy.o

lib/cpumask.c

0 → 100644
+11 −0
Original line number Diff line number Diff line
#include <linux/kernel.h>
#include <linux/bitops.h>
#include <linux/cpumask.h>
#include <linux/module.h>

int __first_cpu(const cpumask_t *srcp)
{
	return min_t(int, NR_CPUS, find_first_bit(srcp->bits, NR_CPUS));
}
EXPORT_SYMBOL(__first_cpu);