cpumask: use cpumask_next_zero() function

There is one case where a temporary cpumask is used to provide the
next "empty" or zero bit in a mask.  Add a simple helper to remove
the need for this.

Signed-off-by: Mike Travis <travis@sgi.com>
---
 arch/x86/kernel/apic.c |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

--- linux-2.6.28.orig/arch/x86/kernel/apic.c
+++ linux-2.6.28/arch/x86/kernel/apic.c
@@ -1832,7 +1832,6 @@ void disconnect_bsp_APIC(int virt_wire_s
 void __cpuinit generic_processor_info(int apicid, int version)
 {
 	int cpu;
-	cpumask_t tmp_map;
 
 	/*
 	 * Validate version
@@ -1852,8 +1851,7 @@ void __cpuinit generic_processor_info(in
 	}
 
 	num_processors++;
-	cpus_complement(tmp_map, cpu_present_map);
-	cpu = first_cpu(tmp_map);
+	cpu = cpumask_next_zero(-1, cpu_present_mask);
 
 	physid_set(apicid, phys_cpu_present_map);
 	if (apicid == boot_cpu_physical_apicid) {
