Mir

Code review comment for lp:~alan-griffiths/mir/bump-client-ABI

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

> That's bug 1341490

Well, maybe.

In this case it isn't directly bumping the client API that causes the failure.

What seems to be happening is that glmark2-es2-mir depends on libmirclient8 and the version of that in archive (0.12.1) depends on libmircommon3. As does libmirplatform6 and the corresponding drivers.

The version of libmirclient8 in 0.13.1 depends on libmircommon4 as does libmirplatform7 and the corresponding drivers.

When the libmirclient8 from 0.12.1 tries to load drivers that use libmircommon4 we get a segfault (I haven't quite traced the full mechanism yet - but loading libmircommon3 and libmircommon4 into the same process clearly "needs care" at best).

There are several ways to produce this crash:

  o Having 0.12.1 mir-platform-graphics-mesa2 installed alongside libmircommon3 is one.
    (That's what I believe happens in CI)

  o Building this branch and running mir_performance_tests via the wrapper link.
    (Ensure you don't have a recent libmirclient.so.8 in the libs directory)

Hacking test_glmark2-es2-mir.cpp to unsetenv("MIR_CLIENT_PLATFORM_PATH") actually "fixes" the second case, but is probably a bad idea (and doesn't fix CI which doesn't set that variable in the wrapper).

« Back to merge proposal