[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH v2 4/7] util/vfio-helpers: Check the device allow up to 'irq_
From: |
Philippe Mathieu-Daudé |
Subject: |
[RFC PATCH v2 4/7] util/vfio-helpers: Check the device allow up to 'irq_count' IRQs |
Date: |
Thu, 13 Aug 2020 19:29:54 +0200 |
As we want to use more than one single IRQ, add a check that
the device accept our request to use multiple IRQs.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
util/vfio-helpers.c | 6 ++++++
util/trace-events | 1 +
2 files changed, 7 insertions(+)
diff --git a/util/vfio-helpers.c b/util/vfio-helpers.c
index bad60076f3..b81d4c70c2 100644
--- a/util/vfio-helpers.c
+++ b/util/vfio-helpers.c
@@ -335,6 +335,12 @@ static int qemu_vfio_init_pci(QEMUVFIOState *s, const char
*device,
ret = -errno;
goto fail;
}
+ trace_qemu_vfio_init_pci(device_info.num_irqs);
+ if (device_info.num_irqs < irq_count) {
+ error_setg(errp, "Invalid device IRQ count");
+ ret = -EINVAL;
+ goto fail;
+ }
s->irq_type = irq_type;
s->irq_count = irq_count;
diff --git a/util/trace-events b/util/trace-events
index 0ce42822eb..2e85555be3 100644
--- a/util/trace-events
+++ b/util/trace-events
@@ -83,3 +83,4 @@ qemu_vfio_new_mapping(void *s, void *host, size_t size, int
index, uint64_t iova
qemu_vfio_do_mapping(void *s, void *host, size_t size, uint64_t iova) "s %p
host %p size %zu iova 0x%"PRIx64
qemu_vfio_dma_map(void *s, void *host, size_t size, bool temporary, uint64_t
*iova) "s %p host %p size %zu temporary %d iova %p"
qemu_vfio_dma_unmap(void *s, void *host) "s %p host %p"
+qemu_vfio_init_pci(uint32_t count) "device interrupt count: %"PRIu32
--
2.21.3
- [RFC PATCH v2 0/7] util/vfio-helpers: Add support for multiple IRQs, Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 1/7] util/vfio-helpers: Store eventfd using int32_t type, Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 2/7] util/vfio-helpers: Move IRQ 'type' from pci_init_irq() to open_pci(), Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 3/7] util/vfio-helpers: Introduce 'irq_count' variable, Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 4/7] util/vfio-helpers: Check the device allow up to 'irq_count' IRQs,
Philippe Mathieu-Daudé <=
- [RFC PATCH v2 5/7] util/vfio-helpers: Support multiple eventfd, Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 6/7] util/vfio-helpers: Allow to set EventNotifier to particular IRQ, Philippe Mathieu-Daudé, 2020/08/13
- [RFC PATCH v2 7/7] util/vfio-helpers: Allow opening device requesting for multiple IRQs, Philippe Mathieu-Daudé, 2020/08/13