Activity log for bug #1538632

Date Who What changed Old value New value Message
2016-01-27 16:12:21 kevin gunn bug added bug
2016-01-27 16:12:34 kevin gunn bug task added unity-system-compositor (Ubuntu)
2016-01-27 16:12:51 kevin gunn bug task added unity-system-compositor
2016-01-27 16:12:57 kevin gunn canonical-pocket-desktop: importance Undecided Critical
2016-01-27 16:12:59 kevin gunn unity-system-compositor: importance Undecided Critical
2016-01-27 16:13:01 kevin gunn unity-system-compositor (Ubuntu): importance Undecided Critical
2016-01-27 18:04:23 Andreas Pokorny bug task added mir
2016-01-27 18:04:34 Andreas Pokorny mir: importance Undecided Critical
2016-01-27 18:04:40 Andreas Pokorny mir: assignee Andreas Pokorny (andreas-pokorny)
2016-01-27 18:04:47 Andreas Pokorny mir: status New In Progress
2016-01-27 21:13:21 Launchpad Janitor branch linked lp:~andreas-pokorny/mir/fix-1538632
2016-01-27 21:21:45 Andreas Pokorny description confirmed to happen in latest image with usc0.3 and previous images with usc0.2 steps 1) flash ubuntu-touch/rc-proposed/ubuntu-pd 2) connect bt mouse and see unity8 go into windowed mode 3) move mouse about screen while at the same time connect slimport hdmi cable ui will then freeze but seems content, let it sit for 30 min no reboot or restart, no crash files, power button does not do anything. It's also possible to have the slimport already connected - move mouse around disconnect, the ui will freeze altho in this case unity8 always seems to restart. There are no usc crash files. confirmed to happen in latest image with usc0.3 and previous images with usc0.2 steps 1) flash ubuntu-touch/rc-proposed/ubuntu-pd 2) connect bt mouse and see unity8 go into windowed mode 3) move mouse about screen while at the same time connect slimport hdmi cable ui will then freeze but seems content, let it sit for 30 min no reboot or restart, no crash files, power button does not do anything. It's also possible to have the slimport already connected - move mouse around disconnect, the ui will freeze altho in this case unity8 always seems to restart. There are no usc crash files. The problem is a dead lock on the Display/DisplaySyncGroup mutexes between CompositingFunctor->SystemWindowManager->GraphicsDisplayLayout and DisplayInputRegion. Thread 6 (Thread 0xb0dff3d0 (LWP 1530)): #0 0xb6cd5d44 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #1 0xb6cd395c in __lll_lock_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #2 0xb6ccf19e in pthread_mutex_lock () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #3 0xb6426f02 in __gthread_mutex_lock (__mutex=0x1b34f14) at /usr/include/arm-linux-gnueabihf/c++/4.9/bits/gthr-default.h:748 No locals. #4 lock (this=0x1b34f14) at /usr/include/c++/4.9/mutex:135 No locals. #5 lock_guard (__m=..., this=0xb0dfeaf0) at /usr/include/c++/4.9/mutex:377 No locals. #6 mir::graphics::android::Display::configuration (this=0x1b34ef8) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/android/server/display.cpp:231 lock = {_M_device = @0x1b34f14} #7 0xb6e656ca in mir::shell::GraphicsDisplayLayout::place_in_output (this=<optimized out>, id=..., rect=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/shell/graphics_display_layout.cpp:72 config = std::unique_ptr<mir::graphics::DisplayConfiguration> containing 0xb6eb69c8 placed = false #8 0xb6e6a888 in mir::shell::SystemCompositorWindowManager::add_display (this=0x1d07b24) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/shell/system_compositor_window_manager.cpp:1 output_id = <optimized out> rect = {top_left = {x = {value = 0}, y = {value = 0}}, size = {width = {value = 768}, height = { value = 1280}}} surface = std::shared_ptr (count 3, weak 4) 0x0 __for_range = <optimized out> lock = {_M_device = @0x1d07b3c} #9 0xb6e1ab32 in operator() (buffer=..., __closure=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/compositor/multi_threaded_compositor.cpp:96 No locals. #10 std::_Function_handler<void (mir::graphics::DisplayBuffer&), mir::compositor::CompositingFunctor::operator()()::{lambda()#2}::operator()() const::{lambda(mir::graphics::DisplayBuffer&)#1}>::_M_invoke(std::_Any_data const&, mir::graphics::DisplayBuffer&) (__functor=..., __args#0=...) at /usr/include/c++/4.9/functional:2039 No locals. #11 0xb64288a8 in operator() (__args#0=..., this=0xb0dfeca0) at /usr/include/c++/4.9/functional:2439 No locals. #12 mir::graphics::android::DisplayGroup::for_each_display_buffer(std::function<void (mir::graphics::DisplayBuffer&)> const&) (this=0x1b35024, f=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/android/server/display_group.cpp:51 __for_range = std::map with 1 elements = { [mir::graphics::android::DisplayName::primary] = std::unique_ptr<mir::graphics::android::ConfigurableDisplayBuffer> containing 0x1c0db40} lk = {_M_device = 0x1b35028, _M_owns = true} #13 0xb6e1b896 in operator() (__closure=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/compositor/multi_threaded_compositor.cpp:96 No locals. #14 PairedCalls (deleter=<optimized out>, creator=<optimized out>, this=0xb0dfec84) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/include/common/mir/raii.h:33 No locals. #15 paired_calls<mir::compositor::CompositingFunctor::operator()()::<lambda()>, mir::compositor::CompositingFunctor::operator()()::<lambda()> > (deleter=<optimized out>, creator=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/include/common/mir/raii.h:66 No locals. #16 mir::compositor::CompositingFunctor::operator() (this=0x1d112d8) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/compositor/multi_threaded_compositor.cpp:98 disp_listener = std::shared_ptr (count 5, weak 2) 0x1d07aac display_registration = {deleter = {__this = 0x1d112d8, __disp_listener = std::shared_ptr (count 5, weak 2) 0x1d07aac}, owner = true} compositor_registration = <optimized out> compositors = std::vector of length 1, capacity 1 = {std::tuple containing = {[1] = 0x1c0db40, [2] = std::unique_ptr<mir::compositor::DisplayBufferCompositor> containing 0xb0499848}} lock = {_M_device = 0xb0402c44, _M_owns = true} #17 0xb6e8aa58 in operator() (this=0xb0dfed84) at /usr/include/c++/4.9/functional:2439 No locals. #18 execute (this=0xb0dfed84) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/thread/basic_thread_pool.cpp:40 No locals. #19 operator() (this=0x1d1ce88) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/thread/basic_thread_pool.cpp:91 task = { task = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 8, static _M_max_align = 4, _M_functor = {_M_unused = {_M_object = 0x1d112d8, _M_const_object = 0x1d112d8, _M_function_pointer = 0x1d112d8,38 _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x1d112d8}, _M_pod_data = "\330\022\321\001\000\000\000"}, _M_manager = 0xb6e1ab91 <std::_Function_base::_Ref_manager<mir::compositor::CompositingFunctor>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0xb6e1bf3d <std::_Function_handler<void (), std::reference_wrapper<mir::compositor::CompositingFunctor> >::_M_invoke(std::_Any_data const&)>}, promise = { _M_future = std::shared_ptr (count 2, weak 0) 0x1d1c7f0, _M_storage = std::unique_ptr<std::__future_base::_Result<void>> containing 0x1d0ae90}, task_exception = {_M_exception_object = 0x0}} lock = {_M_device = 0x1d1ceb4, _M_owns = false} #20 __invoke<(anonymous namespace)::Worker> (__f=...) at /usr/include/c++/4.9/functional:202 No locals. #21 operator()<> (this=<optimized out>) at /usr/include/c++/4.9/functional:435 No locals. #22 _M_invoke<> (this=<optimized out>) at /usr/include/c++/4.9/functional:1700 No locals. #23 operator() (this=<optimized out>) at /usr/include/c++/4.9/functional:1688 No locals. #24 std::thread::_Impl<std::_Bind_simple<std::reference_wrapper<(anonymous namespace)::Worker>()> >::_M_run(void) (this=<optimized out>) at /usr/include/c++/4.9/thread:115 No locals. #25 0xb6c332a0 in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 No symbol table info available. #26 0xb6ccd490 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #27 0xb6b27c4c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6 No symbol table info available. Backtrace stopped: previous frame identical to this frame (corrupt stack?) #0 0xb6cd5d44 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #1 0xb6cd395c in __lll_lock_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #2 0xb6ccf19e in pthread_mutex_lock () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #3 0xb642887e in __gthread_mutex_lock (__mutex=0x1b35028) at /usr/include/arm-linux-gnueabihf/c++/4.9/bits/gthr-default.h:748 No locals. #4 lock (this=0x1b35028) at /usr/include/c++/4.9/mutex:135 No locals. #5 lock (this=0xafbfe9a4) at /usr/include/c++/4.9/mutex:474 No locals. #6 unique_lock (__m=..., this=0xafbfe9a4) at /usr/include/c++/4.9/mutex:406 No locals. #7 mir::graphics::android::DisplayGroup::for_each_display_buffer(std::function<void (mir::graphics::DisplayBuffer&)> const&) (this=0x1b35024, f=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/android/server/display_group.cpp:48 lk = {_M_device = 0x1b35028, _M_owns = false} #8 0xb6de02c0 in operator() (group=..., __closure=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/input/display_input_region.cpp:70 No locals. #9 std::_Function_handler<void(mir::graphics::DisplaySyncGroup&), mir::input::DisplayInputRegion::confine(mir::geometry::Point&)::<lambda(mir::graphics::DisplaySyncGroup&)> >::_M_invoke(const std::_Any_data &, mir::graphics::DisplaySyncGroup &) (__functor=..., __args#0=...) at /usr/include/c++/4.9/functional:2039 No locals. #10 0xb64258ee in operator() (__args#0=..., this=0xafbfea10) at /usr/include/c++/4.9/functional:2439 No locals. #11 mir::graphics::android::Display::for_each_display_sync_group(std::function<void (mir::graphics::DisplaySyncGroup&)> const&) (this=0x1b34ef8, f=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/android/server/display.cpp:226 lock = {_M_device = @0x1b34f14} #12 0xb6de04ae in mir::input::DisplayInputRegion::confine (this=<optimized out>, point=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/input/display_input_region.cpp:71 rectangles = {rectangles = std::vector of length 0, capacity 0, bounding_rectangle_ = { top_left = {x = {value = 0}, y = {value = 0}}, size = {width = {value = 0}, height = { value = 0}}}} #13 0xb6de37e0 in mir::input::Seat::update_cursor (this=this@entry=0x1d09078, event=event@entry=0xaf217308) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/input/seat.cpp:193 movement = <optimized out> #14 0xb6de3d0c in mir::input::Seat::update_seat_properties (this=0x1d09078, event=event@entry=0xaf217308) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/input/seat.cpp:106 pointer = 0xaf217308 id = 5 stored_data = {<std::__detail::_Node_iterator_base<std::pair<long long const, mir::input::Seat::DeviceData>, false>> = {_M_cur = 0xaf213908}, <No data fields>} __PRETTY_FUNCTION__ = "void mir::input::Seat::update_seat_properties(const MirInputEvent*) #15 0xb6ddb2c0 in mir::input::DefaultInputDeviceHub::RegisteredDevice::handle_input (this=0xaf2138b8, event=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/server/input/default_input_device_hub.cpp:171 type = <optimized out> __PRETTY_FUNCTION__ = "virtual void mir::input::DefaultInputDeviceHub::RegisteredDevice::handle_input(MirEvent&)" input_event = 0xaf217308 #16 0xb1fe3c90 in mir::input::evdev::LibInputDevice::process_event (this=0xaf213770, event=event@entry=0xaf20c5c0) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/evdev/libinput_device.cpp:93 No locals. #17 0xb1fe6fbe in mir::input::evdev::Platform::process_input_events (this=0x1d0bc28) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/platforms/evdev/platform.cpp:123 ev = std::unique_ptr<libinput_event> containing 0xaf20c5c0 dev = <optimized out> status = <optimized out> __PRETTY_FUNCTION__ = "void mir::input::evdev::Platform::process_input_events()" next_event = {lilib = 0x1d0bad8} #18 0xb6d5c714 in operator() (this=<optimized out>) at /usr/include/c++/4.9/functional:2439 No locals. #19 mir::dispatch::ReadableFd::dispatch (this=<optimized out>, events=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/common/dispatch/readable_fd.cpp:38 events = <optimized out> this = <optimized out> #20 0xb6d5a6cc in mir::dispatch::MultiplexingDispatchable::dispatch (this=<optimized out>, events=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/common/dispatch/multiplexing_dispatchable.cpp:210 source = std::shared_ptr (count 3, weak 0) 0x1d0b35c rearm_source = true event = {events = 1, data = {ptr = 0xaf2004d8, fd = -1356856104, u32 = 2938111192, u64 = 2938111192}} __PRETTY_FUNCTION__ = "virtual bool mir::dispatch::MultiplexingDispatchable::dispatch(mir::dispatch::FdEvents)" #21 0xb6d5a6cc in mir::dispatch::MultiplexingDispatchable::dispatch (this=<optimized out>, events=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/common/dispatch/multiplexing_dispatchable.cpp:210 source = std::shared_ptr (count 3, weak 0) 0x1d0b09c rearm_source = true event = {events = 1, data = {ptr = 0xaf20c0a8, fd = -1356808024, u32 = 2938159272, u64 = 2938159272}} __PRETTY_FUNCTION__ = "virtual bool mir::dispatch::MultiplexingDispatchable::dispatch(mir::dispatch::FdEvents)" #22 0xb6d5a6cc in mir::dispatch::MultiplexingDispatchable::dispatch (this=<optimized out>, events=<optimized out>) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/common/dispatch/multiplexing_dispatchable.cpp:210 source = std::shared_ptr (count 10, weak 1) 0x1d08914 rearm_source = false event = {events = 1, data = {ptr = 0x1d0fd90, fd = 30473616, u32 = 30473616, u64 = 30473616}} __PRETTY_FUNCTION__ = "virtual bool mir::dispatch::MultiplexingDispatchable::dispatch(mir::dispatch::FdEvents)" #23 0xb6d5ce5a in (anonymous namespace)::dispatch_loop(const std::string &, std::shared_ptr<mir::dispatch::ThreadedDispatcher::ThreadShutdownRequestHandler>, std::shared_ptr<mir::dispatch::Dispatchable>, const std::function<void()> &) (name=..., thread_register=..., dispatcher=std::shared_ptr (count 2, weak 0) 0x1d0fd24, exception_handler=...) at /build/mir-ua35pY/mir-0.19.0+15.04.20160126.1/src/common/dispatch/threaded_dispatcher.cpp:211 waiter = {fd = 61, events = 1, revents = 1} running = true thread_registrar = {deleter = { __thread_register = std::shared_ptr (count 4, weak 0) 0x1d0fc70}, owner = true} __PRETTY_FUNCTION__ = "void {anonymous}::dispatch_loop(const string&, std::shared_ptr<mir::dispatch::ThreadedDispatcher::ThreadShutdownRequestHandler>, std::shared_ptr<mir::dispatch::Dispatchable>, const std::function<void("... #24 0xb6d5ddf2 in _M_invoke<0u, 1u, 2u, 3u> (this=<optimized out>) at /usr/include/c++/4.9/functional:1700 No locals. #25 operator() (this=<optimized out>) at /usr/include/c++/4.9/functional:1688 No locals. #26 std::thread::_Impl<std::_Bind_simple<void (*(std::string, std::shared_ptr<mir::dispatch::ThreadedDispatcher::ThreadShutdownRequestHandler>, std::shared_ptr<mir::dispatch::MultiplexingDispatchable>, std::function<void ()>))(std::string const&, std::shared_ptr<mir::dispatch::ThreadedDispatcher::ThreadShutdownRequestHandler>, std::shared_ptr<mir::dispatch::Dispatchable>, std::function<void ()> const&)> >::_M_run() (this=<optimized out>) at /usr/include/c++/4.9/thread:115 No locals. #27 0xb6c332a0 in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 No symbol table info available. #28 0xb6ccd490 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0 No symbol table info available. #29 0xb6b27c4c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6 No symbol table info available. Backtrace stopped: previous frame identical to this frame (corrupt stack?)
2016-01-28 03:20:32 Daniel van Vugt mir: milestone 0.20.0
2016-01-28 20:36:38 kevin gunn canonical-pocket-desktop: status New In Progress
2016-01-28 20:36:59 kevin gunn bug task deleted unity-system-compositor
2016-01-28 20:37:01 kevin gunn bug task deleted unity-system-compositor (Ubuntu)
2016-01-29 03:23:14 Daniel van Vugt bug task added mir (Ubuntu)
2016-02-03 09:55:28 PS Jenkins bot mir: status In Progress Fix Committed
2016-02-09 15:08:31 kevin gunn mir (Ubuntu): status New In Progress
2016-02-09 15:08:36 kevin gunn canonical-pocket-desktop: assignee kevin gunn (kgunn72)
2016-02-10 00:33:30 Alberto Aguirre mir: milestone 0.20.0 0.19.2
2016-02-10 00:34:28 Alberto Aguirre nominated for series mir/0.20
2016-02-10 00:34:28 Alberto Aguirre bug task added mir/0.20
2016-02-10 00:34:58 Alberto Aguirre mir/0.20: milestone 0.19.2 0.20.0
2016-02-10 00:35:05 Alberto Aguirre nominated for series mir/0.19
2016-02-10 00:35:05 Alberto Aguirre bug task added mir/0.19
2016-02-10 00:35:14 Alberto Aguirre mir/0.19: milestone 0.19.2
2016-02-10 00:48:57 Launchpad Janitor branch linked lp:mir/0.19
2016-02-10 04:03:18 Daniel van Vugt mir/0.19: status New Fix Committed
2016-02-10 04:03:22 Daniel van Vugt mir/0.19: importance Undecided Critical
2016-02-10 04:03:36 Daniel van Vugt mir/0.19: assignee Andreas Pokorny (andreas-pokorny)
2016-02-10 04:11:24 Daniel van Vugt branch unlinked lp:mir/0.19
2016-02-11 14:53:50 Launchpad Janitor mir (Ubuntu): status In Progress Fix Released
2016-02-12 02:07:02 Daniel van Vugt mir/0.19: status Fix Committed Fix Released
2016-02-12 07:01:42 Jean-Baptiste Lallement canonical-pocket-desktop: status In Progress Fix Committed
2016-02-18 05:10:22 Daniel van Vugt summary ui freezes when simultaneously moving mouse & plug/unplug hdmi UI freezes when simultaneously moving mouse & plug/unplug HDMI
2016-02-18 05:11:02 Daniel van Vugt bug task deleted mir/0.20
2016-02-18 15:46:36 Pat McGowan bug task added canonical-devices-system-image
2016-02-18 15:46:55 Pat McGowan canonical-devices-system-image: importance Undecided Critical
2016-02-18 15:46:55 Pat McGowan canonical-devices-system-image: status New Fix Committed
2016-02-18 15:46:55 Pat McGowan canonical-devices-system-image: milestone 9.1
2016-02-23 16:30:45 Alan Griffiths mir: status Fix Committed Fix Released
2016-03-31 14:25:52 Pat McGowan canonical-devices-system-image: status Fix Committed Fix Released