[devel] Битые символы при сборке virtualbox.git=6.1.14-alt1
Ivan A. Melnikov
iv на altlinux.org
Чт Сен 24 10:34:18 MSK 2020
On Wed, Sep 23, 2020 at 05:28:32PM +0400, Valery Sinelnikov wrote:
> Здравствуйте.
>
> Столкнулся со сложностью прохождения пакета в сборочнице.
> Не знаю как обойти проверку в соответствии с правилами
> сборочницы для новой версии virtualbox.
>
> Проблема возникает при проверке модуля VMMR0.r0, который динамически
> загружает другие модули, но явно с ними не слинкован. На
> работоспособность это не влияет, но сборочница не пропускает.
Тут дело не в недолинковке. Проверка bad_elf_symbols означает, что
таких символов в репозитории вообще нет, то есть бинарник их
требует, но нет ни одного elf-файла, который бы их предоставлял.
Однако, как я понимаю, VMMR0.r0 -- это не какая-нибудь разделяемая
библиотека, а часть гипервизора, и эти символы ей предоставляются
ядром, а точнее модулем virtualbox.ko из kernel-modules-virtualbox.
> Какие варианты решения можете предложить?
В сборке из #257606:
$ file usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/VMMR0.r0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped
Это shared object, и он попадает под проверку bad_elf_symbols.
Сейчас в Сизифе:
$ file usr/lib64/virtualbox/VMMR0.r0
usr/lib64/virtualbox/VMMR0.r0: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped
Это не shared object, и проверка его игнорирует. Таковы, кстати,
модули ядра:
# find /lib/modules/5.8.9-un-def-alt1/ -name *.ko | xargs file | grep -c 'ELF 64-bit LSB relocatable'
4820
# find /lib/modules/5.8.9-un-def-alt1/ -name *.ko | xargs file | grep -cv 'ELF 64-bit LSB relocatable'
0
Я бы копнул в эту сторону.
> ---------- Forwarded message ---------
> От: Girar awaiter (greh) <girar-builder на altlinux.org>
> Date: ср, 9 сент. 2020 г. в 12:41
> Subject: [#257606] [test-only] FAILED (try 2) virtualbox.git=6.1.14-alt1 ...
> To: Valery Sinelnikov <greh на altlinux.org>
> Cc: <girar-builder-sisyphus на altlinux.org>,
> <sisyphus-incominger на lists.altlinux.org>
>
>
> http://git.altlinux.org/tasks/257606/logs/events.2.1.log
>
> subtask name aarch64 armh i586 ppc64le x86_64
> #40 virtualbox - - 19:39 - 1:22:19
> #200 kernel-modules - - 1:32 - 1:03
> #300 kernel-modules - - - - 1:09
> #400 kernel-modules - - - - 1:11
> #500 kernel-modules - - 1:05 - 1:02
>
> 2020-Sep-09 07:09:05 :: test-only task #257606 for sisyphus resumed by greh:
> [...]
> #40 virtualbox 6.1.12a-alt2 -> 6.1.14-alt1
> Wed Sep 09 2020 Valery Sinelnikov <greh на altlinux> 6.1.14-alt1
> - Update to newest version 6.1.14
> 2020-Sep-09 08:39:34 :: generated apt indices
> 2020-Sep-09 08:39:34 :: created next repo
> 2020-Sep-09 08:40:30 :: dependencies check OK
> x86_64: NEW bad_elf_symbols detected:
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTLogSetDefaultInstanceThread
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpCpuId
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpCurSetIndex
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpCurSetIndexAndId
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpGetArraySize
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpNotificationDeregister
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpNotificationRegister
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpOnAll
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpOnSpecific
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U RTMpPokeCpu
> [...]
> virtualbox-6.1.14-alt1.x86_64.rpm /usr/lib64/virtualbox/VMMR0.r0
> U g_SUPGlobalInfoPage
> 2020-Sep-09 08:41:23 :: [x86_64 i586] ELF symbols check FAILED
> 2020-Sep-09 08:41:23 :: task #257606 for sisyphus FAILED
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
Подробная информация о списке рассылки Devel