On Fri, Jul 17, 2015 at 02:39:13PM +0100, Mel Gorman wrote: > I'm don't know and no longer have access to the necessary machine to test > any more. You make a reasonable point and I would be surprised if it was > noticable. On the other hand, conditional locking is evil and the patch > reflected my thinking at the time "we don't need locks during boot". It's > the type of thinking that should be backed with figures if it was to be > used at all so lets go with;
Last time I tested it, an uncontended spinlock (cache hot) ran around 20 cycles, the unlock is a regular store (x86) and in single digit cycles. I doubt modern hardware makes it go slower. > ---8<--- > mm, meminit: Allow early_pfn_to_nid to be used during runtime v2 > > early_pfn_to_nid historically was inherently not SMP safe but only > used during boot which is inherently single threaded or during hotplug > which is protected by a giant mutex. With deferred memory initialisation > there was a thread-safe version introduced and the early_pfn_to_nid > would trigger a BUG_ON if used unsafely. Memory hotplug hit that check. > This patch makes early_pfn_to_nid introduces a lock to make it safe to > use during hotplug. > > Reported-and-tested-by: Alex Ng <[email protected]> > Signed-off-by: Mel Gorman <[email protected]> Acked-by: Peter Zijlstra (Intel) <[email protected]> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

