Phase 0: A1 Wayland baseline + state snapshot — major reframing
3 in-session reps of chromium-fourier 149 / brave_drops_test.html /
Plasma Wayland 6.6.4 (kwin-fourier 6.6.4-3 + qt6-base-fourier
6.11.0-3 carry-overs intact). Tight cluster IQR=0:
drops_total=0, drops_post_warmup=0, frames_total=1685, kwin %CPU
median=0.00, mean=0.04. Perf samples on kwin (~30 over 70s) show
zero composite/dmabuf/GL symbols — only event-loop bookkeeping.
Most likely mechanism: KWin direct-scanout fast-path engaged for
the single-visible-client video case. The campaign's load-bearing
hypothesis ("X11 + non-compositing WM avoids per-frame GL composite
of NV12") is structurally weakened — KWin already avoids that work
under Wayland for this workload. Phase 1 needs to add a
multi-window A1' variant and drm_info-during-playback to confirm
direct-scanout, then revisit matrix cell design.
revert.log entry 6: SDDM autologin + state.conf swap that landed
the Plasma Wayland session for the A1 reps. Backup of original
state.conf preserved at /var/lib/sddm/state.conf.x11-research-bak;
single-command revert documented.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -382,14 +382,117 @@ regular user.
|
||||
|
||||
---
|
||||
|
||||
## Entry 6 — 2026-05-03 ~13:25 CEST
|
||||
|
||||
**Trigger:** Operator instructed "okay, 2" — the option-2 path
|
||||
from the conversation: SSH-driven session switch from XFCE
|
||||
(entry 4 / 5 substrate) to Plasma Wayland for the remaining
|
||||
Phase 0 deliverables (state snapshot of Plasma Wayland + A1
|
||||
baseline reps), without operator at the SDDM greeter.
|
||||
|
||||
**Driven from:** `mfritsche@noether` over SSH to `ohm.fritz.box`,
|
||||
passwordless `sudo`.
|
||||
|
||||
### What was changed
|
||||
|
||||
1. **`/etc/sddm.conf.d/x11-research-autologin.conf` written**
|
||||
then **removed same session**:
|
||||
```
|
||||
[Autologin]
|
||||
User=mfritsche
|
||||
Session=plasma.desktop
|
||||
Relogin=false
|
||||
```
|
||||
Removed via `sudo rm` after the autologin succeeded so the
|
||||
campaign doesn't leave a one-shot config behind.
|
||||
|
||||
2. **`/var/lib/sddm/state.conf` modified** (still in place at
|
||||
end of this entry — see "Lingering state" below):
|
||||
- Pre-state: `Session=/usr/share/xsessions/xfce.desktop`
|
||||
(cached from the entry-2 XFCE session being the most
|
||||
recently used).
|
||||
- Post-state:
|
||||
`Session=/usr/share/wayland-sessions/plasma.desktop`.
|
||||
- Why: SDDM's autologin section was being **overruled** by
|
||||
the cached last-session in `state.conf` — autologin tried
|
||||
to start `startxfce4` instead of `startplasma-wayland`
|
||||
and crashed in a tight retry loop (visible in
|
||||
`journalctl -u sddm`: `--start startxfce4 ... crashed
|
||||
(exit code 1)` with new transient sessions appearing every
|
||||
~3 s). Stopping `sddm`, rewriting the state.conf Session
|
||||
line, and restarting `sddm` resolved the loop on the
|
||||
first try — kwin_wayland came up cleanly within ~10 s.
|
||||
- Backup: `/var/lib/sddm/state.conf.x11-research-bak`
|
||||
preserves the original line for revert.
|
||||
|
||||
3. **The XFCE session (entry 2/4/5 substrate) was terminated**
|
||||
via `loginctl terminate-session 395`. No cleanup of the
|
||||
user-side `~/.config/autostart/99-rotate-*.desktop` files
|
||||
needed — those scope to `OnlyShowIn=XFCE;` and silently
|
||||
no-op under Plasma Wayland.
|
||||
|
||||
### Lingering state
|
||||
|
||||
- `/var/lib/sddm/state.conf` continues to point at
|
||||
`Session=/usr/share/wayland-sessions/plasma.desktop`. **This
|
||||
is correct for the current session** (Plasma Wayland is now
|
||||
the most-recently-used). On the next operator-driven session
|
||||
switch, SDDM will rewrite this file naturally to whatever
|
||||
the user picks at the greeter; no campaign-side action
|
||||
needed.
|
||||
- The pre-campaign content is preserved at
|
||||
`/var/lib/sddm/state.conf.x11-research-bak` for
|
||||
audit/revert.
|
||||
|
||||
### Verification
|
||||
|
||||
After SDDM restart:
|
||||
- `loginctl show-session 433` → `Type=wayland`, `TTY=tty1`,
|
||||
`Service=sddm-autologin`, `Desktop=KDE`, `Active=yes`.
|
||||
- `pgrep -af kwin_wayland` shows
|
||||
`/usr/bin/kwin_wayland_wrapper --xwayland` (PID 35676) and
|
||||
`kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd
|
||||
...` (PID 35679).
|
||||
- `/run/user/1001/wayland-0` socket present and lockfile.
|
||||
|
||||
### Revert procedure
|
||||
|
||||
If campaign needs to fully revert:
|
||||
```sh
|
||||
ssh ohm.fritz.box '
|
||||
sudo systemctl stop sddm
|
||||
sudo cp /var/lib/sddm/state.conf.x11-research-bak /var/lib/sddm/state.conf
|
||||
sudo rm -f /var/lib/sddm/state.conf.x11-research-bak
|
||||
sudo systemctl start sddm
|
||||
'
|
||||
```
|
||||
(The autologin .conf was already removed in-session, so no
|
||||
extra delete needed there.)
|
||||
|
||||
Note: this revert ONLY restores the state.conf to its
|
||||
pre-campaign contents. It doesn't kill the current session;
|
||||
the operator can choose whether to log out and back in via
|
||||
greeter to fully exit Plasma Wayland.
|
||||
|
||||
---
|
||||
|
||||
## How to revert this campaign's installs
|
||||
|
||||
Entries reverted in **reverse order** (entry 5 → 4 → 3 → 2 → 1):
|
||||
Entries reverted in **reverse order** (entry 6 → 5 → 4 → 3 → 2 → 1):
|
||||
|
||||
```sh
|
||||
ssh ohm.fritz.box '
|
||||
set -e
|
||||
|
||||
# ----- Entry 6 revert: SDDM state.conf restoration -----
|
||||
if [ -f /var/lib/sddm/state.conf.x11-research-bak ]; then
|
||||
sudo systemctl stop sddm
|
||||
sudo cp /var/lib/sddm/state.conf.x11-research-bak /var/lib/sddm/state.conf
|
||||
sudo rm -f /var/lib/sddm/state.conf.x11-research-bak
|
||||
sudo systemctl start sddm
|
||||
fi
|
||||
# The autologin .conf was already removed in-session.
|
||||
|
||||
# ----- Entry 5 revert: touchscreen mapping -----
|
||||
rm -f ~/.config/autostart/99-rotate-touchscreen.desktop
|
||||
# Live revert: reset Coordinate Transformation Matrix to identity.
|
||||
|
||||
Reference in New Issue
Block a user