Message ID | 20230905024028.940377-1-oushixiong@kylinos.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | vfio/pds: Limit Calling dev_dbg function to CONFIG_PCI_ATS | expand |
On 9/5/2023 7:31 AM, Alex Williamson wrote: > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > > On Tue, 5 Sep 2023 10:40:28 +0800 > oushixiong <oushixiong@kylinos.cn> wrote: > >> From: Shixiong Ou <oushixiong@kylinos.cn> >> >> If CONFIG_PCI_ATS isn't set, then pdev->physfn is not defined. >> So it causes a compilation issue: >> >> ../drivers/vfio/pci/pds/vfio_dev.c:165:30: error: ‘struct pci_dev’ has no member named ‘physfn’; did you mean ‘is_physfn’? >> 165 | __func__, pci_dev_id(pdev->physfn), pci_id, vf_id, >> | ^~~~~~ >> >> Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn> >> --- >> drivers/vfio/pci/pds/vfio_dev.c | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/drivers/vfio/pci/pds/vfio_dev.c b/drivers/vfio/pci/pds/vfio_dev.c >> index b46174f5eb09..18b4a6a5bc16 100644 >> --- a/drivers/vfio/pci/pds/vfio_dev.c >> +++ b/drivers/vfio/pci/pds/vfio_dev.c >> @@ -160,10 +160,13 @@ static int pds_vfio_init_device(struct vfio_device *vdev) >> vdev->log_ops = &pds_vfio_log_ops; >> >> pci_id = PCI_DEVID(pdev->bus->number, pdev->devfn); >> + >> +#ifdef CONFIG_PCI_ATS >> dev_dbg(&pdev->dev, >> "%s: PF %#04x VF %#04x vf_id %d domain %d pds_vfio %p\n", >> __func__, pci_dev_id(pdev->physfn), pci_id, vf_id, >> pci_domain_nr(pdev->bus), pds_vfio); >> +#endif >> >> return 0; >> } > > AIUI, this whole driver is dependent on SR-IOV functionality, so perhaps > this should be gated at Kconfig? Thanks, > > Alex It seems like depending on SR-IOV functionality makes more sense. Thanks, Brett >
diff --git a/drivers/vfio/pci/pds/vfio_dev.c b/drivers/vfio/pci/pds/vfio_dev.c index b46174f5eb09..18b4a6a5bc16 100644 --- a/drivers/vfio/pci/pds/vfio_dev.c +++ b/drivers/vfio/pci/pds/vfio_dev.c @@ -160,10 +160,13 @@ static int pds_vfio_init_device(struct vfio_device *vdev) vdev->log_ops = &pds_vfio_log_ops; pci_id = PCI_DEVID(pdev->bus->number, pdev->devfn); + +#ifdef CONFIG_PCI_ATS dev_dbg(&pdev->dev, "%s: PF %#04x VF %#04x vf_id %d domain %d pds_vfio %p\n", __func__, pci_dev_id(pdev->physfn), pci_id, vf_id, pci_domain_nr(pdev->bus), pds_vfio); +#endif return 0; }