Summary: | crashes on the 1st frame render. | ||
---|---|---|---|
Product: | [Applications] kamoso | Reporter: | Maxim Egorushkin <maxim.yegorushkin> |
Component: | general | Assignee: | Aleix Pol <aleixpol> |
Status: | RESOLVED DOWNSTREAM | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 3.2 | ||
Target Milestone: | --- | ||
Platform: | Kubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Maxim Egorushkin
2020-05-22 13:58:46 UTC
Crash is in the NVIDIA binary OpenGL drivers. If this is reproducible, please report this issue directly to NVIDIA developers via https://forums.developer.nvidia.com/t/if-you-have-a-problem-please-read-this-first/27131 (In reply to Christoph Feck from comment #1) > Crash is in the NVIDIA binary OpenGL drivers. If this is reproducible, > please report this issue directly to NVIDIA developers via > https://forums.developer.nvidia.com/t/if-you-have-a-problem-please-read-this- > first/27131 No other video application crashes in NVidia drivers, apart from kamoso. Given that, it is much more likely the bug is in kamoso, not NVidia drivers. But I know some developers refuse to investigate and fix their bugs when they see nvidia binary driver in the stack trace. If we had the sources of the driver we could investigate. The backtrace doesn't even have symbol information for the driver to check which function was being called. (In reply to Christoph Feck from comment #3) > If we had the sources of the driver we could investigate. The backtrace > doesn't even have symbol information for the driver to check which function > was being called. Some more info: VideoMaterial::bindTexture calls glTexImage2D and this call crashes: #12 0x00007fffc1e5c4ac in VideoMaterial::bindTexture(int, unsigned char const*) () from /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqt5videosink.so (gdb) disassemble Dump of assembler code for function _ZN13VideoMaterial11bindTextureEiPKh: 0x00007fffc1e5c460 <+0>: movsxd rsi,esi 0x00007fffc1e5c463 <+3>: push r12 0x00007fffc1e5c465 <+5>: push rbp 0x00007fffc1e5c466 <+6>: push rbx 0x00007fffc1e5c467 <+7>: lea rbx,[rdi+rsi*4] 0x00007fffc1e5c46b <+11>: mov rbp,rdi 0x00007fffc1e5c46e <+14>: mov edi,0xde1 0x00007fffc1e5c473 <+19>: mov r12,rdx 0x00007fffc1e5c476 <+22>: mov esi,DWORD PTR [rbx+0x2c] 0x00007fffc1e5c479 <+25>: call 0x7fffc1e56b40 <glBindTexture@plt> 0x00007fffc1e5c47e <+30>: movsxd rax,DWORD PTR [rbx+0x50] 0x00007fffc1e5c482 <+34>: sub rsp,0x8 0x00007fffc1e5c486 <+38>: mov ecx,DWORD PTR [rbx+0x38] 0x00007fffc1e5c489 <+41>: mov edx,DWORD PTR [rbp+0x6c] 0x00007fffc1e5c48c <+44>: xor r9d,r9d 0x00007fffc1e5c48f <+47>: xor esi,esi 0x00007fffc1e5c491 <+49>: mov edi,0xde1 0x00007fffc1e5c496 <+54>: add r12,rax 0x00007fffc1e5c499 <+57>: push r12 0x00007fffc1e5c49b <+59>: mov eax,DWORD PTR [rbp+0x70] 0x00007fffc1e5c49e <+62>: push rax 0x00007fffc1e5c49f <+63>: mov eax,DWORD PTR [rbp+0x68] 0x00007fffc1e5c4a2 <+66>: push rax 0x00007fffc1e5c4a3 <+67>: mov r8d,DWORD PTR [rbx+0x44] 0x00007fffc1e5c4a7 <+71>: call 0x7fffc1e56ad0 <glTexImage2D@plt> => 0x00007fffc1e5c4ac <+76>: add rsp,0x20 0x00007fffc1e5c4b0 <+80>: mov edx,0x2601 0x00007fffc1e5c4b5 <+85>: mov esi,0x2800 0x00007fffc1e5c4ba <+90>: mov edi,0xde1 0x00007fffc1e5c4bf <+95>: call 0x7fffc1e56340 <glTexParameteri@plt> 0x00007fffc1e5c4c4 <+100>: mov edx,0x2601 0x00007fffc1e5c4c9 <+105>: mov esi,0x2801 0x00007fffc1e5c4ce <+110>: mov edi,0xde1 0x00007fffc1e5c4d3 <+115>: call 0x7fffc1e56340 <glTexParameteri@plt> 0x00007fffc1e5c4d8 <+120>: mov edx,0x812f 0x00007fffc1e5c4dd <+125>: mov esi,0x2802 0x00007fffc1e5c4e2 <+130>: mov edi,0xde1 0x00007fffc1e5c4e7 <+135>: call 0x7fffc1e56340 <glTexParameteri@plt> 0x00007fffc1e5c4ec <+140>: pop rbx 0x00007fffc1e5c4ed <+141>: pop rbp 0x00007fffc1e5c4ee <+142>: pop r12 0x00007fffc1e5c4f0 <+144>: mov edx,0x812f 0x00007fffc1e5c4f5 <+149>: mov esi,0x2803 0x00007fffc1e5c4fa <+154>: mov edi,0xde1 0x00007fffc1e5c4ff <+159>: jmp 0x7fffc1e56340 <glTexParameteri@plt> Registers in glTexImage2D just before the crash: Thread 15 "QSGRenderThread" hit Breakpoint 1, 0x00007ffff0866700 in glTexImage2D () from /usr/lib/x86_64-linux-gnu/libGL.so.1 (gdb) info registers rax 0x1907 6407 rbx 0x7fff881b5da4 140735476882852 rcx 0x7f 127 rdx 0x8051 32849 rsi 0x0 0 rdi 0xde1 3553 rbp 0x7fff881b5da0 0x7fff881b5da0 rsp 0x7fff9f7fd678 0x7fff9f7fd678 r8 0x7f 127 r9 0x0 0 r10 0x1 1 r11 0x3f800000 1065353216 r12 0x7fff98e56593 140735758558611 r13 0x7fff940266b0 140735676573360 r14 0x7fff9f7fd760 140735869343584 r15 0x7fff8816a140 140735476572480 rip 0x7ffff0866700 0x7ffff0866700 <glTexImage2D> eflags 0x206 [ PF IF ] cs 0x33 51 ss 0x2b 43 ds 0x0 0 es 0x0 0 fs 0x0 0 gs 0x0 0 (gdb) x/4xa $rsp 0x7fff9f7fd678: 0x7fffc1e5c4ac <_ZN13VideoMaterial11bindTextureEiPKh+76> 0x1907 0x7fff9f7fd688: 0x1401 0x7fff98e56593 The first 6 args of glTexImage2D are in registers above, the other 3 args are in the stack. |