RAOF | Uuuuuh. | 00:54 |
---|---|---|
RAOF | Why is `origin/main` failing a bunch of tests on my machine today? | 00:54 |
RAOF | Ra raw! | 01:41 |
RAOF | Because I'm building with clang, and apparently something we do generates code that fails under clang. | 01:42 |
RAOF | Oh, no! | 01:59 |
RAOF | Even better! The tests only work if built with ld.bfd. | 02:00 |
RAOF | `ld.gold` fails to build (apparently `mir/common/symbols.map` confuses its parser). | 02:00 |
RAOF | Both `ld.lld` and `ld.mold` build, but then the tests fail 🤷‍♀️ | 02:01 |
RAOF | Are other people not building with one of the faster linkers? | 02:03 |
sophie-w | I use ldd, I'm pretty sure | 02:03 |
RAOF | `mold` is a *full order of magnitude* faster than `ld.bfd` for a link-only build (6s rather than 60s). | 02:03 |
sophie-w | But I don't generally run all the tests | 02:04 |
RAOF | Huh! | 02:07 |
RAOF | So, the difference is in symbol resolution. | 02:07 |
RAOF | `mold` and `lld` will both resolve `glCreateShader` and friends in `mir_acceptance_tests` to our GL stubs. | 02:08 |
RAOF | `ld.bfd` resolves them in `libGLESv2.so`. | 02:08 |
RAOF | So when `the_screen_shooter()` transitively calls `glCreateShader`, that aborts the tests when built with `mold` or `lld`, but raises an exception when built with `ld.bfd` which gets silently eaten. | 02:10 |
RAOF | (I mean, it gets logged with `severity::Error`, but that's silently eaten by the acceptance tests) | 02:11 |
-GitHub[m]:#mir-server- **[MirServer/mir]** RAOF opened [issue #2452](https://github.com/MirServer/mir/issues/2452): Using non-`ld` linker results in broken tests... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/be55e25138e8f6b47e00748490de8e71743bb4fd) | 02:29 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** RAOF opened [pull request #2453](https://github.com/MirServer/mir/pull/2453): mtf: Add mmap() interposer | 08:06 | |
-GitHub[m]:#mir-server- | 08:06 | |
-GitHub[m]:#mir-server- > The new Platform API tests need to add the ability of `MockDRM` to intercept `mmap()` calls. Take the existing `open()` interceptor, file off the serial numbers, and use it for `mmap()`, too. | 08:06 | |
Saviq | alan_g hey, so, back to the performance tests… digging more into extracting renderers and resolutions… when running `Hosted*` under mir-kiosk / ubuntu-frame, that's actually 3 servers… `{mir-kiosk|ubuntu-frame}(mir_demo_server(mtf::AsyncServerRunner(test)))` | 11:06 |
alan_g[m] | > alan_g hey, so, back to the performance tests… digging more into extracting renderers and resolutions… when running `Hosted*` under mir-kiosk / ubuntu-frame, that's actually 3 servers… `{mir-kiosk|ubuntu-frame}(mir_demo_server(mtf::AsyncServerRunner(test)))` | 11:08 |
alan_g[m] | Yes | 11:08 |
Saviq | Any pointers on how to extract GL renderer and display mode from mtf::AsyncServerRunner? | 11:09 |
Saviq | I will parse logs for the outermost server, but for the test-driven servers I wanted to put those values into the result xml | 11:10 |
alan_g[m] | AsyncServerRunner does recognise `--logging`, but I don't know if we pass it | 11:14 |
Saviq | We do, yeah, but then that just ends up on stderr | 11:15 |
alan_g[m] | So the problem is that Frame and AsyncServerRunner outputs are interleaved on stdout/err? | 11:17 |
Saviq | No, outermost server logs are separate, but ASR's logs are interleaved with gtest output on std* | 11:22 |
Saviq | I suppose I can just monitor all of stderr in search for `GL renderer` and `Current mode:` | 11:23 |
alan_g[m] | In other news, I added "Documentation: https://discourse.ubuntu.com/t/ubuntu-frame-osk-documentation/27568" to https://snapcraft.io/ubuntu-frame-osk. (I didn't find a better documentation link) | 11:48 |
Saviq | grayson-g there's also `weston-simple-touch` that may be easier to work through. But. You don't actually have a touch screen, do you? | 15:17 |
grayson-g[m] | Saviq: Besides my phone, I don't believe I have a touch screen in here. | 15:17 |
Saviq | alan_g got any pointers re: emulation of touch events? | 15:24 |
alan_g[m] | > alan_g got any pointers re: emulation of touch events? | 15:35 |
alan_g[m] | Sorry, no. What's the problem? | 15:35 |
grayson-g[m] | > <@alan_g:matrix.org> > alan_g got any pointers re: emulation of touch events? | 15:36 |
grayson-g[m] | > | 15:36 |
grayson-g[m] | > Sorry, no. What's the problem? | 15:36 |
grayson-g[m] | This is regarding testing of this PR https://github.com/MirServer/mir/pull/2299 | 15:36 |
grayson-g[m] | * This is regarding testing of this PR https://github.com/MirServer/mir/pull/2299 [Edit: I know it is incomplete, but if I need some way to test a working solution] | 15:36 |
alan_g[m] | > This is regarding testing of this PR https://github.com/MirServer/mir/pull/2299 | 15:37 |
alan_g[m] | You'd need a driver that misbehaves in the way described to test that IRL. Better to extract the logic and write a unit test | 15:37 |
grayson-g[m] | > <@alan_g:matrix.org> > This is regarding testing of this PR https://github.com/MirServer/mir/pull/2299 | 15:38 |
grayson-g[m] | > | 15:38 |
grayson-g[m] | > You'd need a driver that misbehaves in the way described to test that IRL. Better to extract the logic and write a unit test | 15:38 |
grayson-g[m] | Makes sense | 15:38 |
alan_g[m] | grayson-g[m]: That, in part is what's blocked it all this time. We don't see the problem, and the new logic isn't tested. (And, I think, both old and new logic handle "garbage in" badly) | 15:43 |
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] merged [pull request #2453](https://github.com/MirServer/mir/pull/2453): mtf: Add mmap() interposer | 15:57 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths opened [issue #2454](https://github.com/MirServer/mir/issues/2454): Core dump after using OSK with Chromium... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/0f5a27188c3b87f25f8fa0f083599cc142cd153d) | 16:08 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths assigned AlanGriffiths to [issue #2454](https://github.com/MirServer/mir/issues/2454): Core dump after using OSK with Chromium | 16:43 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths added bug to [issue #2454](https://github.com/MirServer/mir/issues/2454): Core dump after using OSK with Chromium | 16:43 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths opened [pull request #2455](https://github.com/MirServer/mir/pull/2455): Don't use delete in application logic... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/5c0bbafd6be8e872611207e4175b9b9cbfc11292) | 16:49 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths requested a review from graysonguarino for [pull request #2455](https://github.com/MirServer/mir/pull/2455): Don't use delete in application logic | 16:50 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] closed [issue #2454](https://github.com/MirServer/mir/issues/2454): Core dump after using OSK with Chromium | 17:32 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] merged [pull request #2455](https://github.com/MirServer/mir/pull/2455): Don't use delete in application logic | 17:32 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** wmww opened [issue #2456](https://github.com/MirServer/mir/issues/2456): X11 platform display configuration racy | 23:15 | |
-GitHub[m]:#mir-server- | 23:15 | |
-GitHub[m]:#mir-server- > We should only be making changes to `DisplayBuffer`, `gl::RenderTarget`, etc in `Display::configure()`, since references are held by the compositor and used on the compositor thread, but we make changes immediately when we notice them from X11 events. | 23:15 | |
-GitHub[m]:#mir-server- **[MirServer/mir]** wmww opened [issue #2457](https://github.com/MirServer/mir/issues/2457): Wayland platform display configuration racy | 23:18 | |
-GitHub[m]:#mir-server- | 23:18 | |
-GitHub[m]:#mir-server- > Like #2456, we should only be making changes to displays in `Display::configure()`. This one is potentially worse because if an underlying `wl_output` disappears we will destroy the display buffer, but it may continue to be rendered on, resulting in a use-after-free. | 23:18 | |
RAOF | <Saviq> "alan_g got any pointers re..." <- grayson-g: If you need a set of real touch events to work from, I can provide a umockdev recording that will generate a seemingly-real touch stream. | 23:46 |
grayson-g[m] | RAOF: This would be helpful! | 23:46 |
RAOF | RAOF: The thought occurs that the *reporter* of that bug might be able to generate a trace of the broken driver's events! | 23:48 |
RAOF | I think there might also be an existing trace of a touch stream in `test_data`? | 23:49 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!