Hi Markus,

On 7/13/21 10:46 PM, Markus Armbruster wrote:
> Dongli Zhang <dongli.zh...@oracle.com> writes:
> 
>> This patch is to add the HMP interface to dump MSI-X table and PBA, in
>> order to help diagnose the loss of IRQ issue in VM (e.g., if an MSI-X
>> vector is erroneously masked permanently). Here is the example with
>> vhost-scsi:
>>
>> (qemu) info msix /machine/peripheral/vscsi0
>> Msg L.Addr Msg U.Addr Msg Data   Vect Ctrl
>> 0xfee00000 0x00000000 0x00004041 0x00000000
>> 0xfee00000 0x00000000 0x00004051 0x00000000
>> 0xfee00000 0x00000000 0x00004061 0x00000000
>> 0xfee00000 0x00000000 0x00004071 0x00000000
>> 0xfee01000 0x00000000 0x000040b1 0x00000000
>> 0xfee02000 0x00000000 0x000040c1 0x00000000
>> 0xfee03000 0x00000000 0x000040d1 0x00000000
>>
>> MSI-X PBA
>> 0 0 0 0 0 0 0
>>
>> Since the number of MSI-X entries is not determined and might be very
>> large, it is sometimes inappropriate to dump via QMP.
> 
> Why?  What makes HMP different?

Here are two reasons.

1. The size of MSI-X table is nondeterministic and might be very large, e.g.,
the PCI_MSIX_FLAGS_QSIZE is 0x07FF. The "info tlb" (which is a table and similar
to MSI-X) and "info lapic" also only support hmp.

2. The [PATCH 3/3] of this patchset support device specific data, the
definitional of which varies depending on each device type (so far only
virtio-pci supports the interface).

Thank you very much!

Dongli Zhang

> 
>> Therefore, this patch dumps MSI-X information only via HMP, which is
>> similar to the implementation of hmp_info_mem().
>>
>> Cc: Jason Wang <jasow...@redhat.com>
>> Cc: Joe Jin <joe....@oracle.com>
>> Signed-off-by: Dongli Zhang <dongli.zh...@oracle.com>
>> Acked-by: Dr. David Alan Gilbert <dgilb...@redhat.com>
>> Acked-by: Jason Wang <jasow...@redhat.com>
> 

Reply via email to