mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 20:28:04 +02:00
iris: Simplify bo import in memobj_create_from_handle
Looking at the caller, we only import FDs without modifiers. By asserting this behavior and dropping the unused cases, we gain some clarity on the alignment of the imported BO's VMA. Reviewed-by: Rohan Garg <rohan.garg@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29094>
This commit is contained in:
parent
6b969a4b43
commit
31560d82ad
1 changed files with 4 additions and 15 deletions
|
|
@ -376,24 +376,13 @@ iris_memobj_create_from_handle(struct pipe_screen *pscreen,
|
|||
{
|
||||
struct iris_screen *screen = (struct iris_screen *)pscreen;
|
||||
struct iris_memory_object *memobj = CALLOC_STRUCT(iris_memory_object);
|
||||
struct iris_bo *bo;
|
||||
|
||||
if (!memobj)
|
||||
return NULL;
|
||||
|
||||
switch (whandle->type) {
|
||||
case WINSYS_HANDLE_TYPE_SHARED:
|
||||
bo = iris_bo_gem_create_from_name(screen->bufmgr, "winsys image",
|
||||
whandle->handle);
|
||||
break;
|
||||
case WINSYS_HANDLE_TYPE_FD:
|
||||
bo = iris_bo_import_dmabuf(screen->bufmgr, whandle->handle,
|
||||
whandle->modifier);
|
||||
break;
|
||||
default:
|
||||
unreachable("invalid winsys handle type");
|
||||
}
|
||||
|
||||
assert(whandle->type == WINSYS_HANDLE_TYPE_FD);
|
||||
assert(whandle->modifier == DRM_FORMAT_MOD_INVALID);
|
||||
struct iris_bo *bo = iris_bo_import_dmabuf(screen->bufmgr, whandle->handle,
|
||||
DRM_FORMAT_MOD_INVALID);
|
||||
if (!bo) {
|
||||
free(memobj);
|
||||
return NULL;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue