On Thu, 24 Oct 2019 19:01:11 +0300 Aleksei Nikiforov wrote: > 24.10.2019 18:50, Andrey Savchenko пишет: > >> Да, но в таком случае как минимум можно указать на конкретный проблемный > >> участок кода, который содержит UB, и в чём это UB заключается. Как и > >> ошибки, которые складываются. > > > > Так ldv это и сделал в письме выше. > > > > Я, наверно, в этом потоке сообщений где-то это пропустил. Как минимум > ничего кроме общих слов не видел. Можешь повторить этот фрагмент, > пожалуйста? https://lists.altlinux.org/pipermail/devel/2019-October/208756.html > > Этот патч увеличивает расход оперативной памяти apt'ом в среднем в полтора > > раза, но не исправляет UB с арифметикой указателей, поскольку MMap::Base > > как был невыровненным, так и остался невыровненным. В отличие от Debian, > > между прочим, где по умолчанию MMap::Base выровнен на начало страницы. > > > Я не вижу разницы в адресе MMap::Base на Debian и у нас - в обоих > случаях он выровнен на начало страницы. У Алексея: void *tmp_base = realloc(Base, newSize); if (debug_grow) _error->Warning(_("DynamicMMap::Grow: realloc from %llu to %llu, result: %s"), WorkSpace, newSize, (tmp_base == n if (tmp_base == NULL) return false; Base = tmp_base; В Debian по умолчанию: #ifdef MREMAP_MAYMOVE if ((Flags & Moveable) == Moveable) Base = mremap(Base, WorkSpace, newSize, MREMAP_MAYMOVE); else #endif Base = mremap(Base, WorkSpace, newSize, 0); if(Base == MAP_FAILED) return false; Всё ещё не видно разницы? Best regards, Andrew Savchenko