LINUX.ORG.RU

amdgpu-pro 19.20 kernel 5.1.15 clinfo gentoo

 , , , ,


0

2

Вот такую дикую связку удалось забодать, или почти забодать после применения патчиков 1 и 2

amdgpu-pro 19.20 kernel 5.1.15 clinfo gentoo dkms

есть проблема со следами ошибок при первом запуске clinfo, при последующих запусках clinfo успешно отрабатывает и в dmesg не следит, до следующего после перезагрузки системы запуска clinfo:

# clinfo
Number of platforms:				 1
  Platform Profile:				 FULL_PROFILE
  Platform Version:				 OpenCL 2.1 AMD-APP (2841.17)
  Platform Name:				 AMD Accelerated Parallel Processing
  Platform Vendor:				 Advanced Micro Devices, Inc.
  Platform Extensions:				 cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 


  Platform Name:				 AMD Accelerated Parallel Processing
Number of devices:				 7
  Device Type:					 CL_DEVICE_TYPE_GPU
  Vendor ID:					 1002h
  Board name:					 Radeon RX Vega
  Device Topology:				 PCI[ B#28, D#0, F#0 ]
  Max compute units:				 56
  Max work items dimensions:			 3
...
  Platform ID:					 0x7fd559b8d1b0
  Name:						 gfx900
  Vendor:					 Advanced Micro Devices, Inc.
  Device OpenCL C version:			 OpenCL C 2.0 
  Driver version:				 2841.17 (PAL,HSAIL)
  Profile:					 FULL_PROFILE
  Version:					 OpenCL 2.0 AMD-APP (2841.17)
  Extensions:					 cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_khr_gl_depth_images cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_image2d_from_buffer cl_khr_spir cl_khr_subgroups cl_khr_gl_event cl_khr_depth_images cl_khr_mipmap_image cl_khr_mipmap_image_writes 

Подскажите пожалуйста, что поправить осталось в модуле ?

[  112.868624] ------------[ cut here ]------------
[  112.868625] CPU update of VM recommended only for large BAR system
[  112.868656] WARNING: CPU: 0 PID: 3848 at /var/lib/dkms/amdgpu/19.20-812932/build/amd/amdgpu/amdgpu_vm.c:2721 amdgpu_vm_init+0x393/0x460 [amdgpu]
[  112.868656] Modules linked in: nls_cp1251 amdgpu(O) backlight amdttm(O) amd_sched(O) k10temp amdkcl(O) drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm efivarfs
[  112.868661] CPU: 0 PID: 3848 Comm: clinfo Tainted: G           O      5.1.15-gentoo #4
[  112.868661] Hardware name: System manufacturer System Product Name/ROG CROSSHAIR VI EXTREME, BIOS 7003 06/04/2019
[  112.868680] RIP: 0010:amdgpu_vm_init+0x393/0x460 [amdgpu]
[  112.868681] Code: ff 48 8b 43 50 48 8b 78 10 48 83 c7 50 e8 15 71 32 c3 e9 66 ff ff ff 48 c7 c7 d8 60 7b c0 c6 05 d5 64 2d 00 01 e8 87 8d b2 c2 <0f> 0b 41 80 bd 60 01 00 00 00 75 a5 e9 82 fd ff ff 4c 8d b3 e0 3f
[  112.868682] RSP: 0018:ffffae018365bb40 EFLAGS: 00010286
[  112.868683] RAX: 0000000000000000 RBX: ffff88de62250000 RCX: 0000000000000000
[  112.868683] RDX: 0000000000000007 RSI: 0000000000000082 RDI: 00000000ffffffff
[  112.868684] RBP: ffff88de9a1ad8b8 R08: 0000000000000001 R09: 0000000000000749
[  112.868684] R10: 0000000000000001 R11: 0000000000000000 R12: ffff88de62250000
[  112.868685] R13: ffff88de9a1ad800 R14: 0000000000000000 R15: 0000000000000000
[  112.868685] FS:  00007f863e46d740(0000) GS:ffff88de6c000000(0000) knlGS:0000000000000000
[  112.868686] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  112.868686] CR2: 00007f863777edc0 CR3: 00000008d735e000 CR4: 00000000003406f0
[  112.868687] Call Trace:
[  112.868707]  amdgpu_driver_open_kms+0x9a/0x200 [amdgpu]
[  112.868711]  drm_file_alloc+0x155/0x220 [drm]
[  112.868715]  drm_open+0xac/0x1f0 [drm]
[  112.868719]  drm_stub_open+0xaf/0xe0 [drm]
[  112.868722]  chrdev_open+0xa3/0x1b0
[  112.868723]  ? cdev_put.part.0+0x20/0x20
[  112.868725]  do_dentry_open+0x12c/0x370
[  112.868726]  path_openat+0x2f9/0x14c0
[  112.868729]  ? syscall_return_via_sysret+0x1f/0x7f
[  112.868730]  ? __switch_to_asm+0x35/0x70
[  112.868731]  ? __switch_to_asm+0x41/0x70
[  112.868732]  ? __switch_to_asm+0x35/0x70
[  112.868733]  ? __switch_to_asm+0x41/0x70
[  112.868733]  ? __switch_to_asm+0x35/0x70
[  112.868735]  ? _raw_spin_unlock_irq+0x13/0x30
[  112.868736]  do_filp_open+0x93/0x100
[  112.868738]  ? ptrace_do_notify+0xc4/0xf0
[  112.868740]  ? _raw_spin_unlock+0x12/0x30
[  112.868741]  do_sys_open+0x183/0x220
[  112.868743]  do_syscall_64+0x48/0x100
[  112.868744]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  112.868746] RIP: 0033:0x7f863d73593b
[  112.868747] Code: 4e 89 f0 25 00 00 41 00 3d 00 00 41 00 74 40 8b 05 fa ca 20 00 85 c0 75 61 89 f2 b8 01 01 00 00 48 89 fe bf 9c ff ff ff 0f 05 <48> 3d 00 f0 ff ff 0f 87 99 00 00 00 48 8b 4c 24 28 64 48 33 0c 25
[  112.868747] RSP: 002b:00007fffb3cb0240 EFLAGS: 00000246 ORIG_RAX: 0000000000000101
[  112.868748] RAX: ffffffffffffffda RBX: 00007fffb3cb0658 RCX: 00007f863d73593b
[  112.868748] RDX: 0000000000000002 RSI: 0000000000c9b018 RDI: 00000000ffffff9c
[  112.868748] RBP: 0000000000c8f5e0 R08: 0000000000c9b018 R09: 0000000000c9b030
[  112.868749] R10: 0000000000000000 R11: 0000000000000246 R12: 00007fffb3cb05f0
[  112.868749] R13: 0000000000c9afe8 R14: 0000000000c9b018 R15: 00007fffb3cb03e0
[ 112.868750] ---[ end trace b4e1ed02e6a1437f ]---

