Public bug reported: This occurs with the development version of Mir running on 18.04LTS (not seen on later series). (This version of Mir can be installed from ppa :mir-team/dev).
1. Start multiscreen Mir-on-X: miral-app -demo-server --x11-output 640x480:800x600. 2. Position windows side-by-side to make it easy to move cursor across windows. 3. Drag the terminal window back and forth between windows. Expect: everything works smoothly. Actual: Eventually (can take 30sec) a core dump. It looks like internal mesa state is inconsistent as src_mt is assigned with intelImage->mt and not changed in ntel_miptree_copy_teximage() but... ... multi-thre Thread 0x7fee68b117 In: intel_miptree_copy_teximage L1438 PC: 0x7fee6bd1739a (gdb) f 1 #1 0x00007fee6bd1739a in intel_miptree_copy_teximage (brw=0x55e9f1a066a0, intelImage=0x7fee58075fc0, dst_mt=0x7fee5807b120) at ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1438 (gdb) p src_mt $1 = (struct intel_mipmap_tree *) 0x0 (gdb) p intelImage->mt $2 = (struct intel_mipmap_tree *) 0x7fee5807b120 Backtrace: Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007fee6bd16ea6 in intel_miptree_copy_slice (brw=0x55e9f1a066a0, src_mt=0x0, src_level=0, src_layer=0, dst_mt=0x7fee5807b120, dst_level=0, dst_layer=0) at ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1332 1332 ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c: No such file or directory. [Current thread is 1 (Thread 0x7fee68b11700 (LWP 7872))] (gdb) bt #0 0x00007fee6bd16ea6 in intel_miptree_copy_slice (brw=0x55e9f1a066a0, src_mt=0x0, src_level=0, src_layer=0, dst_mt= 0x7fee5807b120, dst_level=0, dst_layer=0) at ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1332 #1 0x00007fee6bd1739a in intel_miptree_copy_teximage (brw=0x55e9f1a066a0, intelImage=0x7fee58075fc0, dst_mt=0x7fee5807b120) at ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1438 #2 0x00007fee6bd280e6 in intel_finalize_mipmap_tree (brw=0x55e9f1a066a0, tObj=0x7fee58086910) at ../src/mesa/drivers/dri/i965/intel_tex_validate.c:179 #3 0x00007fee6bd281fb in brw_validate_textures (brw=0x55e9f1a066a0) at ../src/mesa/drivers/dri/i965/intel_tex_validate.c:219 #4 0x00007fee6bce3932 in brw_prepare_drawing (ctx=0x55e9f1a066a0, ib=0x0, index_bounds_valid=true, min_index=0, max_index=3) at ../src/mesa/drivers/dri/i965/brw_draw.c:816 #5 0x00007fee6bce4496 in brw_draw_prims (ctx=0x55e9f1a066a0, prims=0x7fee68b10480, nr_prims=1, ib=0x0, index_bounds_valid=1 '\001', min_index=0, max_index=3, gl_xfb_obj=0x0, stream=0, indirect=0x0) at ../src/mesa/drivers/dri/i965/brw_draw.c:1148 #6 0x00007fee6c0e4163 in _mesa_draw_arrays (ctx=0x55e9f1a066a0, mode=5, start=0, count=4, numInstances=1, baseInstance=0, drawID=0) at ../src/mesa/main/draw.c:374 #7 0x00007fee6c0e48eb in _mesa_DrawArrays (mode=5, start=0, count=4) at ../src/mesa/main/draw.c:531 #8 0x00007fee77148a8a in mir::renderer::gl::Renderer::draw(mir::graphics::Renderable const&) const (this=0x7fee58000b20, renderable= ...) at /home/alan/display_server/mir/src/renderers/gl/renderer.cpp:631 #9 0x00007fee77147e13 in mir::renderer::gl::Renderer::render(std::vector<std::shared_ptr<mir::graphics::Renderable>, std::allocator<std::shared_ptr<mir::graphics::Renderable> > > const&) const (this=0x7fee58000b20, renderables=std::vector of length 2, capacity 2 = {...}) at /home/alan/display_server/mir/src/renderers/gl/renderer.cpp:437 #10 0x00007fee76f0c728 in mir::compositor::DefaultDisplayBufferCompositor::composite(std::vector<std::shared_ptr<mir::compositor::SceneElement>, std::allocator<std::shared_ptr<mir::compositor::SceneElement> > >&&) (this=0x7fee5800c840, scene_elements=...) at /home/alan/display_server/mir/src/server/compositor/default_display_buffer_compositor.cpp:84 #11 0x00007fee76f12781 in mir::compositor::CompositingFunctor::operator()() (this=0x55e9f1b6a3a0) at /home/alan/display_server/mir/src/server/compositor/multi_threaded_compositor.cpp:141 #12 0x00007fee76f18311 in std::__invoke_impl<void, mir::compositor::CompositingFunctor&>(std::__invoke_other, mir::compositor::CompositingFunctor&) (__f=...) at /usr/include/c++/7/bits/invoke.h:60 #13 0x00007fee76f178b4 in std::__invoke<mir::compositor::CompositingFunctor&>(mir::compositor::CompositingFunctor&) (__fn=...) at /usr/include/c++/7/bits/invoke.h:95 #14 0x00007fee76f16ae0 in std::reference_wrapper<mir::compositor::CompositingFunctor>::operator()<>() const (this=0x7fee68b10af0) at /usr/include/c++/7/bits/refwrap.h:356 #15 0x00007fee76f15aac in std::_Function_handler<void (), std::reference_wrapper<mir::compositor::CompositingFunctor> >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/include/c++/7/bits/std_function.h:316 #16 0x00007fee76daedbc in std::function<void ()>::operator()() const (this=0x7fee68b10af0) at /usr/include/c++/7/bits/std_function.h:706 #17 0x00007fee77108ed3 in (anonymous namespace)::Task::execute() (this=0x7fee68b10af0) at /home/alan/display_server/mir/src/server/thread/basic_thread_pool.cpp:40 #18 0x00007fee7710922e in (anonymous namespace)::Worker::operator()() (this=0x55e9f172f5d0) at /home/alan/display_server/mir/src/server/thread/basic_thread_pool.cpp:91 #19 0x00007fee7710bc51 in std::__invoke_impl<void, (anonymous namespace)::Worker&>(std::__invoke_other, (anonymous namespace)::Worker&) (__f=...) at /usr/include/c++/7/bits/invoke.h:60 #20 0x00007fee7710b6e2 in std::__invoke<(anonymous namespace)::Worker&>((anonymous namespace)::Worker&) (__fn=...) at /usr/include/c++/7/bits/invoke.h:95 #21 0x00007fee7710ae78 in std::reference_wrapper<(anonymous namespace)::Worker>::operator()<>(void) const (this=0x55e9f1b6a4f8) at /usr/include/c++/7/bits/refwrap.h:356 #22 0x00007fee7710a4c7 in std::__invoke_impl<void, std::reference_wrapper<(anonymous namespace)::Worker> >(std::__invoke_other, std::reference_wrapper<(anonymous namespace)::Worker>&&) (__f=...) at /usr/include/c++/7/bits/invoke.h:60 #23 0x00007fee77109e8a in std::__invoke<std::reference_wrapper<(anonymous namespace)::Worker> >(std::reference_wrapper<(anonymous namespace)::Worker>&&) (__fn=...) at /usr/include/c++/7/bits/invoke.h:95 #24 0x00007fee7710c0f8 in std::thread::_Invoker<std::tuple<std::reference_wrapper<(anonymous namespace)::Worker> > >::_M_invoke<0>(std::_Index_tuple<0>) (this=0x55e9f1b6a4f8) at /usr/include/c++/7/thread:234 #25 0x00007fee7710c0b4 in std::thread::_Invoker<std::tuple<std::reference_wrapper<(anonymous namespace)::Worker> > >::operator()() (this=0x55e9f1b6a4f8) at /usr/include/c++/7/thread:243 #26 0x00007fee7710c084 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::reference_wrapper<(anonymous namespace)::Worker> > > >::_M_run() (this=0x55e9f1b6a4f0) at /usr/include/c++/7/thread:186 #27 0x00007fee77cd366f in () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6 #28 0x00007fee777e66db in start_thread (arg=0x7fee68b11700) at pthread_create.c:463 #29 0x00007fee7750f88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (gdb) info threads Id Target Id Frame * 1 Thread 0x7fee68b11700 (LWP 7872) 0x00007fee6bd1739a in intel_miptree_copy_teximage (brw=0x55e9f1a066a0, intelImage=0x7fee58075fc0, dst_mt=0x7fee5807b120) at ../src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1438 2 Thread 0x7fee69b13700 (LWP 7870) 0x00007fee777ec9f3 in futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55e9f19bb098) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 3 Thread 0x7fee793b2940 (LWP 7862) 0x00007fee77502bf9 in __GI___poll (fds=0x55e9f173bfc0, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 4 Thread 0x7fee70a00700 (LWP 7863) syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 5 Thread 0x7fee6a314700 (LWP 7869) 0x00007fee777ec9f3 in futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55e9f1a90ae4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 6 Thread 0x7fee6b457700 (LWP 7867) 0x00007fee777ec9f3 in futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55e9f1740c78) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 7 Thread 0x7fee701ff700 (LWP 7864) syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 8 Thread 0x7fee6ab15700 (LWP 7868) 0x00007fee777ec9f3 in futex_wait_cancelable (private=<optimised out>, expected=0, futex_word=0x55e9f1732d9c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 9 Thread 0x7fee537fe700 (LWP 7874) 0x00007fee7750fbb7 in epoll_wait (epfd=12, events=0x7fee537fd970, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30 10 Thread 0x7fee69312700 (LWP 7871) 0x00007fee6c4f8bf8 in linear_to_ytiled (x0=0, x1=0, x2=128, x3=128, y0=0, y3=32, dst=0x7fee3b48a000 "", src=0x7fee3bc3ba00 "", src_pitch=3232, swizzle_bit=0, mem_copy=0x7fee7757cad0 <__memmove_avx_unaligned_erms>, mem_copy_align16=0x7fee7757cad0 <__memmove_avx_unaligned_erms>) at ../src/intel/isl/isl_tiled_memcpy.c:370 11 Thread 0x7fee52ffd700 (LWP 7875) 0x00007fee77502bf9 in __GI___poll (fds=0x7fee52ffca90, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 12 Thread 0x7fee527fc700 (LWP 7876) 0x00007fee77502bf9 in __GI___poll (fds=0x7fee527fb970, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 13 Thread 0x7fee53fff700 (LWP 7873) 0x00007fee77502bf9 in __GI___poll (fds=0x7fee53ffea90, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 ... Thread 10... (gdb) t 10 [Switching to thread 10 (Thread 0x7fee69312700 (LWP 7871))] #0 0x00007fee6c4f8bf8 in linear_to_ytiled (x0=0, x1=0, x2=128, x3=128, y0=0, y3=32, dst=0x7fee3b48a000 "", src=0x7fee3bc3ba00 "", src_pitch=3232, swizzle_bit=0, mem_copy=0x7fee7757cad0 <__memmove_avx_unaligned_erms>, mem_copy_align16=0x7fee7757cad0 <__memmove_avx_unaligned_erms>) at ../src/intel/isl/isl_tiled_memcpy.c:370 370 mem_copy_align16(dst + ((xo + yo + 3 * column_width) ^ swizzle), src + x + 3 * src_pitch, ytile_span); (gdb) bt #0 0x00007fee6c4f8bf8 in linear_to_ytiled (x0=0, x1=0, x2=128, x3=128, y0=0, y3=32, dst=0x7fee3b48a000 "", src=0x7fee3bc3ba00 "", src_pitch=3232, swizzle_bit=0, mem_copy=0x7fee7757cad0 <__memmove_avx_unaligned_erms>, mem_copy_align16=0x7fee7757cad0 <__memmove_avx_unaligned_erms>) at ../src/intel/isl/isl_tiled_memcpy.c:370 #1 0x00007fee6c4f98ec in linear_to_ytiled_faster (x0=0, x1=0, x2=128, x3=128, y0=0, y1=32, dst=0x7fee3b48a000 "", src=0x7fee3bc3ba00 "", src_pitch=3232, swizzle_bit=0, copy_type=ISL_MEMCPY) at ../src/intel/isl/isl_tiled_memcpy.c:684 #2 0x00007fee6c4f9f3a in intel_linear_to_tiled (xt1=0, xt2=3232, yt1=0, yt2=574, dst=0x7fee3b476000 "", src=0x7fee3bc3b000 "", dst_pitch=3328, src_pitch=3232, has_swizzling=false, tiling=ISL_TILING_Y0, copy_type=ISL_MEMCPY) at ../src/intel/isl/isl_tiled_memcpy.c:899 #3 0x00007fee6c4fa1e9 in _isl_memcpy_linear_to_tiled (xt1=0, xt2=3232, yt1=0, yt2=574, dst=0x7fee3b476000 "", src=0x7fee3bc3b000 "", dst_pitch=3328, src_pitch=3232, has_swizzling=false, tiling=ISL_TILING_Y0, copy_type=ISL_MEMCPY) at ../src/intel/isl/isl_tiled_memcpy_normal.c:44 #4 0x00007fee6c4df286 in isl_memcpy_linear_to_tiled (xt1=0, xt2=3232, yt1=0, yt2=574, dst=0x7fee3b476000 "", src=0x7fee3bc3b000 "", dst_pitch=3328, src_pitch=3232, has_swizzling=false, tiling=ISL_TILING_Y0, copy_type=ISL_MEMCPY) at ../src/intel/isl/isl.c:56 #5 0x00007fee6bd26313 in intel_texsubimage_tiled_memcpy (ctx=0x55e9f19d3d30, dims=2, texImage=0x7fee58075fc0, xoffset=0, yoffset=0, zoffset=0, width=808, height=574, depth=1, format=32993, type=5121, pixels=0x7fee3bc3b000, packing=0x55e9f19dd770) at ../src/mesa/drivers/dri/i965/intel_tex_image.c:294 #6 0x00007fee6bd26494 in intel_upload_tex (ctx=0x55e9f19d3d30, dims=2, texImage=0x7fee58075fc0, xoffset=0, yoffset=0, zoffset=0, width=808, height=574, depth=1, format=32993, type=5121, pixels=0x7fee3bc3b000, packing=0x55e9f19dd770) at ../src/mesa/drivers/dri/i965/intel_tex_image.c:340 #7 0x00007fee6bd26677 in intelTexImage (ctx=0x55e9f19d3d30, dims=2, texImage=0x7fee58075fc0, format=32993, type=5121, pixels=0x7fee3bc3b000, unpack=0x55e9f19dd770) at ../src/mesa/drivers/dri/i965/intel_tex_image.c:375 #8 0x00007fee6beb67a2 in teximage (no_error=false, pixels=0x7fee3bc3b000, imageSize=0, type=5121, format=32993, border=0, depth=1, height=574, width=808, internalFormat=32993, level=0, target=3553, texObj=0x7fee58086910, dims=2, compressed=0 '\000', ctx=0x55e9f19d3d30) at ../src/mesa/main/teximage.c:3141 #9 0x00007fee6beb67a2 in teximage_err (ctx=0x55e9f19d3d30, compressed=0 '\000', dims=2, target=3553, level=0, internalFormat=32993, width=808, height=574, depth=1, border=0, format=32993, type=5121, imageSize=0, pixels=0x7fee3bc3b000) at ../src/mesa/main/teximage.c:3168 #10 0x00007fee6beb86b7 in _mesa_TexImage2D (target=3553, level=0, internalFormat=32993, width=808, height=574, border=0, format=32993, type=5121, pixels=0x7fee3bc3b000) at ../src/mesa/main/teximage.c:3239 #11 0x00007fee6f9b7a82 in mir::graphics::common::ShmBuffer::upload_to_texture(void const*, mir::geometry::detail::IntWrapper<mir::geometry::StrideTag> const&) (this=0x7fee480e0d70, pixels=0x7fee3bc3b000, stride=...) at /home/alan/display_server/mir/src/platforms/common/server/shm_buffer.cpp:164 ProblemType: Bug DistroRelease: Ubuntu 18.04 Package: libgl1-mesa-dri 19.2.8-0ubuntu0~18.04.3 [modified: usr/share/doc/libgl1-mesa-dri/changelog.Debian.gz] ProcVersionSignature: Ubuntu 4.15.0-76.86-generic 4.15.18 Uname: Linux 4.15.0-76-generic x86_64 NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair lkp_Ubuntu_4_15_0_76_86_generic_63 ApportVersion: 2.20.9-0ubuntu7.11 Architecture: amd64 BootLog: Error: [Errno 13] Permission denied: '/var/log/boot.log' CompositorRunning: None CurrentDesktop: ubuntu:GNOME Date: Wed Mar 4 13:54:36 2020 DistUpgraded: Fresh install DistroCodename: bionic DistroVariant: ubuntu ExtraDebuggingInterest: Yes GraphicsCard: Intel Corporation HD Graphics 5500 [8086:1616] (rev 09) (prog-if 00 [VGA controller]) Subsystem: Lenovo HD Graphics 5500 [17aa:2227] InstallationDate: Installed on 2019-02-13 (385 days ago) InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725) MachineType: LENOVO 20BS00A5UK ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-76-generic root=UUID=f7ab5845-1313-4924-ab6e-d42d2eb9f01e ro quiet splash SourcePackage: mesa UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 08/13/2015 dmi.bios.vendor: LENOVO dmi.bios.version: N14ET32W (1.10 ) dmi.board.asset.tag: Not Available dmi.board.name: 20BS00A5UK dmi.board.vendor: LENOVO dmi.board.version: SDK0J40697 WIN dmi.chassis.asset.tag: No Asset Information dmi.chassis.type: 10 dmi.chassis.vendor: LENOVO dmi.chassis.version: None dmi.modalias: dmi:bvnLENOVO:bvrN14ET32W(1.10):bd08/13/2015:svnLENOVO:pn20BS00A5UK:pvrThinkPadX1Carbon3rd:rvnLENOVO:rn20BS00A5UK:rvrSDK0J40697WIN:cvnLENOVO:ct10:cvrNone: dmi.product.family: ThinkPad X1 Carbon 3rd dmi.product.name: 20BS00A5UK dmi.product.version: ThinkPad X1 Carbon 3rd dmi.sys.vendor: LENOVO version.compiz: compiz N/A version.libdrm2: libdrm2 2.4.99-1ubuntu1~18.04.2 version.libgl1-mesa-dri: libgl1-mesa-dri 19.2.8-0ubuntu0~18.04.3 version.libgl1-mesa-glx: libgl1-mesa-glx 19.2.8-0ubuntu0~18.04.3 version.xserver-xorg-core: xserver-xorg-core 2:1.19.6-1ubuntu4.4 version.xserver-xorg-input-evdev: xserver-xorg-input-evdev N/A version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:18.0.1-1 version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.917+git20171229-1 version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.15-2 ** Affects: mesa (Ubuntu) Importance: Undecided Status: New ** Tags: amd64 apport-bug bionic ubuntu -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1866069 Title: Investigate segfault on Mir To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/1866069/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs