Re: AGP and PAT (induced?) problem (on AMD family 6)
Rene Herman <[email protected]> Wed, 20 Aug 2008 12:50:04 +0200
| Newsgroups | gmane.comp.video.dri.user,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
On 20-08-08 12:04, Ingo Molnar wrote: > * Venki Pallipadi <[email protected]> wrote: > >>> I'd really like a reply from the AGP or PAT side right about now. >> Hmm. Looks like there are more than 16000 entries in the PAT list! > > hm, btw., why is that? Because 64M of AGP memory divided by 4K pages is 16K. That is, the underlying problem seems to be AGP drivers using order 0 allocations. I'm looking. Do note also that this means that Venki's change would not constitite a correct/final fix. Sure, caching the last entry speeds up traversing a 16K entry list but the issue is that there shouldn't be a 16K entry list. Through AGP, or maybe even by coalescing entries in the PAT list if that's at all possible (I guess it's not really). Even if such a more fundamental fix isn't (easily) available, the PAT code already comments that the list, which is sorted by ->start value, is expected to be short, and should be turned into an rbtree if it isn't which might be slightly less of a bandaid. Dave Airlie (as the MAINTAINERS entry) can't be arsed to answer email it seems so I've added Dave Jones for a possible comment from the AGP side. If I'm reading this right upto now, still many AGP driver (among which my amd-k7-agp) are affected. In the short run and if I'm not just mistaken, the best fix might be to make PAT dependent on not having a dumb AGP driver (but as said, still looking). Note that my chipset is capable of a 2G AGP aperture. That's 512K pages if fully used, 256K for 1G, 128K for 512M, ... Rene. ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ --