Although the offending exception might have been a regression from: ------------------------------------------------------------ revno: 2870 [merge] author: Kevin DuBois <kevin.dub...@canonical.com> committer: Tarmac branch nick: development-branch timestamp: Fri 2015-08-21 14:52:44 +0000 message: client: Do some internal refactoring to separate out mcl::BufferStream's logic that ties it to the BufferDepository. If the client gets a buffer at creation, it will use the exchange based system. If not, it will keep the current behavior of throwing an exception. . Approved by PS Jenkins bot, Alan Griffiths, Chris Halse Rogers, Alexandros Frantzis. ------------------------------------------------------------
We probably don't have to fix it directly... Because Mir 0.24.0 aims to avoid this old code path for good, and you shouldn't ever hit it again. ** Changed in: mir Milestone: 0.25.0 => 0.24.0 ** Changed in: mir Status: Confirmed => Fix Committed ** Changed in: mir Assignee: (unassigned) => Kevin Dubois (kevin-dubois05) ** Changed in: mir (Ubuntu) Status: Confirmed => Triaged -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to mir in Ubuntu. https://bugs.launchpad.net/bugs/1506358 Title: unity8/libmirclient gives up and terminates prematurely with "std::exception::what: disconnected: no new buffers" via ExchangeSemantics::submit() Status in Canonical System Image: Confirmed Status in Mir: Fix Committed Status in mir package in Ubuntu: Triaged Status in xorg-server package in Ubuntu: Invalid Bug description: Under heavy resizing (stress testing under Valgrind), my Mir client (Xmir) crashed with: [1444895332.392862] <ERROR> MirBufferStreamAPI: Caught exception at client library boundary (in mir_buffer_stream_swap_buffers): /build/mir-7io2Aj/mir-0.16.0+15.10.20150921.1/src/client/buffer_stream.cpp(169): Throw in function virtual MirWaitHandle* {anonymous}::ExchangeSemantics::submit(const std::function<void()>&, mir::geometry::Size, MirPixelFormat, int) Dynamic exception type: boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::runtime_error> > std::exception::what: disconnected: no new buffers The strange thing is it's only the client that died. The server survived and I can connect new clients to it. --- Duplicate bug reports now show Unity8 is another such client suffering from this crash. It's occurring on phones and desktops in the wild. To manage notifications about this bug go to: https://bugs.launchpad.net/canonical-devices-system-image/+bug/1506358/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp