Messages in this thread | | | From | Andrew Paprocki <> | Subject | Re: [RFC PATCH 0/1]: timers: Timer Migration | Date | Wed, 17 Sep 2008 07:35:04 +0000 (UTC) |
| |
Peter Zijlstra <a.p.zijlstra <at> chello.nl> writes:
> This seems like an exceedingly dumb idea - cpu 0 might be a long long > way from x and by pushing all timers to cpu0 you might actually overload > cpu 0.
You have to give credit to Solaris for doing that first :). They implemented usleep() using nanosleep() which uses the kernel callout queue. That queue is single threaded and only processed on CPU0 in the clock interrupt handler, causing CPU0 to spin 100% if enough calls to usleep() are made across the system.
http://bugs.opensolaris.org/view_bug.do?bug_id=6565503
-Andrew
| |