mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 13:41:51 +00:00
vfio/pci: Move all the SPAPR PCI specific logic to vfio_pci_core.ko
The vfio_spapr_pci_eeh_open/release() functions are one line wrappers around an arch function. Just call them directly. This eliminates some weird exported symbols that don't need to exist. Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Link: https://lore.kernel.org/r/1-v5-fc5346cacfd4+4c482-vfio_modules_jgg@nvidia.com Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
b058ea3ab5
commit
8f8bcc8c72
@ -27,6 +27,9 @@
|
||||
#include <linux/vgaarb.h>
|
||||
#include <linux/nospec.h>
|
||||
#include <linux/sched/mm.h>
|
||||
#if IS_ENABLED(CONFIG_VFIO_SPAPR_EEH)
|
||||
#include <asm/eeh.h>
|
||||
#endif
|
||||
|
||||
#include "vfio_pci_priv.h"
|
||||
|
||||
@ -686,7 +689,9 @@ void vfio_pci_core_close_device(struct vfio_device *core_vdev)
|
||||
vdev->sriov_pf_core_dev->vf_token->users--;
|
||||
mutex_unlock(&vdev->sriov_pf_core_dev->vf_token->lock);
|
||||
}
|
||||
vfio_spapr_pci_eeh_release(vdev->pdev);
|
||||
#if IS_ENABLED(CONFIG_VFIO_SPAPR_EEH)
|
||||
eeh_dev_release(vdev->pdev);
|
||||
#endif
|
||||
vfio_pci_core_disable(vdev);
|
||||
|
||||
mutex_lock(&vdev->igate);
|
||||
@ -705,7 +710,9 @@ EXPORT_SYMBOL_GPL(vfio_pci_core_close_device);
|
||||
void vfio_pci_core_finish_enable(struct vfio_pci_core_device *vdev)
|
||||
{
|
||||
vfio_pci_probe_mmaps(vdev);
|
||||
vfio_spapr_pci_eeh_open(vdev->pdev);
|
||||
#if IS_ENABLED(CONFIG_VFIO_SPAPR_EEH)
|
||||
eeh_dev_open(vdev->pdev);
|
||||
#endif
|
||||
|
||||
if (vdev->sriov_pf_core_dev) {
|
||||
mutex_lock(&vdev->sriov_pf_core_dev->vf_token->lock);
|
||||
|
@ -15,19 +15,6 @@
|
||||
#define DRIVER_AUTHOR "Gavin Shan, IBM Corporation"
|
||||
#define DRIVER_DESC "VFIO IOMMU SPAPR EEH"
|
||||
|
||||
/* We might build address mapping here for "fast" path later */
|
||||
void vfio_spapr_pci_eeh_open(struct pci_dev *pdev)
|
||||
{
|
||||
eeh_dev_open(pdev);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(vfio_spapr_pci_eeh_open);
|
||||
|
||||
void vfio_spapr_pci_eeh_release(struct pci_dev *pdev)
|
||||
{
|
||||
eeh_dev_release(pdev);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(vfio_spapr_pci_eeh_release);
|
||||
|
||||
long vfio_spapr_iommu_eeh_ioctl(struct iommu_group *group,
|
||||
unsigned int cmd, unsigned long arg)
|
||||
{
|
||||
|
@ -233,21 +233,10 @@ int vfio_set_irqs_validate_and_prepare(struct vfio_irq_set *hdr,
|
||||
int num_irqs, int max_irq_type,
|
||||
size_t *data_size);
|
||||
|
||||
struct pci_dev;
|
||||
#if IS_ENABLED(CONFIG_VFIO_SPAPR_EEH)
|
||||
void vfio_spapr_pci_eeh_open(struct pci_dev *pdev);
|
||||
void vfio_spapr_pci_eeh_release(struct pci_dev *pdev);
|
||||
long vfio_spapr_iommu_eeh_ioctl(struct iommu_group *group, unsigned int cmd,
|
||||
unsigned long arg);
|
||||
#else
|
||||
static inline void vfio_spapr_pci_eeh_open(struct pci_dev *pdev)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void vfio_spapr_pci_eeh_release(struct pci_dev *pdev)
|
||||
{
|
||||
}
|
||||
|
||||
static inline long vfio_spapr_iommu_eeh_ioctl(struct iommu_group *group,
|
||||
unsigned int cmd,
|
||||
unsigned long arg)
|
||||
|
Loading…
Reference in New Issue
Block a user