public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 2.6.2-rc1 / ACPI sleep / irqbalance / kirqd / pentium 4 HT problems on Uniwill N258SA0
@ 2004-01-25  5:26 Huw Rogers
  2004-01-25 15:28 ` Zwane Mwaikambo
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Huw Rogers @ 2004-01-25  5:26 UTC (permalink / raw)
  To: linux-kernel, linux-laptop

Uniwill N258SA0 (http://www.uniwill.com/Product/N258SA0/N258SA0.html) aka
Hypersonic Aviator NX6, Fujitsu-Siemens AMILO D 1840 Widescreen, etc.).
SiS 648FX chipset, SiS 900 Ethercard, AMI BIOS, ATI  AV350/M10 128Mb.
My machine: Hyperthreaded P4 2.8GHz, .5Gb PC3200 RAM.

Installed Fedora. Upgraded to 2.6.2-rc1 per
http://thomer.com/linux/migrate-to-2.6.html.

Applied kernel patches:
- SiS AGP (http://lkml.org/lkml/2004/1/20/233)
  (needed to run ATI's 3.7 fglrx drivers on the SiS/M10 combo)
- ACPI 20031203 (http://acpi.sourceforge.net/)

All good, but ACPI sleep doesn't work and neither does userland IRQ
balancing with Arjan's irqbalance (http://people.redhat.com/arjanv/irqbalance/),
a standard part of the Fedora install.

irqbalance just locks up the machine totally, hard power-off needed, no
traces in the logs. Probably some issue (race?) with it writing to
/proc/irq/X/smp_affinity. And how is irqbalance supposed to play with
kirqd anyway? Grepping this list and others doesn't give any kind of an
answer. But disabling it gives all interrupts to cpu0 (looking at
/proc/interrupts). kirqd apparently only balances between CPU packages,
not between HT siblings (info gleaned from this list).

Anyway, sleep/suspend/standby functionality (important to most laptop
users, need to close the lid and go): This checkin to
kernel/power/main.c seems to disable suspend with SMP (!?):

--- 1.3/kernel/power/main.c	Sat Jan 24 20:44:47 2004
+++ 1.4/kernel/power/main.c	Sat Jan 24 20:44:47 2004
@@ -172,6 +172,12 @@
 	if (down_trylock(&pm_sem))
 		return -EBUSY;
 
+	/* Suspend is hard to get right on SMP. */
+	if (num_online_cpus() != 1) {
+		error = -EPERM;
+		goto Unlock;
+	}
+
 	if ((error = suspend_prepare(state)))
 		goto Unlock;

... which, given the prevalence of hyperthreaded CPUs on laptops, is
fighting a trend. I backed out the above with a #if 0 then tried echo -n
1>/proc/acpi/sleep again. This time I got:

Stopping tasks: ===================================================================
 stopping tasks failed (1 tasks remaining)
Restarting tasks...<6> Strange, kirqd not stopped
 done

kirqd just wouldn't stop.

Tried booting with acpi=off and apm=smp to force APM, then ran
apm --suspend, but it put the machine into a LCD blanked state it
couldn't get out of without another hard power cycle.

Questions: Why does irqbalance lock up the machine and how is it
supposed to collaborate with kirqd? How is ACPI suspend supposed to work
on any recent laptop if SMP is barred? Why doesn't kirqd stop when asked
to by ACPI suspend once that restriction is bypassed?

A lot of effort is going into swsusp/pmdisk - but a lot of laptop users
prefer S1 to S4, as it's faster and more reliable. It'd be nice to see a
simpler "spin down the hard drive, reduce CPU clock speed to a minimum,
and power down display/ether/wireless/usb/PCMCIA" working ahead of
hibernation.


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2004-02-17  2:26 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-01-25  5:26 2.6.2-rc1 / ACPI sleep / irqbalance / kirqd / pentium 4 HT problems on Uniwill N258SA0 Huw Rogers
2004-01-25 15:28 ` Zwane Mwaikambo
2004-01-26 23:33 ` bill davidsen
2004-01-27  8:39 ` Pavel Machek
2004-01-27 15:38   ` Bart Samwel
2004-01-27 19:30     ` Nigel Cunningham
     [not found]       ` <37778.199.172.169.20.1075236597.squirrel@webmail.localnet.com>
2004-02-01 21:05         ` APM good, ACPI bad (2.6.2-rc1 / p4 HT / Uniwill N258SA0) Huw Rogers
2004-02-01 22:46           ` Pavel Machek
2004-02-17  2:26           ` 2.6.3-rc3-mm1 - COMPILE FAILURE Huw Rogers
2004-01-27 20:58     ` 2.6.2-rc1 / ACPI sleep / irqbalance / kirqd / pentium 4 HT problems on Uniwill N258SA0 Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox