[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4587F320.4020903@tungstengraphics.com>
Date: Tue, 19 Dec 2006 15:11:44 +0100
From: Thomas Hellström <thomas@...gstengraphics.com>
To: Arjan van de Ven <arjan@...radead.org>
CC: Dave Jones <davej@...hat.com>, Dave Airlie <airlied@...ux.ie>,
Linux Kernel list <linux-kernel@...r.kernel.org>
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists