linux/arch/mips
Nick Piggin 5bfb5d690f [PATCH] sched: disable preempt in idle tasks
Run idle threads with preempt disabled.

Also corrected a bugs in arm26's cpu_idle (make it actually call schedule()).
How did it ever work before?

Might fix the CPU hotplugging hang which Nigel Cunningham noted.

We think the bug hits if the idle thread is preempted after checking
need_resched() and before going to sleep, then the CPU offlined.

After calling stop_machine_run, the CPU eventually returns from preemption and
into the idle thread and goes to sleep.  The CPU will continue executing
previous idle and have no chance to call play_dead.

By disabling preemption until we are ready to explicitly schedule, this bug is
fixed and the idle threads generally become more robust.

From: alexs <ashepard@u.washington.edu>

  PPC build fix

From: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>

  MIPS build fix

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-11-09 07:56:33 -08:00
..
arc IP30 Identification. 2005-10-29 19:31:39 +01:00
au1000 Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
boot Add .gitignore files for MIPS. 2005-11-07 18:05:37 +00:00
cobalt Resurrect Cobalt support for 2.6. 2005-10-29 19:30:42 +01:00
configs PNX8550 uses a MIPS32-like processor core, not R4xx0. 2005-11-07 18:05:36 +00:00
ddb5xxx Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
dec Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
galileo-boards/ev96100 Get rid of early_init. There's more need to make this form of 2005-10-29 19:30:18 +01:00
gt64120 Sliceup Kconfig; it's grown too large. 2005-10-29 19:32:41 +01:00
ite-boards Sliceup Kconfig; it's grown too large. 2005-10-29 19:32:41 +01:00
jazz Sliceup Kconfig; it's grown too large. 2005-10-29 19:32:41 +01:00
jmr3927 Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
kernel [PATCH] sched: disable preempt in idle tasks 2005-11-09 07:56:33 -08:00
lasat Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
lib Hack to resolve longstanding prefetch issue 2005-10-29 19:32:50 +01:00
lib-32 Fixup a few lose ends in explicit support for MIPS R1/R2. 2005-10-29 19:32:37 +01:00
lib-64 Fixup a few lose ends in explicit support for MIPS R1/R2. 2005-10-29 19:32:37 +01:00
math-emu Get rid of SINGLE_ONLY_FPU. Linux does not support half FPU other than 2005-10-29 19:32:52 +01:00
mips-boards Support for MIPSsim, the cycle accurate MIPS simulator. 2005-10-29 19:32:30 +01:00
mm [PATCH] mm: init_mm without ptlock 2005-10-29 21:40:40 -07:00
momentum Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
oprofile Fixup a few lose ends in explicit support for MIPS R1/R2. 2005-10-29 19:32:37 +01:00
pci pci-expmem-hack 2005-10-29 19:32:49 +01:00
philips/pnx8550 Philips PNX8550 support: MIPS32-like core with 2 Trimedias on it. 2005-10-29 19:31:54 +01:00
pmc-sierra Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
qemu Implement get_system_type() for Qemu to get procfs-enabled kernels to 2005-10-29 19:32:02 +01:00
sgi-ip22 Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
sgi-ip27 [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
sgi-ip32 Convert struct hw_interrupt_type initializations to ISO C99 named 2005-10-29 19:30:46 +01:00
sibyte Use rtc_lock to protect RTC operations 2005-11-07 18:05:38 +00:00
sni Convert struct hw_interrupt_type initializations to ISO C99 named 2005-10-29 19:30:46 +01:00
tx4927 Sliceup Kconfig; it's grown too large. 2005-10-29 19:32:41 +01:00
tx4938 [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
vr41xx Sliceup Kconfig; it's grown too large. 2005-10-29 19:32:41 +01:00
Kconfig PNX8550 uses a MIPS32-like processor core, not R4xx0. 2005-11-07 18:05:36 +00:00
Kconfig.debug Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Support for BigSur board. 2005-10-29 19:32:47 +01:00
defconfig Update MIPS defconfig files. 2005-10-29 19:32:54 +01:00