Message ID | 20231114-dont_clean_gt_on_error_path-v1-1-37f2fa827fd2@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915: do not clean GT table on error path | expand |
On 14.11.2023 17:30, Patchwork wrote: > Project List - Patchwork *Patch Details* > *Series:* drm/i915: do not clean GT table on error path > *URL:* https://patchwork.freedesktop.org/series/126385/ > *State:* failure > *Details:* > https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/index.html > > > CI Bug Log - changes from CI_DRM_13873 -> Patchwork_126385v1 > > > Summary > > *FAILURE* > > Serious unknown changes coming with Patchwork_126385v1 absolutely need > to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in Patchwork_126385v1, please notify your bug team > (lgci.bug.filing@intel.com) to allow them > to document this new failure mode, which will reduce false positives > in CI. > > External URL: > https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/index.html > > > Participating hosts (37 -> 39) > > Additional (4): fi-kbl-soraka bat-rpls-1 bat-kbl-2 bat-dg2-9 > Missing (2): fi-snb-2520m fi-pnv-d510 > > > Possible new issues > > Here are the unknown changes that may have been introduced in > Patchwork_126385v1: > > > IGT changes > > > Possible regressions > > * > > igt@i915_selftest@live@workarounds: > > o bat-adlp-9: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13873/bat-adlp-9/igt@i915_selftest@live@workarounds.html> > -> INCOMPLETE > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-adlp-9/igt@i915_selftest@live@workarounds.html> > Known error [1]. [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13844/bat-rpls-1/igt@i915_selftest@live@workarounds.html > * > * > > igt@i915_suspend@basic-s2idle-without-i915: > > o bat-atsm-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13873/bat-atsm-1/igt@i915_suspend@basic-s2idle-without-i915.html> > -> WARN > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-atsm-1/igt@i915_suspend@basic-s2idle-without-i915.html> > Known issue [2]. @BUG filing, please update the filters. [2]: https://gitlab.freedesktop.org/drm/intel/-/issues/8715 Regards Andrzej > * > > > Known issues > > Here are the changes found in Patchwork_126385v1 that come from known > issues: > > > CI changes > > > Issues hit > > * boot: > o bat-jsl-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13873/bat-jsl-1/boot.html> > -> FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-jsl-1/boot.html> > (i915#8293 <https://gitlab.freedesktop.org/drm/intel/issues/8293>) > > > IGT changes > > > Issues hit > > * > > igt@debugfs_test@basic-hwmon: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@debugfs_test@basic-hwmon.html> > (i915#9318 <https://gitlab.freedesktop.org/drm/intel/issues/9318>) > * > > igt@fbdev@info: > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@fbdev@info.html> > (i915#1849 > <https://gitlab.freedesktop.org/drm/intel/issues/1849> / > i915#2582 <https://gitlab.freedesktop.org/drm/intel/issues/2582>) > > o > > bat-kbl-2: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-kbl-2/igt@fbdev@info.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271> / > i915#1849 <https://gitlab.freedesktop.org/drm/intel/issues/1849>) > > * > > igt@fbdev@write: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@fbdev@write.html> > (i915#2582 > <https://gitlab.freedesktop.org/drm/intel/issues/2582>) +3 > other tests skip > * > > igt@gem_huc_copy@huc-copy: > > o fi-kbl-soraka: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271> / > i915#2190 <https://gitlab.freedesktop.org/drm/intel/issues/2190>) > * > > igt@gem_lmem_swapping@basic: > > o fi-kbl-soraka: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271> / > i915#4613 > <https://gitlab.freedesktop.org/drm/intel/issues/4613>) +3 > other tests skip > * > > igt@gem_lmem_swapping@parallel-random-engines: > > o bat-kbl-2: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-kbl-2/igt@gem_lmem_swapping@parallel-random-engines.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +24 > other tests skip > * > > igt@gem_lmem_swapping@random-engines: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@gem_lmem_swapping@random-engines.html> > (i915#4613 > <https://gitlab.freedesktop.org/drm/intel/issues/4613>) +3 > other tests skip > * > > igt@gem_mmap@basic: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@gem_mmap@basic.html> > (i915#4083 <https://gitlab.freedesktop.org/drm/intel/issues/4083>) > * > > igt@gem_mmap_gtt@basic: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@gem_mmap_gtt@basic.html> > (i915#4077 > <https://gitlab.freedesktop.org/drm/intel/issues/4077>) +2 > other tests skip > * > > igt@gem_render_tiled_blits@basic: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@gem_render_tiled_blits@basic.html> > (i915#4079 > <https://gitlab.freedesktop.org/drm/intel/issues/4079>) +1 > other test skip > * > > igt@gem_tiled_pread_basic: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@gem_tiled_pread_basic.html> > (i915#3282 <https://gitlab.freedesktop.org/drm/intel/issues/3282>) > * > > igt@i915_pm_rps@basic-api: > > o > > bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@i915_pm_rps@basic-api.html> > (i915#6621 <https://gitlab.freedesktop.org/drm/intel/issues/6621>) > > * > > igt@i915_selftest@live@gt_pm: > > o fi-kbl-soraka: NOTRUN -> DMESG-FAIL > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html> > (i915#1886 <https://gitlab.freedesktop.org/drm/intel/issues/1886>) > * > > igt@i915_selftest@live@hangcheck: > > o fi-kbl-soraka: NOTRUN -> INCOMPLETE > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/fi-kbl-soraka/igt@i915_selftest@live@hangcheck.html> > (i915#9527 <https://gitlab.freedesktop.org/drm/intel/issues/9527>) > * > > igt@i915_selftest@live@mman: > > o bat-rpls-1: NOTRUN -> TIMEOUT > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@i915_selftest@live@mman.html> > (i915#6794 > <https://gitlab.freedesktop.org/drm/intel/issues/6794> / > i915#7392 <https://gitlab.freedesktop.org/drm/intel/issues/7392>) > * > > igt@i915_suspend@basic-s2idle-without-i915: > > o bat-rpls-1: NOTRUN -> WARN > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@i915_suspend@basic-s2idle-without-i915.html> > (i915#8747 <https://gitlab.freedesktop.org/drm/intel/issues/8747>) > * > > igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html> > (i915#5190 <https://gitlab.freedesktop.org/drm/intel/issues/5190>) > * > > igt@kms_addfb_basic@basic-y-tiled-legacy: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_addfb_basic@basic-y-tiled-legacy.html> > (i915#4215 > <https://gitlab.freedesktop.org/drm/intel/issues/4215> / > i915#5190 <https://gitlab.freedesktop.org/drm/intel/issues/5190>) > * > > igt@kms_addfb_basic@framebuffer-vs-set-tiling: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_addfb_basic@framebuffer-vs-set-tiling.html> > (i915#4212 > <https://gitlab.freedesktop.org/drm/intel/issues/4212>) +6 > other tests skip > * > > igt@kms_addfb_basic@tile-pitch-mismatch: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_addfb_basic@tile-pitch-mismatch.html> > (i915#4212 > <https://gitlab.freedesktop.org/drm/intel/issues/4212> / > i915#5608 <https://gitlab.freedesktop.org/drm/intel/issues/5608>) > * > > igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html> > (i915#4103 > <https://gitlab.freedesktop.org/drm/intel/issues/4103> / > i915#4213 > <https://gitlab.freedesktop.org/drm/intel/issues/4213> / > i915#5608 > <https://gitlab.freedesktop.org/drm/intel/issues/5608>) +1 > other test skip > * > > igt@kms_cursor_legacy@basic-flip-after-cursor-legacy: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html> > (i915#1845 > <https://gitlab.freedesktop.org/drm/intel/issues/1845>) +17 > other tests skip > * > > igt@kms_dsc@dsc-basic: > > o fi-kbl-soraka: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/fi-kbl-soraka/igt@kms_dsc@dsc-basic.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271>) +9 > other tests skip > * > > igt@kms_flip@basic-flip-vs-modeset: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_flip@basic-flip-vs-modeset.html> > (i915#3637 > <https://gitlab.freedesktop.org/drm/intel/issues/3637>) +3 > other tests skip > * > > igt@kms_force_connector_basic@force-load-detect: > > o > > bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_force_connector_basic@force-load-detect.html> > (fdo#109285 <https://bugs.freedesktop.org/show_bug.cgi?id=109285>) > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_force_connector_basic@force-load-detect.html> > (fdo#109285 <https://bugs.freedesktop.org/show_bug.cgi?id=109285>) > > * > > igt@kms_force_connector_basic@prune-stale-modes: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_force_connector_basic@prune-stale-modes.html> > (i915#5274 <https://gitlab.freedesktop.org/drm/intel/issues/5274>) > * > > igt@kms_frontbuffer_tracking@basic: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_frontbuffer_tracking@basic.html> > (i915#1849 <https://gitlab.freedesktop.org/drm/intel/issues/1849>) > * > > igt@kms_pipe_crc_basic@read-crc-frame-sequence: > > o bat-kbl-2: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-kbl-2/igt@kms_pipe_crc_basic@read-crc-frame-sequence.html> > (fdo#109271 > <https://bugs.freedesktop.org/show_bug.cgi?id=109271> / > i915#1845 > <https://gitlab.freedesktop.org/drm/intel/issues/1845>) +14 > other tests skip > * > > igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1: > > o bat-rplp-1: PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13873/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html> > -> ABORT > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html> > (i915#8668 <https://gitlab.freedesktop.org/drm/intel/issues/8668>) > * > > igt@kms_psr@cursor_plane_move: > > o bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_psr@cursor_plane_move.html> > (i915#1072 > <https://gitlab.freedesktop.org/drm/intel/issues/1072>) +3 > other tests skip > * > > igt@kms_psr@sprite_plane_onoff: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_psr@sprite_plane_onoff.html> > (i915#1072 > <https://gitlab.freedesktop.org/drm/intel/issues/1072>) +3 > other tests skip > * > > igt@kms_setmode@basic-clone-single-crtc: > > o > > bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@kms_setmode@basic-clone-single-crtc.html> > (i915#3555 > <https://gitlab.freedesktop.org/drm/intel/issues/3555> / > i915#4098 <https://gitlab.freedesktop.org/drm/intel/issues/4098>) > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@kms_setmode@basic-clone-single-crtc.html> > (i915#3555 <https://gitlab.freedesktop.org/drm/intel/issues/3555>) > > * > > igt@prime_vgem@basic-fence-flip: > > o > > bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@prime_vgem@basic-fence-flip.html> > (i915#3708 <https://gitlab.freedesktop.org/drm/intel/issues/3708>) > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@prime_vgem@basic-fence-flip.html> > (fdo#109295 > <https://bugs.freedesktop.org/show_bug.cgi?id=109295> / > i915#1845 > <https://gitlab.freedesktop.org/drm/intel/issues/1845> / > i915#3708 <https://gitlab.freedesktop.org/drm/intel/issues/3708>) > > * > > igt@prime_vgem@basic-fence-mmap: > > o bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@prime_vgem@basic-fence-mmap.html> > (i915#3708 > <https://gitlab.freedesktop.org/drm/intel/issues/3708> / > i915#4077 > <https://gitlab.freedesktop.org/drm/intel/issues/4077>) +1 > other test skip > * > > igt@prime_vgem@basic-write: > > o > > bat-dg2-9: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-dg2-9/igt@prime_vgem@basic-write.html> > (i915#3291 > <https://gitlab.freedesktop.org/drm/intel/issues/3291> / > i915#3708 > <https://gitlab.freedesktop.org/drm/intel/issues/3708>) +2 > other tests skip > > o > > bat-rpls-1: NOTRUN -> SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-rpls-1/igt@prime_vgem@basic-write.html> > (fdo#109295 > <https://bugs.freedesktop.org/show_bug.cgi?id=109295> / > i915#3708 > <https://gitlab.freedesktop.org/drm/intel/issues/3708>) +2 > other tests skip > > > Possible fixes > > * igt@kms_psr@sprite_plane_onoff: > o bat-jsl-3: SKIP > <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13873/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html> > (i915#9648 > <https://gitlab.freedesktop.org/drm/intel/issues/9648>) -> > PASS > <https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_126385v1/bat-jsl-3/igt@kms_psr@sprite_plane_onoff.html> > +3 other tests pass > > {name}: This element is suppressed. This means it is ignored when > computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > > Build changes > > * Linux: CI_DRM_13873 -> Patchwork_126385v1 > > CI-20190529: 20190529 > CI_DRM_13873: 2b0a5e9915c131825481a9cc2aecb89088f51c00 @ > git://anongit.freedesktop.org/gfx-ci/linux > IGT_7587: bec435c24d23524d55f419a02af375e84c9be9d3 @ > https://gitlab.freedesktop.org/drm/igt-gpu-tools.git > Patchwork_126385v1: 2b0a5e9915c131825481a9cc2aecb89088f51c00 @ > git://anongit.freedesktop.org/gfx-ci/linux > > > Linux commits > > 6b271f2baa33 drm/i915: do not clean GT table on error path >
On 14/11/2023 09:48, Andrzej Hajda wrote: > The only task of intel_gt_release_all is to zero gt table. Calling > it on error path prevents intel_gt_driver_late_release_all (called from > i915_driver_late_release) to cleanup GTs, causing leakage. > After i915_driver_late_release GT array is not used anymore so > it does not need cleaning at all. > > Sample leak report: > > BUG i915_request (...): Objects remaining in i915_request on __kmem_cache_shutdown() > ... > Object 0xffff888113420040 @offset=64 > Allocated in __i915_request_create+0x75/0x610 [i915] age=18339 cpu=1 pid=1454 > kmem_cache_alloc+0x25b/0x270 > __i915_request_create+0x75/0x610 [i915] > i915_request_create+0x109/0x290 [i915] > __engines_record_defaults+0xca/0x440 [i915] > intel_gt_init+0x275/0x430 [i915] > i915_gem_init+0x135/0x2c0 [i915] > i915_driver_probe+0x8d1/0xdc0 [i915] > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8489 > Fixes: bec68cc9ea42d8 ("drm/i915: Prepare for multiple GTs") > Signed-off-by: Andrzej Hajda <andrzej.hajda@intel.com> > --- > drivers/gpu/drm/i915/i915_driver.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c > index 80e85cadb9a262..428ace0bebaac9 100644 > --- a/drivers/gpu/drm/i915/i915_driver.c > +++ b/drivers/gpu/drm/i915/i915_driver.c > @@ -782,7 +782,7 @@ int i915_driver_probe(struct pci_dev *pdev, const struct pci_device_id *ent) > > ret = i915_driver_mmio_probe(i915); > if (ret < 0) > - goto out_tiles_cleanup; > + goto out_runtime_pm_put; > > ret = i915_driver_hw_probe(i915); > if (ret < 0) > @@ -842,8 +842,6 @@ int i915_driver_probe(struct pci_dev *pdev, const struct pci_device_id *ent) > i915_ggtt_driver_late_release(i915); > out_cleanup_mmio: > i915_driver_mmio_release(i915); > -out_tiles_cleanup: > - intel_gt_release_all(i915); There is also a call on error path from intel_gt_probe_all. Shouldn't that also go? At which points intel_gt_release_all will have no callers. Fold it into intel_gt_driver_late_release_all or don't bother zeroing? Regards, Tvrtko > out_runtime_pm_put: > enable_rpm_wakeref_asserts(&i915->runtime_pm); > i915_driver_late_release(i915); > > --- > base-commit: c6f47b4817ee55a02359c3347a298876cfa93b0e > change-id: 20231114-dont_clean_gt_on_error_path-91cd9c3caa0a > > Best regards,
diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c index 80e85cadb9a262..428ace0bebaac9 100644 --- a/drivers/gpu/drm/i915/i915_driver.c +++ b/drivers/gpu/drm/i915/i915_driver.c @@ -782,7 +782,7 @@ int i915_driver_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ret = i915_driver_mmio_probe(i915); if (ret < 0) - goto out_tiles_cleanup; + goto out_runtime_pm_put; ret = i915_driver_hw_probe(i915); if (ret < 0) @@ -842,8 +842,6 @@ int i915_driver_probe(struct pci_dev *pdev, const struct pci_device_id *ent) i915_ggtt_driver_late_release(i915); out_cleanup_mmio: i915_driver_mmio_release(i915); -out_tiles_cleanup: - intel_gt_release_all(i915); out_runtime_pm_put: enable_rpm_wakeref_asserts(&i915->runtime_pm); i915_driver_late_release(i915);
The only task of intel_gt_release_all is to zero gt table. Calling it on error path prevents intel_gt_driver_late_release_all (called from i915_driver_late_release) to cleanup GTs, causing leakage. After i915_driver_late_release GT array is not used anymore so it does not need cleaning at all. Sample leak report: BUG i915_request (...): Objects remaining in i915_request on __kmem_cache_shutdown() ... Object 0xffff888113420040 @offset=64 Allocated in __i915_request_create+0x75/0x610 [i915] age=18339 cpu=1 pid=1454 kmem_cache_alloc+0x25b/0x270 __i915_request_create+0x75/0x610 [i915] i915_request_create+0x109/0x290 [i915] __engines_record_defaults+0xca/0x440 [i915] intel_gt_init+0x275/0x430 [i915] i915_gem_init+0x135/0x2c0 [i915] i915_driver_probe+0x8d1/0xdc0 [i915] Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8489 Fixes: bec68cc9ea42d8 ("drm/i915: Prepare for multiple GTs") Signed-off-by: Andrzej Hajda <andrzej.hajda@intel.com> --- drivers/gpu/drm/i915/i915_driver.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) --- base-commit: c6f47b4817ee55a02359c3347a298876cfa93b0e change-id: 20231114-dont_clean_gt_on_error_path-91cd9c3caa0a Best regards,