Re: [patch v2] LMB: Add basic spin locking to lmb

From: Benjamin Herrenschmidt
Date: Mon May 19 2008 - 22:33:22 EST



On Mon, 2008-05-19 at 19:22 -0700, David Miller wrote:
> From: Geoff Levand <geoffrey.levand@xxxxxxxxxxx>
> Date: Mon, 19 May 2008 17:55:45 -0700
>
> > Add a spinlock to struct lmb to enforce concurrency in
> > lmb_add(), lmb_remove(), lmb_analyze(), lmb_find(), and
> > lmb_dump_all().
> >
> > This locking is needed for SMP systems that access the lmb structure
> > during hot memory add and remove operations after secondary cpus
> > have been started.
> >
> > Signed-off-by: Geoff Levand <geoffrey.levand@xxxxxxxxxxx>
> > ---
> >
> > v2: o Add locking to lmb_find().
>
> I'm not against this patch, but I'm pretty sure it's not
> necessary. Isn't memory hotplug already synchronized at
> a higher level?
>
> If not, it should be.

I think the core memory hotplug is... However, we used to not change the
LMB when doing so (afaik, I'm travelling and not looking at the code
right now). However, things like PS3 memory hotplug tries to keep LMB is
sync for the sake of /dev/mem or similar and that happens before the
memory is added to the core.

Ben.


--
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/