From: Ben Skeggs Date: Fri, 10 Sep 2010 05:33:11 +0000 (+1000) Subject: drm/nouveau: we can't free ACPI EDID, so make a copy that we can X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=24b102d3488c9d201915d070a519e07098e0cd30;p=deliverable%2Flinux.git 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 --- 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; }