Skip to content

(release/25.1) Xi: byte-swap XIQueryDevice ScrollClass flags - #3802

Merged
metux merged 1 commit into
release/25.1from
pr/release/25.1-xi-byte-swap-xiquerydevice-scrollclass-flags_2026-10-01_20-20-58
Oct 2, 2026
Merged

metux merged 1 commit into
release/25.1from
pr/release/25.1-xi-byte-swap-xiquerydevice-scrollclass-flags_2026-10-01_20-20-58

Conversation

@metux

@metux metux commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Backport-Ursprung

Dieser PR ist ein Backport. Quelle auf master:
GH-3776

Der Merge-Status des Originals steht in der Referenz oben.

Master-PR: #3776

(cherry picked from commit 9f1a06d)

Part of batch: task-backport-batch-2026-10-01-3776-3777-3779-auf-release-25-2-25-1-25-0


Verknüpfung

Release merges are manual, by the maintainer.

@metux metux self-assigned this Oct 1, 2026
@metux
metux requested a review from a team October 1, 2026 18:22
@metux
metux force-pushed the pr/release/25.1-xi-byte-swap-xiquerydevice-scrollclass-flags_2026-10-01_20-20-58 branch from 9f6334b to e7a485c Compare October 2, 2026 07:44
@metux metux added the bot-review-passed Automated bot review found no blocking issues label Oct 2, 2026
@metux

metux commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Automated review — generated by Starfleet ship Enterprise (model: heavy-model) on behalf of @metux. Not a human review.

Review: pass (content) — CI state stated separately below

Verified directly against master rather than accepted on report.

Patch fidelity

Added lines are byte-identical to master #3776 (md5 of + lines: cdc03efde08c
on all three backports and on master). Only blob hash and hunk line numbers differ.

Branch-correct paths — the thing that would silently pass a review

PR branch server file test file
#3801 release/25.2 Xext/xinput/xiquerydevice.c test/xi2/protocol-xiquerydevice.c
#3802 release/25.1 Xi/xiquerydevice.c test/xi2/protocol-xiquerydevice.c
#3803 release/25.0 Xi/xiquerydevice.c test/xi2/protocol-xiquerydevice.c

The Xi/X11 relocation happened after 25.0/25.1 branched, so a mechanical cherry-pick
would have failed there. Both files are present in every PR: without the server file
the change does nothing observable in CI, and without the test file the suite breaks
in the other direction.

Provenance

Part-of: points at the xorg merge request (external form), and the
(cherry picked from commit ...) chain terminates in 9f1a06d0b, the master commit.
Traceable to upstream.

Sign-off

Now present and verified on the current head: Signed-off-by: for the original
author and, on this PR, Enrico Weigelt <info@metux.net>. On #3802 and #3803 the
trailer was missing entirely and the "Write comment if unsigned commits found" check
was failing on #3802 — a merge gate, not an adjacent nit. Fixed.

Worth noting for the record, because it is the kind of thing that reads as green and
is not: on #3803 the sign-off check did not run at all, because there was no
sign-off to check. A green CI there was a statement about checks that never
executed. Zero findings is not the same as green.

Rule 3 — driver ABI

No impact. The change adds swapl(&info->flags) to SwapScrollInfo() plus the
matching swap in the test harness's client-reply path. No struct definition changes,
no _X_EXPORTed symbol added, removed or changed (0 occurrences in the diff). The
affected struct is the XKB/XI wire type xXIScrollInfo, mirrored on the protocol
but unchanged in layout — what changes is that byte-swapped clients now receive a
correctly ordered field instead of a byte-reversed one.

Rule 2 — backport assessment

Already the backport. Protocol-correctness for byte-swapped clients (a big-endian
client misreading the ScrollClass flags); no memory-safety or security dimension, so
this is not a case for further propagation beyond the three release lines already
covered.

Merge gate — deliberately separate from this verdict

bot-review-passed records a content verdict. It is not a merge authorisation,
and it does not assert that CI is green. This PR still needs a completed CI run of
its own before anyone merges it; on a release/* branch that merge is the
maintainer's manual action in any case.

CI status at the time of this review

5 in_progress, 12 success on head e7a485c621f2 — CI is still running; this verdict does not depend on it and does not assert it.

(cherry picked from commit 9f1a06d)
Signed-off-by: Lukáš Lipinský <18076-Mr-Tao@users.noreply.gitlab.freedesktop.org>
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