ozone_unittests fails to run under asan/lsan due to leaks |
|||
Issue descriptionI'm trying to add ozone_unittests to the cros asan/lsan bot. Many tests fail with leaks: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_chromeos_asan_rel_ng/15672 XdgVersionV6Test/WaylandPointerTest.Leave/0 XdgVersionV6Test/WaylandWindowTest.SetMaximizedFullscreenAndRestore/0 DrmOverlayValidatorTest.RejectBufferAllocationFail ScreenManagerTest.ShouldDissociateWindowOnControllerRemoval XdgVersionV5Test/WaylandWindowTest.SetMaximizedFullscreenAndRestore/0 XdgVersionV6Test/WaylandKeyboardTest.EventAutoRepeat/0 XdgVersionV5Test/WaylandWindowTest.SendsBoundsOnRequest/0 XdgVersionV6Test/WaylandKeyboardTest.ControlModifierKeypress/0 XdgVersionV6Test/WaylandWindowTest.RestoreBoundsAfterFullscreen/0 XdgVersionV5Test/WaylandWindowTest.CanDispatchEventToMenuWindowNonNested/0 XdgVersionV5Test/WaylandWindowTest.ConfigureEventWithNulledSize/0 DrmOverlayValidatorTest.OptimalFormatXRGB_MirroredControllers XdgVersionV5Test/WaylandTouchTest.KeypressAndMotion/0 XdgVersionV5Test/WaylandSurfaceFactoryTest.CanvasResize/0 XdgVersionV5Test/WaylandWindowTest.CanDispatchMouseEventFocus/0 XdgVersionV5Test/WaylandKeyboardTest.EventAutoRepeat/0 XdgVersionV6Test/WaylandKeyboardTest.ControlShiftModifiers/0 XdgVersionV6Test/WaylandPointerTest.ButtonReleaseAndCheckCapture/0 XdgVersionV6Test/WaylandWindowTest.OnAcceleratedWidgetDestroy/0 XdgVersionV5Test/WaylandWindowTest.RestoreBoundsAfterFullscreen/0 XdgVersionV5Test/WaylandKeyboardTest.ControlShiftModifiers/0 XdgVersionV6Test/WaylandPointerTest.ButtonPressAndCheckCapture/0 DrmOverlayValidatorTest.DontPromoteMoreLayersThanAvailablePlanes XdgVersionV6Test/WaylandWindowTest.CanDispatchMouseEventFocus/0 XdgVersionV6Test/WaylandKeyboardTest.NoEventAutoRepeatBeforeTimeout/0 XdgVersionV6Test/WaylandWindowTest.RestoreBoundsAfterMaximizeAndFullscreen/0 XdgVersionV5Test/WaylandWindowTest.DispatchEvent/0 XdgVersionV5Test/WaylandWindowTest.HasCaptureUpdatedOnPointerEvents/0 XdgVersionV6Test/WaylandKeyboardTest.NoEventAutoRepeatOnLeave/0 WaylandConnectionTest.UseUnstableVersion DrmOverlayValidatorTest.RejectYUVBuffersIfNotSupported_MirroredControllers XdgVersionV6Test/WaylandPointerTest.AxisVertical/0 XdgVersionV5Test/WaylandPointerTest.AxisVertical/0 XdgVersionV6Test/WaylandPointerTest.Motion/0 ScreenManagerTest.EnableControllerWhenWindowHasNoBuffer XdgVersionV5Test/WaylandWindowTest.SetTitle/0 XdgVersionV6Test/WaylandDataDeviceManagerTest.WriteToClipboard/0 XdgVersionV6Test/WaylandSurfaceFactoryTest.CanvasResize/0 XdgVersionV5Test/WaylandPointerTest.AxisHorizontal/0 XdgVersionV6Test/WaylandWindowTest.CanDispatchEventToMenuWindowNonNested/0 XdgVersionV5Test/WaylandWindowTest.CanDispatchMouseEventUnfocus/0 XdgVersionV5Test/WaylandWindowTest.RestoreBoundsAfterMaximize/0 HardwareDisplayPlaneManagerAtomicTest.SetColorCorrectionOnAllCrtcPlanes_OnePlaneMissingCtmProperty/0 XdgVersionV5Test/WaylandWindowTest.OnAcceleratedWidgetDestroy/0 XdgVersionV5Test/WaylandKeyboardTest.ControlModifierKeypress/0 XdgVersionV5Test/WaylandPointerTest.Leave/0 XdgVersionV5Test/WaylandDataDeviceManagerTest.WriteToClipboard/0 XdgVersionV6Test/WaylandWindowTest.Minimize/0 XdgVersionV6Test/WaylandDataDeviceManagerTest.IsSelectionOwner/0 XdgVersionV5Test/WaylandPointerTest.MotionDragged/0 XdgVersionV6Test/WaylandWindowTest.ConfigureEvent/0 XdgVersionV6Test/WaylandWindowTest.HasCaptureUpdatedOnPointerEvents/0 XdgVersionV6Test/WaylandKeyboardTest.AltModifierKeypress/0 XdgVersionV5Test/WaylandWindowTest.RestoreBoundsAfterMaximizeAndFullscreen/0 XdgVersionV5Test/WaylandKeyboardTest.Keypress/0 XdgVersionV5Test/WaylandWindowTest.ConfigureEvent/0 XdgVersionV6Test/WaylandWindowTest.MaximizeAndRestore/0 XdgVersionV6Test/WaylandKeyboardTest.Keypress/0 XdgVersionV6Test/WaylandKeyboardTest.CapsLockKeypress/0 DrmOverlayValidatorTest.RejectYUVBuffersIfNotSupported DrmOverlayValidatorTest.WindowWithNoController XdgVersionV5Test/WaylandPointerTest.Motion/0 XdgVersionV5Test/WaylandWindowTest.CreateAndDestroyNestedMenuWindow/0 XdgVersionV6Test/WaylandWindowTest.CreateAndDestroyMenuWindow/0 XdgVersionV6Test/WaylandWindowTest.RestoreBoundsAfterMaximize/0 XdgVersionV6Test/WaylandDataDeviceManagerTest.ReadFromClibpard/0 XdgVersionV6Test/WaylandSurfaceFactoryTest.Canvas/0 XdgVersionV6Test/WaylandWindowTest.CanDispatchMouseEventDefault/0 XdgVersionV6Test/WaylandWindowTest.CreateAndDestroyNestedMenuWindow/0 ScreenManagerTest.CheckControllerToWindowMappingWithSameBounds ScreenManagerTest.RejectBufferWithIncompatibleModifiers XdgVersionV5Test/WaylandKeyboardTest.ShiftModifierKeypress/0 XdgVersionV6Test/WaylandWindowTest.CanDispatchEventToMenuWindowNested/0 XdgVersionV5Test/WaylandWindowTest.OnActivationChanged/0 XdgVersionV5Test/WaylandPointerTest.ButtonPressAndCheckCapture/0 XdgVersionV5Test/WaylandPointerTest.ButtonReleaseAndCheckCapture/0 XdgVersionV5Test/WaylandKeyboardTest.NoEventAutoRepeatOnLeave/0 DrmOverlayValidatorTest.OverlayFormat_YUV XdgVersionV6Test/WaylandWindowTest.OnActivationChanged/0 XdgVersionV6Test/WaylandTouchTest.KeypressAndMotion/0 XdgVersionV6Test/WaylandWindowTest.ConfigureEventWithNulledSize/0 HardwareDisplayPlaneManagerAtomicTest.SetColorCorrectionOnAllCrtcPlanes_NoPlaneCtmProperty/0 XdgVersionV6Test/WaylandWindowTest.SetTitle/0 DrmOverlayValidatorTest.DontCollapseOverlayToPrimaryInFullScreen XdgVersionV6Test/WaylandPointerTest.MotionDragged/0 XdgVersionV5Test/WaylandWindowTest.MaximizeAndRestore/0 XdgVersionV5Test/WaylandKeyboardTest.AltModifierKeypress/0 XdgVersionV5Test/WaylandDataDeviceManagerTest.IsSelectionOwner/0 XdgVersionV6Test/WaylandPointerTest.AxisHorizontal/0 WaylandConnectionTest.Ping DrmWindowTest.CheckCursorSurfaceAfterChangingDevice XdgVersionV5Test/WaylandWindowTest.Minimize/0 XdgVersionV6Test/WaylandWindowTest.CanDispatchMouseEventUnfocus/0 XdgVersionV5Test/WaylandWindowTest.SetFullscreenAndRestore/0 DrmOverlayValidatorTest.OverlayFormat_XRGB ScreenManagerTest.CheckControllerToWindowMappingWithOverlappingWindows XdgVersionV6Test/WaylandKeyboardTest.ShiftModifierKeypress/0 XdgVersionV5Test/WaylandWindowTest.CanDispatchMouseEventDefault/0 WaylandConnectionTest.Output XdgVersionV5Test/WaylandDataDeviceManagerTest.ReadFromClibpard/0 HardwareDisplayPlaneManagerAtomicTest.SetColorCorrectionOnAllCrtcPlanes_Success/0 XdgVersionV5Test/WaylandWindowTest.CanDispatchEventToMenuWindowNested/0 XdgVersionV6Test/WaylandWindowTest.SetFullscreenAndRestore/0 XdgVersionV5Test/WaylandKeyboardTest.CapsLockKeypress/0 ScreenManagerTest.EnableControllerWhenWindowHasBuffer XdgVersionV5Test/WaylandWindowTest.CreateAndDestroyMenuWindow/0 XdgVersionV5Test/WaylandKeyboardTest.NoEventAutoRepeatBeforeTimeout/0 XdgVersionV6Test/WaylandWindowTest.DispatchEvent/0 DrmWindowTest.CheckCallbackOnFailedSwap DrmWindowTest.SetCursorImage XdgVersionV6Test/WaylandWindowTest.SendsBoundsOnRequest/0 XdgVersionV5Test/WaylandSurfaceFactoryTest.Canvas/0 I'm seeing two types of stacks: 1. ==21398==ERROR: LeakSanitizer: detected memory leaks Direct leak of 72 byte(s) in 1 object(s) allocated from: #0 0x4e3b8a in __interceptor_calloc /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_malloc_linux.cc:130:3 #1 0x2cccdfb in zalloc third_party/wayland/src/src/wayland-private.h:234:9 #2 0x2cccdfb in proxy_create third_party/wayland/src/src/wayland-client.c:334 #3 0x2cccdfb in create_outgoing_proxy third_party/wayland/src/src/wayland-client.c:559 #4 0x2cccdfb in wl_proxy_marshal_array_constructor_versioned third_party/wayland/src/src/wayland-client.c:644 #5 0x2ccd954 in wl_proxy_marshal_constructor_versioned third_party/wayland/src/src/wayland-client.c:772:9 #6 0x144c210 in wl_registry_bind third_party/wayland/include/protocol/wayland-client-protocol.h:1079:7 #7 0x144c210 in Bind<wl_data_device_manager> ui/ozone/platform/wayland/wayland_object.h:214 #8 0x144c210 in ui::WaylandConnection::Global(void*, wl_registry*, unsigned int, char const*, unsigned int) ui/ozone/platform/wayland/wayland_connection.cc:320 #9 0x7fb8012f9c7b in ffi_call_unix64 /build/libffi-ob8JkF/libffi-3.1~rc1+r3.0.13/build/../src/x86/unix64.S:76 2. Direct leak of 16384 byte(s) in 1 object(s) allocated from: #0 0x50fa42 in operator new[](unsigned long) /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cc:96:3 #1 0x5b8f82 in ui::MockDrmDevice::CreateDumbBuffer(SkImageInfo const&, unsigned int*, unsigned int*) ui/ozone/platform/drm/gpu/mock_drm_device.cc:336:18 #2 0x134b6c8 in ui::DrmBuffer::Initialize(SkImageInfo const&, bool) ui/ozone/platform/drm/gpu/drm_buffer.cc:52:14 #3 0x1397ac2 in ui::DrmWindow::UpdateCursorBuffers() ui/ozone/platform/drm/gpu/drm_window.cc:238:32 #4 0x1397371 in ui::DrmWindow::SetController(ui::HardwareDisplayController*) ui/ozone/platform/drm/gpu/drm_window.cc:217:3 #5 0x13d9e86 in ui::ScreenManager::UpdateControllerToWindowMapping() ui/ozone/platform/drm/gpu/screen_manager.cc:337:18 #6 0x13da09c in ui::ScreenManager::ConfigureDisplayController(scoped_refptr<ui::DrmDevice> const&, unsigned int, unsigned int, gfx::Point const&, _drmModeModeInfo const&) ui/ozone/platform/drm/gpu/screen_manager.cc:146:5 #7 0x5dd196 in ScreenManagerTest_ShouldDissociateWindowOnControllerRemoval_Test::TestBody() ui/ozone/platform/drm/gpu/screen_manager_unittest.cc:453:20 #8 0x9b94f2 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #9 0x9bb454 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2667:11 #10 0x9bc826 in testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2785:28 #11 0x9e1f26 in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5047:43 #12 0x9e1175 in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #13 0x148658a in RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2329:46 #14 0x148658a in base::TestSuite::Run() base/test/test_suite.cc:275 #15 0x148c97b in Run base/callback.h:96:12 #16 0x148c97b in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:225 #17 0x148c43f in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:576:10 #18 0x9f4524 in main mojo/edk/test/run_all_unittests.cc:46:10 #19 0x7f471ad29f44 in __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:287 Direct leak of 16384 byte(s) in 1 object(s) allocated from: #0 0x50fa42 in operator new[](unsigned long) /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cc:96:3 #1 0x5b8f82 in ui::MockDrmDevice::CreateDumbBuffer(SkImageInfo const&, unsigned int*, unsigned int*) ui/ozone/platform/drm/gpu/mock_drm_device.cc:336:18 #2 0x134b6c8 in ui::DrmBuffer::Initialize(SkImageInfo const&, bool) ui/ozone/platform/drm/gpu/drm_buffer.cc:52:14 #3 0x139794f in ui::DrmWindow::UpdateCursorBuffers() ui/ozone/platform/drm/gpu/drm_window.cc:238:32 #4 0x1397371 in ui::DrmWindow::SetController(ui::HardwareDisplayController*) ui/ozone/platform/drm/gpu/drm_window.cc:217:3 #5 0x13d9e86 in ui::ScreenManager::UpdateControllerToWindowMapping() ui/ozone/platform/drm/gpu/screen_manager.cc:337:18 #6 0x13da09c in ui::ScreenManager::ConfigureDisplayController(scoped_refptr<ui::DrmDevice> const&, unsigned int, unsigned int, gfx::Point const&, _drmModeModeInfo const&) ui/ozone/platform/drm/gpu/screen_manager.cc:146:5 #7 0x5dd196 in ScreenManagerTest_ShouldDissociateWindowOnControllerRemoval_Test::TestBody() ui/ozone/platform/drm/gpu/screen_manager_unittest.cc:453:20 #8 0x9b94f2 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #9 0x9bb454 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2667:11 #10 0x9bc826 in testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2785:28 #11 0x9e1f26 in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5047:43 #12 0x9e1175 in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #13 0x148658a in RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2329:46 #14 0x148658a in base::TestSuite::Run() base/test/test_suite.cc:275 #15 0x148c97b in Run base/callback.h:96:12 #16 0x148c97b in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:225 #17 0x148c43f in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:576:10 #18 0x9f4524 in main mojo/edk/test/run_all_unittests.cc:46:10 #19 0x7f471ad29f44 in __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:287 +dnicoara for MockDrmDevice::CreateDumbBuffer, +tonikitoo for WaylandConnection::Global
,
Jun 22 2018
For 2, MockDrmDevice::CreateDumbBuffer() should probably use SkSurface::MakeRasterDirectReleaseProc() instead with a release proc that delete[]s pixels?
,
Jun 22 2018
I will have a look at the stack (1). BTW, your GN args are chromeos specific dcheck_always_on = true goma_dir = "/b/swarming/w/ir/cache/goma/client" is_asan = true is_component_build = false is_debug = false is_lsan = true strip_absolute_paths_from_debug_symbols = true symbol_level = 1 target_os = "chromeos" # <-------- use_goma = true ... but it should also reproduce on linux/ozone, I imagine.
,
Jun 22 2018
I'll make a CL for the 2nd stack.
,
Jun 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3e45a7325784434e5b3540050c54feed2c658ed9 commit 3e45a7325784434e5b3540050c54feed2c658ed9 Author: Nico Weber <thakis@chromium.org> Date: Fri Jun 22 16:31:29 2018 Fix a memory leak in MockDrmDevice::CreateDumbBuffer(). Bug: 855588 Change-Id: If19e6d5131fd60796ad524852b5a974e71d8dc4d Reviewed-on: https://chromium-review.googlesource.com/1112041 Reviewed-by: Daniel Nicoara <dnicoara@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#569652} [modify] https://crrev.com/3e45a7325784434e5b3540050c54feed2c658ed9/ui/ozone/platform/drm/gpu/mock_drm_device.cc
,
Jun 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/65338c09a5e9cbf8eae281d52eefc14182e58a8a commit 65338c09a5e9cbf8eae281d52eefc14182e58a8a Author: Nico Weber <thakis@chromium.org> Date: Fri Jun 22 19:13:40 2018 Enable more tests on the cros memory bots. The motivation is to remove chromium_memory_chromiumos_asan_gtests in favor of linux_chromeos_rel_gtests, but when I tried doing that directly [1], I got many asan/lsan and msan reports for these tests. Some of them pass however, so I'd like to lock in the working ones while I work on fixing the broken ones. 1: https://chromium-review.googlesource.com/c/chromium/src/+/1110703 Adds to "Linux ChromiumOS MSan Tests" and "Linux Chromium OS ASan LSan Tests (1)" these tests: - chromevox_tests - gl_unittests_ozone (to asan/lsan only) - ozone_gl_unittests - ozone_x11_unittests - select_to_speak_extension_tests - views_mus_interactive_ui_tests Bug: 843511 Bug: 855573 , 855580 , 855588 Bug: 855584 , 855585 , 855583 Change-Id: I9402cd43d1d0ef95432eba8231ae79c936b4848b Reviewed-on: https://chromium-review.googlesource.com/1112037 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: John Budorick <jbudorick@chromium.org> Cr-Commit-Position: refs/heads/master@{#569725} [modify] https://crrev.com/65338c09a5e9cbf8eae281d52eefc14182e58a8a/testing/buildbot/chromium.memory.json [modify] https://crrev.com/65338c09a5e9cbf8eae281d52eefc14182e58a8a/testing/buildbot/test_suite_exceptions.pyl [modify] https://crrev.com/65338c09a5e9cbf8eae281d52eefc14182e58a8a/testing/buildbot/test_suites.pyl
,
Jun 23 2018
Stack 1 is all that remains to be done to let ozone_unittests run cleanly on the cros memory bots: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_chromeos_asan_rel_ng/15681 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_chromeos_msan_rel_ng/808
,
Jun 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e6339bf94c2791e14ee86ec1fbf8a0cca7c0feac commit e6339bf94c2791e14ee86ec1fbf8a0cca7c0feac Author: Daniele Castagna <dcastagna@chromium.org> Date: Sun Jun 24 14:12:41 2018 ozone/drm: Fix new-vs-free in unittest HardwareDisplayPlaneManagerUnittest allocated CTMs with new, while they are deleted with free. This patch fixes that so that we can run ozone_unittests with asan on trybots. Bug: 855588 Test: ozone_unittests Change-Id: If5827d38b34cb8df2f56c770e8f9d28c587c022a Reviewed-on: https://chromium-review.googlesource.com/1112964 Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#569927} [modify] https://crrev.com/e6339bf94c2791e14ee86ec1fbf8a0cca7c0feac/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_unittest.cc
,
Jun 24 2018
https://chromium-review.googlesource.com/c/chromium/src/+/1112961 fixes the leaks of type 1 but https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_chromeos_asan_rel_ng/15687 shows that a few leaks in WaylandWindowTest remain even after that. The stacks look like so: ==16475==ERROR: LeakSanitizer: detected memory leaks Direct leak of 16 byte(s) in 1 object(s) allocated from: #0 0x4e4833 in __interceptor_malloc /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_malloc_linux.cc:146:3 #1 0x2e65aae in wl_array_add third_party/wayland/src/src/wayland-util.c:126:11 #2 0x694668 in SetWlArrayWithState ui/ozone/platform/wayland/wayland_window_unittest.cc:76:32 #3 0x694668 in InitializeWlArrayWithActivatedState ui/ozone/platform/wayland/wayland_window_unittest.cc:82 #4 0x694668 in ui::WaylandWindowTest_MaximizeAndRestore_Test::TestBody() ui/ozone/platform/wayland/wayland_window_unittest.cc:134 #5 0x9ba8c2 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #6 0x9bc824 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2667:11 #7 0x9bdbf6 in testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2785:28 #8 0x9e32f6 in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5047:43 #9 0x9e2545 in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #10 0x16136fa in RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2329:46 #11 0x16136fa in base::TestSuite::Run() base/test/test_suite.cc:275 #12 0x1619ecb in Run base/callback.h:99:12 #13 0x1619ecb in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:225 #14 0x161998f in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:576:10 #15 0x9f5906 in main mojo/edk/test/run_all_unittests.cc:46:10 #16 0x7fb3ae869f44 in __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:287 Direct leak of 16 byte(s) in 1 object(s) allocated from: #0 0x4e4833 in __interceptor_malloc /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_malloc_linux.cc:146:3 #1 0x2e65aae in wl_array_add third_party/wayland/src/src/wayland-util.c:126:11 #2 0x693cb3 in SetWlArrayWithState ui/ozone/platform/wayland/wayland_window_unittest.cc:76:32 #3 0x693cb3 in InitializeWlArrayWithActivatedState ui/ozone/platform/wayland/wayland_window_unittest.cc:82 #4 0x693cb3 in ui::WaylandWindowTest_MaximizeAndRestore_Test::TestBody() ui/ozone/platform/wayland/wayland_window_unittest.cc:118 #5 0x9ba8c2 in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #6 0x9bc824 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2667:11 #7 0x9bdbf6 in testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2785:28 #8 0x9e32f6 in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5047:43 #9 0x9e2545 in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #10 0x16136fa in RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2329:46 #11 0x16136fa in base::TestSuite::Run() base/test/test_suite.cc:275 #12 0x1619ecb in Run base/callback.h:99:12 #13 0x1619ecb in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:225 #14 0x161998f in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:576:10 #15 0x9f5906 in main mojo/edk/test/run_all_unittests.cc:46:10 #16 0x7fb3ae869f44 in __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:287 SUMMARY: AddressSanitizer: 32 byte(s) leaked in 2 allocation(s). WaylandWindowTest::SetWlArrayWithState() calls wl_array_add(), but from what I can tell nothing in that file ever calls wl_array_release(). +msisov who added that code in https://chromium-review.googlesource.com/c/chromium/src/+/768681
,
Jun 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5e67f216b6f1d08708eec26adc361bf3a0fd8313 commit 5e67f216b6f1d08708eec26adc361bf3a0fd8313 Author: Daniele Castagna <dcastagna@chromium.org> Date: Sun Jun 24 20:56:06 2018 ozone/wayland: Fix wayland_data_device_manager leak Bug: 855588 Test: ozone_unittests Change-Id: I29ca5cc777d1e835bb2279959d9a390e2475025d Reviewed-on: https://chromium-review.googlesource.com/1112961 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Antonio Gomes <tonikitoo@igalia.com> Cr-Commit-Position: refs/heads/master@{#569936} [modify] https://crrev.com/5e67f216b6f1d08708eec26adc361bf3a0fd8313/ui/ozone/platform/wayland/wayland_data_device_manager.cc [modify] https://crrev.com/5e67f216b6f1d08708eec26adc361bf3a0fd8313/ui/ozone/platform/wayland/wayland_data_device_manager.h
,
Jun 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5ecf35f1ab2a0a4e2fda04595383231c251f8a9e commit 5ecf35f1ab2a0a4e2fda04595383231c251f8a9e Author: Nico Weber <thakis@chromium.org> Date: Mon Jun 25 01:50:22 2018 Enable more tests on the cros memory bots. Enable views_mus_unittests on both lsan/asan and on msan, it should pass now. Enable ozone_unittests and wayland_client_perftests on just msan (they don't pass on lsan/asan yet). With this, linux_chromeos_rel_specific_gtests_asan_bringup is identical to linux_chromeos_rel_specific_gtests and can be removed, and because of _that_, chromium_memory_chromiumos_asan_gtests is identical to linux_chromeos_rel_gtests and can also be removed. As a consequence, tests added to the cros rel bots will be added to the memory bots automatically going forward. TBR=kbr Bug: 843511 Bug: 855580 , 855588 , 855584 , 855585 , 855583 Change-Id: I6a28ebae4c9005ce508f8caef07679a1bb50285c Reviewed-on: https://chromium-review.googlesource.com/1112957 Reviewed-by: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#569949} [modify] https://crrev.com/5ecf35f1ab2a0a4e2fda04595383231c251f8a9e/testing/buildbot/chromium.memory.json [modify] https://crrev.com/5ecf35f1ab2a0a4e2fda04595383231c251f8a9e/testing/buildbot/test_suite_exceptions.pyl [modify] https://crrev.com/5ecf35f1ab2a0a4e2fda04595383231c251f8a9e/testing/buildbot/test_suites.pyl [modify] https://crrev.com/5ecf35f1ab2a0a4e2fda04595383231c251f8a9e/testing/buildbot/waterfalls.pyl
,
Jun 25 2018
This fixes the last leak and enables ozone_unittests on the lsan/asan bot: https://chromium-review.googlesource.com/c/chromium/src/+/1113658
,
Jun 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5509d727518cac161687124712cceb83467e6f87 commit 5509d727518cac161687124712cceb83467e6f87 Author: Nico Weber <thakis@chromium.org> Date: Mon Jun 25 20:29:29 2018 Fix last leak in ozone_unittests and run it on the cros lsan/asan bot. Introduce a move-only ScopedWlArray to make sure all wl_arrays in the tests get wl_array_release()d when they are no longer needed. Also rename SetWlArrayWithState() to AddStateToWlArray() since it appends to its argument and doesn't replace the contents (this part has no behavior change). TBR=kbr Bug: 855588 Change-Id: I384ca182b44c9cb864d2d3e94c8ed4f0a0a16f77 Reviewed-on: https://chromium-review.googlesource.com/1113658 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Robert Kroeger <rjkroege@chromium.org> Cr-Commit-Position: refs/heads/master@{#570160} [modify] https://crrev.com/5509d727518cac161687124712cceb83467e6f87/testing/buildbot/chromium.memory.json [modify] https://crrev.com/5509d727518cac161687124712cceb83467e6f87/testing/buildbot/test_suite_exceptions.pyl [modify] https://crrev.com/5509d727518cac161687124712cceb83467e6f87/ui/ozone/platform/wayland/wayland_window_unittest.cc
,
Jun 25 2018
Thanks to dcastagna for fixing 2 of the 4 issues! |
|||
►
Sign in to add a comment |
|||
Comment 1 by thakis@chromium.org
, Jun 22 2018