Messages in this thread | | | Date | Tue, 16 Sep 2008 19:48:00 +0200 | From | Manfred Spraul <> | Subject | Re: [PATCH, RFC] v4 scalable classic RCU implementation |
| |
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
| |