Russell King <[EMAIL PROTECTED]> wrote:
>
> On Sat, Mar 25, 2006 at 12:24:11PM -0800, [EMAIL PROTECTED] wrote:
> > A consequence of this (actually of the boot_cpu_init() change) is that the
> > architecture _must_ populate cpu_present_map itself (probably in
> > smp_prepare_cpus()).  fixup_cpu_present_map() won't do it any more.
> 
> The other side effect (though less serious) is that smp_prepare_boot_cpu()
> no longer needs to mark the boot cpu in the online and present maps - 
> boot_cpu_init() does that for everyone.

Yup, thanks.

btw, we did that marking of the boot cpu in boot_cpu_init() to make printk
work early in boot.  ia64 needed this, in printk():

        if (!cpu_online(smp_processor_id())) {
                /*
                 * Some console drivers may assume that per-cpu resources have
                 * been allocated.  So don't allow them to be called by this
                 * CPU until it is officially up.  We shouldn't be calling into
                 * random console drivers on a CPU which doesn't exist yet..
                 */
                printk_cpu = UINT_MAX;
                spin_unlock_irqrestore(&logbuf_lock, flags);
                goto out;
        }

So really it's only necessary to mark the boot cpu in cpu_online_map.  But
that's supposed to be a subset of present_map, which is a subset of
possible_map.

-
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to