mirror of
https://github.com/MariaDB/server.git
synced 2025-07-13 14:58:15 +02:00
![]() Problem: ======= - InnoDB unpoisons the freed page memory to make sure that no other thread uses this freed page. In buf_pool_t::close(), InnoDB unmap() the buffer pool memory during shutdown or it encountered during startup. Later at some point, server re-uses the same virtual address using mmap() and writes into memory region. This leads to use_after_poison error. This issue doesn't happen in latest clang and gcc version. Older version of clang and gcc can still fail with this error. ASAN should unpoison the memory while reusing the same virtual address. This issue was already raised in https://github.com/google/sanitizers/issues/1705 Fix: === In order to avoid this failure, let's unpoison the buffer pool memory explictly during buf_pool_t::close() for lesser than gcc-14 and clang-18 version. |
||
---|---|---|
.. | ||
buf0buddy.cc | ||
buf0buf.cc | ||
buf0checksum.cc | ||
buf0dblwr.cc | ||
buf0dump.cc | ||
buf0flu.cc | ||
buf0lru.cc | ||
buf0rea.cc |