diff options
author | 2022-05-27 10:23:40 -0700 | |
---|---|---|
committer | 2022-06-15 13:06:54 -0700 | |
commit | 311e03c29c255665e10a31910308de3777f21274 (patch) | |
tree | fa4d43dcbc75e0e27d23ca154f7ea50626dec28a /scripts/generate_rust_analyzer.py | |
parent | drm/msm: use for_each_sgtable_sg to iterate over scatterlist (diff) | |
download | linux-dev-311e03c29c255665e10a31910308de3777f21274.tar.xz linux-dev-311e03c29c255665e10a31910308de3777f21274.zip |
drm/msm/gem: Separate object and vma unpin
Previously the BO_PINNED state in the submit was tracking two related
but different things: (1) that the buffer object was pinned, and (2)
that the vma (mapping within a set of pagetables) was pinned. But with
fenced vma unpin (needed so that userspace couldn't race with retire
path for releasing a vma) these two were decoupled. The fact that the
BO_PINNED flag was already cleared meant that we leaked the bo pin count
which should have been dropped when the submit was retired.
So split this state into BO_OBJ_PINNED and BO_VMA_PINNED, so they can be
dropped independently.
Fixes: 95d1deb02a9c ("drm/msm/gem: Add fenced vma unpin")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/487559/
Link: https://lore.kernel.org/r/20220527172341.2151005-1-robdclark@gmail.com
Diffstat (limited to 'scripts/generate_rust_analyzer.py')
0 files changed, 0 insertions, 0 deletions