On Mon, 11 Sep 2023 09:28:02 -0300 Jason Gunthorpe <jgg@xxxxxxxx> wrote: > On Mon, Sep 11, 2023 at 08:25:18AM +0000, Tian, Kevin wrote: > > > From: oushixiong <oushixiong@xxxxxxxxxx> > > > Sent: Monday, September 11, 2023 4:08 PM > > > > > > From: Shixiong Ou <oushixiong@xxxxxxxxxx> > > > > > > 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@xxxxxxxxxx> > > > > Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx> > > 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