From: Dave Airlie <airl...@redhat.com> this won't change over the driver lifetime, so just set it in the wsi_device at init, and avoid passing it around afterwards.
Signed-off-by: Dave Airlie <airl...@redhat.com> --- src/amd/vulkan/radv_wsi.c | 3 +-- src/amd/vulkan/radv_wsi_x11.c | 2 -- src/intel/vulkan/anv_wsi.c | 4 ++-- src/intel/vulkan/anv_wsi_x11.c | 2 -- src/vulkan/wsi/wsi_common.c | 9 +++++---- src/vulkan/wsi/wsi_common.h | 4 ++-- src/vulkan/wsi/wsi_common_private.h | 2 -- src/vulkan/wsi/wsi_common_wayland.c | 2 -- src/vulkan/wsi/wsi_common_x11.c | 5 +---- src/vulkan/wsi/wsi_common_x11.h | 1 - 10 files changed, 11 insertions(+), 23 deletions(-) diff --git a/src/amd/vulkan/radv_wsi.c b/src/amd/vulkan/radv_wsi.c index 51e8ec6..ae80092 100644 --- a/src/amd/vulkan/radv_wsi.c +++ b/src/amd/vulkan/radv_wsi.c @@ -40,6 +40,7 @@ radv_init_wsi(struct radv_physical_device *physical_device) { return wsi_device_init(&physical_device->wsi_device, radv_physical_device_to_handle(physical_device), + physical_device->local_fd, radv_wsi_proc_addr, &physical_device->instance->alloc); } @@ -71,7 +72,6 @@ VkResult radv_GetPhysicalDeviceSurfaceSupportKHR( RADV_FROM_HANDLE(radv_physical_device, device, physicalDevice); return wsi_common_get_surface_support(&device->wsi_device, - device->local_fd, queueFamilyIndex, surface, &device->instance->alloc, @@ -159,7 +159,6 @@ VkResult radv_CreateSwapchainKHR( return wsi_common_create_swapchain(&device->physical_device->wsi_device, radv_device_to_handle(device), - device->physical_device->local_fd, pCreateInfo, alloc, pSwapchain); diff --git a/src/amd/vulkan/radv_wsi_x11.c b/src/amd/vulkan/radv_wsi_x11.c index 97d4277..b50405c 100644 --- a/src/amd/vulkan/radv_wsi_x11.c +++ b/src/amd/vulkan/radv_wsi_x11.c @@ -46,7 +46,6 @@ VkBool32 radv_GetPhysicalDeviceXcbPresentationSupportKHR( &device->wsi_device, &device->instance->alloc, queueFamilyIndex, - device->local_fd, connection, visual_id); } @@ -62,7 +61,6 @@ VkBool32 radv_GetPhysicalDeviceXlibPresentationSupportKHR( &device->wsi_device, &device->instance->alloc, queueFamilyIndex, - device->local_fd, XGetXCBConnection(dpy), visualID); } diff --git a/src/intel/vulkan/anv_wsi.c b/src/intel/vulkan/anv_wsi.c index 6082c3d..481e233 100644 --- a/src/intel/vulkan/anv_wsi.c +++ b/src/intel/vulkan/anv_wsi.c @@ -38,6 +38,7 @@ anv_init_wsi(struct anv_physical_device *physical_device) { return wsi_device_init(&physical_device->wsi_device, anv_physical_device_to_handle(physical_device), + physical_device->local_fd, anv_wsi_proc_addr, &physical_device->instance->alloc); } @@ -72,7 +73,6 @@ VkResult anv_GetPhysicalDeviceSurfaceSupportKHR( ANV_FROM_HANDLE(anv_physical_device, device, physicalDevice); return wsi_common_get_surface_support(&device->wsi_device, - device->local_fd, queueFamilyIndex, surface, &device->instance->alloc, @@ -155,7 +155,7 @@ VkResult anv_CreateSwapchainKHR( else alloc = &device->alloc; - return wsi_common_create_swapchain(wsi_device, _device, device->fd, + return wsi_common_create_swapchain(wsi_device, _device, pCreateInfo, alloc, pSwapchain); } diff --git a/src/intel/vulkan/anv_wsi_x11.c b/src/intel/vulkan/anv_wsi_x11.c index 3042509..2f83f4a 100644 --- a/src/intel/vulkan/anv_wsi_x11.c +++ b/src/intel/vulkan/anv_wsi_x11.c @@ -42,7 +42,6 @@ VkBool32 anv_GetPhysicalDeviceXcbPresentationSupportKHR( &device->wsi_device, &device->instance->alloc, queueFamilyIndex, - device->local_fd, connection, visual_id); } @@ -58,7 +57,6 @@ VkBool32 anv_GetPhysicalDeviceXlibPresentationSupportKHR( &device->wsi_device, &device->instance->alloc, queueFamilyIndex, - device->local_fd, XGetXCBConnection(dpy), visualID); } diff --git a/src/vulkan/wsi/wsi_common.c b/src/vulkan/wsi/wsi_common.c index 2de5f15..9770108 100644 --- a/src/vulkan/wsi/wsi_common.c +++ b/src/vulkan/wsi/wsi_common.c @@ -28,6 +28,7 @@ VkResult wsi_device_init(struct wsi_device *wsi, VkPhysicalDevice pdevice, + int local_fd, WSI_FN_GetPhysicalDeviceProcAddr proc_addr, const VkAllocationCallbacks *alloc) { @@ -35,6 +36,8 @@ wsi_device_init(struct wsi_device *wsi, memset(wsi, 0, sizeof(*wsi)); + wsi->local_fd = local_fd; + #define WSI_GET_CB(func) \ PFN_vk##func func = (PFN_vk##func)proc_addr(pdevice, "vk" #func) WSI_GET_CB(GetPhysicalDeviceMemoryProperties); @@ -523,7 +526,6 @@ wsi_destroy_image(const struct wsi_swapchain *chain, VkResult wsi_common_get_surface_support(struct wsi_device *wsi_device, - int local_fd, uint32_t queueFamilyIndex, VkSurfaceKHR _surface, const VkAllocationCallbacks *alloc, @@ -533,7 +535,7 @@ wsi_common_get_surface_support(struct wsi_device *wsi_device, struct wsi_interface *iface = wsi_device->wsi[surface->platform]; return iface->get_support(surface, wsi_device, alloc, - queueFamilyIndex, local_fd, pSupported); + queueFamilyIndex, pSupported); } VkResult @@ -601,7 +603,6 @@ wsi_common_get_surface_present_modes(struct wsi_device *wsi_device, VkResult wsi_common_create_swapchain(struct wsi_device *wsi, VkDevice device, - int fd, const VkSwapchainCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain) @@ -610,7 +611,7 @@ wsi_common_create_swapchain(struct wsi_device *wsi, struct wsi_interface *iface = wsi->wsi[surface->platform]; struct wsi_swapchain *swapchain; - VkResult result = iface->create_swapchain(surface, device, wsi, fd, + VkResult result = iface->create_swapchain(surface, device, wsi, pCreateInfo, pAllocator, &swapchain); if (result != VK_SUCCESS) diff --git a/src/vulkan/wsi/wsi_common.h b/src/vulkan/wsi/wsi_common.h index 3e0d3be..3ca4b72 100644 --- a/src/vulkan/wsi/wsi_common.h +++ b/src/vulkan/wsi/wsi_common.h @@ -55,6 +55,7 @@ struct wsi_interface; struct wsi_device { VkPhysicalDeviceMemoryProperties memory_props; uint32_t queue_family_count; + int local_fd; #define WSI_CB(cb) PFN_vk##cb cb WSI_CB(AllocateMemory); @@ -92,6 +93,7 @@ typedef PFN_vkVoidFunction (VKAPI_PTR *WSI_FN_GetPhysicalDeviceProcAddr)(VkPhysi VkResult wsi_device_init(struct wsi_device *wsi, VkPhysicalDevice pdevice, + int local_fd, WSI_FN_GetPhysicalDeviceProcAddr proc_addr, const VkAllocationCallbacks *alloc); @@ -120,7 +122,6 @@ ICD_DEFINE_NONDISP_HANDLE_CASTS(VkIcdSurfaceBase, VkSurfaceKHR) VkResult wsi_common_get_surface_support(struct wsi_device *wsi_device, - int local_fd, uint32_t queueFamilyIndex, VkSurfaceKHR surface, const VkAllocationCallbacks *alloc, @@ -170,7 +171,6 @@ wsi_common_acquire_next_image(const struct wsi_device *wsi, VkResult wsi_common_create_swapchain(struct wsi_device *wsi, VkDevice device, - int fd, const VkSwapchainCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain); diff --git a/src/vulkan/wsi/wsi_common_private.h b/src/vulkan/wsi/wsi_common_private.h index 503b2a0..e89118c 100644 --- a/src/vulkan/wsi/wsi_common_private.h +++ b/src/vulkan/wsi/wsi_common_private.h @@ -96,7 +96,6 @@ struct wsi_interface { struct wsi_device *wsi_device, const VkAllocationCallbacks *alloc, uint32_t queueFamilyIndex, - int local_fd, VkBool32* pSupported); VkResult (*get_capabilities)(VkIcdSurfaceBase *surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); @@ -118,7 +117,6 @@ struct wsi_interface { VkResult (*create_swapchain)(VkIcdSurfaceBase *surface, VkDevice device, struct wsi_device *wsi_device, - int local_fd, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, struct wsi_swapchain **swapchain); diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c index be7635b..97a18c2 100644 --- a/src/vulkan/wsi/wsi_common_wayland.c +++ b/src/vulkan/wsi/wsi_common_wayland.c @@ -399,7 +399,6 @@ wsi_wl_surface_get_support(VkIcdSurfaceBase *surface, struct wsi_device *wsi_device, const VkAllocationCallbacks *alloc, uint32_t queueFamilyIndex, - int local_fd, VkBool32* pSupported) { *pSupported = true; @@ -769,7 +768,6 @@ static VkResult wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, VkDevice device, struct wsi_device *wsi_device, - int local_fd, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, struct wsi_swapchain **swapchain_out) diff --git a/src/vulkan/wsi/wsi_common_x11.c b/src/vulkan/wsi/wsi_common_x11.c index b6aaa46..e86a7e3 100644 --- a/src/vulkan/wsi/wsi_common_x11.c +++ b/src/vulkan/wsi/wsi_common_x11.c @@ -353,7 +353,6 @@ VkBool32 wsi_get_physical_device_xcb_presentation_support( struct wsi_device *wsi_device, VkAllocationCallbacks *alloc, uint32_t queueFamilyIndex, - int fd, xcb_connection_t* connection, xcb_visualid_t visual_id) { @@ -399,7 +398,6 @@ x11_surface_get_support(VkIcdSurfaceBase *icd_surface, struct wsi_device *wsi_device, const VkAllocationCallbacks *alloc, uint32_t queueFamilyIndex, - int local_fd, VkBool32* pSupported) { xcb_connection_t *conn = x11_surface_get_connection(icd_surface); @@ -1029,7 +1027,6 @@ static VkResult x11_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, VkDevice device, struct wsi_device *wsi_device, - int local_fd, const VkSwapchainCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks* pAllocator, struct wsi_swapchain **swapchain_out) @@ -1078,7 +1075,7 @@ x11_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, chain->threaded = false; chain->status = VK_SUCCESS; - if (!wsi_x11_check_dri3_compatible(conn, local_fd)) + if (!wsi_x11_check_dri3_compatible(conn, wsi_device->local_fd)) chain->base.use_prime_blit = true; chain->event_id = xcb_generate_id(chain->conn); diff --git a/src/vulkan/wsi/wsi_common_x11.h b/src/vulkan/wsi/wsi_common_x11.h index 01f1d66..7166f09 100644 --- a/src/vulkan/wsi/wsi_common_x11.h +++ b/src/vulkan/wsi/wsi_common_x11.h @@ -29,7 +29,6 @@ VkBool32 wsi_get_physical_device_xcb_presentation_support( struct wsi_device *wsi_device, VkAllocationCallbacks *alloc, uint32_t queueFamilyIndex, - int local_fd, xcb_connection_t* connection, xcb_visualid_t visual_id); -- 2.9.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev