Messages in this thread | | | Subject | Re: [PATCH] radeon: use vmalloc instead of kmalloc | From | Jerome Glisse <> | Date | Tue, 23 Jun 2009 14:23:23 +0200 |
| |
On Tue, 2009-06-23 at 21:42 +1000, Dave Airlie wrote: > On Tue, Jun 23, 2009 at 9:35 PM, Peter Zijlstra<peterz@infradead.org> wrote: > > On Mon, 2009-06-22 at 19:26 +0200, Jerome Glisse wrote: > >> We don't need to allocated contiguous pages in cs codepath > >> so use vmalloc instead. > > > > Best would be to not require >PAGE_SIZE allocations at all of course. > > It gets messy when you have copy from user and spinlocks, it would be nice > to just parse the userspace PAGE_SIZE at a time, but it would mean dropping > a lock we probably need to hold. > > > But barring that, it would be great to have something like: > > > > ptr = kmalloc(size, GFP_KERNEL | __GFP_NOWARN); > > if (!ptr) > > ptr = vmalloc(size); > > we have a drm_calloc_large workaround already for the Intel driver which also > need this. > > > > Also, how long do these allocations live? vmalloc space can be quite > > limited (i386) and it can fragment too. > > Only an ioctl lifetime so they aren't that bad. We however do have some vmaps > that might be quite large, mainly the fbcon framebuffer (up to 8MB in > some cases) > > Dave.
I will rework cs parsing a bit see with what i can come up with. Forget this patch, i will get back with a new one.
Jerome
| |