From: Jens Axboe <axboe@suse.de>
To: Steve Lord <lord@sgi.com>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: SCSI I/O performance problems when CONFIG_HIGHIO is off
Date: Mon, 18 Nov 2002 13:05:31 +0100 [thread overview]
Message-ID: <20021118120531.GC839@suse.de> (raw)
In-Reply-To: <1037392310.13531.419.camel@jen.americas.sgi.com>
On Fri, Nov 15 2002, Steve Lord wrote:
> Jens,
>
> As you know, for the last week or so I have been battling some
> performance issues in XFS and 2.4.20-rc1. Well, we finally found
> the culprit back in 2.4.20-pre2.
>
> When the block highmem patch was included, it added highmem_io to the
> scsi controller structure. This can only ever be set to one if
> CONFIG_HIGHIO is set. Yet there are several spots in the scsi
> code which test based on its value regardless.
>
> /*
> * we really want to use sg even for a single segment request,
> * however some people just cannot be bothered to write decent
> * driver code so we can't risk to break somebody making the
> * assumption that sg requests will always contain at least 2
> * segments. if the driver is 32-bit dma safe, then use sg for
> * 1 entry anyways. if not, don't rely on the driver handling this
> * case.
> */
> if (count == 1 && !SCpnt->host->highmem_io) {
> this_count = req->current_nr_sectors;
> goto single_segment;
> }
Steve,
Something isn't quite making sense. If we go over every single instance
of checking ->highmem_io, they all look sane (ie checking on non-highmem
setup must yield 0). So that part looks good.
However, I think a typo snuck in there, in exactly the spot you pasted
above. Could you try 2.4.20-rc2 with this patch applied?
===== drivers/scsi/scsi_merge.c 1.9 vs edited =====
--- 1.9/drivers/scsi/scsi_merge.c Mon Sep 16 09:25:10 2002
+++ edited/drivers/scsi/scsi_merge.c Mon Nov 18 13:04:41 2002
@@ -835,7 +835,7 @@
* case.
*/
if (count == 1 && !SCpnt->host->highmem_io) {
- this_count = req->current_nr_sectors;
+ this_count = req->nr_sectors;
goto single_segment;
}
--
Jens Axboe
next prev parent reply other threads:[~2002-11-18 11:58 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-15 20:31 SCSI I/O performance problems when CONFIG_HIGHIO is off Steve Lord
2002-11-16 8:18 ` Jens Axboe
2002-11-18 12:05 ` Jens Axboe [this message]
2002-11-18 14:05 ` Stephen Lord
2002-11-18 14:12 ` Jens Axboe
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=20021118120531.GC839@suse.de \
--to=axboe@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=lord@sgi.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 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.