From: Oliver Neukum <oliver@neukum.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: linux-usb-devel@lists.sourceforge.net,
James Bottomley <James.Bottomley@steeleye.com>,
linux-scsi@vger.kernel.org
Subject: Re: [linux-usb-devel] question on flushing buffers and spinning down disk
Date: Thu, 27 Sep 2007 21:26:47 +0200 [thread overview]
Message-ID: <200709272126.47558.oliver@neukum.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0709271455080.7735-100000@iolanthe.rowland.org>
Am Donnerstag 27 September 2007 schrieb Alan Stern:
> On Thu, 27 Sep 2007, Oliver Neukum wrote:
>
> > > Oliver, I'm surprised at you! This patch is a big hack, not to mention
> > > a layering violation and an inversion of the proper calling sequence.
> >
> > Well,
> >
> > 1. autosuspend should not be specific to USB
>
> Correct. Which means support for it should be added to the SCSI
> drivers. SCSI autosuspend shouldn't be kluged into usb-storage in a
> way that basically ignores what the SCSI layer is doing.
It isn't. The decision to autosuspend is based on activity on the bus.
Now you might argue that the decision to do an autosuspend should
always propagate upwards from the lowest level of the device tree.
Then I ask why?
> > 2. I like to view the generic SCSI code as a library
>
> That viewpoint might work out okay in some cases, but I don't think
> it's tenable when dealing with high-level drivers like sd and sr.
sg worries me.
> > 3. The low level drivers will have to decide whether to suspend devices,
> > as the generic code doesn't know whether the bus is shared.
>
> I'm having trouble understanding this; it's a bit ambiguous. Does
> "devices" mean "SCSI devices", "host adapter devices", or both? Does
SCSI devices
> "generic code" refer to the SCSI core, the high-level SCSI drivers, or
> something else? When you say the bus is "shared", do you mean there
> are multiple SCSI devices attached to it or do you mean something else?
No multiple hosts. Think Firewire or FibreChannel. We certainly cannot
spin down a Firewire disk some other host is using just because we
are done with it.
> (I assume you mean something else, as the SCSI core certainly does know
> when multiple SCSI devices are attached to a SCSI bus.)
>
> In any case, that's not how I would put it. The SCSI core and
> high-level drivers will have to decide when they are not using SCSI
> devices and the devices can be suspended. When all the devices the
Err, why? After all, there's a central instance in userspace that decides
that the whole system isn't used right now. I see no reason to not use
this model for parts of the device tree.
Regards
Oliver
next prev parent reply other threads:[~2007-09-27 19:25 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-18 8:32 question on flushing buffers and spinning down disk Oliver Neukum
2007-09-18 14:01 ` James Bottomley
2007-09-18 14:15 ` Oliver Neukum
2007-09-18 14:26 ` James Bottomley
2007-09-24 10:33 ` Oliver Neukum
2007-09-24 14:38 ` Alan Stern
2007-09-24 15:21 ` Oliver Neukum
2007-09-24 15:34 ` Alan Stern
2007-09-24 16:47 ` Oliver Neukum
2007-09-24 17:10 ` Alan Stern
2007-09-24 19:16 ` [linux-usb-devel] " Oliver Neukum
2007-09-24 19:39 ` Alan Stern
2007-09-24 20:00 ` [linux-usb-devel] " Oliver Neukum
2007-09-25 14:13 ` Alan Stern
2007-09-25 15:11 ` Oliver Neukum
2007-09-28 4:27 ` Greg KH
2007-09-28 7:02 ` Oliver Neukum
2007-09-28 19:33 ` Greg KH
2007-09-25 7:50 ` Oliver Neukum
2007-09-25 15:03 ` Alan Stern
2007-09-27 11:40 ` Oliver Neukum
2007-09-27 16:01 ` Alan Stern
2007-09-27 18:12 ` Oliver Neukum
2007-09-27 19:07 ` [linux-usb-devel] " Alan Stern
2007-09-27 19:26 ` Oliver Neukum [this message]
2007-09-27 20:26 ` Alan Stern
2007-09-27 20:54 ` Steve Calfee
2007-09-27 21:16 ` Alan Stern
2007-09-27 21:37 ` U. George
2007-09-28 8:17 ` [linux-usb-devel] " Oliver Neukum
2007-09-28 15:01 ` Alan Stern
2007-09-28 8:22 ` [linux-usb-devel] " Oliver Neukum
2007-09-28 21:11 ` Alan Stern
2007-09-28 21:47 ` Oliver Neukum
2007-09-29 15:56 ` Alan Stern
2007-09-29 16:12 ` [linux-usb-devel] " Oliver Neukum
2007-09-28 9:04 ` Oliver Neukum
2007-09-28 15:07 ` Alan Stern
2007-09-28 21:33 ` [linux-usb-devel] " Oliver Neukum
2007-09-29 16:38 ` Alan Stern
2007-09-29 17:52 ` Oliver Neukum
2007-09-29 19:06 ` Alan Stern
2007-09-29 20:06 ` Oliver Neukum
2007-09-29 20:56 ` Alan Stern
2007-09-29 21:03 ` David Brownell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200709272126.47558.oliver@neukum.org \
--to=oliver@neukum.org \
--cc=James.Bottomley@steeleye.com \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-usb-devel@lists.sourceforge.net \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox