From owner-svn-src-all@FreeBSD.ORG Thu Jun 25 19:44:28 2009 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B5B65106564A; Thu, 25 Jun 2009 19:44:28 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from cmail.optima.ua (cmail.optima.ua [195.248.191.121]) by mx1.freebsd.org (Postfix) with ESMTP id BC6358FC12; Thu, 25 Jun 2009 19:44:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from [212.86.226.226] (account mav@alkar.net HELO mavbook.mavhome.dp.ua) by cmail.optima.ua (CommuniGate Pro SMTP 5.2.9) with ESMTPSA id 246841320; Thu, 25 Jun 2009 22:44:24 +0300 Message-ID: <4A43D392.2070203@FreeBSD.org> Date: Thu, 25 Jun 2009 22:44:18 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.21 (X11/20090405) MIME-Version: 1.0 To: John Baldwin References: <200906251813.n5PIDkfl060004@svn.freebsd.org> In-Reply-To: <200906251813.n5PIDkfl060004@svn.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r194985 - in head/sys: amd64/amd64 amd64/include i386/i386 i386/include X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Jun 2009 19:44:29 -0000 John Baldwin wrote: > Author: jhb > Date: Thu Jun 25 18:13:46 2009 > New Revision: 194985 > URL: http://svn.freebsd.org/changeset/base/194985 > > Log: > - Restore the behavior of pre-allocating IDT vectors for MSI interrupts. > This is mostly important for the multiple MSI message case where the > IDT vectors for the entire group need to be allocated together. This > also restores the assumptions made by the PCI bus code that it could > invoke PCIB_MAP_MSI() once MSI vectors were allocated. > - To avoid whiplash with CPU assignments, change the way that CPUs are > assigned to interrupt sources on activation. Instead of assigning the > CPU via pic_assign_cpu() before calling enable_intr(), allow the > different interrupt source drivers to ask the MD interrupt code which > CPU to use when they allocate an IDT vector. I/O APIC interrupt pins > do this in their pic_enable_intr() routines giving the same behavior as > before. MSI sources do it when the IDT vectors are allocated during > msi_alloc() and msix_alloc(). > - Change the intr_table_lock from an sx lock to a mutex. > > Tested by: rnoland It seems also fixed previously not working multi-vector MSI mode of AHCI on my less lucky laptop. Thanks. -- Alexander Motin