From owner-freebsd-scsi@FreeBSD.ORG Thu Nov 1 17:54:33 2012 Return-Path: Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 96465A35; Thu, 1 Nov 2012 17:54:33 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from ns1.feral.com (ns1.feral.com [192.67.166.1]) by mx1.freebsd.org (Postfix) with ESMTP id 45AD68FC14; Thu, 1 Nov 2012 17:54:33 +0000 (UTC) Received: from centos62.localhost (bastis [10.3.0.2]) by ns1.feral.com (8.14.5/8.14.4) with ESMTP id qA1HsQAb043336 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 1 Nov 2012 10:54:26 -0700 (PDT) (envelope-from mjacob@freebsd.org) Message-ID: <5092B752.5020807@freebsd.org> Date: Thu, 01 Nov 2012 10:54:26 -0700 From: Matthew Jacob Organization: FreeBSD User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.7) Gecko/20120829 Thunderbird/10.0.7 MIME-Version: 1.0 To: Matt Jacob Subject: Re: isp(4) broken in RELENG_9 References: <50915CC0.1090207@feral.com> <509281A6.1050302@feral.com> In-Reply-To: <509281A6.1050302@feral.com> Content-Type: multipart/mixed; boundary="------------020308020206040101080802" X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (ns1.feral.com [172.16.1.79]); Thu, 01 Nov 2012 10:54:27 -0700 (PDT) Cc: freebsd-scsi@freebsd.org X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: mjacob@freebsd.org List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Nov 2012 17:54:33 -0000 This is a multi-part message in MIME format. --------------020308020206040101080802 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 11/01/12 07:05, Matthew Jacob wrote: > So, it's working in 9.1 but not in 9? > > Since any fix to 9.0 would be in 9.1 are we just concerned with > understanding what happened, or is there a specific reason we need to > know what changed so that a specific fix to 9.0 is needed? > > I'm sure that there is a bug in isp where it can ask for more than a > page's worth of queue space mapping but can't deal with things if you > get more than 1 segment descriptor back. I need to fix that, but I > won't be able to get to that for a couple of weeks. > > It's possible that the FC-TAPE changes triggered this because that > threw more of a load on the control space. I'll try and calculate a > change to MAXISPREQUEST to re-fit within a page some time today. > > -matt > Try the attached patch and see if it works for you. I'm not really satisfied with it- I need to do a slightly more finessed solution, but it might work for you for the moment. --------------020308020206040101080802 Content-Type: text/plain; name="isp_pci.c.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="isp_pci.c.patch" Index: isp_pci.c =================================================================== --- isp_pci.c (revision 242431) +++ isp_pci.c (working copy) @@ -1639,7 +1638,7 @@ * Create a tag for the control spaces. We don't always need this * to be 32 bits, but we do this for simplicity and speed's sake. */ - if (isp_dma_tag_create(isp->isp_osinfo.dmat, QENTRY_LEN, slim, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, NULL, NULL, len, ns, slim, 0, &isp->isp_osinfo.cdmat)) { + if (isp_dma_tag_create(isp->isp_osinfo.dmat, QENTRY_LEN, slim, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, NULL, NULL, len, 1, slim, 0, &isp->isp_osinfo.cdmat)) { isp_prt(isp, ISP_LOGERR, "cannot create a dma tag for control spaces"); free(isp->isp_osinfo.pcmd_pool, M_DEVBUF); free(isp->isp_xflist, M_DEVBUF); --------------020308020206040101080802--