This is a note to let you know that I've just added the patch titled

    drm/radeon: avoid leaking edid data

to the 3.14-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     drm-radeon-avoid-leaking-edid-data.patch
and it can be found in the queue-3.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From 0ac66effe7fcdee55bda6d5d10d3372c95a41920 Mon Sep 17 00:00:00 2001
From: Alex Deucher <[email protected]>
Date: Mon, 14 Jul 2014 17:57:19 -0400
Subject: drm/radeon: avoid leaking edid data

From: Alex Deucher <[email protected]>

commit 0ac66effe7fcdee55bda6d5d10d3372c95a41920 upstream.

In some cases we fetch the edid in the detect() callback
in order to determine what sort of monitor is connected.
If that happens, don't fetch the edid again in the get_modes()
callback or we will leak the edid.

Signed-off-by: Alex Deucher <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/gpu/drm/radeon/radeon_display.c |    5 +++++
 1 file changed, 5 insertions(+)

--- a/drivers/gpu/drm/radeon/radeon_display.c
+++ b/drivers/gpu/drm/radeon/radeon_display.c
@@ -755,6 +755,10 @@ int radeon_ddc_get_modes(struct radeon_c
        struct radeon_device *rdev = dev->dev_private;
        int ret = 0;
 
+       /* don't leak the edid if we already fetched it in detect() */
+       if (radeon_connector->edid)
+               goto got_edid;
+
        /* on hw with routers, select right port */
        if (radeon_connector->router.ddc_valid)
                radeon_router_select_ddc_port(radeon_connector);
@@ -794,6 +798,7 @@ int radeon_ddc_get_modes(struct radeon_c
                        radeon_connector->edid = 
radeon_bios_get_hardcoded_edid(rdev);
        }
        if (radeon_connector->edid) {
+got_edid:
                
drm_mode_connector_update_edid_property(&radeon_connector->base, 
radeon_connector->edid);
                ret = drm_add_edid_modes(&radeon_connector->base, 
radeon_connector->edid);
                drm_edid_to_eld(&radeon_connector->base, 
radeon_connector->edid);


Patches currently in stable-queue which might be from [email protected] 
are

queue-3.14/drm-radeon-avoid-leaking-edid-data.patch
queue-3.14/drm-radeon-set-default-bl-level-to-something-reasonable.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to