Set the pcie_cap field before getting the config space size for other VFs. Otherwise, the config space size of other VFs are error set to 256, while the size of VF0 is 4096. Signed-off-by: Hao Zheng <mowendugu@xxxxxxxxx> Signed-off-by: Quan Xu <quan.xu0@xxxxxxxxx> --- drivers/pci/iov.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c index 3aa115e..239fad1 100644 --- a/drivers/pci/iov.c +++ b/drivers/pci/iov.c @@ -133,6 +133,7 @@ static void pci_read_vf_config_common(struct pci_dev *virtfn) pci_read_config_word(virtfn, PCI_SUBSYSTEM_ID, &physfn->sriov->subsystem_device); + set_pcie_port_type(virtfn); physfn->sriov->cfg_size = pci_cfg_space_size(virtfn); } -- 1.8.3.1