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
History
File Mode Size
audiochip.h -rw-r--r-- 460 bytes
cs5345.h -rw-r--r-- 1.2 KB
cs53l32a.h -rw-r--r-- 1.2 KB
cx2341x.h -rw-r--r-- 7.0 KB
cx25840.h -rw-r--r-- 2.4 KB
i2c-addr.h -rw-r--r-- 1.3 KB
ir-common.h -rw-r--r-- 5.8 KB
ir-kbd-i2c.h -rw-r--r-- 599 bytes
m52790.h -rw-r--r-- 2.7 KB
msp3400.h -rw-r--r-- 8.3 KB
ovcamchip.h -rw-r--r-- 2.5 KB
pwc-ioctl.h -rw-r--r-- 10.5 KB
rds.h -rw-r--r-- 1.3 KB
saa6752hs.h -rw-r--r-- 887 bytes
saa7115.h -rw-r--r-- 1.8 KB
saa7127.h -rw-r--r-- 1.2 KB
saa7146.h -rw-r--r-- 17.7 KB
saa7146_vv.h -rw-r--r-- 7.5 KB
tuner-types.h -rw-r--r-- 4.5 KB
tuner.h -rw-r--r-- 7.2 KB
tvaudio.h -rw-r--r-- 1.0 KB
tveeprom.h -rw-r--r-- 716 bytes
tvp5150.h -rw-r--r-- 1.0 KB
upd64031a.h -rw-r--r-- 1.3 KB
upd64083.h -rw-r--r-- 2.2 KB
v4l2-chip-ident.h -rw-r--r-- 4.4 KB
v4l2-common.h -rw-r--r-- 9.9 KB
v4l2-dev.h -rw-r--r-- 14.0 KB
v4l2-i2c-drv-legacy.h -rw-r--r-- 4.3 KB
v4l2-i2c-drv.h -rw-r--r-- 2.2 KB
v4l2-int-device.h -rw-r--r-- 6.8 KB
videobuf-core.h -rw-r--r-- 7.1 KB
videobuf-dma-sg.h -rw-r--r-- 3.8 KB
videobuf-dvb.h -rw-r--r-- 932 bytes
videobuf-vmalloc.h -rw-r--r-- 1.2 KB
wm8775.h -rw-r--r-- 1.2 KB

back to top