• Kenneth Graunke's avatar
    iris: Avoid holding the lock while allocating pages. · e917bb7a
    Kenneth Graunke authored
    We only need the lock for:
    1. Rummaging through the cache
    2. Allocating VMA
    
    We don't need it for alloc_fresh_bo(), which does GEM_CREATE, and also
    SET_DOMAIN to allocate the underlying pages.  The idea behind calling
    SET_DOMAIN was to avoid a lock in the kernel while allocating pages,
    now we avoid our own global lock as well.
    
    We do have to re-lock around VMA.  Hopefully this shouldn't happen too
    much in practice because we'll find a cached BO in the right memzone
    and not have to reallocate it.
    Reviewed-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
    e917bb7a
Name
Last commit
Last update
..
amd Loading commit data...
broadcom Loading commit data...
compiler Loading commit data...
egl Loading commit data...
freedreno Loading commit data...
gallium Loading commit data...
gbm Loading commit data...
getopt Loading commit data...
glx Loading commit data...
gtest Loading commit data...
hgl Loading commit data...
imgui Loading commit data...
intel Loading commit data...
loader Loading commit data...
mapi Loading commit data...
mesa Loading commit data...
util Loading commit data...
vulkan Loading commit data...
SConscript Loading commit data...
meson.build Loading commit data...