Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Feb 2004 08:36:10 -0700
From:      Scott Long <scottl@freebsd.org>
To:        "Robin P. Blanchard" <robin.blanchard@gactr.uga.edu>
Cc:        current@freebsd.org
Subject:   Re: AAC vs AMR vs getblk [Re: Processes blocked on getblk or ufs]
Message-ID:  <4028FA6A.6020209@freebsd.org>
In-Reply-To: <EE3D3FBAFFCAED448C21C398FDAD91AC013BDEB5@EBE1.gc.nat>
References:  <EE3D3FBAFFCAED448C21C398FDAD91AC013BDEB5@EBE1.gc.nat>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------050700050109040604060004
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Robin P. Blanchard wrote:
>>I'm finally catching up on this thread after a busy couple of 
>>weeks where I wasn't reading much list email.  There seems to 
>>be two problem areas in the thread, AAC and AMR.  For the AAC 
>>problems, I've put a work-around in place until I find the 
>>root cause.  The work-around appears to work well; I can no 
>>longer reproduce the problem where I could eadily reproduce 
>>it before, at the cost of reducing the command pool from 512 
>>to 504.  Not a big hit overall, and I'll hopefully find the 
>>real fix this weekend.
>>
>>Since I can't always read list email in detail, please please 
>>please email me directly if you have problems that might be 
>>related to aac. You'll have a much higher chance of catching 
>>my attention if you do that.
>>
>>For AMR, it looks like there is indeed a real problem, but 
>>the driver is basically without a maintainer at this point.  
>>I don't have the time right now to learn it in enough detail 
>>to be useful.
> 
> 
> Thanks for the time and effort put into this! My dual 2650 is no longer
> exhibiting any getblk issues. I would definitely encourage this being
> back-ported to 5.2-rel or 5.2.1-rel.
> 

Would you mind testing the attached patch under either 5.2 or 5.2.1-RC?

Thanks,

Scott

--------------050700050109040604060004
Content-Type: text/plain;
 name="aac_unmap.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="aac_unmap.diff"

Index: aac.c
===================================================================
RCS file: /usr/ncvs/src/sys/dev/aac/aac.c,v
retrieving revision 1.81
diff -u -r1.81 aac.c
--- aac.c	9 Nov 2003 09:17:20 -0000	1.81
+++ aac.c	9 Feb 2004 06:41:57 -0000
@@ -1290,8 +1290,10 @@
 	cm->cm_flags |= AAC_CMD_MAPPED;
 
 	/* put the FIB on the outbound queue */
-	if (aac_enqueue_fib(sc, cm->cm_queue, cm) == EBUSY)
+	if (aac_enqueue_fib(sc, cm->cm_queue, cm) == EBUSY) {
+		aac_unmap_command(cm);
 		aac_requeue_ready(cm);
+	}
 
 	return;
 }

--------------050700050109040604060004--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4028FA6A.6020209>