From: Len Brown <len.brown@intel.com>
To: Willy Tarreau <willy@w.ods.org>
Cc: Marcelo Tosatti <marcelo.tosatti@cyclades.com.br>,
linux-kernel@vger.kernel.org,
ACPI Developers <acpi-devel@lists.sourceforge.net>
Subject: Re: [RFC] ACPI power-off on P4 HT
Date: 25 Feb 2004 02:55:01 -0500 [thread overview]
Message-ID: <1077695701.5911.130.camel@dhcppc4> (raw)
In-Reply-To: <20040225070019.GA30971@alpha.home.local>
Willy,
I do think we need a generic way to be sure that certain routines are
run only on cpu0.
I don't see it in the ACPI spec, but it seems that on some platforms,
some register accesses (such as writing to the sleep control reg) are
reliable only when accessed from cpu0.
This issue has been with us for some time:
http://bugzilla.kernel.org/show_bug.cgi?id=1141
I am hopeful that the prepare-shutdown sequence you suggest below will
not be necessary.
thanks,
-Len
On Wed, 2004-02-25 at 02:00, Willy Tarreau wrote:
> Hi Len & Marcelo,
>
> as I previously said, the patch I sent which fixes the poweroff on my VAIO is
> not enough to shut down the supermicro P4 HT. So I borrowed some code from
> machine_restart() to try to :
> - disable APIC => was not enough, but I must retry on the VAIO
> - stop the second CPU => was not enough either
> - bounce on boot_cpu and stop the others => it did work.
>
> So I think that ACPI is not SMP-proof nor HT-proof on some hardware. My new
> problem is that I feel like the code I have included in acpi_power_off() to
> do this is a bit too much x86 specific, so I'd like to move this to
> arch/i386/kernel/process.c with all the rest, but I don't know how to cut
> this. I think that a general function such as machine_prepare_shutdown() or
> something like this would be useful and could be shared by both ACPI and
> machine_restart(). It would basically to everything that is needed in such
> a case :
> - on SMP, bounce on boot_cpu, then halt the current CPU if != boot_cpu
> - on SMP, stop all other CPUs
> - on UP, disable IOAPIC
> - disable local APIC
>
> I suspect that this function would be useful for some suspend cases, but I'm
> not sure. My other problem is to know what we should do then with other
> arches. Create an identical function for everyone, or just call it from
> ACPI on CONFIG_X86, or even add a CONFIG_MACHINE_PREPARE_SHUTDOWN ?
>
> I need some feedback here. Any suggestions ?
>
> Regards,
> Willy
>
next prev parent reply other threads:[~2004-02-25 7:55 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-07 9:10 [BKPATCH] ACPI for 2.4 Len Brown
2004-02-08 8:20 ` Willy Tarreau
2004-02-08 9:08 ` Willy Tarreau
[not found] ` <20040214081726.GH29363@alpha.home.local>
[not found] ` <1076824106.25344.78.camel@dhcppc4>
2004-02-25 7:00 ` [RFC] ACPI power-off on P4 HT Willy Tarreau
2004-02-25 7:55 ` Len Brown [this message]
2004-02-25 16:13 ` Zwane Mwaikambo
2004-02-26 7:56 ` Gregory Finch
2004-02-26 10:57 ` Willy Tarreau
2004-02-26 12:28 ` Stian Jordet
2004-02-26 13:07 ` Willy Tarreau
2004-02-26 13:29 ` Stian Jordet
2004-02-26 13:16 ` Pavel Machek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1077695701.5911.130.camel@dhcppc4 \
--to=len.brown@intel.com \
--cc=acpi-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.tosatti@cyclades.com.br \
--cc=willy@w.ods.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox