Re: PROBLEM: 2.6.29.2 - AGP doesn't work anymore on my nforce2

Andrew Morton
2009-05-01T01:04:55Z

On Thu, 30 Apr 2009 10:51:47 +0200
Karsten Mehrhoff <kawime@gmx.de> wrote:

> [1.]
> PROBLEM: No more agp card functionality with the patch 2.6.29.2 of 'a/drivers/char/agp/generic.c'
>
> [2.]
> I compiled the kernel 2.6.29.2 with my .config of 2.6.29.1 and run into problems with the speed of my ATI RADEON 9600 (rv350)
>

So we have a 2.6.29.1 -> 2.6.29.2 regression.

> ...
>
> Problematic patch:
> //---
> --- a/drivers/char/agp/generic.c
> +++ b/drivers/char/agp/generic.c
> @@ -1226,7 +1226,7 @@ int agp_generic_alloc_pages(struct agp_bridge_data *bridge, struct agp_memory *m
> int i, ret = -ENOMEM;
>
> for (i = 0; i < num_pages; i++) {
> - page = alloc_page(GFP_KERNEL | GFP_DMA32);
> + page = alloc_page(GFP_KERNEL | GFP_DMA32 | __GFP_ZERO);
> /* agp_free_memory() needs gart address */
> if (page == NULL)
> goto out;
> @@ -1257,7 +1257,7 @@ void *agp_generic_alloc_page(struct agp_bridge_data *bridge)
> {
> struct page * page;
>
> - page = alloc_page(GFP_KERNEL | GFP_DMA32);
> + page = alloc_page(GFP_KERNEL | GFP_DMA32 | __GFP_ZERO);
> if (page == NULL)
> return NULL;
> ---//
>
> I reverted the patch back to 2.6.29.1, compiled and the kernel agian and agp works ok.

Really? So reverting

: commit 59de2bebabc5027f93df999d59cc65df591c3e6e
: Author: Shaohua Li <shaohua.li@intel.com>
: AuthorDate: Mon Apr 20 10:08:35 2009 +1000
: Commit: Dave Airlie <airlied@redhat.com>
: CommitDate: Mon Apr 20 10:08:35 2009 +1000
:
: agp: zero pages before sending to userspace

makes your AGP work properly?

That's really weird.