Re: Power management for SCSI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 14 Aug 2008, Oliver Neukum wrote:

> > > I dispute that USB in general has this property.
> > 
> > How can you dispute that?  You said it yourself, in the top quote
> > above: "All children that are USB must be powered down."
> 
> But the children are SCSI, not USB.

Oh, I see.  All right, yes.  However USB in general _does_ have the
property that child devices might not be able to accomplish much while
the USB link is suspended, particularly if they are bus-powered.  This 
includes draining caches.

> > Oliver, you can't have it both ways.  Either we do spin down disks and
> > drain device caches before autosuspending usb-storage or we don't.
> 
> That is true.
> 
> > For safety's sake, obviously we should.  The overhead is minimal since
> > this happens only after the idle timeout has expired.  And for devices
> > that don't support it (like flash storage), sd skips the spin-down
> > command anway.
> 
> But you cannot make the conclusion that the ultimate children should have
> any autosuspend attributes. We can implement autosuspend in usb storage
> and propagate the suspend calls down the tree without SCSI knowing about
> autosuspend.

The way I designed the autosuspend framework, you _can't_ do that.  In
my framework autosuspend and autoresume events propagate _up_ the
device tree, not _down_.  This means an autosuspend has to be initiated
by the child SCSI layer, not by the USB layer.  Which is as it should
be, since the USB layer doesn't know when it is appropriate for a SCSI
device to autosuspend.

> Such a system would have it drawbacks, but it'd be a lot simpler.

It would be a layering violation.

Alan Stern

_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux