[lkml]   [2004]   [Feb]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] ACPI power-off on P4 HT
    My workstation has a problem with power-off as well. It is a dual P3
    (Katmai) Epox motherboard with Intel 440BX chipset. About 50% of the
    time I try powering off the system, the NMI watchdog fires detecting
    CPU1 as locked up. I would be willing to try any patches that may fix
    this, as I miss being able to let my workstation shutdown on it's own.


    On Wed, Feb 25, 2004 at 02:55:01AM -0500, Len Brown wrote:
    > 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:
    > 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
    > >
    > > I need some feedback here. Any suggestions ?
    > >
    > > Regards,
    > > Willy
    > >
    > -
    > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    > the body of a message to
    > More majordomo info at
    > Please read the FAQ at
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 14:01    [W:0.024 / U:8.240 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site