aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2021-03-23 15:47:24 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2021-03-26 12:00:13 +0000
commita9f0367b04b385e7bed47914662badf5ab18bc88 (patch)
treea07c90b95570a8192368fab7ba2dea523bc31fc2 /sys
parentb6fd00791f2b9690b0a5d8670fc03f74eda96da2 (diff)
downloadsrc-a9f0367b04b385e7bed47914662badf5ab18bc88.tar.gz
src-a9f0367b04b385e7bed47914662badf5ab18bc88.zip
pci: enhance printf for leaked MSI[-X] vectors
When debugging leaked MSI/MSI-X vectors through LinuxKPI I found the informational printf unhelpful. Rather than just stating we leaked also tell how many MSI or MSI-X vectors we leak. Sponsored-by: The FreeBSD Foundation Reviewed-by: jhb MFC-after: 2 weeks Differential Revision: https://reviews.freebsd.org/D29394
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/pci.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c
index d85ce5baa7bc..ab19d13fc13a 100644
--- a/sys/dev/pci/pci.c
+++ b/sys/dev/pci/pci.c
@@ -5004,7 +5004,12 @@ pci_child_detached(device_t dev, device_t child)
if (resource_list_release_active(rl, dev, child, SYS_RES_IRQ) != 0)
pci_printf(&dinfo->cfg, "Device leaked IRQ resources\n");
if (dinfo->cfg.msi.msi_alloc != 0 || dinfo->cfg.msix.msix_alloc != 0) {
- pci_printf(&dinfo->cfg, "Device leaked MSI vectors\n");
+ if (dinfo->cfg.msi.msi_alloc != 0)
+ pci_printf(&dinfo->cfg, "Device leaked %d MSI "
+ "vectors\n", dinfo->cfg.msi.msi_alloc);
+ else
+ pci_printf(&dinfo->cfg, "Device leaked %d MSI-X "
+ "vectors\n", dinfo->cfg.msix.msix_alloc);
(void)pci_release_msi(child);
}
if (resource_list_release_active(rl, dev, child, SYS_RES_MEMORY) != 0)