From: Patrick Mansfield <patmans@us.ibm.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: Luben Tuikov <luben@splentec.com>, linux-scsi@vger.kernel.org
Subject: Re: [PATCH] SCSI Core patches
Date: Mon, 13 Jan 2003 12:33:06 -0800 [thread overview]
Message-ID: <20030113123306.A16718@beaverton.ibm.com> (raw)
In-Reply-To: <20030111181224.B3178@infradead.org>; from hch@infradead.org on Sat, Jan 11, 2003 at 06:12:24PM +0000
On Sat, Jan 11, 2003 at 06:12:24PM +0000, Christoph Hellwig wrote:
> On Tue, Jan 07, 2003 at 05:36:33PM -0800, Patrick Mansfield wrote:
> > Having the LLDD use more data structures does not imply a better
> > abstraction. Again, a better abstraction would be to use interfaces to
> > get the host/channel/target/lun. This could add overhead depending on the
> > implementation.
>
> Not having the cmnd replicate information in the device implies a better
> abstraction :) The LLDD knows about struct scsi_device anyway.
I'm not against removing the replication, but a scsi_get_lun etc. does
not imply one implementation or the other.
This is _not_ just for multi-path. The current scsi code does not properly
size the target and lun based on the transport. For SPI the target and lun
need only be one byte; for FCP they are 4 and 8 bytes; for iSCSI I don't
know what. (Our current four byte host-ordered lun does not match anything
in any SCSI spec.)
Having a scsi_nexus or such that is host adapter specific (something like
Mike A. posted about) possibly with common transport code (for FCP, SPI,
and iSCSI) would be useful, and would make it easier to add multi-pathing
or support for future transports. The scsi_device current_tag, sdtr, wdtr,
and ppr would be moved to a scsi_nexus since they are SPI specific.
The abstraction of the channel should not even be part of scsi_device or
the scsi mid-layer.
> > > For this reason you might consider the suggestions by Doug, or research moving
> > > multipathing higher up into the char/block layer, or thereabouts.
> >
> > I have looked into putting multipath in the block layer, I've looked at
> > md, at the T3 code, and at the qlogic multi-path code. Code in the block
> > layer would be interesting, but might not solve problems with char
> > devices,
>
> Scsi character drivers _do_ go through the block layer. (through
> scsi_do_req).
Okay - the only blk code the char drivers use is the blk_insert_request
call, the char drivers never call the generic_make_request. So any
implementation that relies on make_request (like md) won't currently work
with char devices.
-- Patrick Mansfield
next prev parent reply other threads:[~2003-01-13 20:33 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-01-07 13:56 [PATCH] SCSI Core patches Luben Tuikov
2003-01-07 18:21 ` Patrick Mansfield
2003-01-07 19:23 ` Luben Tuikov
2003-01-07 20:33 ` Patrick Mansfield
2003-01-07 22:14 ` Luben Tuikov
2003-01-08 1:36 ` Patrick Mansfield
2003-01-08 5:13 ` Luben Tuikov
2003-01-11 18:12 ` Christoph Hellwig
2003-01-13 20:33 ` Patrick Mansfield [this message]
2003-01-13 21:30 ` Luben Tuikov
2003-01-14 18:49 ` Patrick Mansfield
2003-01-14 19:52 ` Luben Tuikov
2003-01-07 19:44 ` Doug Ledford
2003-01-07 22:53 ` Patrick Mansfield
2003-01-08 17:33 ` Luben Tuikov
2003-01-08 21:13 ` Mike Anderson
2003-01-10 12:35 ` Andre Hedrick
2003-01-10 17:06 ` James Bottomley
2003-01-10 19:23 ` Luben Tuikov
2003-01-10 20:05 ` James Bottomley
-- strict thread matches above, loose matches on Subject: below --
2003-01-14 16:19 Martin Peschke3
2003-01-14 16:51 ` Tony Battersby
2003-01-14 18:56 ` Patrick Mansfield
2003-01-14 20:01 Martin Peschke3
2003-01-14 20:17 ` Patrick Mansfield
2003-01-14 20:37 Martin Peschke3
2003-01-14 21:27 ` Patrick Mansfield
2003-01-14 21:29 Martin Peschke3
2003-01-14 22:16 ` Patrick Mansfield
2003-01-15 15:35 Martin Peschke3
2003-01-15 15:52 ` James Bottomley
2003-01-15 17:12 ` Mike Anderson
2003-01-15 17:40 ` Luben Tuikov
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=20030113123306.A16718@beaverton.ibm.com \
--to=patmans@us.ibm.com \
--cc=hch@infradead.org \
--cc=linux-scsi@vger.kernel.org \
--cc=luben@splentec.com \
/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