qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] pci: Display PCI IRQ pin in "info pci"


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] pci: Display PCI IRQ pin in "info pci"
Date: Wed, 18 Mar 2020 18:06:02 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0

On 3/17/20 9:11 PM, Peter Xu wrote:
On Tue, Mar 17, 2020 at 03:02:57PM -0500, Eric Blake wrote:
On 3/17/20 2:59 PM, Peter Xu wrote:
Sometimes it would be good to be able to read the pin number along
with the IRQ number allocated.  Since we'll dump the IRQ number, no
reason to not dump the pin information.  For example, the vfio-pci
device will overwrite the pin with the hardware pin number.  It would
be nice to know the pin number of one assigned device from QMP/HMP.

CC: Dr. David Alan Gilbert <address@hidden>
CC: Alex Williamson <address@hidden>
CC: Michael S. Tsirkin <address@hidden>
CC: Marcel Apfelbaum <address@hidden>
CC: Julia Suvorova <address@hidden>
CC: Markus Armbruster <address@hidden>
Signed-off-by: Peter Xu <address@hidden>
---

This helped me to debug an IRQ sharing issue, so may good to have it
in master too.

We're right at soft freeze.


+++ b/qapi/misc.json
@@ -403,6 +403,8 @@
   #
   # @irq: if an IRQ is assigned to the device, the IRQ number
   #
+# @irq_pin: the IRQ pin, zero means no IRQ (since 5.1)
+#

But if we really do want it in 5.0, this needs a tweak.  Does the delay
hurt?

No it won't; it's something good to have only.  I'll let the
maintainers to decide...


Naming convention: We prefer  unless there is a consistency
issue....

   # @qdev_id: the device name of the PCI device
   #
   # @pci_bridge: if the device is a PCI bridge, the bridge information
@@ -417,8 +419,8 @@
   { 'struct': 'PciDeviceInfo',
     'data': {'bus': 'int', 'slot': 'int', 'function': 'int',
              'class_info': 'PciDeviceClass', 'id': 'PciDeviceId',
-           '*irq': 'int', 'qdev_id': 'str', '*pci_bridge': 'PciBridgeInfo',
-           'regions': ['PciMemoryRegion']} }
+           '*irq': 'int', 'irq_pin': 'int', 'qdev_id': 'str',
+           '*pci_bridge': 'PciBridgeInfo', 'regions': ['PciMemoryRegion'] }}

and the pre-existing pci_bridge is indeed the consistency issue.

Yeh, actually every key in this struct. :)

Using 'irq-pin':
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>


Thanks,





reply via email to

[Prev in Thread] Current Thread [Next in Thread]