Bug 238931 - massive slowdown on SCSI CD/DVD drive connected to mptspi driver
Summary: massive slowdown on SCSI CD/DVD drive connected to mptspi driver
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: rawhide
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks: fedora-ia64
TreeView+ depends on / blocked
 
Reported: 2007-05-03 22:34 UTC by Doug Chapman
Modified: 2007-12-18 03:57 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2007-12-18 03:57:10 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Doug Chapman 2007-05-03 22:34:18 UTC
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>
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>
    Signed-off-by: James Bottomley <James.Bottomley>


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 18:08:45 UTC
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>




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-18 03:57:10 UTC
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.