From: Jens Axboe <axboe@suse.de>
To: andersen@codepoet.org, linux-kernel@vger.kernel.org,
Jeff Garzik <jgarzik@pobox.com>
Subject: Re: [PATCH] bsg, block layer sg
Date: Mon, 6 Mar 2006 19:57:07 +0100 [thread overview]
Message-ID: <20060306185707.GO4595@suse.de> (raw)
In-Reply-To: <20060306183046.GA15179@codepoet.org>
On Mon, Mar 06 2006, Erik Andersen wrote:
> On Thu Mar 02, 2006 at 12:19:46PM +0100, Jens Axboe wrote:
> > Hi,
> >
> > After all that SG_IO and cdrecord talk, I decided to brush off the bsg
> > driver I wrote some time ago. Basically this is a full (aims to be at
> > least, probably still some minor bits missing) SG v3 interface. It
> > supports both SG_IO (which we just pass through for now), as well as
> > read/write and readv/writev of sg_io_hdr structures.
>
> After this is merged I suppose I could then, i.e. run an SG_IO
> ioctl doing i.e. INQUIRY_CMD with some random block device, such
> as an /dev/nbd0, or /dev/loop0, or some such. Which in general
> does not seem to make any sense at all unless the block device
> has some physical device level support for SCSI/ATAPI/MMC. So
> while it addresses the needs of cdrecord and friends for CD
> burning, does it make sense to implement this as a general
> capability for all block devices? I'm not objecting or arguing,
> I'm simply puzzled why a generic SG_IO layer for _all_ block
> devices (whether SCSI/ATAPI/MMC capable or not) is useful?
No of course that doesn't make sense. The generic part of this applies
to the transport method, it's only meant to be used for transporting ATA
(through the SCSI opcode pass through method standardized) and SCSI
commands. As such it applies to ATA drives, ATAPI, and SCSI. Or any
other type of device that uses the same command protocol, like usb or
firewire storage. And so on.
You could have the driver flag this in the queue settings, so you would
only register a bsg node for suitable devices. It could also be used as
a transport for other commands - say cciss wanted to use this instead of
some ioctl pass through that most drivers of that type define, they
could just fill whatever they need into the cmdp part as long as it fits
in the 16-byte cdb. Then it would be truly generic.
--
Jens Axboe
prev parent reply other threads:[~2006-03-06 18:58 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-02 11:19 [PATCH] bsg, block layer sg Jens Axboe
2006-03-02 11:22 ` Jeff Garzik
2006-03-05 2:08 ` Andrew Morton
2006-03-06 8:57 ` Jens Axboe
2006-03-06 9:13 ` Andrew Morton
2006-03-06 9:19 ` Jens Axboe
2006-03-06 9:25 ` Jens Axboe
2006-03-06 18:30 ` Erik Andersen
2006-03-06 18:57 ` Jens Axboe [this message]
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=20060306185707.GO4595@suse.de \
--to=axboe@suse.de \
--cc=andersen@codepoet.org \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@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