diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-11-20 11:40:09 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-11-21 07:14:27 +0300 |
| commit | a21aac949c42f98735237b0b63c7fae1d592580c (patch) | |
| tree | 4cb30da72e3f403d5e160eded233fcd76471b39a /src | |
| parent | cb47caba1101f6c0e718f02e1a1b9d8e579de70f (diff) | |
| download | niri-a21aac949c42f98735237b0b63c7fae1d592580c.tar.gz niri-a21aac949c42f98735237b0b63c7fae1d592580c.tar.bz2 niri-a21aac949c42f98735237b0b63c7fae1d592580c.zip | |
tty: Ensure we only use the primary render node for dmabuf global
Necessary for a future refactor making render node optional.
Co-authored-by: Christian Meissl <meissl.christian@gmail.com>
Co-authored-by: Scott McKendry <39483124+scottmckendry@users.noreply.github.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/backend/tty.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/backend/tty.rs b/src/backend/tty.rs index 1abbc2a2..368f5119 100644 --- a/src/backend/tty.rs +++ b/src/backend/tty.rs @@ -716,6 +716,10 @@ impl Tty { let node = DrmNode::from_dev_id(device_id)?; + if node == self.primary_node { + debug!("this is the primary node"); + } + // Only consider primary node on udev event // https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/768fbaad54027f8dd027e7e015e8eeb93cb38c52 if node.ty() != NodeType::Primary { @@ -757,13 +761,8 @@ impl Tty { .add_node(render_node, gbm.clone()) .context("error adding render node to GPU manager")?; - if node == self.primary_node || render_node == self.primary_render_node { - if node == self.primary_node { - debug!("this is the primary node"); - } - if render_node == self.primary_render_node { - debug!("this is the primary render node"); - } + if render_node == self.primary_render_node { + debug!("this is the primary render node"); let mut renderer = self .gpu_manager @@ -1061,7 +1060,7 @@ impl Tty { lease_state.disable_global::<State>(); } - if node == self.primary_node || device.render_node == self.primary_render_node { + if device.render_node == self.primary_render_node { match self.gpu_manager.single_renderer(&device.render_node) { Ok(mut renderer) => renderer.unbind_wl_display(), Err(err) => { |
