05:11 wlb: wayland Issue #344 opened by Hector Martin (marcan) Communicate scroll inversion/natural scrolling flag to clients https://gitlab.freedesktop.org/wayland/wayland/-/issues/344
08:23 mjt: ManMower: so, re the wlfreerdp issue yesterday: I was sure it was a weston problem. Turned out I were entirely wrong, it was freerdp's :)
08:23 mjt: I stand corrected
08:43 pq: paulk, yes, I worked on mmio-trace over a decade ago, and haven't touched it since, so I might not be of much help. :-)
08:43 pq: paulk, yes, you got the basics of it right.
08:45 pq: paulk, set a MMIO page to fault; when it faults, decode the instruction to see what it does; set up single-stepping, mark the page present, and let the instruction complete; in single-step handler, reset everything to fault again.
08:46 pq: paulk, read instructions are recorded after the single-step, write instructions I don't remember.
08:48 pq: paulk, I recall that something about mmio-trace was extremely x86-specific. The instruction decoding is of course, but I forget if something else was too that would make implementing it on arm difficult.
08:49 pq: paulk, IIRC, "pre" and "post" handlers refers to before and after executing the instruction for real.
08:51 pq: paulk, I recall I had a desire to replace single-stepping with software emulation of the instruction. It would have made it much less ugly, but also emulation wasn't much there at the time or something. I think the kernel nowadays has enough emulation services to support that? Not sure.
08:52 pq: I forget what was the other sub-system that needed instruction emulation we could have borrowed.
08:56 pq: paulk, hmm, maybe emulation instead of single-stepping would avoid the need to shut down all CPU cores except one.
08:57 pq: could keep the MMIO page in faulting state all the time, and execute the emulation on a parallel mapping that works
09:41 paulk: pq: thanks!
09:41 paulk: pq: right keeping a parallel mapping and doing the actual I/O with it sounds like it could work
09:43 paulk: anyway the part I'm mostly worried about is decoding the instruction -- I'll look if there's arm stuff for that already around
13:19 pq: paulk, if that's the only issue, sounds relatively easy. :-)