[PATCH v2 0/6] omapdrm: struct_mutex removal
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Fri May 25 16:39:19 UTC 2018
Hello,
This patch series removes the usage of struct_mutex from the omapdrm driver in
order to switch to gem_free_object_unlocked(). The series is inspired by
Daniel Vetter's recent gem_free_object_unlocked() patches (starting with
"[PATCH 1/5] staging/vboxvideo: Use gem_free_object_unlocked") and
includes patches "[PATCH 4/5] drm/omapdrm: Fix mm_list locking" and
"[PATCH] drm/omapdrm: Switch to gem_free_object_unlocked" (the latter
modified due to the rebase).
When reviewing Daniel's patches I noticed a potential issue in lock handling
which prompted me to go and remove all usage of struct_mutex from the omapdrm
driver. Instead of replacing it with a device-wide lock, I have decided to
create per-GEM object locks as there is no need, as far as I can see, to
serialize operations across separate GEM objects.
The series starts with a bit of cleanup in the form of renaming (1/6) and
refactoring (2/6), followed by removal of struct_mutex (3/6 and 4/6). It then
ends with Daniel's patches that switch to gem_free_object_unlocked().
The patches are based on top of the latest drm-misc. They have been tested on
a Pandaboard.
Daniel Vetter (2):
drm/omap: gem: Fix mm_list locking
drm/omap: gem: Switch to gem_free_object_unlocked()
Laurent Pinchart (4):
drm/omap: gem: Rename GEM function with omap_gem_* prefix
drm/omap: gem: Merge __omap_gem_get_pages() and
omap_gem_attach_pages()
drm/omap: gem: Don't take struct_mutex to get GEM object mmap offset
drm/omap: gem: Replace struct_mutex usage with omap_obj private lock
drivers/gpu/drm/omapdrm/omap_debugfs.c | 9 +-
drivers/gpu/drm/omapdrm/omap_drv.c | 4 +-
drivers/gpu/drm/omapdrm/omap_drv.h | 2 +-
drivers/gpu/drm/omapdrm/omap_fbdev.c | 8 +-
drivers/gpu/drm/omapdrm/omap_gem.c | 236 +++++++++++++++++----------------
5 files changed, 131 insertions(+), 128 deletions(-)
--
Regards,
Laurent Pinchart
More information about the dri-devel
mailing list