* [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue
@ 2023-09-11 8:08 oushixiong
2023-09-11 8:25 ` Tian, Kevin
0 siblings, 1 reply; 4+ messages in thread
From: oushixiong @ 2023-09-11 8:08 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Yishai Hadas, Shameer Kolothum, Kevin Tian, Brett Creeley,
Alex Williamson, kvm, linux-kernel, Shixiong Ou
From: Shixiong Ou <oushixiong@kylinos.cn>
If PCI_ATS isn't set, then pdev->physfn is not defined.
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,
| ^~~~~~
So using pci_physfn() rather than using pdev->physfn directly.
Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn>
---
drivers/vfio/pci/pds/vfio_dev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/vfio/pci/pds/vfio_dev.c b/drivers/vfio/pci/pds/vfio_dev.c
index b46174f5eb09..649b18ee394b 100644
--- a/drivers/vfio/pci/pds/vfio_dev.c
+++ b/drivers/vfio/pci/pds/vfio_dev.c
@@ -162,7 +162,7 @@ static int pds_vfio_init_device(struct vfio_device *vdev)
pci_id = PCI_DEVID(pdev->bus->number, pdev->devfn);
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,
+ __func__, pci_dev_id(pci_physfn(pdev)), pci_id, vf_id,
pci_domain_nr(pdev->bus), pds_vfio);
return 0;
--
2.25.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* RE: [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue
2023-09-11 8:08 [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue oushixiong
@ 2023-09-11 8:25 ` Tian, Kevin
2023-09-11 12:28 ` Jason Gunthorpe
0 siblings, 1 reply; 4+ messages in thread
From: Tian, Kevin @ 2023-09-11 8:25 UTC (permalink / raw)
To: oushixiong, Jason Gunthorpe
Cc: Yishai Hadas, Shameer Kolothum, Brett Creeley, Alex Williamson,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org
> From: oushixiong <oushixiong@kylinos.cn>
> Sent: Monday, September 11, 2023 4:08 PM
>
> From: Shixiong Ou <oushixiong@kylinos.cn>
>
> If PCI_ATS isn't set, then pdev->physfn is not defined.
> 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,
> | ^~~~~~
>
> So using pci_physfn() rather than using pdev->physfn directly.
>
> Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue
2023-09-11 8:25 ` Tian, Kevin
@ 2023-09-11 12:28 ` Jason Gunthorpe
2023-09-13 18:58 ` Alex Williamson
0 siblings, 1 reply; 4+ messages in thread
From: Jason Gunthorpe @ 2023-09-11 12:28 UTC (permalink / raw)
To: Tian, Kevin
Cc: oushixiong, Yishai Hadas, Shameer Kolothum, Brett Creeley,
Alex Williamson, kvm@vger.kernel.org,
linux-kernel@vger.kernel.org
On Mon, Sep 11, 2023 at 08:25:18AM +0000, Tian, Kevin wrote:
> > From: oushixiong <oushixiong@kylinos.cn>
> > Sent: Monday, September 11, 2023 4:08 PM
> >
> > From: Shixiong Ou <oushixiong@kylinos.cn>
> >
> > If PCI_ATS isn't set, then pdev->physfn is not defined.
> > 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,
> > | ^~~~~~
> >
> > So using pci_physfn() rather than using pdev->physfn directly.
> >
> > Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn>
>
> Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Yes, we should do both patches
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Jason
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue
2023-09-11 12:28 ` Jason Gunthorpe
@ 2023-09-13 18:58 ` Alex Williamson
0 siblings, 0 replies; 4+ messages in thread
From: Alex Williamson @ 2023-09-13 18:58 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Tian, Kevin, oushixiong, Yishai Hadas, Shameer Kolothum,
Brett Creeley, kvm@vger.kernel.org, linux-kernel@vger.kernel.org
On Mon, 11 Sep 2023 09:28:02 -0300
Jason Gunthorpe <jgg@ziepe.ca> wrote:
> On Mon, Sep 11, 2023 at 08:25:18AM +0000, Tian, Kevin wrote:
> > > From: oushixiong <oushixiong@kylinos.cn>
> > > Sent: Monday, September 11, 2023 4:08 PM
> > >
> > > From: Shixiong Ou <oushixiong@kylinos.cn>
> > >
> > > If PCI_ATS isn't set, then pdev->physfn is not defined.
> > > 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,
> > > | ^~~~~~
> > >
> > > So using pci_physfn() rather than using pdev->physfn directly.
> > >
> > > Signed-off-by: Shixiong Ou <oushixiong@kylinos.cn>
> >
> > Reviewed-by: Kevin Tian <kevin.tian@intel.com>
>
> Yes, we should do both patches
Sure, but it's sloppy to put both in with the same commit log. Should
we change this one to something like:
vfio/pds: Use proper PF device access helper
The pci_physfn() helper exists to support cases where the physfn
field may not be compiled into the pci_dev structure. We've
declared this driver dependent on PCI_IOV to avoid this problem,
but regardless we should follow the precedent not to access this
field directly.
Thanks,
Alex
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-09-13 18:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-11 8:08 [PATCH] vfio/pds: Using pci_physfn() to fix a compilation issue oushixiong
2023-09-11 8:25 ` Tian, Kevin
2023-09-11 12:28 ` Jason Gunthorpe
2023-09-13 18:58 ` Alex Williamson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox