/srv/irclogs.ubuntu.com/2022/08/08/#mir-server.txt

SaviqGood morn'08:07
alan_g[m]Hello!08:12
Saviq> That looks like the compiler confusing itself10:11
SaviqPrecompiled headers are part of the cause.10:11
Saviq*symptom ¯_(ツ)_/¯10:13
alan_g[m]So, disable them for ricsv?10:13
SaviqThat's arm64, and not just yet10:14
SaviqI have reproduced in my test environment, will file a bug against the toolchain and try and dumb it down to a small reproducer. Though pch is not going to make that trivial10:15
SaviqFYI: https://bugs.launchpad.net/ubuntu/+source/gcc-12/+bug/198385210:22
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] merged [pull request #2537](https://github.com/MirServer/mir/pull/2537): Send keyboard modifiers after keyboard enter11:51
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] closed [issue #2535](https://github.com/MirServer/mir/issues/2535): Send keyboard modifiers after keyboard enter11:51
-GitHub[m]:#mir-server- **[MirServer/mir]** bors[bot] closed [issue #2025](https://github.com/MirServer/mir/issues/2025): Keyboard modifier state gets out of sync11:51
alan_g[m]Saviq what happened with space for spread? You tried a wrong incantation?13:32
SaviqThat's what I'm trying to find out, but snapd is using the same… https://github.com/snapcore/snapd/blob/fedbe2f1258695f85e0816c334f1739b28c60e1f/spread.yaml#L10613:34
SaviqOh I think I know13:37
SaviqAll the systems need to be scalars or maps, not mixed13:38
SaviqActually no. I messed indentation up.13:38
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths closed [issue #2438](https://github.com/MirServer/mir/issues/2438): Wayland platform keymap glitch13:59
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths closed [issue #2370](https://github.com/MirServer/mir/issues/2370): Port SurfaceObserver to modern observer system14:08
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths closed [issue #2311](https://github.com/MirServer/mir/issues/2311): Direct executor global14:09
Saviq> Precompiled headers are part of the cause.15:26
SaviqHmm. Do PCH even make sense in CI / package builds? We don't share them between build targets, so they're quite likely to have an adverse effect in single-use environments?15:26
SaviqWe could/should share them, https://cmake.org/cmake/help/latest/command/target_precompile_headers.html#reusing-precompile-headers - that could have a positive impact15:27
alan_g[m]I've not looked into the PCH use, but surely they are shared between translation units. Otherwise what is the point?15:29
alan_g[m]Not on Mir, but I have had the experience of disabling PCH speeding the build process significantly15:30
SaviqRebuilds15:30
Saviqdisabling → speeding, or the other way around?15:31
alan_g[m]Without PCH the build was 4hrs, with 6hrs15:31
SaviqOh right, that's my point. In one-off environments, unless we explicitly share the precompiled headers, that's likely to have negative effects15:32
SaviqWe only use them in three test targets, and declare them separately, rather than reuse15:32
alan_g[m]When I first got involved the "daily build" was taking 26hrs. And that was "too slow" (this was some time ago)15:32
alan_g[m]I got it down to 3hrs15:33
alan_g[m]In Mir we are sharing them across TUs - there are multiple TUs in each "build target".15:35
-GitHub[m]:#mir-server- **[MirServer/mir]** Saviq drafted [pull request #2538](https://github.com/MirServer/mir/pull/2538): ci: disable precompiled headers15:35
SaviqHere's one way to find out. I will also try reusing them there.15:36
Saviqafterwards15:36
alan_g[m]E.g. acceptance-tests has 18 .cpp files sharing a PCH15:37
alan_g[m]Yeah, when they were introduced I asked if the effect was measurable...15:38
SaviqRight, I mistakenly considered a target to always share that. Would be a waste otherwise… but of course you're right15:39
SaviqLet's see!15:39
SaviqReusing them won't be much of a gain, then - it took maybe 30s to precompile on the arm64 env I was working on15:40
SaviqSo at most it would shave a minute off15:40
SaviqThis should be default behaviour. We could shave megawatthours off build usage.15:41
SaviqWe need a global ccache.15:41
alan_g[m]That would be a far better optimisation15:42
SaviqFirst results show < 5% slowdown when disabling PCH, so at least they do have an effect15:55
Saviq*a positive15:55
-GitHub[m]:#mir-server- **[MirServer/mir]** AlanGriffiths assigned AlanGriffiths to [issue #1284](https://github.com/MirServer/mir/issues/1284): Can not close xterm when launched by Mir16:22
-GitHub[m]:#mir-server- **[MirServer/mir]** wmww opened [pull request #2539](https://github.com/MirServer/mir/pull/2539): Include null terminator in keymap21:24
-GitHub[m]:#mir-server- 21:24
-GitHub[m]:#mir-server- > Fixes #2533. I haven't observed any bugs related to this, but it is technically required by the latest wayland.xml.21:24
-GitHub[m]:#mir-server- **[MirServer/mir]** wmww edited [pull request #2539](https://github.com/MirServer/mir/pull/2539): Include null terminator in keymap21:25
-GitHub[m]:#mir-server- **[MirServer/mir]** wmww opened [pull request #2540](https://github.com/MirServer/mir/pull/2540): mmap keymap fd instead of reading from it21:29
-GitHub[m]:#mir-server- 21:29
-GitHub[m]:#mir-server- > This and #2508 are the final two pieces required to make input work with wayvnc. I don't completely understand why reading from the fd works for squeekboard and not wayvnc, but mmap works for both and it's what wlroots does.21:29
sophie-wGot wayvnc working with input! Will work in main once https://github.com/MirServer/mir/pull/2540 and https://github.com/MirServer/mir/pull/2508 are merged.21:31
=== Kuraokam1 is now known as Kuraokami
=== madhens_ is now known as madhens

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!