linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [2.6.0-test4] IDE power management
@ 2003-08-29 18:49 cb-lkml
  2003-08-31  7:46 ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 3+ messages in thread
From: cb-lkml @ 2003-08-29 18:49 UTC (permalink / raw)
  To: linux-kernel


Since 2.6.0-test4, and in -mmX IDE power management no longer works for
me.  Using Fn+F12 to initiate APM suspend-to-disk, the suspend starts as
normal, then the disk spins down, which is wrong, because the disk spins
up again to perform the actual save-to-disk operation.

The laptop is a Sony Vaio 333MHz celeron, with a PIIX4 IDE controller.

This used to work fine in all previous kernels.

I get the following log messages:

hda: start_power_step(step: 0)
hda: start_power_step(step: 1)
hda: complete_power_step(step: 1, stat: 50, err:0)
hda: completing PM request, suspend
hda: a request made it's way while we are power managing
--- power down/up occurs here
hda: Wakeup request inited, waiting for !BSY...
hda: start_power_step(step: 1000)
hda: completing PM request, resume
...
hda: lost interrupt

The hard disk won't allow any accesses any more.

APM suspend to RAM doesn't work properly on this machine, so I haven't
tested that.

Charlie

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

* Re: [2.6.0-test4] IDE power management
  2003-08-29 18:49 [2.6.0-test4] IDE power management cb-lkml
@ 2003-08-31  7:46 ` Benjamin Herrenschmidt
  2003-10-22  8:40   ` Charlie Baylis
  0 siblings, 1 reply; 3+ messages in thread
From: Benjamin Herrenschmidt @ 2003-08-31  7:46 UTC (permalink / raw)
  To: cb-lkml; +Cc: linux-kernel mailing list


> hda: start_power_step(step: 0)
> hda: start_power_step(step: 1)
> hda: complete_power_step(step: 1, stat: 50, err:0)
> hda: completing PM request, suspend
> hda: a request made it's way while we are power managing
> --- power down/up occurs here
> hda: Wakeup request inited, waiting for !BSY...
> hda: start_power_step(step: 1000)
> hda: completing PM request, resume
> ...
> hda: lost interrupt
> 
> The hard disk won't allow any accesses any more.
> 
> APM suspend to RAM doesn't work properly on this machine, so I haven't
> tested that.

I'm afraid we may have APM junk getting in our way. It would be
interesting to check out what is the request that made its way while
power managing, though I usually consider this is harmless...

The lost interrupt problem may or may not be related, it could well
be an IRQ routing problem as well. Did you have DMA enabled ? What
happens if you disable that before suspend ? You can also add some
printk to piix_config_drive_xfer_rate() in piix.c to check if that
is properly getting called and doesn't fail.

Ben.



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

* Re: [2.6.0-test4] IDE power management
  2003-08-31  7:46 ` Benjamin Herrenschmidt
@ 2003-10-22  8:40   ` Charlie Baylis
  0 siblings, 0 replies; 3+ messages in thread
From: Charlie Baylis @ 2003-10-22  8:40 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: linux-kernel mailing list

On Sun, Aug 31, 2003 at 09:46:21AM +0200, Benjamin Herrenschmidt wrote:
> 
> > hda: start_power_step(step: 0)
> > hda: start_power_step(step: 1)
> > hda: complete_power_step(step: 1, stat: 50, err:0)
> > hda: completing PM request, suspend
> > hda: a request made it's way while we are power managing
> > --- power down/up occurs here
> > hda: Wakeup request inited, waiting for !BSY...
> > hda: start_power_step(step: 1000)
> > hda: completing PM request, resume
> > ...
> > hda: lost interrupt
> > 
> > The hard disk won't allow any accesses any more.
> > 
> > APM suspend to RAM doesn't work properly on this machine, so I haven't
> > tested that.
> 
> I'm afraid we may have APM junk getting in our way. It would be
> interesting to check out what is the request that made its way while
> power managing, though I usually consider this is harmless...
> 
> The lost interrupt problem may or may not be related, it could well
> be an IRQ routing problem as well. Did you have DMA enabled ? What
> happens if you disable that before suspend ? You can also add some
> printk to piix_config_drive_xfer_rate() in piix.c to check if that
> is properly getting called and doesn't fail.

I didn't get time to do this before the disk in my laptop died. I've put it a
new disk and installed 2.6.0-test7, and IDE now seems to works after a resume.

I think the disk is still spinning down before suspend (it's difficult to tell,
because I can hardly hear the new disk) and this needs to be fixed at some
point.

Regards
Charlie

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

end of thread, other threads:[~2003-10-22  8:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-08-29 18:49 [2.6.0-test4] IDE power management cb-lkml
2003-08-31  7:46 ` Benjamin Herrenschmidt
2003-10-22  8:40   ` Charlie Baylis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).