summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau/nouveau_acpi.c
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2010-09-10 15:33:11 +1000
committerBen Skeggs <bskeggs@redhat.com>2010-09-24 16:26:24 +1000
commit24b102d3488c9d201915d070a519e07098e0cd30 (patch)
treec773de58b53aabc31ac9ac111def0ad9eb7b91a5 /drivers/gpu/drm/nouveau/nouveau_acpi.c
parente071f8cd714261cb4f5ce7104eb54b16b2bbb0cf (diff)
drm/nouveau: we can't free ACPI EDID, so make a copy that we can
The rest of the connector code assumes we can kfree() the EDID pointer. This causes things to blow up with the ACPI EDID pointer we get passed. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_acpi.c')
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_acpi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_acpi.c b/drivers/gpu/drm/nouveau/nouveau_acpi.c
index c17a055ee3e5..119152606e4c 100644
--- a/drivers/gpu/drm/nouveau/nouveau_acpi.c
+++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c
@@ -292,6 +292,6 @@ nouveau_acpi_edid(struct drm_device *dev, struct drm_connector *connector)
if (ret < 0)
return ret;
- nv_connector->edid = edid;
+ nv_connector->edid = kmemdup(edid, EDID_LENGTH, GFP_KERNEL);
return 0;
}