svn commit: r221138 - head/sys/dev/pci

John Baldwin jhb at FreeBSD.org
Wed Apr 27 20:08:45 UTC 2011


Author: jhb
Date: Wed Apr 27 20:08:44 2011
New Revision: 221138
URL: http://svn.freebsd.org/changeset/base/221138

Log:
  Only align MSI message groups based on the number of messages being
  allocated, not the maximum number of messages the device supports.  The
  spec only requires the former, and I believe I implemented the latter due
  to misunderstanding an e-mail.  In particular, this fixes an issue where
  having several devices that all support 16 messages can run out of
  IDT vectors on x86 even though the driver only uses a single message.
  
  Submitted by:	Bret Ketchum  bcketchum of gmail
  MFC after:	1 week

Modified:
  head/sys/dev/pci/pci.c

Modified: head/sys/dev/pci/pci.c
==============================================================================
--- head/sys/dev/pci/pci.c	Wed Apr 27 19:54:45 2011	(r221137)
+++ head/sys/dev/pci/pci.c	Wed Apr 27 20:08:44 2011	(r221138)
@@ -1969,7 +1969,7 @@ pci_alloc_msi_method(device_t dev, devic
 	for (;;) {
 		/* Try to allocate N messages. */
 		error = PCIB_ALLOC_MSI(device_get_parent(dev), child, actual,
-		    cfg->msi.msi_msgnum, irqs);
+		    actual, irqs);
 		if (error == 0)
 			break;
 		if (actual == 1)


More information about the svn-src-all mailing list