You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I had a difficult-to-debug ASAN test failure when using the swiftly toolchain.
It turns out that when you have Leak Sanitizer suppressions, these only get applied if the LSAN runtime can match up your patterns with the symbolized output from the LSAN stack traces.
It wasn't until I updated my host clang on my Linux box, without setting up my usual default symlinks, that I discovered that swiftly doesn't supply llvm-symbolizer.
The result looks something like this:
Failed run (symbolizer not available)
Tests/LibGfx$ ../../Build/swift/bin/TestWOFF2
Running 2 cases out of 2.
Running test 'tolerate_incorrect_sfnt_size'.
Completed test 'tolerate_incorrect_sfnt_size' in 19ms
Running test 'malformed_woff2'.
offset fail; src_offset 4294967380 length 640 dst_offset 236
Completed test 'malformed_woff2' in 1ms
Finished 2 tests and 0 benchmarks in 0ms (19ms tests, 0ms benchmarks, -19ms other).
All 2 tests passed.
=================================================================
==304189==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 6656 byte(s) in 26 object(s) allocated from:
#0 0x568550918f9f (/home/andrew/ladybird-org/ladybird-browser/Build/swift/bin/TestWOFF2+0x126f9f)
#1 0x79f0e09a4b88 (/home/andrew/ladybird-org/ladybird-browser/Build/swift/vcpkg_installed/x64-linux-dynamic/lib/libfontconfig.so.1+0x3fb88)
Indirect leak of 1664 byte(s) in 52 object(s) allocated from:
#0 0x568550919159 (/home/andrew/ladybird-org/ladybird-browser/Build/swift/bin/TestWOFF2+0x127159)
#1 0x79f0e09a56f0 (/home/andrew/ladybird-org/ladybird-browser/Build/swift/vcpkg_installed/x64-linux-dynamic/lib/libfontconfig.so.1+0x406f0)
Indirect leak of 519 byte(s) in 50 object(s) allocated from:
#0 0x5685508e694a (/home/andrew/ladybird-org/ladybird-browser/Build/swift/bin/TestWOFF2+0xf494a)
#1 0x79f0e09a4429 (/home/andrew/ladybird-org/ladybird-browser/Build/swift/vcpkg_installed/x64-linux-dynamic/lib/libfontconfig.so.1+0x3f429)
SUMMARY: AddressSanitizer: 8839 byte(s) leaked in 128 allocation(s).
Tests/LibGfx$ echo $?
1
Successful run (symbolizer path passed explicitly):
Tests/LibGfx$ ASAN_SYMBOLIZER_PATH=/usr/bin/llvm-symbolizer-19 ../../Build/swift/bin/TestWOFF2
Running 2 cases out of 2.
Running test 'tolerate_incorrect_sfnt_size'.
Completed test 'tolerate_incorrect_sfnt_size' in 19ms
Running test 'malformed_woff2'.
offset fail; src_offset 4294967380 length 640 dst_offset 236
Completed test 'malformed_woff2' in 1ms
Finished 2 tests and 0 benchmarks in 0ms (18ms tests, 0ms benchmarks, -18ms other).
All 2 tests passed.
-----------------------------------------------------
Suppressions used:
count bytes template
26 6656 FcPatternObjectInsertElt
-----------------------------------------------------
Tests/LibGfx$ echo $?
0
What's the best way to handle this? Where do I ask the toolchain folks to add llvm-symbolizer to the standard package?
The text was updated successfully, but these errors were encountered:
Uh oh!
There was an error while loading. Please reload this page.
This might actually be a swift toolchain issue.
I had a difficult-to-debug ASAN test failure when using the swiftly toolchain.
It turns out that when you have Leak Sanitizer suppressions, these only get applied if the LSAN runtime can match up your patterns with the symbolized output from the LSAN stack traces.
It wasn't until I updated my host clang on my Linux box, without setting up my usual default symlinks, that I discovered that swiftly doesn't supply llvm-symbolizer.
The result looks something like this:
Failed run (symbolizer not available)
Successful run (symbolizer path passed explicitly):
What's the best way to handle this? Where do I ask the toolchain folks to add llvm-symbolizer to the standard package?
The text was updated successfully, but these errors were encountered: