linux-stable/drivers/gpu/drm/vmwgfx
Zack Rusin 2cdb71c975 drm/vmwgfx: Fix prime import/export
commit b32233acce upstream.

vmwgfx never supported prime import of external buffers. Furthermore the
driver exposes two different objects to userspace: vmw_surface's and
gem buffers but prime import/export only worked with vmw_surfaces.

Because gem buffers are used through the dumb_buffer interface this meant
that the driver created buffers couldn't have been prime exported or
imported.

Fix prime import/export. Makes IGT's kms_prime pass.

Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Fixes: 8afa13a058 ("drm/vmwgfx: Implement DRIVER_GEM")
Cc: <stable@vger.kernel.org> # v6.6+
Reviewed-by: Martin Krastev <martin.krastev@broadcom.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240412025511.78553-4-zack.rusin@broadcom.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-27 17:13:03 +02:00
..
device_include
Kconfig
Makefile
ttm_object.c
ttm_object.h
vmw_surface_cache.h
vmwgfx_binding.c
vmwgfx_binding.h
vmwgfx_blit.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_bo.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_bo.h drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_cmd.c
vmwgfx_cmdbuf.c
vmwgfx_cmdbuf_res.c
vmwgfx_context.c
vmwgfx_cotable.c drm/vmwgfx: Keep a gem reference to user bos in surfaces 2023-10-09 15:53:30 -04:00
vmwgfx_devcaps.c
vmwgfx_devcaps.h
vmwgfx_drv.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_drv.h drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_execbuf.c drm/vmwgfx: Fix possible null pointer derefence with invalid contexts 2024-04-03 15:32:01 +02:00
vmwgfx_fence.c
vmwgfx_fence.h
vmwgfx_gem.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_gmr.c
vmwgfx_gmrid_manager.c drm/vmwgfx: fix a memleak in vmw_gmrid_man_get_node 2024-03-26 18:16:59 -04:00
vmwgfx_ioctl.c
vmwgfx_irq.c
vmwgfx_kms.c drm/vmwgfx: Fix the lifetime of the bo cursor memory 2024-04-03 15:32:02 +02:00
vmwgfx_kms.h
vmwgfx_ldu.c
vmwgfx_mksstat.h
vmwgfx_mob.c
vmwgfx_msg.c
vmwgfx_msg_arm64.h
vmwgfx_msg_x86.h
vmwgfx_overlay.c drm/vmwgfx: Keep a gem reference to user bos in surfaces 2023-10-09 15:53:30 -04:00
vmwgfx_page_dirty.c
vmwgfx_prime.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_reg.h
vmwgfx_resource.c drm/vmwgfx: Keep a gem reference to user bos in surfaces 2023-10-09 15:53:30 -04:00
vmwgfx_resource_priv.h
vmwgfx_scrn.c
vmwgfx_shader.c drm/vmwgfx: Keep a gem reference to user bos in surfaces 2023-10-09 15:53:30 -04:00
vmwgfx_simple_resource.c
vmwgfx_so.c
vmwgfx_so.h
vmwgfx_stdu.c
vmwgfx_streamoutput.c
vmwgfx_surface.c vmemdup-user-array API and changes with it. 2023-10-24 11:13:29 +10:00
vmwgfx_system_manager.c
vmwgfx_ttm_buffer.c drm/vmwgfx: Fix prime import/export 2024-04-27 17:13:03 +02:00
vmwgfx_ttm_glue.c
vmwgfx_va.c
vmwgfx_validation.c
vmwgfx_validation.h