From owner-cvs-all@FreeBSD.ORG Sat Feb 7 02:30:23 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5F86216A4CE; Sat, 7 Feb 2004 02:30:23 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5BAA443D1D; Sat, 7 Feb 2004 02:30:23 -0800 (PST) (envelope-from scottl@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.10/8.12.10) with ESMTP id i17AUN0B039906; Sat, 7 Feb 2004 02:30:23 -0800 (PST) (envelope-from scottl@repoman.freebsd.org) Received: (from scottl@localhost) by repoman.freebsd.org (8.12.10/8.12.10/Submit) id i17AUN8a039905; Sat, 7 Feb 2004 02:30:23 -0800 (PST) (envelope-from scottl) Message-Id: <200402071030.i17AUN8a039905@repoman.freebsd.org> From: Scott Long Date: Sat, 7 Feb 2004 02:30:23 -0800 (PST) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/dev/aac aac.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Feb 2004 10:30:23 -0000 scottl 2004/02/07 02:30:23 PST FreeBSD src repository Modified files: sys/dev/aac aac.c Log: If a command has to be deferred because there are no more resources for it on the card, unmap it first. This allows it to be picked up properly when the queue gets kicked again. This was the root problem for the lost command (i.e. stuck in getblk/vinvalb) problem. While here, panic if commands don't map correctly instead of just silently ignoring the problem and dropping command. Also slow down the dynamic allocation of new commands. It should be safe to go back into the aac waters. Thanks to everyone who suffered through this and provided good feedback. Revision Changes Path 1.84 +11 -9 src/sys/dev/aac/aac.c