| 1 |
http://lists.freedesktop.org/archives/intel-gfx/2009-February/001313.html
|
| 2 |
|
| 3 |
--- a/drivers/gpu/drm/i915/i915_suspend.c.orig 2009-02-18 22:59:19.000000000 -0500
|
| 4 |
+++ b/drivers/gpu/drm/i915/i915_suspend.c 2009-02-18 22:59:58.000000000 -0500
|
| 5 |
@@ -28,6 +28,7 @@
|
| 6 |
#include "drm.h"
|
| 7 |
#include "i915_drm.h"
|
| 8 |
#include "i915_drv.h"
|
| 9 |
+#include <drm/drm_crtc_helper.h>
|
| 10 |
|
| 11 |
static bool i915_pipe_enabled(struct drm_device *dev, enum pipe pipe)
|
| 12 |
{
|
| 13 |
@@ -519,6 +520,8 @@
|
| 14 |
|
| 15 |
i915_restore_vga(dev);
|
| 16 |
|
| 17 |
+ drm_helper_resume_force_mode(dev);
|
| 18 |
+
|
| 19 |
return 0;
|
| 20 |
}
|
| 21 |
|
| 22 |
From f5192bce8be69e5b33d7579bc282fef4d673e2c1 Mon Sep 17 00:00:00 2001
|
| 23 |
From: Lubomir Rintel <lkundrak@v3.sk>
|
| 24 |
Date: Sun, 15 Mar 2009 13:55:55 +0100
|
| 25 |
Subject: [PATCH] Fix i915 nomodeset NULL deref. during PM resume
|
| 26 |
|
| 27 |
drm_helper_resume_force_mode() would crash while attempting to
|
| 28 |
iterate through crtc_list, which is uninitialized when is modesetting
|
| 29 |
disabled.
|
| 30 |
---
|
| 31 |
drivers/gpu/drm/i915/i915_suspend.c | 3 ++-
|
| 32 |
1 files changed, 2 insertions(+), 1 deletions(-)
|
| 33 |
|
| 34 |
diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c
|
| 35 |
index ef5fb6e..b138032 100644
|
| 36 |
--- a/drivers/gpu/drm/i915/i915_suspend.c
|
| 37 |
+++ b/drivers/gpu/drm/i915/i915_suspend.c
|
| 38 |
@@ -520,7 +520,8 @@ int i915_restore_state(struct drm_device *dev)
|
| 39 |
|
| 40 |
i915_restore_vga(dev);
|
| 41 |
|
| 42 |
- drm_helper_resume_force_mode(dev);
|
| 43 |
+ if (drm_core_check_feature(dev, DRIVER_MODESET))
|
| 44 |
+ drm_helper_resume_force_mode(dev);
|
| 45 |
|
| 46 |
return 0;
|
| 47 |
}
|
| 48 |
--
|
| 49 |
1.6.2
|
| 50 |
|