Messages in this thread | | | Date | Tue, 19 Dec 2006 15:11:44 +0100 | From | Thomas Hellström <> | Subject | Re: [patch 1/2] agpgart - allow user-populated memory types. |
| |
Arjan van de Ven wrote: > On Tue, 2006-12-19 at 13:47 +0100, Thomas Hellström wrote: > >> Arjan van de Ven wrote: >> >> >>>> A short background: >>>> The current code uses vmalloc only. The potential use of kmalloc was >>>> introduced >>>> to save memory and cpu-speed. >>>> All agp drivers expect to see a single memory chunk, so I'm not sure we >>>> want to have an array of pages. That may require rewriting a lot of code. >>>> >>>> >>>> >>> but if it's clearly the right thing..... >>> How hard can it be? there are what.. 5 or 6 AGP drivers in the kernel? >>> >>> >>> >>> >>> >> Hmm, >> but we would still waste a lot of memory compared to kmalloc, >> > > surely it's at most 4Kb for the entire system? > > Nope. These structures get allocated once per display memory buffer, and a display memory buffer may be as large as the AGP aperture size, (usually up to 512MB) or as small as one page. The latter could be a user allocating a texture buffer for each character in a font, and they can be quite numerous, so we would waste almost 4Kb per buffer, which is not acceptable.
> (if agp allows the non-root user to pin a lot more than that in kernel > memory there is a different problem of rlimits ;) > > The drm memory manager sets aside and keeps track of a preset amount of memory that can be pinned in the kernel for video use, which is shared by all users running direct rendering clients. Currently this is a hard limit, but the idea is to unlock memory and make it swappable if resources become scarce. The memory we're discussing above is included in the bookkeeping.
/Thomas
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |