GEM-related desktop sluggishness due to linear-time arch_get_unmapped_area_topdown()
j.glisse at gmail.com
Tue Mar 29 08:23:23 PDT 2011
2011/3/29 r6144 <rainy6144 at gmail.com>:
> 在 2011-03-29二的 10:22 -0400，Jerome Glisse写道：
>> Killer solution would be to have no mapping and a decent
>> upload/download ioctl that can take userpage.
> Doesn't this sound like GEM's read/write interface implemented by e.g.
> the i915 driver? But if I understand correctly, a mmap-like interface
> should still be necessary if we want to implement e.g. glMapBuffer()
> without extra copying.
glMapBuffer should not be use, it's really not a good way to do stuff.
Anyway the extra copy might be unavoidable given that sometime the
front/back might either be in unmappable vram or either have memory
layout that is not the one specify at buffer creation (this is very
common when using tiling for instance). So even considering MapBuffer
or a like function i believe it's a lot better to not allow buffer
mapping in userspace but provide upload/download hooks that can use
userpage to avoid as much as possible extra copy.
More information about the dri-devel