[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251110225347.GA2141838@bhelgaas>
Date: Mon, 10 Nov 2025 16:53:47 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
Jani Nikula <jani.nikula@...ux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
Tvrtko Ursulin <tursulin@...ulin.net>
Cc: Alex Bennée <alex.bennee@...aro.org>,
Simon Richter <Simon.Richter@...yros.de>,
Lucas De Marchi <lucas.demarchi@...el.com>,
Alex Deucher <alexander.deucher@....com>,
amd-gfx@...ts.freedesktop.org, Bjorn Helgaas <bhelgaas@...gle.com>,
David Airlie <airlied@...il.com>, dri-devel@...ts.freedesktop.org,
intel-gfx@...ts.freedesktop.org, intel-xe@...ts.freedesktop.org,
linux-pci@...r.kernel.org, Simona Vetter <simona@...ll.ch>,
Christian König <christian.koenig@....com>,
Thomas Hellström <thomas.hellstrom@...ux.intel.com>,
Michał Winiarski <michal.winiarski@...el.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 7/9] drm/i915: Remove driver side BAR release before
resize
i915 folks, any objection to this?
On Tue, Oct 28, 2025 at 07:35:49PM +0200, Ilpo Järvinen wrote:
> PCI core handles releasing device's resources and their rollback in
> case of failure of a BAR resizing operation. Releasing resource prior
> to calling pci_resize_resource() prevents PCI core from restoring the
> BARs as they were.
>
> Remove driver-side release of BARs from the i915 driver.
>
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_region_lmem.c | 12 ------------
> 1 file changed, 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_region_lmem.c b/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> index 51bb27e10a4f..ca3de61451a3 100644
> --- a/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> +++ b/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> @@ -18,16 +18,6 @@
> #include "gt/intel_gt_regs.h"
>
> #ifdef CONFIG_64BIT
> -static void _release_bars(struct pci_dev *pdev)
> -{
> - int resno;
> -
> - for (resno = PCI_STD_RESOURCES; resno < PCI_STD_RESOURCE_END; resno++) {
> - if (pci_resource_len(pdev, resno))
> - pci_release_resource(pdev, resno);
> - }
> -}
> -
> static void
> _resize_bar(struct drm_i915_private *i915, int resno, resource_size_t size)
> {
> @@ -35,8 +25,6 @@ _resize_bar(struct drm_i915_private *i915, int resno, resource_size_t size)
> int bar_size = pci_rebar_bytes_to_size(size);
> int ret;
>
> - _release_bars(pdev);
> -
> ret = pci_resize_resource(pdev, resno, bar_size);
> if (ret) {
> drm_info(&i915->drm, "Failed to resize BAR%d to %dM (%pe)\n",
> --
> 2.39.5
>
Powered by blists - more mailing lists