[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.0808131534440.13982-100000@iolanthe.rowland.org>
Date: Wed, 13 Aug 2008 15:37:21 -0400 (EDT)
From: Alan Stern <stern@...land.harvard.edu>
To: Oliver Neukum <oneukum@...e.de>
cc: Stefan Richter <stefanr@...6.in-berlin.de>,
Pavel Machek <pavel@...e.cz>,
kernel list <linux-kernel@...r.kernel.org>,
Linux-pm mailing list <linux-pm@...ts.osdl.org>,
<James.Bottomley@...senpartnership.com>, <teheo@...ell.com>
Subject: Re: Power management for SCSI
On Wed, 13 Aug 2008, Oliver Neukum wrote:
> > In Alan's patch, SCSI calls scsi_host_template methods (if the LLD
> > provides ones) to suspend and resume a Scsi_Host. The LLD can use them
> > to work with the underlying infrastructure to determine what can be done
> > at that time. I.e. are there other protocols or other initiator-like
> > nodes sharing the link? If yes or if "maybe yes", the infrastructure
> > keeps the link up. If not, it can move it into a low-power state.
>
> That is a parculiar way of viewing it. Alan's patch introduce runtime
> pm attributes to the devices. Quoting:
>
>
> +/**
> + * scsi_suspend_sdev - suspend a SCSI device
> + * @sdev: the scsi_device to suspend
> + * @msg: Power Management message describing this state transition
> + *
> + * SCSI devices can't actually be suspended in a literal sense,
> + * because SCSI doesn't have any notion of power management. Instead
> + * this routine drains the request queue and calls the ULD's suspend
> + * method to flush caches, spin-down drives, and so on.
> + *
> + * If the suspend succeeds, we call scsi_autosuspend_host to decrement
> + * the host's count of unsuspended devices and invoke the LLD's suspend
> + * method.
>
> So you cannot operate on the link independent from the devices.
With the original patch, you can't operate on the link independent from
the devices. But with the revised patch (whenever I manage to find
time to write it!), you _will_ be able to.
Alan Stern
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists