drm/radeon/kms: don't require up to 64k allocations. (v2)
authorDave Airlie <airlied@redhat.com>
Wed, 23 Sep 2009 06:56:27 +0000 (16:56 +1000)
committerDave Airlie <airlied@linux.ie>
Fri, 25 Sep 2009 03:08:18 +0000 (13:08 +1000)
This avoids needing to do a kmalloc > PAGE_SIZE for the main
indirect buffer chunk, it adds an accessor for all reads from
the chunk and caches a single page at a time for subsequent
reads.

changes since v1:
Use a two page pool which should be the most common case
a single packet spanning > PAGE_SIZE will be hit, but I'm
having trouble seeing anywhere we currently generate anything like that.
hopefully proper short page copying at end
added parser_error flag to set deep errors instead of having to test
every ib value fetch.
fixed bug in patch that went to list.

Signed-off-by: Dave Airlie <airlied@redhat.com>

No differences found