From e5ecfd5dd19800a22c6582497e856d131aa779ca Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 27 Aug 2023 12:16:03 +0200 Subject: [PATCH] 6.4-stable patches added patches: drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch --- ...f-driver-creation-fails-during-probe.patch | 37 +++++++++++++++++++ queue-6.4/series | 1 + 2 files changed, 38 insertions(+) create mode 100644 queue-6.4/drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch diff --git a/queue-6.4/drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch b/queue-6.4/drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch new file mode 100644 index 00000000000..9ef8f924066 --- /dev/null +++ b/queue-6.4/drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch @@ -0,0 +1,37 @@ +From 718551bbed3ca5308a9f9429305dd074727e8d46 Mon Sep 17 00:00:00 2001 +From: Matt Roper +Date: Thu, 1 Jun 2023 10:38:04 -0700 +Subject: drm/i915: Fix error handling if driver creation fails during probe + +From: Matt Roper + +commit 718551bbed3ca5308a9f9429305dd074727e8d46 upstream. + +If i915_driver_create() fails to create a valid 'i915' object, we +should just disable the PCI device and return immediately without trying +to call i915_probe_error() that relies on a valid i915 pointer. + +Fixes: 12e6f6dc78e4 ("drm/i915/display: Handle GMD_ID identification in display code") +Reported-by: Dan Carpenter +Closes: https://lore.kernel.org/all/55236f93-dcc5-481e-b788-9f7e95b129d8@kili.mountain/ +Signed-off-by: Matt Roper +Reviewed-by: Gustavo Sousa +Link: https://patchwork.freedesktop.org/patch/msgid/20230601173804.557756-1-matthew.d.roper@intel.com +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/i915/i915_driver.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/i915/i915_driver.c ++++ b/drivers/gpu/drm/i915/i915_driver.c +@@ -747,8 +747,8 @@ int i915_driver_probe(struct pci_dev *pd + + i915 = i915_driver_create(pdev, ent); + if (IS_ERR(i915)) { +- ret = PTR_ERR(i915); +- goto out_pci_disable; ++ pci_disable_device(pdev); ++ return PTR_ERR(i915); + } + + ret = i915_driver_early_probe(i915); diff --git a/queue-6.4/series b/queue-6.4/series index 23288e4e9e4..37d6a25a282 100644 --- a/queue-6.4/series +++ b/queue-6.4/series @@ -107,3 +107,4 @@ media-vcodec-fix-potential-array-out-of-bounds-in-encoder-queue_setup.patch pci-acpiphp-use-pci_assign_unassigned_bridge_resources-only-for-non-root-bus.patch thunderbolt-fix-thunderbolt-3-display-flickering-issue-on-2nd-hot-plug-onwards.patch can-raw-add-missing-refcount-for-memory-leak-fix.patch +drm-i915-fix-error-handling-if-driver-creation-fails-during-probe.patch -- 2.47.3