Date: Thu, 15 Sep 2022 10:13:36 +0000 From: bugzilla-noreply@freebsd.org To: ports-bugs@FreeBSD.org Subject: [Bug 266423] x11/openrgb SIGILL Message-ID: <bug-266423-7788@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D266423 Bug ID: 266423 Summary: x11/openrgb SIGILL Product: Ports & Packages Version: Latest Hardware: amd64 OS: Any Status: New Severity: Affects Only Me Priority: --- Component: Individual Port(s) Assignee: ports-bugs@FreeBSD.org Reporter: interloper255@gmail.com CC: vidar@karlsen.tech CC: vidar@karlsen.tech Flags: maintainer-feedback?(vidar@karlsen.tech) x11/openrgb from packages and ports crashes with SIGILL when executed. From= my preliminary (albeit brief) debugging, it seems similar to issues I've had w= ith other Qt ports (using qmake or cmake); they seemed to detect the wrong type= of CPU, resulting in incorrect assembly generation; it's not clear to me if th= is is the problem here. System information: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D $ uname -a=20 FreeBSD monolith 13.1-RELEASE-p2 FreeBSD 13.1-RELEASE-p2 GENERIC amd64 Terminal output: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D $ openrgb Attempting to connect to local OpenRGB server. Connection attempt failed Local OpenRGB server unavailable. Running standalone. Illegal instruction (core dumped)=20 CPU information: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D FreeBSD 13.1-RELEASE-p2 GENERIC amd64 FreeBSD clang version 13.0.0 (git@github.com:llvm/llvm-project.git llvmorg-13.0.0-0-gd7b669b3a303) VT(efifb): resolution 1024x768 CPU: AMD Ryzen 9 5950X 16-Core Processor (3400.10-MHz K8-class = CPU) Origin=3D"AuthenticAMD" Id=3D0xa20f10 Family=3D0x19 Model=3D0x21 Step= ping=3D0 =20 Features=3D0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,= MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> =20 Features2=3D0x7ef8320b<SSE3,PCLMULQDQ,MON,SSSE3,FMA,CX16,SSE4.1,SSE4.2,x2AP= IC,MOVBE,POPCNT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND> AMD Features=3D0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM> AMD Features2=3D0x75c237ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW= ,IBS,SKINIT,WDT,TCE,Topology,PCXC,PNXC,DBE,PL2I,MWAITX,ADMSKX> Structured Extended Features=3D0x219c97a9<FSGSBASE,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,PQM,PQE,RDS= EED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA> Structured Extended Features2=3D0x40068c<UMIP,PKU,VAES,VPCLMULQDQ,RDPID> Structured Extended Features3=3D0x10<FSRM> XSAVE Features=3D0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES> AMD Extended Feature Extensions ID EBX=3D0x111ef657<CLZERO,IRPerf,XSaveErPtr,RDPRU,WBNOINVD,IBPB,IBRS,STIBP,ST= IBP_ALWAYSON,PREFER_IBRS,SSBD> SVM: (disabled in BIOS) NP,NRIP,VClean,AFlush,DAssist,NAsids=3D32768 TSC: P-state invariant, performance statistics GDB: =3D=3D=3D=3D I rebuilt the port with debug symbols for a the backtrace: Thread 3 received signal SIGILL, Illegal instruction. Privileged opcode. [Switching to LWP 106164 of process 78996] 0x000000000057f028 in AuraUSBController::~AuraUSBController() () (gdb) bt #0 0x000000000057f028 in AuraUSBController::~AuraUSBController() () #1 0x000000000057ef68 in AuraUSBController::GetConfigTable() () #2 0x000000000057ec8d in AuraUSBController::AuraUSBController(hid_device_*, char const*) () #3 0x00000000005816d7 in AuraMainboardController::AuraMainboardController(hid_device_*, char const*)= () #4 0x00000000005937f1 in DetectAsusAuraUSBMotherboards(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) () #5 0x00000000005619d8 in decltype ((static_cast<void (*&std::__1::__invoke<void (*&)(hid_device_info*, std::__1::basic_string<ch= ar, std::__1::char_traits<char>, std::__1::allocator<char> > const&), hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&>(void (*&)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&), hid_device_info*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&))(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>({parm#1}))(static_cast<hid_device_info*>({parm#2}), static_cast<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&>({parm#2}))) () #6 0x0000000000561987 in void std::__1::__invoke_void_return_wrapper<void, true>::__call<void (*&)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&), hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&>(void (*&)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&), hid_device_info*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) () #7 0x0000000000561937 in std::__1::__function::__alloc_func<void (*)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<ch= ar>, std::__1::allocator<char> > const&), std::__1::allocator<void (*)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<ch= ar>, std::__1::allocator<char> > const&)>, void (hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>::operator()(hid_device_info*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) () #8 0x00000000005607f6 in std::__1::__function::__func<void (*)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<ch= ar>, std::__1::allocator<char> > const&), std::__1::allocator<void (*)(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<ch= ar>, std::__1::allocator<char> > const&)>, void (hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>::operator()(hid_device_info*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) () #9 0x00000000004b291f in std::__1::__function::__value_func<void (hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>::operator()(hid_device_info*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const () #10 0x00000000004a8120 in std::__1::function<void (hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)>::operator()(hid_device_info*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const () #11 0x00000000004a5edf in ResourceManager::DetectDevicesThreadFunction() () #12 0x00000000004b23a9 in decltype (((*(static_cast<ResourceManager*>({parm#2}))).*{parm#1})()) std::__1::__invoke<void (ResourceManager::*)(), ResourceManager*, , void>(v= oid (ResourceManager::*&&)(), ResourceManager*&&) () #13 0x00000000004b232e in void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (ResourceManager::*)(), ResourceManager*, 2ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (ResourceManager::*)(), ResourceManager*>&, std::__1::__tuple_indices<2ul>)= () #14 0x00000000004b2030 in void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__t= hread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (ResourceManager::*)(), ResourceManager*> >(void*) () #15 0x000000080193583a in ?? () from /lib/libthr.so.3 #16 0x0000000000000000 in ?? () Backtrace stopped: Cannot access memory at address 0x7fffdfdfd000 Disassembly shows a `ud2` instruction, so I guess the SIGILL is intentional: <snip> 0x57efc6 <_ZN17AuraUSBControllerD2Ev+38> call 0x8dcd30 <hid_close@plt> 0x57efcb <_ZN17AuraUSBControllerD2Ev+43> jmp 0x57efd0 <_ZN17AuraUSBControllerD2Ev+48> 0x57efd0 <_ZN17AuraUSBControllerD2Ev+48> mov -0x20(%rbp),= %rdi 0x57efd4 <_ZN17AuraUSBControllerD2Ev+52> add $0x68,%rdi 0x57efd8 <_ZN17AuraUSBControllerD2Ev+56> call 0x8dc0a0 <_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9all| 0x57efdd <_ZN17AuraUSBControllerD2Ev+61> mov -0x20(%rbp),= %rdi 0x57efe1 <_ZN17AuraUSBControllerD2Ev+65> add $0x50,%rdi 0x57efe5 <_ZN17AuraUSBControllerD2Ev+69> call 0x57f360 <_ZNSt3__16vectorI14AuraDeviceInfoNS_9allocatorIS1_EE| 0x57efea <_ZN17AuraUSBControllerD2Ev+74> add $0x20,%rsp 0x57efee <_ZN17AuraUSBControllerD2Ev+78> pop %rbp 0x57efef <_ZN17AuraUSBControllerD2Ev+79> ret 0x57eff0 <_ZN17AuraUSBControllerD2Ev+80> mov -0x20(%rbp),= %rdi 0x57eff4 <_ZN17AuraUSBControllerD2Ev+84> mov %rax,%rcx 0x57eff7 <_ZN17AuraUSBControllerD2Ev+87> mov %edx,%eax 0x57eff9 <_ZN17AuraUSBControllerD2Ev+89> mov %rcx,-0x10(%= rbp) 0x57effd <_ZN17AuraUSBControllerD2Ev+93> mov %eax,-0x14(%= rbp) 0x57f000 <_ZN17AuraUSBControllerD2Ev+96> add $0x68,%rdi 0x57f004 <_ZN17AuraUSBControllerD2Ev+100> call 0x8dc0a0 <_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9all| 0x57f009 <_ZN17AuraUSBControllerD2Ev+105> mov -0x20(%rbp),= %rdi 0x57f00d <_ZN17AuraUSBControllerD2Ev+109> add $0x50,%rdi 0x57f011 <_ZN17AuraUSBControllerD2Ev+113> call 0x57f360 <_ZNSt3__16vectorI14AuraDeviceInfoNS_9allocatorIS1_EE| 0x57f016 <_ZN17AuraUSBControllerD2Ev+118> mov -0x10(%rbp),= %rdi 0x57f01a <_ZN17AuraUSBControllerD2Ev+122> call 0x3d0510 <__clang_call_terminate> 0x57f01f nop 0x57f020 <_ZN17AuraUSBControllerD0Ev> push %rbp 0x57f021 <_ZN17AuraUSBControllerD0Ev+1> mov %rsp,%rbp 0x57f024 <_ZN17AuraUSBControllerD0Ev+4> mov %rdi,-0x8(%r= bp) > 0x57f028 <_ZN17AuraUSBControllerD0Ev+8> ud2 If I can provide any further information, please let me know. C. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-266423-7788>