On Mon, 2007-07-23 at 02:26 +0100, TJ wrote:
> I'm currently debugging a weird issue where the PC appears to be
> attempting to S3 suspend prematurely in acpi_enter_sleep_state().

I added further debug messages to acpi_enter_sleep_state() and found
that the issue occurs when ACPI_FLUSH_CPU_CACHE() is called.

The log shows:

kernel: [  251.532000]  hwsleep-0285 [03] enter_sleep_state     :
Entering sleep state [S3]
kernel: [  251.532000]  hwsleep-0308 [03] enter_sleep_state     :
Writing PM1A (SLP_TYP data) 1401
kernel: [  251.532000]  hwsleep-0319 [03] enter_sleep_state     :
Writing PM1B (SLP_TYP data) 1401
kernel: [  251.532000]  hwsleep-0326 [03] enter_sleep_state     : Just
written PM1B (SLP_TYP data). status=0x0
kernel: [  251.532000]  hwsleep-0343 [03] enter_sleep_state     : About
to flush CPU cache
kernel: [  251.532000] Back to C!

The standard kernel build uses CONFIG_PARAVIRT so it appears that
paravirt_ops.wbinvd() is used to handle the flush.

I'm building a kernel without PARAVIRT now to see if it is the issue,
but I'm still in the dark as to why this would happen.

TJ.

---drivers/acpi/hardware/hwsleep.c::acpi_enter_sleep_state()----

        /* Write #2: SLP_TYP + SLP_EN */
#ifdef DEBUG_RESUME
 ACPI_DEBUG_PRINT((ACPI_DB_INIT, "About to flush CPU cache\n"));
#endif

        ACPI_FLUSH_CPU_CACHE();

#ifdef DEBUG_RESUME
 ACPI_DEBUG_PRINT((ACPI_DB_INIT, "Writing PM1A (SLP_TYP + SLP_EN) %x\n",
PM1Acontrol));
#endif
 

-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to