Re: init and zap low address mappings on demand for cpu hotplug

From: Andi Kleen
Date: Thu Sep 22 2005 - 04:48:42 EST


On Wed, Sep 21, 2005 at 01:57:31PM -0700, Ashok Raj wrote:
> Hi,
>
> to simplyfy cpu hotplug we didnt zap low mem address since we would require
> them post boot to bringup a new cpu. This caused bad effects when
> Suresh was testing some new code. More below.

This seems racy - how do you prevent udev running on another
CPU while another CPU boots? I suspect you need additional locks
to plug this race. Or use a fresh mm cloned from init_mm mm to do the
CPU bootup.

I don't like zap_low_first_time - it shouldn't be needed. In general
people have been complaining on i386 and x86-64 that we don't
unmap NULL early, so we don't catch bugs that happen on other
architectures.

Using a fresh mm for smp bootup would solve this nicely - one could
zap init_mm really early after entering from head.S and then
only ever undo it in private mms for smp bootup.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/