From: Patrick Mansfield <patmans@us.ibm.com>
To: James Bottomley <James.Bottomley@steeleye.com>
Cc: linux-scsi@vger.kernel.org
Subject: Re: [PATCH 2.5.17] Making SCSI not copy the request structure
Date: Wed, 22 May 2002 15:44:06 -0700 [thread overview]
Message-ID: <20020522154406.A17222@eng2.beaverton.ibm.com> (raw)
In-Reply-To: <200205212311.g4LNBYo09061@localhost.localdomain>; from James.Bottomley@steeleye.com on Tue, May 21, 2002 at 07:11:34PM -0400
On Tue, May 21, 2002 at 07:11:34PM -0400, James Bottomley wrote:
> The attached makes the request field in Scsi_Cmnd and Scsi_Request be pointers
> to the block layer request instead of copies of it. The advantage of this is
> that it makes the scsi interface to the block layer conform much more closely
> to most other block device drivers. It should also make it quite a lot easier
> to slot in the block layer tag command queueing functions.
>
> The disadvantage is that you now _really_ need to use the scsi request
> interfaces instead of the command based ones (you will get a NULL deref if you
> allocate and use your own commands with no associated requests). This also
> means that the following fibre drivers need some rework: cpqfc, gdth, pluto,
> tmscsim.
>
> It works on my system (at least it stays up during a full kernel compile).
> Any comments would be welcome.
>
> After this, I plan to see if I can implement TCQ using the block level generic
> functions. This would buy us the ability to support request barriers (modulo
> the already discussed edge cases) right down through the SCSI subsystem.
Hi -
I applied your patch and successfuly ran with AIC + 2 disks (one the boot
disk), plus with qla (modified v6.0b20 to remove io request lock) drivers
attached to both Triton (disk array) and Seagate drives using block and raw io.
Do you think the queue depth on some of the adapters/devices should be
shrunk or the request queue increased with your patch? Some adapters set
device queue depths above 200 (for example, aic set mine to 253), this seems
like overkill, but today it means they can have 200 more IO's on the request
queue, where freeing the request after the IO completes means the request
queue (with your patch) means we sometimes would have 200 fewer entries.
I don't understand how/why the journaling file systems want to use a
barrier, and how it helps their IO.
Are the request barriers needed to prevent earlier IO from completing before
the barrier, or later IO from completing before the barrier, or both?
How do the request barriers work with volume managers or multi-path devices?
-- Patrick Mansfield
next prev parent reply other threads:[~2002-05-22 22:44 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-21 23:11 [PATCH 2.5.17] Making SCSI not copy the request structure James Bottomley
2002-05-22 22:44 ` Patrick Mansfield [this message]
2002-05-22 22:53 ` Doug Ledford
2002-05-23 2:01 ` Alan Cox
2002-05-23 3:14 ` Doug Ledford
2002-05-24 15:32 ` Alan Cox
2002-05-24 15:56 ` James Bottomley
2002-05-23 0:06 ` James Bottomley
-- strict thread matches above, loose matches on Subject: below --
2002-05-23 9:18 Aron Zeh
2002-05-23 12:44 ` James Bottomley
2002-05-24 7:52 Aron Zeh
2002-05-24 8:34 ` rakesh rakesh
2002-05-24 13:17 ` James Bottomley
2002-05-24 13:00 ` James Bottomley
2002-05-24 9:35 Aron Zeh
2002-05-24 16:44 ` Patrick Mansfield
2002-05-31 12:04 Aron Zeh
[not found] <OFF6A89763.CD0EBEF7-ONC1256BCA.003CD69A@de.ibm.com>
2002-05-31 13:57 ` James Bottomley
2002-05-31 16:57 Aron Zeh
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=20020522154406.A17222@eng2.beaverton.ibm.com \
--to=patmans@us.ibm.com \
--cc=James.Bottomley@steeleye.com \
--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