полный dmesg тут

вывод strace здесь

Deleted

Последнее исправление: Deleted (всего исправлений: 4)

А какие файлы лежат в /etc/OpenCL/vendors ? Там должно быть примерно amdocl64.icd и amdocl-orca64.icd с содержимым libamdocl64.so и libamdocl-orca64.so.

tim239 ★★
()
Ответ на: комментарий от tim239
libamdocl64.so

То что доктор прописал, благодарю. Забыл в сценарии прописать размещение этой библиотеки, в результате и 1001 получал.

Теперь следующая проблема проявилась:

# clinfo
Убито

# dmesg
...
[   16.259911] [drm] Initialized amdgpu 3.31.0 20150101 for 0000:1c:00.0 on minor 6
[25605.192827] ------------[ cut here ]------------
[25605.192828] CPU update of VM recommended only for large BAR system
[25605.192860] WARNING: CPU: 6 PID: 8403 at /var/lib/dkms/amdgpu/19.20-812932/build/amd/amdgpu/amdgpu_vm.c:2721 amdgpu_vm_init+0x393/0x460 [amdgpu]
[25605.192861] Modules linked in: nls_cp1251 amdgpu(O) backlight amdttm(O) amd_sched(O) k10temp amdkcl(O) drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm efivarfs
[25605.192865] CPU: 6 PID: 8403 Comm: clinfo Tainted: G           O      5.1.15-gentoo #4
[25605.192866] Hardware name: System manufacturer System Product Name/ROG CROSSHAIR VI EXTREME, BIOS 7003 06/04/2019
[25605.192885] RIP: 0010:amdgpu_vm_init+0x393/0x460 [amdgpu]
...
[25605.192891] Call Trace:
[25605.192910]  amdgpu_driver_open_kms+0x9a/0x200 [amdgpu]
[25605.192914]  drm_file_alloc+0x155/0x220 [drm]
[25605.192918]  drm_open+0xac/0x1f0 [drm]
[25605.192922]  drm_stub_open+0xaf/0xe0 [drm]
[25605.192925]  chrdev_open+0xa3/0x1b0
[25605.192927]  ? cdev_put.part.0+0x20/0x20
[25605.192928]  do_dentry_open+0x12c/0x370
[25605.192930]  path_openat+0x2f9/0x14c0
...
[25605.192949] ---[ end trace 66e5806751e262a0 ]---
[25605.192963] BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
[25605.193069] #PF error: [WRITE]
[25605.193099] PGD 8d92a9067 P4D 8d92a9067 PUD 8db580067 PMD 0 
[25605.193170] Oops: 0002 [#1] PREEMPT SMP NOPTI
[25605.193221] CPU: 6 PID: 8403 Comm: clinfo Tainted: G        W  O      5.1.15-gentoo #4
[25605.193328] Hardware name: System manufacturer System Product Name/ROG CROSSHAIR VI EXTREME, BIOS 7003 06/04/2019
[25605.193494] RIP: 0010:amdgpu_gmc_set_pte_pde+0x1b/0x30 [amdgpu]
...
[25605.194671] Call Trace:
[25605.194713]  amdgpu_vm_cpu_update+0x6c/0xf0 [amdgpu]
[25605.194787]  amdgpu_vm_clear_bo+0x303/0x330 [amdgpu]
[25605.194861]  amdgpu_vm_init+0x21d/0x460 [amdgpu]
[25605.194927]  amdgpu_driver_open_kms+0x9a/0x200 [amdgpu]
[25605.194989]  drm_file_alloc+0x155/0x220 [drm]
[25605.195039]  drm_open+0xac/0x1f0 [drm]
[25605.195080]  drm_stub_open+0xaf/0xe0 [drm]
[25605.195123]  chrdev_open+0xa3/0x1b0
[25605.195160]  ? cdev_put.part.0+0x20/0x20
[25605.195202]  do_dentry_open+0x12c/0x370
[25605.195245]  path_openat+0x2f9/0x14c0
[25605.195284]  ? alloc_set_pte+0xdc/0x4d0
[25605.195326]  ? filemap_map_pages+0x17a/0x320
[25605.195374]  do_filp_open+0x93/0x100
[25605.195413]  ? _raw_spin_unlock+0x12/0x30
[25605.195457]  do_sys_open+0x183/0x220
[25605.195495]  do_syscall_64+0x48/0x100
[25605.195534]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[25605.195595] RIP: 0033:0x7ff6a4d9d93b
...
[25605.196499] Modules linked in: nls_cp1251 amdgpu(O) backlight amdttm(O) amd_sched(O) k10temp amdkcl(O) drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm efivarfs
[25605.196734] CR2: 0000000000000000
[25605.196768] ---[ end trace 66e5806751e262a1 ]---
[25605.196840] RIP: 0010:amdgpu_gmc_set_pte_pde+0x1b/0x30 [amdgpu]

Прошу прощения за длинную портянку, но вдруг что-то нужное для лечения по фотографии пропустил.

Везет сегодня на питерских коллег, один из Питера помог исправить косяки в коде dmks мною допущенные, а Вы подсобили с другой моей ошибкой - в сценарии сборки автор оригинального ebuildа забыл или забил на либу для pal (моя Vega56 как раз из pal), у него были только либы прописаны для orca (legacy карт).

Готов оплачивать дельные советы, такие как предыдущий, если не обидел этим, то можете просить с меня и денег, немного, но готов платить за подсказки полезные. На почту мне можете написать на скайп или в телеграммку, только здесь сообщите Ваш ник в этих средствах коммуникации.

Deleted
()
Ответ на: комментарий от Deleted

Дельных советов пока что нет, но судя по логам там что-то не живёт капитальное - kernel NULL pointer dereference в amdgpu_driver_open_kms(). У меня тоже вега, на убунте 16.04. Отключил лишние OpenCL-платформы и вот какие файлы у меня открываются в clinfo, для сравнения:

$ strace clinfo  > log.txt 2>&1
$ grep log.txt -e ^open
вывод

Интересно, до какого файла вывод будет более-менее совпадать и где именно clinfo запнётся.

tim239 ★★
()
Ответ на: комментарий от tim239

проблема оказалась около двух патчиков 1 2 которых не хватало для счастья, коллега подсказал из Кирова, вопрос закрыт с clinfo: теперь порядок:

# clinfo
Number of platforms:				 1
  Platform Profile:				 FULL_PROFILE
  Platform Version:				 OpenCL 2.1 AMD-APP (2841.17)
  Platform Name:				 AMD Accelerated Parallel Processing
  Platform Vendor:				 Advanced Micro Devices, Inc.
  Platform Extensions:				 cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 


  Platform Name:				 AMD Accelerated Parallel Processing
Number of devices:				 7
  Device Type:					 CL_DEVICE_TYPE_GPU
  Vendor ID:					 1002h
  Board name:					 Radeon RX Vega
  Device Topology:				 PCI[ B#28, D#0, F#0 ]
  Max compute units:				 56
  Max work items dimensions:			 3

Еще предлагались к рассмотрению патчики 3 4 5 но они уже включены в amdgpu-pro-dkms 19.20

Вопрос закрыт :)

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)
Ответ на: комментарий от Deleted

