Bug 51941 - Valgrind incompatibility with binutils-2.42 on x86 with new nop patterns (unhandled instruction bytes: 0x2E 0x8D 0x74 0x26)
Summary: Valgrind incompatibility with binutils-2.42 on x86 with new nop patterns (unh...
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: valgrind (show other bugs)
Version: unstable
Hardware: x86 Linux
: P5 minor
Assignee: Ivan A. Melnikov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-03 16:15 MSK by Vitaly Chikunov
Modified: 2024-11-14 01:43 MSK (History)
2 users (show)

See Also:


Attachments
Тесты на aarch64 в присутствии glibc-core-debuginfo (8.33 KB, text/plain)
2024-11-13 18:50 MSK, Ivan A. Melnikov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vitaly Chikunov 2024-11-03 16:15:51 MSK
valgrind превратился тыкву

http://git.altlinux.org/beehive/logs/Sisyphus/i586/archive/2024/1102/error/mboxgrep-0.7.12a-alt1
> vex x86->IR: unhandled instruction bytes: 0x2E 0x8D 0x74 0x26

https://bugs.kde.org/show_bug.cgi?id=480680
https://bugs.kde.org/show_bug.cgi?id=478624
Comment 1 Konstantin A Lepikhov (L.A. Kostis) 2024-11-13 00:21:48 MSK
подтверждаю,  аналогично сломался courier-imap:
https://git.altlinux.org/beehive/logs/Sisyphus/i586/archive/2024/1109/error/courier-imap-5.2.10-alt1

но, к сожалению,  всем заинтересованным и ответственным на этот пакет глубоко наплевать (могу предоставить переписку :)
Comment 2 Ivan A. Melnikov 2024-11-13 07:27:06 MSK
Говорят, [1] исправляет это. Приложено в debian, gentoo, fedora, openembedded,... Вошло в 3.23 и 3.24.

Вообще этот пакет хорошо бы обновить. В федору, с которой он традиционно синхронизируется, 3.24 уже завезли, и в rawhide и 41-ю.

> всем заинтересованным и ответственным на этот пакет глубоко наплевать

Надеюсь, что раз ACL всё ещё закрыт, значит не так уж и глубоко.

[1] https://sourceware.org/git/?p=valgrind.git;a=commit;h=d35005cef8ad8207542738812705ceabf137d7e0
Comment 3 Konstantin A Lepikhov (L.A. Kostis) 2024-11-13 11:14:53 MSK
(In reply to Ivan A. Melnikov from comment #2)
> Говорят, [1] исправляет это. Приложено в debian, gentoo, fedora,
> openembedded,... Вошло в 3.23 и 3.24.
> 
> Вообще этот пакет хорошо бы обновить. В федору, с которой он традиционно
> синхронизируется, 3.24 уже завезли, и в rawhide и 41-ю.
> 
> > всем заинтересованным и ответственным на этот пакет глубоко наплевать
> 
> Надеюсь, что раз ACL всё ещё закрыт, значит не так уж и глубоко.
> 
> [1]
> https://sourceware.org/git/?p=valgrind.git;a=commit;
> h=d35005cef8ad8207542738812705ceabf137d7e0

в переписке Дима указал, что готов передать пакет заинтересованной стороне. Вы выразили интерес и даже собрали пакет. ACL не закрыт,  а просто непонятно, на кого перевешивать.
Comment 4 Ivan A. Melnikov 2024-11-13 16:41:00 MSK
(In reply to Konstantin A Lepikhov (L.A. Kostis) from comment #3)
> Вы выразили интерес и даже собрали пакет.

Я заинтересован в живом valgrind'е. И планировал потыкать в текущее состояние патчей для loongarch64, в которых я тоже заинтересован.

Я попробую собрать новую версию, а там посмотрим.
Comment 5 Ivan A. Melnikov 2024-11-13 18:12:21 MSK
> Я попробую собрать новую версию, а там посмотрим.

Попробовал, https://git.altlinux.org/tasks/362452.

На x86_64 при установленном glibc-core-debuginfo не проходит один тест из запускаемых:

--- use_after_close.stderr.exp  2024-11-13 19:00:26.000000000 +0400
+++ use_after_close.stderr.out  2024-11-13 19:10:43.813348303 +0400
@@ -6,13 +6,13 @@
  Originally opened
    at 0x........: dup (in /...libc...)
    by 0x........: main
-   at 0x........: write (in /...libc...)
+   at 0x........: write (write.c:26)
    by 0x........: main
 File descriptor 7 was never created
-   at 0x........: write (in /...libc...)
+   at 0x........: write (write.c:26)
    by 0x........: main
 File descriptor -7 Invalid file descriptor
-   at 0x........: write (in /...libc...)
+   at 0x........: write (write.c:26)
    by 0x........: main
 File descriptor ...: ... is already closed
    at 0x........: close (in /...libc...)

Выглядит не страшно.

На gyle их не проходит больше, так как там нет возможности запихнуть в hasher glibc-core-debuginfo, а без неё helgrind отказывается как-то разумно работать.

Это намного лучше, того, что было: в тех же условиях при сборке текущего 3.17.0-alt3 падает примерно в 10 раз больше тестов.

Я сейчас попробую посмотреть, как ведут себя тесты на aarch64 в присутствии glibc-core-debuginfo.
Comment 6 Vitaly Chikunov 2024-11-13 18:17:56 MSK
Если тесты можно запускать независимо от сборки, то получить debuginfo пакеты можно в install check. Примеры тут

  c/crash/crash.spec:44:%package -n kernel-ci-crash-debuginfo
  d/drgn/drgn.spec:52:%package -n kernel-ci-drgn-debuginfo

Пример чуть сложнее чем возможно нужно для valgrind, так как там надо было еще kernel. Так что достаточно сделать -debuginfo подпакет с %post с тестами.
Comment 7 Ivan A. Melnikov 2024-11-13 18:50:41 MSK
Created attachment 17181 [details]
Тесты на aarch64 в присутствии glibc-core-debuginfo

(In reply to Ivan A. Melnikov from comment #5)
> Я сейчас попробую посмотреть, как ведут себя тесты на aarch64 в присутствии
> glibc-core-debuginfo.

Упало немного больше, но тоже не выглядит критично.
Comment 8 Ivan A. Melnikov 2024-11-13 19:03:52 MSK
(In reply to Vitaly Chikunov from comment #6)
> Если тесты можно запускать независимо от сборки, то получить debuginfo
> пакеты можно в install check.

Не уверен, что эти тесты легко оторвать от сборочного окружения. Это надо или очень постораться, или сделать что-то совсем суровое.

> Так что достаточно сделать -debuginfo подпакет с %post с тестами.

Извините, но немного оффтопика. У меня есть ощущение, что компоненту checkinstall должны быть доступны при установке все компоненты, включая debuginfo и gostcrypto, так как без этого смысл checkinstall немного размывается а область его применения сужается. Если я правильно понимаю, проблемы здесь может вызвать gb-task-repo-unmets и собственно install check'и. В install check'ах всё уже должно быть хорошо, там один apt.conf/list на всех; а gb-task-repo-unmets несложно поправить. Надо попробовать.
Comment 9 Ivan A. Melnikov 2024-11-13 19:14:34 MSK
(In reply to Ivan A. Melnikov from comment #5)
> > Я попробую собрать новую версию, а там посмотрим.
> 
> Попробовал, https://git.altlinux.org/tasks/362452.

Потыкал memcheck руками на x86_64. В дополнение ко всяким тестам -- кажется, valgrind получился работоспособным.

Задача 362452 в EPERM. Прошу аппрува или конструктивной критики.
Comment 10 Vitaly Chikunov 2024-11-13 19:30:54 MSK
(In reply to Ivan A. Melnikov from comment #8)
> У меня есть ощущение, что компоненту checkinstall должны быть доступны при
> установке все компоненты, включая debuginfo и gostcrypto,

Да, было бы удобнее.
Comment 11 Repository Robot 2024-11-13 20:23:57 MSK
valgrind-3.24.0-alt1 -> sisyphus:

 Wed Nov 13 2024 Ivan A. Melnikov <iv@altlinux> 3.24.0-alt1
 - 3.17.0 -> 3.24.0 (ALT#51941).
 - Synced RH patches with valgrind-3.24.0-1 from Fedora.
Comment 12 Vitaly Chikunov 2024-11-13 20:40:09 MSK
@iv Спасибо за обновление!
Comment 13 Konstantin A Lepikhov (L.A. Kostis) 2024-11-14 01:43:30 MSK
@iv спасибо, что взяли пакет на себя и обновили наконец-то его!