mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-22 12:55:58 +01:00
backend/drm: fix allocator DRM FD on multi-GPU setups
On multi-GPU setups, there is a primary DRM backend and secondary
DRM backends. wlr_backend_get_drm_fd will always return the parent
DRM FD even on secondary backends, so that users always use the
primary device for rendering.
However, for our internal rendering we want to use the secondary
device. Use allocator_autocreate_with_drm_fd to make sure the
allocator will create buffers on the secondary device.
We do something similar to ensure our internal rendering will
happen on the secondary device with renderer_autocreate_with_drm_fd.
Fixes: cc1b66364c
("backend: use wlr_allocator_autocreate")
This commit is contained in:
parent
5be76bb047
commit
e7f68ba081
1 changed files with 2 additions and 2 deletions
|
@ -35,8 +35,8 @@ bool init_drm_renderer(struct wlr_drm_backend *drm,
|
||||||
goto error_gbm;
|
goto error_gbm;
|
||||||
}
|
}
|
||||||
|
|
||||||
renderer->allocator = wlr_allocator_autocreate(&drm->backend,
|
renderer->allocator = allocator_autocreate_with_drm_fd(&drm->backend,
|
||||||
renderer->wlr_rend);
|
renderer->wlr_rend, drm->fd);
|
||||||
if (renderer->allocator == NULL) {
|
if (renderer->allocator == NULL) {
|
||||||
wlr_log(WLR_ERROR, "Failed to create allocator");
|
wlr_log(WLR_ERROR, "Failed to create allocator");
|
||||||
goto error_wlr_rend;
|
goto error_wlr_rend;
|
||||||
|
|
Loading…
Reference in a new issue