aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Williamson <alex.williamson@redhat.com>2015-04-28 12:23:30 -0400
committerAlex Williamson <alex.williamson@redhat.com>2015-05-01 16:00:53 -0400
commit5f55d2ae699d1756ad6132786c7f9c27dc456b66 (patch)
treec04cd92c5ce7fa91c42d87fbd739b500bf046c51
parentb787f68c36d49bb1d9236f403813641efa74a031 (diff)
vfio-pci: Log device requests more verbosely
Log some clues indicating whether the user is receiving device request interfaces or not listening. This can help indicate why a driver unbind is blocked or explain why QEMU automatically unplugged a device from the VM. Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
-rw-r--r--drivers/vfio/pci/vfio_pci.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c
index 69fab0fd15ae..e9851add6f4e 100644
--- a/drivers/vfio/pci/vfio_pci.c
+++ b/drivers/vfio/pci/vfio_pci.c
@@ -907,8 +907,14 @@ static void vfio_pci_request(void *device_data, unsigned int count)
907 mutex_lock(&vdev->igate); 907 mutex_lock(&vdev->igate);
908 908
909 if (vdev->req_trigger) { 909 if (vdev->req_trigger) {
910 dev_dbg(&vdev->pdev->dev, "Requesting device from user\n"); 910 if (!(count % 10))
911 dev_notice_ratelimited(&vdev->pdev->dev,
912 "Relaying device request to user (#%u)\n",
913 count);
911 eventfd_signal(vdev->req_trigger, 1); 914 eventfd_signal(vdev->req_trigger, 1);
915 } else if (count == 0) {
916 dev_warn(&vdev->pdev->dev,
917 "No device request channel registered, blocked until released by user\n");
912 } 918 }
913 919
914 mutex_unlock(&vdev->igate); 920 mutex_unlock(&vdev->igate);