Re: Suspend to ram regression (2.6.24-rc1-git)

From: Jens Axboe
Date: Thu Nov 01 2007 - 05:28:00 EST


On Thu, Nov 01 2007, Jens Axboe wrote:
> On Thu, Nov 01 2007, Jens Axboe wrote:
> > On Wed, Oct 31 2007, Jens Axboe wrote:
> > > Hi,
> > >
> > > My x60 stopped suspending about two days ago. It just freezes after
> > > printing
> > >
> > > Suspending console(s)
> > >
> > > where it would normally turn everything off and the 'moon' light would
> > > go on. Posting this message in case somebody else knows what is up, if
> > > not I'll do a bisect on it tomorrow.
> >
> > Did the bisect, it points to this commit:
> >
> > 1556594f913fa81d008cecfe46d7211c919a853 is first bad commit
> > commit 31556594f913fa81d008cecfe46d7211c919a853
> > Author: Kristen Carlson Accardi <kristen.c.accardi@xxxxxxxxx>
> > Date: Thu Oct 25 01:33:26 2007 -0400
> >
> > [libata] AHCI: add hw link power management support
> >
> > Booting any kernel after this commit fails suspending to ram, it just
> > sits there forever.
>
> Reverting just the default AHCI flags makes it work again. IOW, with the
> below patch I can suspend properly with current -git.
>
> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
> index ed9b407..77f7631 100644
> --- a/drivers/ata/ahci.c
> +++ b/drivers/ata/ahci.c
> @@ -190,8 +190,7 @@ enum {
>
> AHCI_FLAG_COMMON = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY |
> ATA_FLAG_MMIO | ATA_FLAG_PIO_DMA |
> - ATA_FLAG_ACPI_SATA | ATA_FLAG_AN |
> - ATA_FLAG_IPM,
> + ATA_FLAG_ACPI_SATA | ATA_FLAG_AN,
> AHCI_LFLAG_COMMON = ATA_LFLAG_SKIP_D2H_BSY,
> };

I should also mention that just stubbing out ahci_enable_alpm() and
ahci_disable_alpm() in ahci.c is NOT enough to make it work.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/