Bug 238931 - massive slowdown on SCSI CD/DVD drive connected to mptspi driver
massive slowdown on SCSI CD/DVD drive connected to mptspi driver
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
rawhide
All Linux
high Severity high
: ---
: ---
Assigned To: Kernel Maintainer List
Brian Brock
: Regression
Depends On:
Blocks: fedora-ia64
  Show dependency treegraph
 
Reported: 2007-05-03 18:34 EDT by Doug Chapman
Modified: 2007-12-17 22:57 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-12-17 22:57:10 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Doug Chapman 2007-05-03 18:34:18 EDT
Description of problem:

Note: I have also reported this upstream at:
http://bugzilla.kernel.org/show_bug.cgi?id=8426


CD/DVD drive on some of our high-end HP Integrity servers (superdome, rx8620,
rx8640) systems has slowed down more than 150x.  I have only seen this on ia64
however it is likely going to affect other systems using the same adapter and
CD/DVD drive.

As a simple benchmark I mounted the Fedora7 test4 DVD and ran the following:

time cat kernel-2.6.20-1.3088.fc7.ia64.rpm > /dev/null

recent kernels take approx 10 minutes to complete.  This causes installs to take
many hours and eventually fail with SCSI errors.

Was introduced by this commit:
commit 5a9c47b1344b514758d5d7f193c672850390cc36
Author: Eric Moore <eric.moore@lsi.com>
Date:   Mon Jan 29 09:43:17 2007 -0700

    [SCSI] fusion - move SPI API over to mptspi.c

    Move some functions that only apply to the mptspi module over from mptscsih.
    Signed-off-by: Eric Moore <Eric.Moore@lsi.com>
    Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>


I backed out this patch against the current HEAD and DVD drive performance is
back to normal.  I have not yet looked into this to determine exactly what in
this patch caused the issue.


Version-Release number of selected component (if applicable):
fedora7 - test4
kernel-2.6.20-1.3088.fc7

How reproducible:
100%

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 1 Chuck Ebbert 2007-05-09 14:08:45 EDT
http://marc.info/?l=linux-scsi&m=117857313402574&q=raw

==========================================================================

Patch for: http://bugzilla.kernel.org/show_bug.cgi?id=8426

A recent code cleanup that moved code from mptscsih to mptspi
inadvertently change the order some code was called.  This caused
a massive slowdown (of 150x to 300x) on the CD/DVD drive on the
high-end HP Integrity servers.

Signed-off-by: Doug Chapman <doug.chapman@hp.com>




diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c
index 85f21b5..2eb5741 100644
--- a/drivers/message/fusion/mptspi.c
+++ b/drivers/message/fusion/mptspi.c
@@ -726,13 +726,15 @@ static int mptspi_slave_configure(struct scsi_device *sdev)
 	struct _MPT_SCSI_HOST *hd =
 		(struct _MPT_SCSI_HOST *)sdev->host->hostdata;
 	VirtTarget *vtarget = scsi_target(sdev)->hostdata;
-	int ret = mptscsih_slave_configure(sdev);
+	int ret;
+
+	mptspi_initTarget(hd, vtarget, sdev);
+
+	ret = mptscsih_slave_configure(sdev);
 
 	if (ret)
 		return ret;
 
-	mptspi_initTarget(hd, vtarget, sdev);
-
 	ddvprintk((MYIOC_s_INFO_FMT "id=%d min_period=0x%02x"
 		" max_offset=0x%02x max_width=%d\n", hd->ioc->name,
 		sdev->id, spi_min_period(scsi_target(sdev)),


Comment 2 Doug Chapman 2007-12-17 22:57:10 EST
This has been resolved upstream several months ago, closing.

Note You need to log in before you can comment on or make changes to this bug.