From: James Bottomley <James.Bottomley@SteelEye.com>
To: Nathan Bryant <nbryant@optonline.net>
Cc: Pavel Machek <pavel@ucw.cz>,
Linux SCSI Reflector <linux-scsi@vger.kernel.org>,
Linux Kernel list <linux-kernel@vger.kernel.org>,
Jeff Garzik <jgarzik@pobox.com>
Subject: Re: [PATCH] SCSI midlayer power management
Date: 11 Aug 2004 08:37:41 -0500 [thread overview]
Message-ID: <1092231462.2087.3.camel@mulgrave> (raw)
In-Reply-To: <411A1B72.1010302@optonline.net>
On Wed, 2004-08-11 at 08:13, Nathan Bryant wrote:
> No. Remember that DMA works differently under SCSI than it does under
> IDE. SCSI DMA is a host controller feature, whereas under IDE it is
> enabled/disabled at the drive level and the drives have special
> knowledge of DMA. Since generic_scsi_suspend() is the device level
> suspend routine, it is called before the host controller's suspend
> routine, (due to depth first traversal of device tree), which is
> responsible for disabling the PCI slot. Only after the host controller
> is suspended will there be no DMA, but if your real question is "can I
> generically control a SCSI disk with PIO for software suspend" then the
> answer is NO. For purposes of not suspending the drivers, I haven't
> looked into how swsusp would see which host adapter owns which drive,
> but some of the required information seems to be present in sysfs.
Actually, the answer is to most intents and purposes "yes". You are
technically correct: there's no way to disable DMA in SCSI. However,
once a device is quiesced, it has no outstanding commands, so there will
be no outstanding DMA to that device. When all devices on a host have
been quiesced, then there will be no DMA at all going on *except* if the
user initiates any via another interface (like sending a device probe or
doing a unit scan). The guarantee should be strong enough for swsusp to
proceed, but we can look at quiescing a host properly (however, we'd
need to move to a better host state model than we currently possess).
James
next prev parent reply other threads:[~2004-08-11 13:37 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-10 23:58 [PATCH] SCSI midlayer power management Nathan Bryant
2004-08-11 8:09 ` Pavel Machek
2004-08-11 13:13 ` Nathan Bryant
2004-08-11 13:37 ` James Bottomley [this message]
2004-08-11 15:21 ` Alan Cox
2004-08-11 16:28 ` James Bottomley
2004-08-11 16:43 ` Nathan Bryant
2004-08-11 23:36 ` Benjamin Herrenschmidt
2004-08-12 7:45 ` Pavel Machek
2004-08-12 10:38 ` Benjamin Herrenschmidt
2004-08-12 12:48 ` James Bottomley
2004-08-12 13:14 ` Pavel Machek
2004-08-12 16:29 ` James Bottomley
2004-08-12 19:11 ` Pavel Machek
2004-08-12 19:34 ` James Bottomley
2004-08-12 20:26 ` Pavel Machek
2004-08-12 20:31 ` James Bottomley
2004-08-12 20:37 ` Pavel Machek
2004-08-12 20:42 ` James Bottomley
2004-08-12 20:48 ` Pavel Machek
2004-08-12 20:52 ` Nathan Bryant
2004-08-12 20:40 ` Nathan Bryant
2004-08-12 23:05 ` Benjamin Herrenschmidt
2004-08-12 22:36 ` Nigel Cunningham
2004-08-12 22:43 ` Nigel Cunningham
2004-08-12 23:04 ` Benjamin Herrenschmidt
2004-08-12 13:41 ` Nathan Bryant
2004-08-12 16:45 ` Patrick Mansfield
2004-08-12 23:02 ` Benjamin Herrenschmidt
2004-08-11 20:19 ` Pavel Machek
2004-08-11 20:50 ` Nathan Bryant
2004-08-11 22:16 ` Nigel Cunningham
2004-08-11 22:48 ` Nathan Bryant
2004-08-12 7:43 ` Pavel Machek
2004-08-12 9:39 ` Nigel Cunningham
2004-08-12 13:43 ` Nathan Bryant
-- strict thread matches above, loose matches on Subject: below --
2004-08-16 13:29 James.Smart
2004-08-16 13:29 ` James.Smart
2004-08-10 23:56 Nathan Bryant
2004-08-11 9:53 ` Alan Cox
2004-08-11 12:55 ` Nathan Bryant
2004-08-11 13:39 ` James Bottomley
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=1092231462.2087.3.camel@mulgrave \
--to=james.bottomley@steeleye.com \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=nbryant@optonline.net \
--cc=pavel@ucw.cz \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.