From db70afedcaeecb46da1354e19d70c7e9f9b53ed4 Mon Sep 17 00:00:00 2001 From: Andrew McCreight Date: Tue, 26 Apr 2016 11:46:28 -0700 Subject: [PATCH] Bug 1227347, part 2 - Remove leak suppressions for content processes. r=erahm --- testing/mozbase/mozleak/mozleak/leaklog.py | 117 +-------------------- 1 file changed, 1 insertion(+), 116 deletions(-) diff --git a/testing/mozbase/mozleak/mozleak/leaklog.py b/testing/mozbase/mozleak/mozleak/leaklog.py index a29cdb6ac215..275efba315db 100644 --- a/testing/mozbase/mozleak/mozleak/leaklog.py +++ b/testing/mozbase/mozleak/mozleak/leaklog.py @@ -21,121 +21,6 @@ def _get_default_logger(): return log -# Do not add anything to this list, unless one of the existing leaks below -# has started to leak additional objects. This function returns a dict -# mapping the names of objects as reported to the XPCOM leak checker to an -# upper bound on the number of leaked objects of that kind that are allowed -# to appear in a content process leak report. -def expectedTabProcessLeakCounts(): - leaks = {} - - def appendExpectedLeakCounts(leaks2): - for obj, count in leaks2.iteritems(): - leaks[obj] = leaks.get(obj, 0) + count - - # Bug 1117203 - ImageBridgeChild is not shut down in tab processes. - appendExpectedLeakCounts({ - 'AsyncTransactionTrackersHolder': 1, - 'CondVar': 2, - 'IPC::Channel': 1, - 'MessagePump': 1, - 'Mutex': 2, - 'PImageBridgeChild': 1, - 'RefCountedMonitor': 1, - 'RefCountedTask': 2, - 'StoreRef': 1, - 'WaitableEventKernel': 1, - 'WeakReference': 1, - 'base::Thread': 1, - 'ipc::MessageChannel': 1, - 'nsTArray_base': 7, - 'nsThread': 1, - }) - - # Bug 1215265 - CompositorBridgeChild is not shut down. - appendExpectedLeakCounts({ - 'CompositorBridgeChild': 1, - 'CondVar': 1, - 'IPC::Channel': 1, - 'Mutex': 1, - 'PCompositorBridgeChild': 1, - 'RefCountedMonitor': 1, - 'RefCountedTask': 2, - 'StoreRef': 1, - 'WeakReference': 1, - 'ipc::MessageChannel': 1, - 'nsTArray_base': 2, - }) - - # Bug 1215265 - Windows-specific graphics leaks, maybe related to - # CompositorBridgeChild and/or ImageBridgeChild not being shut down. - if mozinfo.isWin: - # Windows leaks comment to all content processes. - # 2696 bytes leaked total on Win7. - appendExpectedLeakCounts({ - 'AsyncTransactionTrackersHolder': 1, - 'CompositableChild': 1, - 'Mutex': 1, - 'PCompositableChild': 1, - 'PImageContainerChild': 1, - 'SyncObject': 1, - 'WeakReference': 2, - }) - - # Various additional graphics-related Windows leaks in Mochitests. - # M2 leaks in dom/media/tests/mochitest/ipc/ - # dt1 leaks in devtools/client/animationinspector/test/browser_animation_animated_properties_displayed.js - # dt1 leaks in devtools/client/debugger/test/mochitest/ (additional leaks are intermittent?) - # dt2 leaks in devtools/client/inspector/computed/test/ - # dt8 leaks in devtools/shared/worker/tests/browser/ (additional leaks are intermittent?) - # gl leaks in dom/canvas/test/webgl-mochitest/ - appendExpectedLeakCounts({ - 'AsyncTransactionTracker': 1, - 'AsyncTransactionTrackersHolder': 4, - 'AsyncTransactionWaiter': 1, - 'CompositableChild': 3, - 'CompositableClient': 3, - 'CondVar': 5, - 'DXGID3D9TextureData': 1, - 'FdObj': 2, - 'GfxTextureWasteTracker': 1, - 'IPC::Message': 1, - 'ITextureClientRecycleAllocator': 1, - 'LayerTransactionChild': 5, - 'Mutex': 7, - 'PCompositableChild': 3, - 'PImageContainerChild': 3, - 'PLayerTransactionChild': 5, - 'PTextureChild': 5, - 'RemoveTextureFromCompositableTracker': 1, - 'SharedMemory': 5, - 'SyncObject': 5, - 'TextureChild': 5, - 'TextureClientHolder': 1, - 'TextureData': 5, - 'WeakReference': 10, - 'nsTArray_base': 17, - }) - - # Canvas mochitests leak even more textures, as seen in bug 1252677. - numExtraTextureLeaks = 4 - appendExpectedLeakCounts({ - 'CondVar': numExtraTextureLeaks, - 'Mutex': numExtraTextureLeaks, - 'PTextureChild': numExtraTextureLeaks, - 'SharedMemory': numExtraTextureLeaks, - 'TextureChild': numExtraTextureLeaks, - 'TextureData': numExtraTextureLeaks, - }) - - # dom/html/test/ mochitests leak even more stuff. - appendExpectedLeakCounts({ - 'WeakReference': 3 - }) - - return leaks - - def process_single_leak_file(leakLogFileName, processType, leakThreshold, ignoreMissingLeaks, log=None, stackFixer=None): @@ -155,7 +40,7 @@ def process_single_leak_file(leakLogFileName, processType, leakThreshold, log = log or _get_default_logger() processString = "%s process:" % processType - expectedLeaks = expectedTabProcessLeakCounts() if processType == 'tab' else {} + expectedLeaks = {} crashedOnPurpose = False totalBytesLeaked = None logAsWarning = False