Re: agpgart issue on 2.6.1-rc1-bk3 (x86-64)

From: Dave Jones
Date: Sat Jan 03 2004 - 21:14:04 EST


On Sun, Jan 04, 2004 at 12:28:22PM +1100, Srihari Vijayaraghavan wrote:
> Hello,
>
> I see this message in the 2.6.1-rc3-bk3 kernel log:
> agpgart: Detected AGP bridge 0
> agpgart: Too many northbridges for AGP
>
> This results in <100 FPS in glxgears, and I am unable to play the tuxracer
> game :-). With 2.6.0-x8664-1 however I get 450 FPS (approx), and all was
> well.
>
> Upon applying this patch (making it identical to 2.6.0-x86-64 that is):
> --- 2.6.1-rc1-bk3/drivers/char/agp/amd64-agp.c.orig 2004-01-04
> 01:06:20.000000000 +1100
> +++ 2.6.1-rc1-bk3/drivers/char/agp/amd64-agp.c 2004-01-04 01:06:50.000000000
> +1100
> @@ -16,11 +16,7 @@
> #include "agp.h"
>
> /* Will need to be increased if AMD64 ever goes >8-way. */
> -#ifdef CONFIG_SMP
> #define MAX_HAMMER_GARTS 8
> -#else
> -#define MAX_HAMMER_GARTS 1
> -#endif

Wrong fix. Amongst another bunch of AGP fixes going to Linus/Andrew
on Monday is the following..

(Andi also sent me another amd64 update, which I'll merge before
pushing Linuswards)


diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/char/agp/amd64-agp.c linux-2.5/drivers/char/agp/amd64-agp.c
--- bk-linus/drivers/char/agp/amd64-agp.c 2003-10-17 20:53:49.000000000 +0100
+++ linux-2.5/drivers/char/agp/amd64-agp.c 2003-12-02 02:05:32.000000000 +0000
@@ -357,11 +356,18 @@ static __devinit int cache_nbs (struct p
}
hammers[i++] = loop_dev;
nr_garts = i;
- if (i == MAX_HAMMER_GARTS) {
+#ifdef CONFIG_SMP
+ if (i > MAX_HAMMER_GARTS) {
printk(KERN_INFO PFX "Too many northbridges for AGP\n");
return -1;
}
+#else
+ /* Uniprocessor case, return after finding first bridge.
+ (There may be more, but in UP, we don't care). */
+ return 0;
+#endif
}
+
return i == 0 ? -1 : 0;
}



--
Dave Jones http://www.codemonkey.org.uk
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/