Revision 783e391b7b5b273cd20856d8f6f4878da8ec31b3 authored by Venki Pallipadi on 10 April 2008, 16:49:58 UTC, committed by Linus Torvalds on 10 April 2008, 22:38:29 UTC
This patch also resolves hangs on boot: http://lkml.org/lkml/2008/2/23/263 http://bugzilla.kernel.org/show_bug.cgi?id=10093 The bug was causing once-in-few-reboots 10-15 sec wait during boot on certain laptops. Earlier commit 40d6a146629b98d8e322b6f9332b182c7cbff3df added smp_call_function in cpu_idle_wait() to kick cpus that are in tickless idle. Looking at cpu_idle_wait code at that time, code seemed to be over-engineered for a case which is rarely used (while changing idle handler). Below is a simplified version of cpu_idle_wait, which just makes a dummy smp_call_function to all cpus, to make them come out of old idle handler and start using the new idle handler. It eliminates code in the idle loop to handle cpu_idle_wait. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent a1e58bb
File | Mode | Size |
---|---|---|
Kconfig | -rw-r--r-- | 27.8 KB |
Makefile | -rw-r--r-- | 1.1 KB |
calibrate.c | -rw-r--r-- | 4.7 KB |
do_mounts.c | -rw-r--r-- | 8.1 KB |
do_mounts.h | -rw-r--r-- | 1.4 KB |
do_mounts_initrd.c | -rw-r--r-- | 3.2 KB |
do_mounts_md.c | -rw-r--r-- | 7.3 KB |
do_mounts_rd.c | -rw-r--r-- | 10.0 KB |
initramfs.c | -rw-r--r-- | 11.8 KB |
main.c | -rw-r--r-- | 20.3 KB |
noinitramfs.c | -rw-r--r-- | 1.4 KB |
version.c | -rw-r--r-- | 1009 bytes |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...