Commit 1608e935 authored by Dann Frazier's avatar Dann Frazier

* Fix a regression introduced by the intel_agp changes in -13 that caused

  boot-time hangs on large memory systems. (closes: #438458)

svn path=/dists/etch/linux-2.6/; revision=9537
parent 62806fb2
......@@ -24,8 +24,10 @@ linux-2.6 (2.6.18.dfsg.1-14) stable; urgency=high
group). (closes: #404815)
* Fix a BUG in fuse_ctl_add_dentry by resetting the dentry counter in
fuse_ctl_kill_sb(). (closes: #427518)
* Fix a regression introduced by the intel_agp changes in -13 that caused
boot-time hangs on large memory systems. (closes: #438458)
-- dann frazier <dannf@debian.org> Mon, 17 Sep 2007 16:49:32 -0600
-- dann frazier <dannf@debian.org> Mon, 17 Sep 2007 16:56:07 -0600
linux-2.6 (2.6.18.dfsg.1-13etch2) stable-security; urgency=high
......
From: Wang Zhenyu <zhenyu.z.wang@intel.com>
Date: Thu, 21 Jun 2007 05:43:18 +0000 (+0800)
Subject: [AGPGART] intel_agp: don't load if no IGD and AGP port
X-Git-Tag: v2.6.22-rc6~41^2
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=47d46379eb66278107947729e34a833c76dca252
[AGPGART] intel_agp: don't load if no IGD and AGP port
After i915 chip, GMCH has no AGP port. Origin bridge driver in device
table will try to access illegal regs like APBASE, APSIZE, etc. This
may cause problem.
So mark them as NULL in the table, we won't load if no IGD got detect
and bridge has no AGP port.
Signed-off-by: Wang Zhenyu <zhenyu.z.wang@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/drivers/char/agp/intel-agp.c linux-source-2.6.18/drivers/char/agp/intel-agp.c
--- linux-source-2.6.18.orig/drivers/char/agp/intel-agp.c 2007-08-29 02:12:39.000000000 -0600
+++ linux-source-2.6.18/drivers/char/agp/intel-agp.c 2007-09-06 12:54:08.000000000 -0600
@@ -1768,56 +1768,56 @@ static int __devinit agp_intel_probe(str
if (find_i830(PCI_DEVICE_ID_INTEL_82915G_IG))
bridge->driver = &intel_915_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "915G";
break;
case PCI_DEVICE_ID_INTEL_82915GM_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82915GM_IG))
bridge->driver = &intel_915_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "915GM";
break;
case PCI_DEVICE_ID_INTEL_82945G_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82945G_IG))
bridge->driver = &intel_915_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "945G";
break;
case PCI_DEVICE_ID_INTEL_82945GM_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82945GM_IG))
bridge->driver = &intel_915_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "945GM";
break;
case PCI_DEVICE_ID_INTEL_82946GZ_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82946GZ_IG))
bridge->driver = &intel_i965_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "946GZ";
break;
case PCI_DEVICE_ID_INTEL_82965G_1_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82965G_1_IG))
bridge->driver = &intel_i965_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "965G";
break;
case PCI_DEVICE_ID_INTEL_82965Q_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82965Q_IG))
bridge->driver = &intel_i965_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "965Q";
break;
case PCI_DEVICE_ID_INTEL_82965G_HB:
if (find_i830(PCI_DEVICE_ID_INTEL_82965G_IG))
bridge->driver = &intel_i965_driver;
else
- bridge->driver = &intel_845_driver;
+ bridge->driver = NULL;
name = "965G";
break;
@@ -1837,6 +1837,15 @@ static int __devinit agp_intel_probe(str
return -ENODEV;
};
+ if (bridge->driver == NULL) {
+ /* bridge has no AGP and no IGD detected */
+ if (cap_ptr)
+ printk(KERN_WARNING PFX "Failed to find bridge device "
+ "(device id: %04x)\n", pdev->device);
+ agp_put_bridge(bridge);
+ return -ENODEV;
+ }
+
bridge->dev = pdev;
bridge->capndx = cap_ptr;
......@@ -16,3 +16,4 @@
+ bugfix/ipv6-disallow-RH0-by-default-2.patch
+ bugfix/clear-spurious-irq.patch
+ bugfix/fuse-BUG-in-control-fs-mount.patch
+ bugfix/intel_agp-dont-load-if-no-IGD-and-AGP-port-backport.patch
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment