zink: Return zink_device in create_logical_device
Fixes: 015eda4a41 ("zink: deduplicate VkDevice and VkInstance")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38414>
This commit is contained in:
@@ -2732,7 +2732,7 @@ hack_it_up:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static VkDevice
|
||||
static struct zink_device*
|
||||
get_device(struct zink_screen *screen, VkDeviceCreateInfo *dci)
|
||||
{
|
||||
VkDevice dev = VK_NULL_HANDLE;
|
||||
@@ -2748,7 +2748,7 @@ get_device(struct zink_screen *screen, VkDeviceCreateInfo *dci)
|
||||
continue;
|
||||
zdev->refcount++;
|
||||
simple_mtx_unlock(&device_lock);
|
||||
return zdev->dev;
|
||||
return zdev;
|
||||
}
|
||||
|
||||
VkResult result = VKSCR(CreateDevice)(screen->pdev, dci, NULL, &dev);
|
||||
@@ -2761,10 +2761,10 @@ get_device(struct zink_screen *screen, VkDeviceCreateInfo *dci)
|
||||
zdev->dev = dev;
|
||||
_mesa_set_add(&device_table, zdev);
|
||||
simple_mtx_unlock(&device_lock);
|
||||
return dev;
|
||||
return zdev;
|
||||
}
|
||||
|
||||
static VkDevice
|
||||
static struct zink_device*
|
||||
zink_create_logical_device(struct zink_screen *screen)
|
||||
{
|
||||
VkDeviceQueueCreateInfo qci[2] = {0};
|
||||
@@ -3522,7 +3522,7 @@ zink_internal_create_screen(const struct pipe_screen_config *config, int64_t dev
|
||||
init_driver_workarounds(screen);
|
||||
disable_features(screen);
|
||||
|
||||
screen->dev = zink_create_logical_device(screen);
|
||||
screen->dev = zink_create_logical_device(screen)->dev;
|
||||
if (!screen->dev)
|
||||
goto fail;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user