Re: [PATCH, RFC] v4 scalable classic RCU implementation

From: Manfred Spraul
Date: Tue Sep 16 2008 - 13:47:53 EST


Paul E. McKenney wrote:
That means an O(NR_CPUS) loop with disabled local interrupts :-(
Is that correct?

With the definition of "O()" being the worst-case execution time, yes.
But this worst case could only happen when the system was mostly idle,
in which case the added overhead should not be too horribly bad.
No: "was mostly running cpu_idle()". A cpu_idle() cpu could execute lots of irqs and softirqs.
So the worst case would be a system with 1 cpu/node for reserved for irq handling.
The "idle" cpu would be always in no_hz mode, even though it might be 100% busy handling irqs.
The remaning cpus might be 100% busy handling user space.

And every quiescent state will end up in that O(NR_CPUS) loop.

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