Files
marfrit-packages/upstream-submissions
test0r 70a01bd41a upstream-submissions/kwin-fourier: validation findings + revised MR body
Captured stock kwin 6.6.4 ioctl baselines on ohm (PineTab2 / RK3566
/ mainline 6.19.10 / Plasma 6.6.4 Wayland):
- Brave + bbb 1080p30 (sw decode), 60 s: 96,120 ioctls, 0 EXPORT_SYNC_FILE
- chromium-fourier + bbb 1080p30, 30 s: 29,128 ioctls, 0 EXPORT_SYNC_FILE,
  ~7,800 SYNCOBJ_* (explicit sync)

Finding: KWin 6.6.4 + drm-syncobj-aware clients negotiate
wp_linux_drm_syncobj_v1 explicit sync, leaving Transaction::watchDmaBuf
on the legacy implicit-sync path that fires only for clients that
don't advertise drm-syncobj support.

Updated kde-mr-body.md to reflect honest scope: structural cleanup
of the legacy path (still relevant for older clients / V4L2 pipelines
that don't wrap dmabufs in syncobjs) rather than the originally-
hypothesized per-frame ioctl reduction. Patch is correct by
construction; no regression on the no-targeted-path workload.

Evidence files saved under measurements/.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 19:10:55 +00:00
..

upstream-submissions/

Drafts of the upstream submission texts for the patch series in arch/ and kernel/. Each subdirectory pairs a patch series with the issue / merge-request / mailing-list body that should accompany it when going upstream.

Layout

upstream-submissions/
├── qt6-base-fourier/       # bugreports.qt.io issue + Gerrit notes
│   └── qt-bug-report.md
├── kwin-fourier/           # invent.kde.org MR body + KDE flow notes
│   └── kde-mr-body.md
└── vb2-dma-resv/           # linux-media cover letter + send-email recipe
    └── lkml-submission-notes.md

The patches themselves live in:

  • arch/qt6-base-fourier/0001..0003-*.patch (Qt 6 patches)
  • arch/kwin-fourier/0002-*.patch (KWin upstream-shape patch; 0001-*-bypass-*.patch is the local diagnostic, not for upstream)
  • kernel/vb2-dma-resv-rfc/0001..0003-*.patch plus 0000-cover-letter.patch (kernel patches)

Submission status

Series Bug filed Patches submitted Landed
qt6-base-fourier not yet not yet not yet
kwin-fourier (0002) n/a — KDE goes straight to MR not yet not yet
vb2-dma-resv n/a — kernel goes straight to mailing list not yet not yet

Validation gates before submitting

Each subdirectory's notes file lists the validation gates specific to that series. Common to all three:

  • Patches must apply cleanly to the latest upstream branch (rebase before sending).
  • Build must complete (compile-test for kernel; the others are already validated as building cleanly).
  • End-to-end runtime test on ohm should still pass with the patch applied (preferably with the other layers of the campaign also applied, so the patch doesn't get blamed for behavior in another layer).

Submission order

Recommended:

  1. vb2-dma-resv to linux-media first. The kernel-side fix is the architectural correction that makes the kwin patch's premise (the wait will signal correctly) actually true. If the kernel patch isn't merged or accepted, the kwin patch submission can still proceed but on weaker rationale.

  2. qt6-base-fourier to bugreports.qt.io + Gerrit second. Independent of the others; pure spec-correctness improvement for OpenGL ES 3.x, can land at any time.

  3. kwin-fourier (0002) to invent.kde.org last, ideally referencing the merged or in-flight kernel patch as the underlying correctness fix.

Cadence after submitting

  • Watch each upstream for review feedback; revise and resubmit.
  • After landing, request backports to LTS branches where applicable (Qt 6.5 LTS, Plasma 6.x, kernel stable).
  • Once landed in a release shipping to Arch / Debian / etc., the corresponding arch/*-fourier/ package becomes redundant and can be retired (drop the epoch=1 override, archive the PKGBUILD as historical reference).