Проприетарный драйвер amdgpu-pro поддерживает Ubuntu 16.04 и новее, а также... CentOS 6!

В шестом CentOS зачем-то держат наиболее новый графический стек, такой как иксы, меса. А Glibc там 2.12 и ядро 2.6.32.

Вот поэтому я и говорю, что ядра 2.6.32 для твоих карточек хватает.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от Deleted

Эх, ретроностальгия, только прокормиться от него жаль нельзя, потому приходится и новыми сравнительно топовыми железками и новым софтом заниматься, а не только S3 и старыми каменными ядрами :)

Deleted
()
Ответ на: комментарий от ZenitharChampion

Даун - тут ключевое слово, спасибо за советы очень полезные, как доживу до 90 лет и ударюсь в маразм обязательно этим важным советам сразу же последую :)

Deleted
()
Ответ на: комментарий от Deleted

Для опенсорсного драйвера всегда чем новее, тем лучше. Хоть из GIT ставь. А для проприетарного самый свежий драйвер всегда приводил к проблемам. Как вариант, ты можешь заменить amdgpu-pro на ROCM

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

ROCM - спасибо, я недавно оттуда, но впрочем отдельные патчики оттуда тягаю и даже баги от amdgpu-pro-dkms (эта часть тоже опенсорсная в amdgpu-pro, собственно в ней правки и нужны были для состыковки со свежим ядром) там размещаю, и иногда дельными советами помогают там тоже :)

