Ok, that stack trace doesn't tell me much as the interesting parameters are optimized out :/
If this was a general bug, I suspect the issue would be present in a lot of places though, so my immediate reaction is to point towards the emulator :) You can compare the buffer size used in uploadBatches() to the offsets and sizes used in the renderMergedBatch() function, but from what I can see, they are all correct. There is no way to disable optimizations or use the old renderer. The new logic is here to stay. cheers, Gunnar ________________________________ Fra: Tomasz Olszak [[email protected]] Sendt: 12. september 2013 18:53 To: Sletta Gunnar Cc: [email protected] Emne: Re: [Development] New SceneGraph related issue I got stracktrace. It is as you predicted glDrwaElements. Is there any possibility to make some kind of workaround patch to make it work on emulator (I suppose it is emulator GL issue), perhabs by turning off some optimizations and so on? I would like to add such patch to rpm emulator package until problem will be fixed. #0 0xb7fe1424 in __kernel_vsyscall () No symbol table info available. #1 0xb69a0cc1 in raise () from /lib/libc.so.6 No symbol table info available. #2 0xb69a40ee in abort () from /lib/libc.so.6 No symbol table info available. #3 0xb6999888 in __assert_fail () from /lib/libc.so.6 No symbol table info available. #4 0xb4866d2c in glGetBufferSubDataARB () from /usr/lib/host-gl/libGL.so.1.2 No symbol table info available. #5 0xb4866d62 in glGetBufferSubData () from /usr/lib/host-gl/libGL.so.1.2 No symbol table info available. #6 0xb6c20dec in glDrawElements () from /usr/lib/libGLESv2.so.1 No symbol table info available. #7 0xb7cc3096 in QSGBatchRenderer::Renderer::renderMergedBatch ( this=0x84e6800, batch=0x84e8100) at scenegraph/coreapi/qsgbatchrenderer.cpp:1863 draw = <value optimized out> offset = <value optimized out> i = <value optimized out> e = <value optimized out> __PRETTY_FUNCTION__ = "void QSGBatchRenderer::Renderer::renderMergedBatch(const QSGBatchRenderer::Batch*)" ---Type <return> to continue, or q <return> to quit--- sms = 0x84e5420 g = 0x84e7bbc attrNames = <value optimized out> gn = 0xb7fc2e5c material = <value optimized out> program = <value optimized out> #8 0xb7cc4e3f in QSGBatchRenderer::Renderer::renderBatches (this=0x84e6800) at scenegraph/coreapi/qsgbatchrenderer.cpp:2008 b = <value optimized out> i = <value optimized out> __PRETTY_FUNCTION__ = "void QSGBatchRenderer::Renderer::renderBatches()" renderOpaque = <value optimized out> renderAlpha = true #9 0xb7cc6718 in QSGBatchRenderer::Renderer::render (this=0x84e6800) at scenegraph/coreapi/qsgbatchrenderer.cpp:2168 __PRETTY_FUNCTION__ = "virtual void QSGBatchRenderer::Renderer::render()" #10 0xb7cd5e10 in QSGRenderer::renderScene (this=0x84e6800, bindable=...) at scenegraph/coreapi/qsgrenderer.cpp:274 profileFrames = <value optimized out> bindTime = 0 renderTime = 0 ---Type <return> to continue, or q <return> to quit--- __PRETTY_FUNCTION__ = "void QSGRenderer::renderScene(const QSGBindable&)" #11 0xb7cd60dd in QSGRenderer::renderScene (this=0x84e6800) at scenegraph/coreapi/qsgrenderer.cpp:231 b = warning: RTTI symbol not found for class 'QSGRenderer::renderScene()::B' {<QSGBindable> = { _vptr.QSGBindable = 0xb7fb4240}, <No data fields>} #12 0xb7ce7e4c in QSGContext::renderNextFrame (this=0x845d620, renderer=0x84e6800, fboId=0) at scenegraph/qsgcontext.cpp:367 No locals. #13 0xb7d3273e in QQuickWindowPrivate::renderSceneGraph (this=0x848c870, size=...) at items/qquickwindow.cpp:358 _qml_memory_scope = {pushed = false} q = 0x845dc30 fboId = 0 devicePixelRatio = <value optimized out> #14 0xb7d0bb04 in QSGGuiThreadRenderLoop::renderWindow (this=0x8498128, window=0x845dc30) at scenegraph/qsgrenderloop.cpp:288 data = @0x8489ba4 current = <value optimized out> alsoSwap = true cd = 0x848c870 renderTime = 0 swapTime = <value optimized out> ---Type <return> to continue, or q <return> to quit--- __PRETTY_FUNCTION__ = "void QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*)" syncTime = 0 renderTimer = {t1 = -4611697219702095867, t2 = 55969188728} profileFrames = false #15 0xb7d0c4ee in QSGGuiThreadRenderLoop::exposureChanged (this=0x8498128, window=0x845dc30) at scenegraph/qsgrenderloop.cpp:335 No locals. #16 0xb7d319be in QQuickWindow::exposeEvent (this=0x845dc30) at items/qquickwindow.cpp:214 d = <value optimized out> #17 0xb71f6b94 in QWindow::event(QEvent*) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #18 0xb7d3dcb4 in QQuickWindow::event (this=0x845dc30, e=0xbffff880) at items/qquickwindow.cpp:1241 d = <value optimized out> #19 0xb6ec782a in QCoreApplicationPrivate::notify_helper (this=0x8055458, receiver=0x845dc30, event=0xbffff880) at kernel/qcoreapplication.cpp:986 No locals. #20 0xb6ec78cb in QCoreApplication::notify (this=0xbffffc80, receiver=0x845dc30, event=0xbffff880) at kernel/qcoreapplication.cpp:931 d = 0x8055458 __PRETTY_FUNCTION__ = "virtual bool QCoreApplication::notify(QObject*, Q---Type <return> to continue, or q <return> to quit--- Event*)" #21 0xb71e643b in QGuiApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #22 0xb6ec752b in QCoreApplication::notifyInternal (this=0xbffffc80, receiver=0x845dc30, event=0xbffff880) at kernel/qcoreapplication.cpp:869 threadData = 0x80545b0 result = false cbdata = {0x845dc30, 0xbffff880, 0xbffff81f} d = <value optimized out> #23 0xb71e747a in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #24 0xb71ee7b0 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #25 0xb71d6497 in QWindowSystemInterface::sendWindowSystemEventsImplementation(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #26 0xb71d6501 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #27 0xb4e616f3 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () ---Type <return> to continue, or q <return> to quit--- from /usr/lib/qt5/plugins/platforms/libqxcb.so No symbol table info available. #28 0xb64c2a13 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #29 0xb64c2da8 in g_main_context_iterate.clone.5 () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #30 0xb64c2e8f in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #31 0xb6f2839d in QEventDispatcherGlib::processEvents (this=0x80572a0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:426 d = 0x80562b0 canWait = true result = <value optimized out> #32 0xb4e61937 in QPAEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/qt5/plugins/platforms/libqxcb.so No symbol table info available. #33 0xb6ec5637 in QEventLoop::processEvents (this=0xbffffc18, flags=...) at kernel/qeventloop.cpp:136 d = <value optimized out> #34 0xb6ec5b67 in QEventLoop::exec (this=0xbffffc18, flags=<value optimized out>) at kernel/qeventloop.cpp:212 locker = {val = 134563376} ---Type <return> to continue, or q <return> to quit--- __PRETTY_FUNCTION__ = "int QEventLoop::exec(QEventLoop::ProcessEventsFlags)" app = 0x24 d = 0x8482d20 #35 0xb6ecd629 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1122 threadData = 0x80545b0 __PRETTY_FUNCTION__ = "static int QCoreApplication::exec()" eventLoop = {<QObject> = {_vptr.QObject = 0xb712af08, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0xb7039860, data = 0xb703a360, static_metacall = 0xb6f05bb0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x8482d20}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0xb7083340, data = 0xb708aee0, static_metacall = 0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = { superdata = 0xb7129394, stringdata = 0xb7095480, data = 0xb70954e0, static_metacall = 0xb6f7e9d0 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} returnCode = <value optimized out> ---Type <return> to continue, or q <return> to quit--- #36 0xb71e6387 in QGuiApplication::exec() () from /usr/lib/libQt5Gui.so.5 No symbol table info available. #37 0x08049216 in OspMain (argc=1, argv=0xbffffd94) at main.cpp:48 app = <incomplete type> engine = {<QQmlEngine> = {<QJSEngine> = {<QObject> = { _vptr.QObject = 0xb7ba7868, static staticMetaObject = {d = { superdata = 0x0, stringdata = 0xb7039860, data = 0xb703a360, static_metacall = 0xb6f05bb0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x8092420}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0xb7083340, data = 0xb708aee0, static_metacall = 0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = { superdata = 0xb7129394, stringdata = 0xb7adb39c, data = 0xb7adb3c0, static_metacall = 0xb7883f30 <QJSEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0} }, d = 0x8094120}, static staticMetaObject = {d = {superdata = 0xb7ba463c, stringdata = 0xb7af9e20, data = 0xb7af9ec0, static_metacall = 0xb7a98aa0 <QQmlEngine::qt_static_metacall(QOb---Type <return> to continue, or q <return> to quit--- ject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = { superdata = 0xb7ba8990, stringdata = 0xb7af2ec0, data = 0xb7af3000, static_metacall = 0xb7a25fd0 <QQmlApplicationEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} window = 0x845dc30 __PRETTY_FUNCTION__ = "int OspMain(int, char**)" #38 0x08049375 in main (argc=1, argv=0xbffffd94) at main.cpp:56 No locals. -- regards / pozdrawiam, Tomasz Olszak Qt for Tizen | http://qt-project.org/wiki/Tizen Qt Certified Developer | http://qt-project.org<http://qt-project.org/> http://linkedin.com/in/tolszak
_______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
