mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-13 14:24:11 +08:00
vfio/pci: Simplify the is_intx/msi/msix/etc defines
Only three of these are actually used, simplify to three inline functions, and open code the if statement in vfio_pci_config.c. Reviewed-by: Kevin Tian <kevin.tian@intel.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Link: https://lore.kernel.org/r/3-v2-1bd95d72f298+e0e-vfio_pci_priv_jgg@nvidia.com Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
1e979ef5df
commit
c462a8c5d9
@ -1166,7 +1166,7 @@ static int vfio_msi_config_write(struct vfio_pci_core_device *vdev, int pos,
|
||||
flags = le16_to_cpu(*pflags);
|
||||
|
||||
/* MSI is enabled via ioctl */
|
||||
if (!is_msi(vdev))
|
||||
if (vdev->irq_type != VFIO_PCI_MSI_IRQ_INDEX)
|
||||
flags &= ~PCI_MSI_FLAGS_ENABLE;
|
||||
|
||||
/* Check queue size */
|
||||
|
@ -22,11 +22,6 @@
|
||||
|
||||
#include "vfio_pci_priv.h"
|
||||
|
||||
#define is_intx(vdev) (vdev->irq_type == VFIO_PCI_INTX_IRQ_INDEX)
|
||||
#define is_msix(vdev) (vdev->irq_type == VFIO_PCI_MSIX_IRQ_INDEX)
|
||||
#define is_irq_none(vdev) (!(is_intx(vdev) || is_msi(vdev) || is_msix(vdev)))
|
||||
#define irq_is(vdev, type) (vdev->irq_type == type)
|
||||
|
||||
struct vfio_pci_irq_ctx {
|
||||
struct eventfd_ctx *trigger;
|
||||
struct virqfd *unmask;
|
||||
@ -36,6 +31,23 @@ struct vfio_pci_irq_ctx {
|
||||
struct irq_bypass_producer producer;
|
||||
};
|
||||
|
||||
static bool irq_is(struct vfio_pci_core_device *vdev, int type)
|
||||
{
|
||||
return vdev->irq_type == type;
|
||||
}
|
||||
|
||||
static bool is_intx(struct vfio_pci_core_device *vdev)
|
||||
{
|
||||
return vdev->irq_type == VFIO_PCI_INTX_IRQ_INDEX;
|
||||
}
|
||||
|
||||
static bool is_irq_none(struct vfio_pci_core_device *vdev)
|
||||
{
|
||||
return !(vdev->irq_type == VFIO_PCI_INTX_IRQ_INDEX ||
|
||||
vdev->irq_type == VFIO_PCI_MSI_IRQ_INDEX ||
|
||||
vdev->irq_type == VFIO_PCI_MSIX_IRQ_INDEX);
|
||||
}
|
||||
|
||||
/*
|
||||
* INTx
|
||||
*/
|
||||
|
@ -23,8 +23,6 @@ struct vfio_pci_ioeventfd {
|
||||
bool test_mem;
|
||||
};
|
||||
|
||||
#define is_msi(vdev) (vdev->irq_type == VFIO_PCI_MSI_IRQ_INDEX)
|
||||
|
||||
void vfio_pci_intx_mask(struct vfio_pci_core_device *vdev);
|
||||
void vfio_pci_intx_unmask(struct vfio_pci_core_device *vdev);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user