Skip to content

(release/25.1) composite: Fix PanoramiX overlay window release - #3585

Open
metux wants to merge 1 commit into
release/25.1from
pr/release/25.1-composite-fix-panoramix-overlay-window-release-_2026-08-20_16-16-56
Open

(release/25.1) composite: Fix PanoramiX overlay window release#3585
metux wants to merge 1 commit into
release/25.1from
pr/release/25.1-composite-fix-panoramix-overlay-window-release-_2026-08-20_16-16-56

Conversation

@metux

@metux metux commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

PanoramiX overlay resources contain physical window IDs for each
screen. Look them up as regular window resources when releasing the
client's overlay reference.

Signed-off-by: Xinhao Liu liuxinhao@kylinsec.com.cn
Part-of: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2259

PanoramiX overlay resources contain physical window IDs for each
screen. Look them up as regular window resources when releasing the
client's overlay reference.

Signed-off-by: Xinhao Liu <liuxinhao@kylinsec.com.cn>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2259>
@metux metux self-assigned this Aug 20, 2026
@metux
metux requested a review from a team August 20, 2026 14:18
metux pushed a commit that referenced this pull request Aug 20, 2026
PanoramiX overlay resources contain physical window IDs for each
screen. Look them up as regular window resources when releasing the
client's overlay reference.

Signed-off-by: Xinhao Liu <liuxinhao@kylinsec.com.cn>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2259>
PR: #3585
@metux

metux commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Automated review — generated by Starfleet ship Voyager on behalf of @metux. Not a human review.

Correct fix. Inside the XINERAMA_FOR_EACH_SCREEN_BACKWARD loop, win->info[walkScreenIdx].id is a physical per-screen window ID, not a PanoramiX root drawable. Looking it up as XRT_WINDOW was wrong — it should be X11_RESTYPE_WINDOW. The access level DixUnknownAccess (full access) is also unnecessarily broad for a lookup that only reads the window to find overlay clients; DixGetAttrAccess is the minimal correct level.

Note the first lookup (line 770) correctly stays as XRT_WINDOWstuff->window IS a PanoramiX composite overlay resource.

ABI: ProcCompositeReleaseOverlayWindow is a static function, not exported. Not referenced by any NVIDIA blob. ABI-safe.

Backport candidate (crash/corruption on Xinerama + composite overlay release): likely applies to release/25.0 as well. The bug exists on all Xinerama-enabled builds.

@metux metux added the bot-review-passed Automated bot review found no blocking issues label Aug 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bot-review-passed Automated bot review found no blocking issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant