[kernel] r12359 - in dists/sid/linux-2.6/debian: . patches/bugfix/all patches/series

Bastian Blank waldi at alioth.debian.org
Tue Oct 28 19:39:34 UTC 2008


Author: waldi
Date: Tue Oct 28 19:39:33 2008
New Revision: 12359

Log:
agp: Fix stolen memory counting on Intel G4X.

* debian/changelog: Update.
* debian/patches/bugfix/all/drivers-char-agp-intel-correct-gm4x-stolen.patch:
  Add.
* debian/patches/series/10: Add new patch.


Added:
   dists/sid/linux-2.6/debian/patches/bugfix/all/drivers-char-agp-intel-correct-gm4x-stolen.patch
Modified:
   dists/sid/linux-2.6/debian/changelog
   dists/sid/linux-2.6/debian/patches/series/10

Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	(original)
+++ dists/sid/linux-2.6/debian/changelog	Tue Oct 28 19:39:33 2008
@@ -6,6 +6,9 @@
   [ Martin Michlmayr ]
   * DNS-323: add support for revision B1 machines (Matthew Palmer).
 
+  [ Bastian Blank ]
+  * agp: Fix stolen memory counting on Intel G4X. (closes: #502606)
+
  -- dann frazier <dannf at debian.org>  Mon, 20 Oct 2008 23:27:25 -0600
 
 linux-2.6 (2.6.26-9) unstable; urgency=low

Added: dists/sid/linux-2.6/debian/patches/bugfix/all/drivers-char-agp-intel-correct-gm4x-stolen.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/drivers-char-agp-intel-correct-gm4x-stolen.patch	Tue Oct 28 19:39:33 2008
@@ -0,0 +1,104 @@
+commit 99d32bd5c7b1caa05d1fe3c89b08aabd459bc12a
+Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
+Date:   Wed Jul 30 12:26:50 2008 -0700
+
+    intel_agp: official name for GM45 chipset
+
+    Signed-off-by: Zhenyu Wang <zhenyu.z.wang at intel.com>
+    Cc: Dave Airlie <airlied at linux.ie>
+    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
+    Signed-off-by: Dave Airlie <airlied at redhat.com>
+
+commit 82e14a6215cbc9804ecc35281e973c6c8ce22fe7
+Author: Eric Anholt <eric at anholt.net>
+Date:   Tue Oct 14 11:28:58 2008 -0700
+
+    agp: Fix stolen memory counting on G4X.
+
+    On the GM45, the amount of stolen memory mapped to the GTT was underestimated,
+    even though we had 508KB more available since the GTT doesn't take from
+    stolen memory. On the non-GM45 G4X, we overestimated how much stolen was
+    mapped to the GTT by 4KB, resulting in GPU page faults when that page was
+    accessed.
+
+    This update requires a corresponding update to xf86-video-intel to work
+    correctly.
+
+    Signed-off-by: Eric Anholt <eric at anholt.net>
+    Signed-off-by: Dave Airlie <airlied at redhat.com>
+
+--- a/drivers/char/agp/intel-agp.c
++++ b/drivers/char/agp/intel-agp.c
+@@ -32,8 +32,8 @@
+ #define PCI_DEVICE_ID_INTEL_Q35_IG          0x29B2
+ #define PCI_DEVICE_ID_INTEL_Q33_HB          0x29D0
+ #define PCI_DEVICE_ID_INTEL_Q33_IG          0x29D2
+-#define PCI_DEVICE_ID_INTEL_IGD_HB          0x2A40
+-#define PCI_DEVICE_ID_INTEL_IGD_IG          0x2A42
++#define PCI_DEVICE_ID_INTEL_GM45_HB         0x2A40
++#define PCI_DEVICE_ID_INTEL_GM45_IG         0x2A42
+ #define PCI_DEVICE_ID_INTEL_IGD_E_HB        0x2E00
+ #define PCI_DEVICE_ID_INTEL_IGD_E_IG        0x2E02
+ #define PCI_DEVICE_ID_INTEL_Q45_HB          0x2E10
+@@ -54,8 +54,7 @@
+ 		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965Q_HB || \
+ 		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965G_HB || \
+ 		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965GM_HB || \
+-		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965GME_HB || \
+-		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGD_HB)
++		 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965GME_HB)
+ 
+ #define IS_G33 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G33_HB || \
+ 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q35_HB || \
+@@ -63,7 +62,8 @@
+ 
+ #define IS_G4X (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGD_E_HB || \
+ 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q45_HB || \
+-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G45_HB)
++		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G45_HB || \
++		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_GM45_HB)
+ 
+ extern int agp_memory_reserved;
+ 
+@@ -525,8 +525,10 @@
+ 		size += 4;
+ 	} else if (IS_G4X) {
+ 		/* On 4 series hardware, GTT stolen is separate from graphics
+-		 * stolen, ignore it in stolen gtt entries counting */
+-		size = 0;
++		 * stolen, ignore it in stolen gtt entries counting.  However,
++		 * 4KB of the stolen memory doesn't get mapped to the GTT.
++		 */
++		size = 4;
+ 	} else {
+ 		/* On previous hardware, the GTT size was just what was
+ 		 * required to map the aperture.
+@@ -1182,7 +1184,7 @@
+ static void intel_i965_get_gtt_range(int *gtt_offset, int *gtt_size)
+ {
+ 	switch (agp_bridge->dev->device) {
+-	case PCI_DEVICE_ID_INTEL_IGD_HB:
++	case PCI_DEVICE_ID_INTEL_GM45_HB:
+ 	case PCI_DEVICE_ID_INTEL_IGD_E_HB:
+ 	case PCI_DEVICE_ID_INTEL_Q45_HB:
+ 	case PCI_DEVICE_ID_INTEL_G45_HB:
+@@ -2117,8 +2119,8 @@
+ 		NULL, &intel_g33_driver },
+ 	{ PCI_DEVICE_ID_INTEL_Q33_HB, PCI_DEVICE_ID_INTEL_Q33_IG, 0, "Q33",
+ 		NULL, &intel_g33_driver },
+-	{ PCI_DEVICE_ID_INTEL_IGD_HB, PCI_DEVICE_ID_INTEL_IGD_IG, 0,
+-	    "Intel Integrated Graphics Device", NULL, &intel_i965_driver },
++	{ PCI_DEVICE_ID_INTEL_GM45_HB, PCI_DEVICE_ID_INTEL_GM45_IG, 0,
++	    "Mobile Intel? GM45 Express", NULL, &intel_i965_driver },
+ 	{ PCI_DEVICE_ID_INTEL_IGD_E_HB, PCI_DEVICE_ID_INTEL_IGD_E_IG, 0,
+ 	    "Intel Integrated Graphics Device", NULL, &intel_i965_driver },
+ 	{ PCI_DEVICE_ID_INTEL_Q45_HB, PCI_DEVICE_ID_INTEL_Q45_IG, 0,
+@@ -2315,7 +2317,7 @@
+ 	ID(PCI_DEVICE_ID_INTEL_G33_HB),
+ 	ID(PCI_DEVICE_ID_INTEL_Q35_HB),
+ 	ID(PCI_DEVICE_ID_INTEL_Q33_HB),
+-	ID(PCI_DEVICE_ID_INTEL_IGD_HB),
++	ID(PCI_DEVICE_ID_INTEL_GM45_HB),
+ 	ID(PCI_DEVICE_ID_INTEL_IGD_E_HB),
+ 	ID(PCI_DEVICE_ID_INTEL_Q45_HB),
+ 	ID(PCI_DEVICE_ID_INTEL_G45_HB),

Modified: dists/sid/linux-2.6/debian/patches/series/10
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/10	(original)
+++ dists/sid/linux-2.6/debian/patches/series/10	Tue Oct 28 19:39:33 2008
@@ -1,2 +1,3 @@
 + bugfix/all/sctp-fix-kernel-panic-while-process-protocol-violation-parameter.patch
 + features/arm/dns323_revb1.patch
++ bugfix/all/drivers-char-agp-intel-correct-gm4x-stolen.patch



More information about the Kernel-svn-changes mailing list