Re: [PATCH] SCSI midlayer power management

From: Nigel Cunningham
Date: Thu Aug 12 2004 - 04:44:27 EST


Hi.

On Thu, 2004-08-12 at 08:48, Nathan Bryant wrote:
> Just to speculate about what would be required for swsusp: you probably
> need to be using a SCSI LLD that properly implements pci suspend/resume,
> which implies you need to make sure the card's DMA state machine is
> flushed and idle before suspend completes. I've got a patch that fixes
> this much up for aic7xxx. And my other midlayer-level patch may also
> help... What happens during resume is interesting. I think maybe the
> problem is not what the drive is expecting, but what the card's state
> engine is expecting when it tries to map commands to command buffers in
> DMA space. Maybe you need to suspend the LLD from the context of the
> kernel that is doing the image load, and then resume from the context of
> the kernel that was just loaded.

I fully agree. That's what I'm doing at the moment; it's been a while
since I looked at swsusp though, so can't say anything about Pavel &
Patrick's implementation.

> >With my 'device tree' code, I'm getting the struct dev of the device
> >we're using via the struct block_device in the swap_info struct.
> >
> Right, though you also need to get the host adapter's struct device, if
> you're not already doing so, that is. Many IDE host drivers don't bother
> with suspend/resume callbacks at the pci_driver level, but SCSI needs
> callbacks because the BIOS usually doesn't handle things for us.

The host adapter isn't in the device's chain of parents?

Nigel

--
Nigel Cunningham
Christian Reformed Church of Tuggeranong
PO Box 1004, Tuggeranong, ACT 2901

Many today claim to be tolerant. But true tolerance can cope with others
being intolerant.

-
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/