Jesse Keating 2f82dda
http://lists.freedesktop.org/archives/intel-gfx/2009-February/001313.html
Jesse Keating 2f82dda
Jesse Keating 2f82dda
--- a/drivers/gpu/drm/i915/i915_suspend.c.orig	2009-02-18 22:59:19.000000000 -0500
Jesse Keating 2f82dda
+++ b/drivers/gpu/drm/i915/i915_suspend.c	2009-02-18 22:59:58.000000000 -0500
Jesse Keating 2f82dda
@@ -28,6 +28,7 @@
Jesse Keating 2f82dda
 #include "drm.h"
Jesse Keating 2f82dda
 #include "i915_drm.h"
Jesse Keating 2f82dda
 #include "i915_drv.h"
Jesse Keating 2f82dda
+#include <drm/drm_crtc_helper.h>
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
 static bool i915_pipe_enabled(struct drm_device *dev, enum pipe pipe)
Jesse Keating 2f82dda
 {
Jesse Keating 2f82dda
@@ -519,6 +520,8 @@
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
 	i915_restore_vga(dev);
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
+	drm_helper_resume_force_mode(dev);
Jesse Keating 2f82dda
+
Jesse Keating 2f82dda
 	return 0;
Jesse Keating 2f82dda
 }
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
From f5192bce8be69e5b33d7579bc282fef4d673e2c1 Mon Sep 17 00:00:00 2001
Jesse Keating 2f82dda
From: Lubomir Rintel <lkundrak@v3.sk>
Jesse Keating 2f82dda
Date: Sun, 15 Mar 2009 13:55:55 +0100
Jesse Keating 2f82dda
Subject: [PATCH] Fix i915 nomodeset NULL deref. during PM resume
Jesse Keating 2f82dda
Jesse Keating 2f82dda
drm_helper_resume_force_mode() would crash while attempting to
Jesse Keating 2f82dda
iterate through crtc_list, which is uninitialized when is modesetting
Jesse Keating 2f82dda
disabled.
Jesse Keating 2f82dda
---
Jesse Keating 2f82dda
 drivers/gpu/drm/i915/i915_suspend.c |    3 ++-
Jesse Keating 2f82dda
 1 files changed, 2 insertions(+), 1 deletions(-)
Jesse Keating 2f82dda
Jesse Keating 2f82dda
diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c
Jesse Keating 2f82dda
index ef5fb6e..b138032 100644
Jesse Keating 2f82dda
--- a/drivers/gpu/drm/i915/i915_suspend.c
Jesse Keating 2f82dda
+++ b/drivers/gpu/drm/i915/i915_suspend.c
Jesse Keating 2f82dda
@@ -520,7 +520,8 @@ int i915_restore_state(struct drm_device *dev)
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
 	i915_restore_vga(dev);
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
-	drm_helper_resume_force_mode(dev);
Jesse Keating 2f82dda
+	if (drm_core_check_feature(dev, DRIVER_MODESET))
Jesse Keating 2f82dda
+		drm_helper_resume_force_mode(dev);
Jesse Keating 2f82dda
 
Jesse Keating 2f82dda
 	return 0;
Jesse Keating 2f82dda
 }
Jesse Keating 2f82dda
-- 
Jesse Keating 2f82dda
1.6.2
Jesse Keating 2f82dda