URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 109474
[ Назад ]

Исходное сообщение
"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."

Отправлено opennews , 25-Окт-16 00:42 
Состоялся (https://sourceforge.net/p/valgrind/mailman/message/35447135/) релиз Valgrind 3.12.0 (http://valgrind.org/),  инструментария для отладки работы с памятью, обнаружения утечек памяти и профилирования. Работа Valgrind поддерживается для платформ X86/Linux, AMD64/Linux, ARM32/Linux, ARM64/Linux, PPC32/Linux, PPC64/Linux, S390X/Linux, MIPS32/Linux, MIPS64/Linux, TILEGX/Linux, ARM32/Android, ARM64/Android, X86/Android,  X86/Solaris, AMD64/Solaris, X86/MacOSX и AMD64/MacOSX (macOS 10.10/10.11/12).

В новой версии (http://valgrind.org/docs/manual/dist.news.html):

-  Поддержка набора инструкций ISA 3.0 для процессоров POWER;

-  Поддержка O32 FPXX ABI на процессорах MIPS;
-  Начальная поддержка инструкций AMD FMA4;
-  Поддержка инструкций v8 crypto и CRC  на системах arm и arm64;
-  Повышение надёжности работы порта для ОС Solaris;
-  Начальная поддержка macOS 10.12 (Sierra);

-  В DRD значительно ускорен запуск потоков на платформах, отличных от Linux;

-  Замена функций семейства malloc и new теперь по умолчанию производится не только для системных библиотек, но и для глобально определённых функций из статически и динамически связанных альтернативных реализаций malloc;

-  В сервер GDB добавлена поддержка команды 'catch syscall';


-  Добавлена возможность загрузки сжатых секций debuginfo в форматах
zlib ELF gABI (gcc -gz=zlib) и zlib GNU (gcc -gz=zlib-gnu);

-  Накладные расходы от работы JIT снижены на 10-15%.

URL: https://sourceforge.net/p/valgrind/mailman/message/35447135/
Новость: https://www.opennet.ru/opennews/art.shtml?num=45366


Содержание

Сообщения в этом обсуждении
"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 00:42 
Годнота.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 01:55 
коммент для идиотских роликов на ютубе

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 00:58 
порекомендуйте хороший рабочий процесс для выявления источника segmentation fault

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Alex_S , 25-Окт-16 03:24 
> порекомендуйте хороший рабочий процесс для выявления источника segmentation fault

1. build your app with max debug info ( gcc -g3 )
2. gdb




"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 07:34 
1. gcc -g без защиты стека.
2. Запускаете через Валгринд процесс с обработкой дочерних процессов и исключением ненужных.
3. В выводе в консоль находите первое некорректное чтение, некорректную запись или обращение к неинициализированным данным и исправляете.
4. Повторяете всё с 1-го пункта, если ошибки были найдены.

Если ошибка в строке, где не может быть ошибки, то gcc -O0 -g и проверяете без оптимизации. Зачастую ошибки, возникающие после оптимизации лечатся простым созданием промежуточных переменных вместо передачи вызовов функций или выражений в функции.

В конечном итоге нужно ещё один раз проверить код со всеми используемыми защитами стека и данных и с используемым уровнем оптимизации.

Надеюсь, эта информация кому-нибудь пригодится.


"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 07:36 
Ах да, чуть не забыл. Ещё нужен процессор с максимально большой частотой, т. к. Валгринд не поддерживает распараллеливание, т. е. все потоки и процессы вашего приложения будут эмулироваться в одном потоке с глобальными блокировками, что также не всегда даёт возможность воспроизводить ситуации гонки.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Какаянахренразница , 25-Окт-16 08:40 
Спасибо вам, мои анонимные братья. Благодаря вам, я нашёл в своём коде ошибку.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 16:17 
Пожалуйста!

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 16:14 
Еще добавлю, что с многопоточным софтом нужно пробовать не только мемчек (дефолтный анализатор, ищет ошибки работы с памятью), но и хелгринд (анализатор для поиска датарейсов).

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено fi , 25-Окт-16 23:06 
в 90% случаев помогает:
% gdb .../proga core

и вопрос "where"


"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 26-Окт-16 16:43 
Я со временем почти перестал делать ошибки, от которых это помогает. Они довольно простые.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Michael Shigorin , 25-Окт-16 01:08 
А когда-то создали для отладки самбы...

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 08:45 
Официальный сайт троллит:

>The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs!


"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 10:20 
Так это, не ошибается тот кто ничего не делает :)

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено skybon , 25-Окт-16 14:06 
Больше нет живых языков со слабой типизацией и ручным управлением памятью. Так что всё верно написано.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Аноним , 25-Окт-16 19:29 
Типизация там не такая уж и слабая, как минимум warning мозг будут клевать прилично, а культурные люди так с -Werror собирают. А если так не собирается - ОПА, возможно ты нашел автора от софта которого стоит держаться подальше. Жаль что для других ЯП это не всегда работает.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено тоже Аноним , 26-Окт-16 09:06 
Например, компилятор не ругается на использование результата dynamic_cast без проверки на ноль. Что легко превращает типизацию в тыкву.

"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено derlafff , 26-Окт-16 22:45 
>приличные люди собирают с -Werror

Все компиляторы разные. "Приличный человек" собрал свое дерьмо с compilername-vX.Y.Z, а приличным мейнтейнерам потом этот -Werror из всей системы сборки седом выгребать.


"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Michael Shigorin , 26-Окт-16 23:26 
>> приличные люди собирают с -Werror
> Все компиляторы разные. "Приличный человек" собрал свое дерьмо с compilername-vX.Y.Z

Так то в кавычках.

> а "приличным" мейнтейнерам потом этот -Werror из всей системы сборки седом выгребать.

У приличных (без кавычек) разработчиков его приходится отрывать ровно в одном месте -- проходил при начальном портировании альта на эльбрус.


"Релиз Valgrind 3.12.0, инструментария для выявления проблем ..."
Отправлено Владимир , 27-Окт-16 06:48 
Посмотрел ваш доклад про бутстрап, очень круто!