It turns out that we see this error on a double free of a unique_ptr on UBSan builds. Can anyone confirm that whether this is a bug on Ubuntu 18.04?
On Monday, January 11, 2021 at 10:59:15 PM UTC+5:30 Vinayaka Kamath wrote: > Hello All, > > Our project recently upgraded from v8 version 7.6 to 8.3. While running > the unit tests a couple of our tests fail with the following message only > on Windows and UBSan builds. The linux and MacOS tend to work fine. > > 22:43:24 Running mapreduce builtin tests > 22:43:24 > /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:78:2: > > runtime error: member call on address 0x60d000000040 which does not point > to an object of type 'v8::Platform' > 22:43:24 0x60d000000040: note: object has invalid vptr > 22:43:24 01 00 00 0e e0 4f b4 9a 9e 7f 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 > 22:43:24 ^~~~~~~~~~~~~~~~~~~~~~~ > 22:43:24 invalid vptr > 22:43:24 #0 0x4f1c88 in > std::default_delete<v8::Platform>::operator()(v8::Platform*) const > /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:78:2 > 22:43:24 #1 0x4ebbab in std::unique_ptr<v8::Platform, > std::default_delete<v8::Platform> >::~unique_ptr() > /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:263:4 > 22:43:24 #2 0x7f9e9591c160 in __run_exit_handlers > /build/glibc-S7xCS9/glibc-2.27/stdlib/exit.c:108 > 22:43:24 #3 0x7f9e9591c259 in exit > /build/glibc-S7xCS9/glibc-2.27/stdlib/exit.c:139 > 22:43:24 #4 0x7f9e958fabfd in __libc_start_main > /build/glibc-S7xCS9/glibc-2.27/csu/../csu/libc-start.c:344 > 22:43:24 #5 0x439489 in _start > (/home/couchbase/jenkins/workspace/couchstore.ASan-UBSan_master/build/couchstore/couchstore_mapreduce-builtin-test+0x439489) > 22:43:24 > 22:43:24 SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior > /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:78:2 > > in > > > I'm not really sure how to make sense of it. Seems like it has something > to do with the platform. > > void initV8(const char* executable_img) > { > V8::InitializeICUDefaultLocation(executable_img, nullptr); > v8platform = platform::NewDefaultPlatform(); > V8::InitializePlatform(v8platform.get()); > V8::Initialize(); > } > > void deinitV8() > { > V8::Dispose(); > V8::ShutdownPlatform(); > } > > This is how the code looks like! > > Thanks > > -- -- v8-users mailing list v8-users@googlegroups.com http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-users/2eb1cb96-774d-4e38-bc46-32c2ddb01ab6n%40googlegroups.com.