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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]