Хоть из GIT ставь.

Это тоже очень полезный совет, благодарю, не менее ценный чем даунгрейд до ядра в котором карты Vega56 не поддерживаются.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 4)
Ответ на: комментарий от anonymous

Да хоть на чукотском буду писать подобно анонимусам, не поймут, т.к. не читают текст а смотрят только на код и логи :)

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)
Ответ на: комментарий от ZenitharChampion

ядра 2.6.32

В центосе от номера ядра только номер и ABI, если что.

Deleted
()
Ответ на: комментарий от Deleted

Ты же написал в исходном сообщении, что ты устанавливаешь amdgpu-pro. Если ты устанавливаешь проприетарный драйвер, то Vega 56 поддерживается. И не важно, какая версия ядра у тебя - хоть 2.6.32, хоть 3.10

Поддержка Vega 56 со стороны ядра нужна только в том случае, если ты используешь опенсорсный драйвер

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Конечно не важно, все не важно, потому и топик появился, что не важно…

Ну а правим в рамках топика почему-то не ядро, а сам amdgpu-pro-dkms при этом, казалось бы причем тут ядро :)

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

Ещё раз. Всю историю существования проприетарныз драйверов, у них были проблемы с новыми иксами и новыми ядрами. amdgpu-pro это проприетарный драйвер. Жди поддержки ядра 5.1 в нём, или переходи на открытый, или откатись на 5.0. Хотя ты стопудово обновишься уже до 5.2, когда выйдет новая версия amdgpu-pro с поддержкой ядра 5.1, и всё по-новой

ZenitharChampion ★★★★★
()

Это не нвидия, здесь этот карнавал не нужен. Просто возьми реализацию опенсл из блобнутого драйвера, она работает с открытым.

abbcto
()
Ответ на: комментарий от abbcto

Я знаю что мне нужно брать, а ошибки о которых я написал почти исправили.

Подумаешь один раз при первом после перезагрузки запуске стенда clinfo лагает в dmesg но ведь все равно продолжает работать и выдает правильный инфолог в консоль! При последующем запуске clinfo в dmesg не гадит. Просто мистика!

Сегодня ночью погонял стенд с семью картами вместо криптообогревателя - проблем нет - работает, ничего не упало.

PS. А гибридный вариант, как и rocm вариант, на моем стенде не заработали как мне хотелось. Разбираться лень в причинах, через пару лет попробую снова поковырять палочкой очередной свежий rocm, может соизволят и rocm довести до состояния качественного кода для работы в режиме multiGPU on one host :)

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от ZenitharChampion

Это как старуха в сказке Пушкина ожидать у разбитого корыта пришествия чуда ?

Благодарю, я не настолько умный и богатый как она.

Впрочем и рыбку золотую кликать и кланяться ей тоже не планирую.

Deleted
()

нашел очень подобную моей баге но уже для невидии и даже патчик прилагается

только вот этот код уже имеется в дереве, и не помогает

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.