diff options
author | Rob Clark <robdclark@chromium.org> | 2022-05-27 10:23:40 -0700 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2022-06-15 13:06:54 -0700 |
commit | 311e03c29c255665e10a31910308de3777f21274 (patch) | |
tree | fa4d43dcbc75e0e27d23ca154f7ea50626dec28a /arch/mips/kernel/segment.c | |
parent | 62b5e322fb6cc5a5a91fdeba0e4e57e75d9f4387 (diff) |
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 'arch/mips/kernel/segment.c')
0 files changed, 0 insertions, 0 deletions