SIGV на ClgetPlatformidsC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 SIGV на ClgetPlatformids

Сообщение Anonymous »

Существует Sigv Wile Clgetplatformids, который иногда является фатальным sigsegv. < /p>
Минимальный экземпляр, который я обнаружил, создавая его: < /p>
#include
#include
#include "CL/cl.h"

int main()
{
printf("Programme successfully opened!\n");
cl_uint num;
int ret = clGetPlatformIDs(0, nullptr, &num);
printf("Num platforms: %d \n", num);

return 0;
}
< /code>
Адрес дезинфицирующее средство плюет следующее: < /p>
AddressSanitizer:DEADLYSIGNAL
=================================================================
==22053==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000008 (pc 0x7a971350aa7f bp 0x7ffc620f91d0 sp 0x7ffc620f7160 T0)
==22053==The signal is caused by a READ memory access.
==22053==Hint: address points to the zero page.
#0 0x7a971350aa7f in Intel::OpenCL::Framework::PlatformModule::GetPlatformInfo(_cl_platform_id*, unsigned int, unsigned long, void*, unsigned long*) /netbatch/donb41412_00/runDir/93/20180921_000000/llvm/projects/opencl/utils/cl_sys_utils/export/cl_shared_ptr.h:361
#1 0x7a971346239d in clGetPlatformInfo /netbatch/donb41412_00/runDir/93/20180921_000000/llvm/projects/opencl/framework/cl_framework.cpp:330
#2 0x7e971755acda (/usr/lib/libOpenCL.so.1+0xbcda) (BuildId: 8236fcb4223c046c8dd27fd62d9398c0a5b5beb4)
#3 0x7e971755c27c (/usr/lib/libOpenCL.so.1+0xd27c) (BuildId: 8236fcb4223c046c8dd27fd62d9398c0a5b5beb4)
#4 0x7e971755e354 in clGetPlatformIDs (/usr/lib/libOpenCL.so.1+0xf354) (BuildId: 8236fcb4223c046c8dd27fd62d9398c0a5b5beb4)
#5 0x5ecfb63e331a in main /home/Kosmas/Documents/OpenCL test/test.cpp:10
#6 0x7e97168376b4 (/usr/lib/libc.so.6+0x276b4) (BuildId: 468e3585c794491a48ea75fceb9e4d6b1464fc35)
#7 0x7e9716837768 in __libc_start_main (/usr/lib/libc.so.6+0x27768) (BuildId: 468e3585c794491a48ea75fceb9e4d6b1464fc35)
#8 0x5ecfb63e30d4 in _start (/home/Kosmas/Documents/OpenCL test/main+0x10d4) (BuildId: 52952024ea19ef73991f5b1065ba9d1198b9d116)

==22053==Register values:
rax = 0x0000000000000000 rbx = 0x00007bf7159e1280 rcx = 0x0000000000000000 rdx = 0xfffffffffffceef8
rdi = 0x00007ffc620fd1d0 rsi = 0x00007bf7159e1330 rbp = 0x00007ffc620f91d0 rsp = 0x00007ffc620f7160
r8 = 0x0000000000000000 r9 = 0x00007ffc620fd640 r10 = 0x0000000000000004 r11 = 0x00007e9717493550
r12 = 0x00007ffc620fb1d0 r13 = 0x0000000000000000 r14 = 0x0000000000000000 r15 = 0x00007ffc620fd640
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /netbatch/donb41412_00/runDir/93/20180921_000000/llvm/projects/opencl/utils/cl_sys_utils/export/cl_shared_ptr.h:361 in Intel::OpenCL::Framework::PlatformModule::GetPlatformInfo(_cl_platform_id*, unsigned int, unsigned long, void*, unsigned long*)
==22053==ABORTING
< /code>
, а также valgrind: < /p>
==6025==
==6025== Conditional jump or move depends on uninitialised value(s)
==6025== at 0x662E4AF: __intel_sse2_strrchr (in /opt/intel/opencl-runtime/linux/compiler/lib/intel64_lin/libtbb.so.2)
==6025== by 0x6614301: strrchr (string.h:257)
==6025== by 0x6614301: init_ap_data (dynamic_link.cpp:314)
==6025== by 0x6614301: _INTERNAL_30_______src_tbb_dynamic_link_cpp_86b21937::tbb::internal::init_dl_data() (dynamic_link.cpp:352)
==6025== by 0x6614256: run_initializer (tbb_misc.h:232)
==6025== by 0x6614256: atomic_do_once (tbb_misc.h:222)
==6025== by 0x6614256: atomic_once (dynamic_link.cpp:196)
==6025== by 0x6614256: tbb::internal::init_dynamic_link_data() (dynamic_link.cpp:385)
==6025== by 0x40045B6: call_init (dl-init.c:74)
==6025== by 0x40045B6: call_init (dl-init.c:26)
==6025== by 0x40046AC: _dl_init (dl-init.c:121)
==6025== by 0x40015C1: _dl_catch_exception (dl-catch.c:215)
==6025== by 0x400B4FB: dl_open_worker (dl-open.c:829)
==6025== by 0x4001522: _dl_catch_exception (dl-catch.c:241)
==6025== by 0x400B903: _dl_open (dl-open.c:905)
==6025== by 0x4ECBF13: dlopen_doit (dlopen.c:56)
==6025== by 0x4001522: _dl_catch_exception (dl-catch.c:241)
==6025== by 0x4001678: _dl_catch_error (dl-catch.c:260)
==6025==
< /code>
Я попытался найти решение этой проблемы, даже давая в качестве второго параметра, а не nullptr, а также допустимая память, но это ничего не делает. Я использую Linux с помощью видеокарты Intel.
Я не знаю, поступает ли эта проблема из моего кода, OpenCl, пакета или даже конкретной реализации поставщика. < /P>

Подробнее здесь: https://stackoverflow.com/questions/796 ... latformids
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»