google / sanitizers

AddressSanitizer, ThreadSanitizer, MemorySanitizer
Other
11.35k stars 1.02k forks source link

Clang HWASAN OOMs on compilation of redis #1367

Open Feverfew opened 3 years ago

Feverfew commented 3 years ago

NOTE: Saw that bug reports seem to be actively triaged here apparently, but I've filed a bug upstream as well: 48822

On compilation of redis, HWASAN OOMS, with RAM steadily but quickly increasing until oom_reaper is called.

To replicate:

  1. git clone --depth 1 --branch 6.0.9 https://github.com/redis/redis.git
  2. cd redis
  3. make CC=clang CXX=clang++ CFLAGS="-fsanitize=hwaddress -fno-omit-frame-pointer" LDFLAGS="-fsanitize=hwaddress" MALLOC=libc

Environment (in QEMU): Operating System: openSUSE Tumbleweed 20201108 JeOS Kernel Version (custom built): 5.10-rc3

Other Notes: Interestingly the first time I compiled the bug didn't occur. But now it occurs repeatedly :/ The balooning RAM usage always happens after "CC redis-benchmark.o" is outputted.

eugenis commented 3 years ago

This sounds like a compiler bug that is better tracked on bugs.llvm.org, but the report is currently missing the preprocessed source and the compilation command line? Also, the clang version.

On Thu, Jan 21, 2021 at 10:29 AM Feverfew notifications@github.com wrote:

NOTE: Saw that bug reports seem to be actively triaged here apparently, but I've filed a bug upstream as well: 48822 https://bugs.llvm.org/show_bug.cgi?id=48822

On compilation of redis, HWASAN OOMS, with RAM steadily but quickly increasing until oom_reaper is called.

To replicate:

  1. git clone --depth 1 --branch 6.0.9 https://github.com/redis/redis.git
  2. cd redis
  3. make CC=clang CXX=clang++ CFLAGS="-fsanitize=hwaddress -fno-omit-frame-pointer" LDFLAGS="-fsanitize=hwaddress" MALLOC=libc

Environment (in QEMU): Operating System: openSUSE Tumbleweed 20201108 JeOS Kernel Version (custom built): 5.10-rc3

Other Notes: Interestingly the first time I compiled the bug didn't occur. But now it occurs repeatedly :/ The balooning RAM usage always happens after "CC redis-benchmark.o" is outputted.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/google/sanitizers/issues/1367, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADG4SUYXYZAJXG3ZMDX2O3S3BXATANCNFSM4WNKFMYA .

Feverfew commented 3 years ago

Hi, thanks for the reply. I've attached the requested information into the bug report: https://bugs.llvm.org/show_bug.cgi?id=48822