To reproduce:
$ gn gen //out/gn-msan '--args=is_msan=true msan_track_origins=2 is_debug=false is_component_build=false symbol_level=1 dcheck_always_on=true' --check
$ ninja -C out/gn-msan cc_unittests
$ ./out/gn-msan/cc_unittests --gtest_filter=RegionTest.IsEmpty
$ ./out/gn-msan/cc_unittests --gtest_filter=RegionTest.IsEmpty
IMPORTANT DEBUGGING NOTE: batches of tests are run inside their
own process. For debugging a test inside a debugger, use the
--gtest_filter=<your_test_name> flag along with
--single-process-tests.
Using sharding settings from environment. This is shard 0/1
Using 1 parallel jobs.
Uninitialized bytes in __interceptor_fopen at offset 0 inside [0x70600003ad40, 42)
==14597==WARNING: MemorySanitizer: use-of-uninitialized-value
#0 0x7f8ccc0fa2b6 in XauGetBestAuthByAddr /build/buildd/libxau-1.0.8/build/../AuGetBest.c:79
#1 0x7f8cccdf51b3 (/usr/lib/x86_64-linux-gnu/libxcb.so.1+0xd1b3)
#2 0x7f8cccdf53bc (/usr/lib/x86_64-linux-gnu/libxcb.so.1+0xd3bc)
#3 0x7f8cccdf4fe3 in xcb_connect_to_display_with_auth_info (/usr/lib/x86_64-linux-gnu/libxcb.so.1+0xcfe3)
#4 0x7f8cd1b04329 in _XConnectXCB /build/buildd/libx11-1.6.2/build/src/../../src/xcb_disp.c:78
#5 0x7f8cd1af588e in XOpenDisplay /build/buildd/libx11-1.6.2/build/src/../../src/OpenDis.c:129
#6 0x4d898af in gfx::OpenNewXDisplay() out/gn-msan/../../ui/gfx/x/x11_types.cc:29:10
#7 0x4d89622 in gfx::GetXDisplay() out/gn-msan/../../ui/gfx/x/x11_types.cc:19:15
#8 0x3a0e4b1 in InitializeOneOff out/gn-msan/../../ui/gl/gl_surface_x11.cc:79:8
#9 0x3a0e4b1 in gfx::GLSurface::InitializeOneOffInternal() out/gn-msan/../../ui/gl/gl_surface_x11.cc:257
#10 0x39a52cc in gfx::GLSurface::InitializeOneOffImplementation(gfx::GLImplementation, bool, bool, bool) out/gn-msan/../../ui/gl/gl_surface.cc:75:43
#11 0x3a3e13a in gfx::GLSurfaceTestSupport::InitializeOneOff() out/gn-msan/../../ui/gl/test/gl_surface_test_support.cc:60:3
#12 0x2f3cff4 in cc::CCTestSuite::Initialize() out/gn-msan/../../cc/test/cc_test_suite.cc:21:3
#13 0x37586de in base::TestSuite::Run() out/gn-msan/../../base/test/test_suite.cc:218:3
#14 0x3794201 in Run out/gn-msan/../../base/callback.h:397:12
#15 0x3794201 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback<int (), (base::internal::CopyMode)1> const&, int, int, bool, base::Callback<void (), (base::internal::CopyMode)1> const&) out/gn-msan/../../base/test/launcher/unit_test_launcher.cc:206
#16 0x3793a27 in base::LaunchUnitTests(int, char**, base::Callback<int (), (base::internal::CopyMode)1> const&) out/gn-msan/../../base/test/launcher/unit_test_launcher.cc:445:10
#17 0x2f3d572 in main out/gn-msan/../../cc/test/run_all_unittests.cc:12:10
#18 0x7f8cce166ec4 in __libc_start_main /build/eglibc-3GlaMS/eglibc-2.19/csu/libc-start.c:287
#19 0x62a894 in _start (/usr/local/google/home/krasin/chr25/src/out/gn-msan/cc_unittests+0x62a894)
Uninitialized value was created by a heap allocation
#0 0x64f532 in __interceptor_malloc (/usr/local/google/home/krasin/chr25/src/out/gn-msan/cc_unittests+0x64f532)
#1 0x7f8ccc0fa040 in XauFileName /build/buildd/libxau-1.0.8/build/../AuFileName.c:72
SUMMARY: MemorySanitizer: use-of-uninitialized-value /build/buildd/libxau-1.0.8/build/../AuGetBest.c:79 in XauGetBestAuthByAddr
It seems that some kind of a blacklist is not applied if built with GN.
Given that GYP is about to be retired, MSAN buildbot will become permanently red. So, it's probably a good idea to fix MSAN + GN combo.
Comment 1 by euge...@chromium.org
, May 4 2016