Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Jun 2009 20:08:07 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r194644 - head/sys/dev/pci
Message-ID:  <200906222008.n5MK87qh050928@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Mon Jun 22 20:08:06 2009
New Revision: 194644
URL: http://svn.freebsd.org/changeset/base/194644

Log:
  Enable MSI in the MSI capability registers any time that the first message
  in an MSI group is enabled, not just if the address/data pair are not
  initialized.
  
  Reported by:	rnoland
  MFC after:	1 week

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

Modified: head/sys/dev/pci/pci.c
==============================================================================
--- head/sys/dev/pci/pci.c	Mon Jun 22 19:35:39 2009	(r194643)
+++ head/sys/dev/pci/pci.c	Mon Jun 22 20:08:06 2009	(r194644)
@@ -2883,8 +2883,10 @@ pci_setup_intr(device_t dev, device_t ch
 					goto bad;
 				dinfo->cfg.msi.msi_addr = addr;
 				dinfo->cfg.msi.msi_data = data;
-				pci_enable_msi(child, addr, data);
 			}
+			if (dinfo->cfg.msi.msi_handlers == 0)
+				pci_enable_msi(child, dinfo->cfg.msi.msi_addr,
+				    dinfo->cfg.msi.msi_data);
 			dinfo->cfg.msi.msi_handlers++;
 		} else {
 			KASSERT(dinfo->cfg.msix.msix_alloc > 0,



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