On Sat, 28 Jun 2025 00:11:22 +0200 =?utf-8?Q?=C3=89tienne?= Mollier
<[email protected]> wrote:
Control: forwarded -1 Flavien Bridault <[email protected]>
Hi Jens,
Thank you for having taken the time to wrap up that report.
I attempted to have a look at this, and results seem rather
variable depending on the context of the rendering. I have
managed to run sight_viewer alright in virtual machine context
on Xorg, but on the same virtual machine, using a sway desktop
resulted in a crash at an earlier point than yours.
I then tried to recheck on real hardware, and this time I
reproduced the error and informational messages you report.
I'm not entirely convinced by my Xorg vs Wayland hypothesis,
because the problem reproduces whether I attempt to spawn
sight_viewer in my Wayland based Sway environment or in Xvfb
context. In case that matters, I use an amdgpu, while I have
not injected dedicated gpu support within the virtual machine.
I may have a fresher look at this at a more reasonable hour of
the day.
I have added Flavien Bridault in carbon copy, in case he has
some ideas on the topic. Flavien, have you run into Debian bug
#1108183 per chance, or need help to reproduce problems?
Have a nice day, :)
--
.''`. Étienne Mollier <[email protected]>
: :' : pgp: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
`. `' sent from /dev/pts/4, please excuse my verbosity
`- on air: Jörg Hering, Harry van der Kamp, Wiener Säng…
Hello,
I tried if I can reproduce the crash.
And I get one with a VM, with acceleration enabled [1],
running a current minimal Debian Trixie.
The SIGSEGV manifests when clicking in the upper right corner
at the "Close parameters" arrow.
The segfault happens because in [2] the variable mSceneManager
contains a NULL, but gets dereferenced unconditionally.
Unfortunately this RQListener object looks like getting re-created
a few times, therefore getting the mSceneManager initilized to NULL.
At startup the mSceneManager gets initialized in a backtrace like in [3],
but for some unknown reason this does not happen right
before the crash (without knowing how it fits all together).
I hope this could be of some help.
Kind regards,
Bernhard
[1] -device virtio-vga-gl -display gtk,gl=on
[2] Where the actual crash happens because mSceneManager is NULL:
Thread 1 "sightrun" received signal SIGSEGV, Segmentation fault.
0x00007fffd656aa28 in Ogre::CompositorChain::RQListener::renderQueueStarted
(this=0x555558c81190, id=0 '\000', invocation="",
skipThisQueue=@0x7fffffff7a57: false) at ./OgreMain/src/OgreCompositorChain.cpp:569
569 if (mSceneManager->getCurrentViewport() != mViewport)
(gdb) bt
#0 0x00007fffd656aa28 in Ogre::CompositorChain::RQListener::renderQueueStarted
(this=0x555558c81190, id=0 '\000', invocation="",
skipThisQueue=@0x7fffffff7a57: false) at ./OgreMain/src/OgreCompositorChain.cpp:569
#1 0x00007fffd66e3526 in Ogre::SceneManager::fireRenderQueueStarted (this=<optimized
out>, id=0 '\000', invocation="") at ./OgreMain/src/OgreSceneManager.cpp:2634
#2 0x00007fffd66e8fca in
Ogre::SceneManager::renderVisibleObjectsDefaultSequence
(this=this@entry=0x555558ce5770) at ./OgreMain/src/OgreSceneManager.cpp:1693
#3 0x00007fffd66e900b in Ogre::SceneManager::_renderVisibleObjects
(this=this@entry=0x555558ce5770) at ./OgreMain/src/OgreSceneManager.cpp:1619
#4 0x00007fffd66ef52a in Ogre::SceneManager::_renderScene (this=0x555558ce5770,
camera=0x555558ceb6f0, vp=<optimized out>, includeOverlays=<optimized out>) at
./OgreMain/src/OgreSceneManager.cpp:1383
#5 0x00007fffd655ada9 in Ogre::Camera::_renderScene (this=0x555558ceb6f0,
vp=0x555559ea6a20, includeOverlays=true) at ./OgreMain/src/OgreCamera.cpp:495
#6 0x00007fffd67a4fa9 in Ogre::Viewport::update (this=<optimized out>) at
./OgreMain/src/OgreViewport.cpp:218
#7 0x00007fffd66b37f8 in Ogre::RenderTarget::_updateViewport
(this=0x555559e75ff0, viewport=0x555559ea6a20, updateStatistics=true) at
./OgreMain/src/OgreRenderTarget.cpp:203
#8 0x00007fffd66b2bf3 in Ogre::RenderTarget::_updateAutoUpdatedViewports
(this=0x555559e75ff0, updateStatistics=true) at
./OgreMain/src/OgreRenderTarget.cpp:181
#9 0x00007fffd66b3a00 in Ogre::RenderTarget::updateImpl (this=0x555559e75ff0)
at ./OgreMain/src/OgreRenderTarget.cpp:158
#10 0x00007fffd66b33e8 in Ogre::RenderTarget::update (this=0x555559e75ff0,
swap=false) at ./OgreMain/src/OgreRenderTarget.cpp:565
#11 0x00007fffe3fb3ec3 in sight::module::viz::scene3d_qt::window::paintGL
(this=0x55555825c440) at ./modules/viz/scene3d_qt/window.cpp:774
#12 0x00007fffeddc62d5 in ?? () from
/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
...
(gdb) print mSceneManager
$2 = (Ogre::SceneManager *) 0x0
[3] Where mSceneManager gets set when no crash follows:
Thread 1 "sightrun" hit Hardware watchpoint 2: *0x555558c811a0
Old value = 0
New value = 1489917808
Ogre::CompositorChain::RQListener::setOperation
(this=this@entry=0x555558c81190, op=op@entry=0x555558d066d0,
sm=sm@entry=0x555558ce5770, rs=0x5555580d7ed0) at
./OgreMain/src/OgreCompositorChain.cpp:590
590 mRenderSystem = rs;
(gdb) bt 20
#0 Ogre::CompositorChain::RQListener::setOperation
(this=this@entry=0x555558c81190, op=op@entry=0x555558d066d0,
sm=sm@entry=0x555558ce5770, rs=0x5555580d7ed0) at
./OgreMain/src/OgreCompositorChain.cpp:590
#1 0x00007fffd656a912 in Ogre::CompositorChain::preTargetOperation
(this=this@entry=0x555558c81090, op=..., vp=0x555559eae3e0,
cam=cam@entry=0x555558ceb6f0) at ./OgreMain/src/OgreCompositorChain.cpp:368
#2 0x00007fffd656b75c in Ogre::CompositorChain::preRenderTargetUpdate
(evt=..., this=0x555558c81090) at ./OgreMain/src/OgreCompositorChain.cpp:313
#3 Ogre::CompositorChain::preRenderTargetUpdate (this=0x555558c81090, evt=...)
at ./OgreMain/src/OgreCompositorChain.cpp:280
#4 0x00007fffd66b39e1 in Ogre::RenderTarget::firePreUpdate
(this=0x555558cc4790) at ./OgreMain/src/OgreRenderTarget.cpp:370
#5 Ogre::RenderTarget::_beginUpdate (this=0x555558cc4790) at
./OgreMain/src/OgreRenderTarget.cpp:165
#6 Ogre::RenderTarget::updateImpl (this=0x555558cc4790) at
./OgreMain/src/OgreRenderTarget.cpp:157
#7 0x00007fffd66b33e8 in Ogre::RenderTarget::update (this=0x555558cc4790,
swap=false) at ./OgreMain/src/OgreRenderTarget.cpp:565
#8 0x00007fffe3fb3ec3 in sight::module::viz::scene3d_qt::window::paintGL
(this=0x55555825c440) at ./modules/viz/scene3d_qt/window.cpp:774
#9 0x00007fffeddc62d5 in ?? () from
/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
...