• Jordan Crouse's avatar
    drm/msm: Count how many times iova memory is pinned · 7ad0e8cf
    Jordan Crouse authored
    Add a reference count to track how many times a particular
    chunk of iova memory is pinned (mapped) in the iomu and
    add msm_gem_unpin_iova to give up references.
    
    It is important to note that msm_gem_unpin_iova replaces
    msm_gem_put_iova because the new implicit behavior
    that an assigned iova in a given vma is now valid for the
    life of the buffer and what we are really focusing on is
    the use of that iova.
    
    For now the unmappings are lazy; once the reference counts
    go to zero they *COULD* be unmapped dynamically but that
    will require an outside force such as a shrinker or
    mm_notifiers.  For now, we're just focusing on getting
    the counting right and setting ourselves up to be ready
    for the future.
    Signed-off-by: default avatarJordan Crouse <jcrouse@codeaurora.org>
    Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
    7ad0e8cf
a6xx_gpu_state.c 29 KB