[devel] Q: girar builder: automated bad_elf_symbols check
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Ср Фев 18 17:33:54 MSK 2009
On Wed, Feb 18, 2009 at 05:19:11PM +0300, Dmitry V. Levin wrote:
> On Wed, Feb 18, 2009 at 03:06:46PM +0300, Alexey M. Tourbin wrote:
> > Update of /people/at/packages/girar-builder.git
> [...]
> > + if [ -s $arch-bes.plus ]; then
> > + echo " $arch: NEW bad_elf_symbols detected:"
> > + cat $arch-bes.plus
> > + rc=1
> > + fi >&2
>
> Ну хорошо, а что мы будем делать в тех очень редких случаях, когда эти
> "нехорошие" ссылки являются законными?
>
> Например, я видел такой вариант: процесс загружает elf shared object с
> помощью dlopen, проверяет наличие в нём нужных ему символов с помощью
> dlsym, и, если всё нужное нашлось, использует их напрямую. Хотя,
> конечно, использование weak symbols в такой ситуации выглядит более
> естественным.
Только weak symbols.
if (weak_symbol_function)
ret = weak_symbol_function(args);
> Будем ли мы исправлять весь код, который не пройдёт проверку на
> "нехорошие" ссылки?
Хоршо бы исправить код, особенно если он есть. Примерно половина
существующих случаев bad_elf_symbols -- это проприетарные драйвера.
[at на people ~]$ cut -f1 /ALT/qa-robot/bad_elf_symbols/*/dump.old |sort |uniq -c |sort -n |tail
48 virtualbox
141 nvidia_glx_1.0.7182
141 nvidia_glx_1.0.8756
141 nvidia_glx_1.0.8762
141 nvidia_glx_1.0.8774
141 nvidia_glx_1.0.8776
142 nvidia_glx_1.0.8178
158 matroxdriver_glx
276 fglrx_glx
618 monkeystudio
[at на people ~]$
Кстати, новая проверка на bad_elf_symbols во многих отношениях похожа
на проверку unmets. И сами эти понятия сходны. Понятию левого
проприетарного бинарика в bad_elf_symbols будет соответствовать понятие
левого проприетарного собранного пакета в unmets. Но пакеты без сборки
мы вообще не допускаем, а вот левые бинарики допускаем.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20090218/0bd14ad9/attachment-0001.bin>
Подробная информация о списке рассылки Devel