When intel_display_device_probe() (and, subsequently,
probe_gmdid_display()) returns, the caller expects ver, rel and step
to be initialized.  Since there's no way to check that there was a
failure and no_display was returned without some further refactoring,
pre-initiliaze all these values to zero to keep it simple and safe.

Signed-off-by: Luca Coelho <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_display_device.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c 
b/drivers/gpu/drm/i915/display/intel_display_device.c
index 464df1764a86..fb6354e9e704 100644
--- a/drivers/gpu/drm/i915/display/intel_display_device.c
+++ b/drivers/gpu/drm/i915/display/intel_display_device.c
@@ -731,6 +731,15 @@ probe_gmdid_display(struct drm_i915_private *i915, u16 
*ver, u16 *rel, u16 *step
        u32 val;
        int i;
 
+       /* The caller expects to ver, rel and step to be initialized
+        * here, and there's no good way to check when there was a
+        * failure and no_display was returned.  So initialize all these
+        * values here zero, to be sure.
+        */
+       *ver = 0;
+       *rel = 0;
+       *step = 0;
+
        addr = pci_iomap_range(pdev, 0, i915_mmio_reg_offset(GMD_ID_DISPLAY), 
sizeof(u32));
        if (!addr) {
                drm_err(&i915->drm, "Cannot map MMIO BAR to read display 
GMD_ID\n");
-- 
2.39.2

Reply via email to