From: Jeff Garzik <jgarzik@pobox.com>
To: Jens Axboe <axboe@suse.de>
Cc: James Bottomley <James.Bottomley@SteelEye.com>,
SCSI Mailing List <linux-scsi@vger.kernel.org>,
linux-ide@vger.kernel.org
Subject: Re: [PATCH] libata: device suspend/resume
Date: Tue, 24 May 2005 04:21:02 -0400 [thread overview]
Message-ID: <4292E3EE.10006@pobox.com> (raw)
In-Reply-To: <20050524075953.GY9855@suse.de>
Jens Axboe wrote:
> On Tue, May 24 2005, Jeff Garzik wrote:
>
>>The SCSI layer needs to issue the START STOP UNIT command in response to
>>a suspend event, and libata-scsi will (per SAT spec) translate that into
>>the ATA standby command. Merely following the relevant SCSI+SAT+ATA
>>standards gets us there.
>
>
> BTW, you also need to set host/device modes on resume. Where do you
> propose to do that currently, without the LLD hook?
In the START STOP UNIT emulation. SSU is basically a high level "do PM
command".
As a tangent, I would like to try and convince you to stop thinking so
much about hooks, and start thinking about adding new commands at the
struct request level. Sending things down the request_queue is much
nicer because commands can be sent using the normal rq mechanisms.
Often, commands can be translated directly into ATA or SCSI commands in
the prep function.
Two commands I have been thinking about, to add alongside READ, WRITE,
READA, READ_SYNC, etc. are: SYNC_CACHE and PM_EVENT.
This would be quite useful for DM and md RAID, especially. It becomes
trivial to clone a SYNC_CACHE command, and send it to 5 underlying ATA
and SCSI devices in a RAID array. If the PM_EVENT or SYNC_CACHE command
needs special processing, one can easily add code for that without
needing any hooks -- just call your new code from the request_queue
function that handles READ/WRITE/READA/...
This applies to the current thread (PM_EVENT), and also fits right into
your barrier work, too (SYNC_CACHE).
Jeff
next prev parent reply other threads:[~2005-05-24 8:21 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-05-23 20:15 [PATCH] libata: device suspend/resume Jeff Garzik
2005-05-23 20:41 ` James Bottomley
2005-05-23 20:45 ` Jeff Garzik
2005-05-23 22:10 ` James Bottomley
2005-05-24 6:21 ` Jens Axboe
2005-05-24 6:53 ` Jeff Garzik
2005-05-24 7:06 ` Hannes Reinecke
2005-05-24 7:08 ` Jens Axboe
2005-05-24 7:16 ` Jeff Garzik
2005-05-24 7:07 ` Jens Axboe
2005-05-24 7:10 ` Jeff Garzik
2005-05-24 7:13 ` Jens Axboe
2005-05-27 2:49 ` libata, SCSI and storage drivers Jeff Garzik
2005-05-27 6:45 ` Douglas Gilbert
2005-05-27 14:41 ` Luben Tuikov
2005-05-24 7:14 ` [PATCH] libata: device suspend/resume Hannes Reinecke
2005-05-24 7:15 ` Jens Axboe
2005-05-24 7:18 ` Jeff Garzik
2005-05-24 10:17 ` Douglas Gilbert
2005-05-24 17:10 ` Jeff Garzik
2005-05-24 7:59 ` Jens Axboe
2005-05-24 8:21 ` Jeff Garzik [this message]
2005-05-24 8:51 ` Jens Axboe
2005-05-24 16:37 ` Jeff Garzik
2005-05-25 9:29 ` Jens Axboe
2005-05-25 23:40 ` Guennadi Liakhovetski
2005-05-26 1:05 ` Jeff Garzik
2005-05-26 5:57 ` Jens Axboe
2005-05-26 22:56 ` Bartlomiej Zolnierkiewicz
2005-05-27 6:54 ` Jens Axboe
2005-05-27 2:01 ` Benjamin Herrenschmidt
2005-05-27 6:55 ` Jens Axboe
2005-05-24 13:48 ` Luben Tuikov
2005-05-24 17:29 ` Jeff Garzik
2005-05-24 13:05 ` Luben Tuikov
2005-05-27 2:54 ` Jeff Garzik
2005-05-24 16:27 ` Mark Lord
2005-05-24 16:33 ` Mark Lord
2005-05-24 16:04 ` Mark Lord
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=4292E3EE.10006@pobox.com \
--to=jgarzik@pobox.com \
--cc=James.Bottomley@SteelEye.com \
--cc=axboe@suse.de \
--cc=linux-ide@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).