diff options
author | Bjoern A. Zeeb <bz@FreeBSD.org> | 2021-03-23 15:47:24 +0000 |
---|---|---|
committer | Bjoern A. Zeeb <bz@FreeBSD.org> | 2021-03-26 12:00:13 +0000 |
commit | a9f0367b04b385e7bed47914662badf5ab18bc88 (patch) | |
tree | a07c90b95570a8192368fab7ba2dea523bc31fc2 /sys | |
parent | b6fd00791f2b9690b0a5d8670fc03f74eda96da2 (diff) | |
download | src-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.c | 7 |
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) |