[PATCH v8 3/6] PCI: Allow IOV resources to be resized in pci_resize_resource()
kernel test robot
lkp at intel.com
Tue May 27 01:54:08 UTC 2025
Hi Michał,
kernel test robot noticed the following build errors:
[auto build test ERROR on pci/next]
[also build test ERROR on pci/for-linus drm-xe/drm-xe-next drm-exynos/exynos-drm-next linus/master v6.15 next-20250526]
[cannot apply to drm/drm-next drm-intel/for-linux-next drm-intel/for-linux-next-fixes drm-misc/drm-misc-next drm-tip/drm-tip]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Micha-Winiarski/PCI-IOV-Restore-VF-resizable-BAR-state-after-reset/20250527-054652
base: https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git next
patch link: https://lore.kernel.org/r/20250526214257.3481760-4-michal.winiarski%40intel.com
patch subject: [PATCH v8 3/6] PCI: Allow IOV resources to be resized in pci_resize_resource()
config: riscv-randconfig-001-20250527 (https://download.01.org/0day-ci/archive/20250527/202505270903.Mnc3qSMW-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250527/202505270903.Mnc3qSMW-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202505270903.Mnc3qSMW-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/pci/pci.c: In function 'pci_rebar_find_pos':
>> drivers/pci/pci.c:3756:14: error: 'struct pci_dev' has no member named 'physfn'; did you mean 'is_physfn'?
if (!pdev->physfn)
^~~~~~
is_physfn
>> drivers/pci/pci.c:3758:13: error: 'struct pci_dev' has no member named 'sriov'
pos = pdev->sriov->vf_rebar_cap;
^~
vim +3756 drivers/pci/pci.c
3740
3741 /**
3742 * pci_rebar_find_pos - find position of resize ctrl reg for BAR
3743 * @pdev: PCI device
3744 * @bar: BAR to find
3745 *
3746 * Helper to find the position of the ctrl register for a BAR.
3747 * Returns -ENOTSUPP if resizable BARs are not supported at all.
3748 * Returns -ENOENT if no ctrl register for the BAR could be found.
3749 */
3750 static int pci_rebar_find_pos(struct pci_dev *pdev, int bar)
3751 {
3752 unsigned int pos, nbars, i;
3753 u32 ctrl;
3754
3755 if (pci_resource_is_iov(bar)) {
> 3756 if (!pdev->physfn)
3757 return -ENOTSUPP;
> 3758 pos = pdev->sriov->vf_rebar_cap;
3759 bar = pci_resource_num_to_vf_bar(bar);
3760 } else {
3761 pos = pdev->rebar_cap;
3762 }
3763
3764 if (!pos)
3765 return -ENOTSUPP;
3766
3767 pci_read_config_dword(pdev, pos + PCI_REBAR_CTRL, &ctrl);
3768 nbars = FIELD_GET(PCI_REBAR_CTRL_NBAR_MASK, ctrl);
3769
3770 for (i = 0; i < nbars; i++, pos += 8) {
3771 int bar_idx;
3772
3773 pci_read_config_dword(pdev, pos + PCI_REBAR_CTRL, &ctrl);
3774 bar_idx = FIELD_GET(PCI_REBAR_CTRL_BAR_IDX, ctrl);
3775 if (bar_idx == bar)
3776 return pos;
3777 }
3778
3779 return -ENOENT;
3780 }
3781
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the dri-devel
mailing list