Closed Bug 1398188 Opened 7 years ago Closed 7 years ago

UTM Remover with e10s enabled uses tons of memory

Categories

(WebExtensions :: General, defect)

55 Branch
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: nich, Unassigned)

References

Details

(Whiteboard: [MemShrink:P3])

Attachments

(1 file)

302.52 KB, application/x-gzip
Details
Attached file memory-report.json.gz
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Build ID: 20170824053622

Steps to reproduce:

Win10 x64, FF 55.0.3 x64.  e10s set to enabled, 7 content process limit. i5 4690k, 16GB RAM, 32GB Virtual Memory

When Firefox is open for a while with lots of tabs open, RAM usage skyrockets.

Anecdotally, Buzzfeed pages open/loaded into memory tend to make it worse; tab sits there constantly loading, but this could be an interaction with an addon.


Actual results:

Firefox RAM usage spikes, using all VM.  CPU usage typically sits high too, on UI process + whichever process is hogging memory.
When RAM is maxed, system freezes/stutters while GC is run and flushed.  This can cycle for a couple of hours, or it can cause Win10 to close the program saying it needs to close something to find more free memory.
Manually force-closing firefox and restarting resolves issue temporarily.
Killing runaway process thread temporarily relieves the issue.


Expected results:

Firefox behaves.
Summary: multi-process ram usage virtual memory → [FF 55.0.3] multi-process enabled, ram/virtual memory runaway
Severity: normal → critical
Whiteboard: [MemShrink]
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0 
Firefox: 57.0a1, Build ID 20170824053622

I have tested this issue on latest Firefox release (55.0.3) and I think I managed to reproduce part of it by opening 100 tabs containing Reddit and Buzzfeed pages.
In my case the used memory from all the processes sumed approximately 6GB. 

Nich, could you please post a copy of about:support and if possible, please list some of the websites you are encountering this on. 

And lastly, can you please retest this issue on latest Nightly build using a new clean Firefox profile, maybe even safe mode, to eliminate custom settings as a possible cause (https://goo.gl/AR5o9d)?

Mike, can you please give us your opinion regarding the memory report from the attachment?
Flags: needinfo?(nich)
Flags: needinfo?(mconley)
This session has been active for a large part of today: I've mediated CPU/RAM usage with process killing.  I'm grabbing the nightly now, will see how it fares later today in safe mode on a new profile.

Buzzfeed is the most common source of problems, but I don't think the only.  As it stands now, with a fresh buzzfeed tab open, CPU utilisation is sitting around 50%, and memory usage is very slowly increasing increasing by ~1GB every 2 minutes or so.  Forcing the tab to stop continuously loading cuts resource usage dramatically.


Application Basics
------------------

Name: Firefox
Version: 55.0.3
Build ID: 20170824053622
Update Channel: release
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
OS: Windows_NT 10.0
Multiprocess Windows: 6/6 (Enabled by user)
Web Content Processes: 7/7
Google Key: Found
Mozilla Location Service Key: Found
Safe Mode: false

Crash Reports for the Last 3 Days
---------------------------------

All Crash Reports (including 6 pending crashes in the given time range)

Firefox Features
----------------

Name: Application Update Service Helper
Version: 2.0
ID: aushelper@mozilla.org

Name: Click-to-Play staged rollout
Version: 1.2
ID: clicktoplay-rollout@mozilla.org

Name: Firefox Screenshots
Version: 10.12.0
ID: screenshots@mozilla.org

Name: Follow-on Search Telemetry
Version: 0.9.1
ID: followonsearch@mozilla.com

Name: Multi-process staged rollout
Version: 2.0
ID: e10srollout@mozilla.org

Name: Pocket
Version: 1.0.5
ID: firefox@getpocket.com

Name: Shield Recipe Client
Version: 55.1
ID: shield-recipe-client@mozilla.org

Name: Web Compat
Version: 1.1
ID: webcompat@mozilla.org

Extensions
----------

Name: about:addons-memory
Version: 12
Enabled: true
ID: about-addons-memory@tn123.org

Name: Add-on Compatibility Reporter
Version: 2.2.4
Enabled: true
ID: compatibility@addons.mozilla.org

Name: Enhanced Steam
Version: 9.5
Enabled: true
ID: jid1-YdiFiTEkQgInxA@jetpack

Name: IMGoogle
Version: 2.3
Enabled: true
ID: igoogle@eros.man

Name: NoScript
Version: 5.0.9
Enabled: true
ID: {73a6fe31-595d-460b-a920-fcc0f8843232}

Name: nzbFox
Version: 1.4.5
Enabled: true
ID: nzbFox@github

Name: Print Edit
Version: 18.3
Enabled: true
ID: printedit@DW-dev

Name: Re-Pagination
Version: 2016.08.03
Enabled: true
ID: {6072cb90-a0bd-11da-a746-0800200c9a66}

Name: Reddit Enhancement Suite
Version: 5.8.4
Enabled: true
ID: jid1-xUfzOsOFlzSOXg@jetpack

Name: Tab Groups
Version: 2.1.4
Enabled: true
ID: tabgroups@quicksaver

Name: Tab Wheel Scroll
Version: 20170104.7.46
Enabled: true
ID: tabscroll@mthamil

Name: Test Pilot
Version: 2.0.2-dev-1c11ce2
Enabled: true
ID: @testpilot-addon

Name: uBlock Origin
Version: 1.14.4
Enabled: true
ID: uBlock0@raymondhill.net

Name: UTM Remover
Version: 1.0.0
Enabled: true
ID: utm-remover@localhost.localdomain

Name: Video DownloadHelper
Version: 6.3.1
Enabled: true
ID: {b9db16a4-6edc-47ec-a1f4-b86292ed211d}

Name: Wayback Machine
Version: 1.8.1
Enabled: true
ID: wayback_machine@mozilla.org

Name: Activity Stream
Version: 1.14.3
Enabled: false
ID: @activity-streams

Name: Adblock Plus
Version: 2.9.1
Enabled: false
ID: {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}

Name: BugMeNot Plugin
Version: 3.1-signed.1-signed
Enabled: false
ID: {987311C6-B504-4aa2-90BF-60CC49808D42}

Name: Dark Background and Light Text
Version: 0.5.11
Enabled: false
ID: jid1-QoFqdK4qzUfGWQ@jetpack

Name: eCleaner
Version: 1.4.1-signed.1-let-fixed.1-signed
Enabled: false
ID: {c72c0c73-4eb0-4fb3-af0f-074e97326cfd}

Name: Flash Block
Version: 4.20.13.1-signed.1-signed
Enabled: false
ID: {95ab36d4-fb6f-47b0-8b8d-e5f3bd547953}

Name: Flashblock
Version: 1.5.20
Enabled: false
ID: {3d7eb24f-2740-49df-8937-200b1cc08f8a}

Name: Greasemonkey
Version: 3.11
Enabled: false
ID: {e4a8a97b-f2ed-450b-b12d-ee082ba24781}

Name: I must not fear!
Version: 1.1
Enabled: false
ID: david@chimicon.com

Name: Image-Show-Hide
Version: 0.2.8.1.1-signed.1-signed
Enabled: false
ID: {92A24891-BA14-4e89-9FFD-07FFBE4334EE}

Name: Live HTTP headers
Version: 0.17.1-signed.1-signed
Enabled: false
ID: {8f8fe09b-0bd3-4470-bc1b-8cad42b8203a}

Name: Longdesc
Version: 0.8.1-signed.1-signed
Enabled: false
ID: {31098840-93C0-4382-BD3F-B3B112FDD601}

Name: MEGA
Version: 3.15.6
Enabled: false
ID: firefox@mega.co.nz

Name: nzbdStatus
Version: 2.0b7
Enabled: false
ID: sabnzbdstatus@dq5studios.com

Name: Pocket
Version: 3.0.6.1-signed
Enabled: false
ID: isreaditlater@ideashower.com

Name: Reload Tab On Double-Click
Version: 1.2.1.1-signed.1-signed
Enabled: false
ID: {aede9b05-c23c-479b-a90e-9146ed62d377}

Name: Show Picture
Version: 4.0
Enabled: false
ID: LDshowpicture_plashcor@gmail.com

Name: TabCounter
Version: 1.0.3.1-signed.1-signed
Enabled: false
ID: tabcounter@felipc.com

Name: The Addon Bar (restored)
Version: 3.2.9-compat-fixed-4
Enabled: false
ID: the-addon-bar@GeekInTraining-GiT

Name: User Agent Switcher
Version: 0.7.3.1-signed.1-signed
Enabled: false
ID: {e968fc70-8f95-4ab9-9e79-304de2a71ee1}

Graphics
--------

Features
Compositing: Direct3D 11
Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled
WebGL 1 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 00000000192d3492) EGL_VERSION: 1.4 (ANGLE 2.1.0.dec065540d5f) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses
WebGL 1 Driver Renderer: Google Inc. -- ANGLE (NVIDIA GeForce GTX 970 Direct3D11 vs_5_0 ps_5_0)
WebGL 1 Driver Version: OpenGL ES 2.0 (ANGLE 2.1.0.dec065540d5f)
WebGL 1 Driver Extensions: GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object
WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc MOZ_WEBGL_depth_texture
WebGL 2 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 00000000192d3492) EGL_VERSION: 1.4 (ANGLE 2.1.0.dec065540d5f) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses
WebGL 2 Driver Renderer: Google Inc. -- ANGLE (NVIDIA GeForce GTX 970 Direct3D11 vs_5_0 ps_5_0)
WebGL 2 Driver Version: OpenGL ES 3.0 (ANGLE 2.1.0.dec065540d5f)
WebGL 2 Driver Extensions: GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_norm16 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3 GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object
WebGL 2 Extensions: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query MOZ_debug OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context MOZ_WEBGL_lose_context MOZ_WEBGL_compressed_texture_s3tc
Audio Backend: wasapi
DirectWrite: true (10.0.15063.483)
GPU #1
Active: Yes
Description: NVIDIA GeForce GTX 970
Vendor ID: 0x10de
Device ID: 0x13c2
Driver Version: 22.21.13.8541
Driver Date: 8-21-2017
Drivers: C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumdx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_ce1961376673184c\nvldumd.dll
Subsys ID: 00000000
RAM: 4096

Diagnostics
AzureCanvasAccelerated: 0
AzureCanvasBackend (UI Process): skia
AzureContentBackend (UI Process): skia
AzureFallbackCanvasBackend (UI Process): cairo
GPUProcessPid: 9252
failures: CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
Decision Log
DIRECT2D:
disabled by user: Disabled via gfx.direct2d.disabled
WEBRENDER:
opt-in by default: WebRender is an opt-in feature
unavailable by runtime: Build doesn't include WebRender
Crash Guard Disabled Features
OpenGL: Reset on Next Restart

Failure Log
(#0): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#363): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#364): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#365): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#366): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#367): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#368): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#369): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#370): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#371): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#372): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#373): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#374): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#375): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0
(#376): CP+[GFX1-]: [D2D1.1] Failed to obtain a device for DrawTargetD2D1::Init(ID3D11Texture2D*, SurfaceFormat).
(#377): CP+[GFX1-]: Could not borrow DrawTarget (D3D11) 0

Important Modified Preferences
------------------------------

accessibility.typeaheadfind.flashBar: 0
browser.cache.disk.capacity: 358400
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.hashstats_reported: 1
browser.cache.disk.smart_size_cached_value: 358400
browser.cache.disk.smart_size.first_run: false
browser.cache.disk.smart_size.use_old_max: false
browser.cache.frecency_experiment: 3
browser.download.folderList: 0
browser.download.manager.alertOnEXEOpen: true
browser.link.open_newwindow.restriction: 0
browser.link.open_newwindow.restriction.backup: 2
browser.places.importDefaults: false
browser.places.migratePostDataAnnotations: false
browser.places.smartBookmarksVersion: 8
browser.places.updateRecentTagsUri: false
browser.search.param.yahoo-fr: chrf-ytbm
browser.search.param.yahoo-fr-cjkt: chrf-ytbm
browser.search.param.yahoo-type: ${8}
browser.search.useDBForOrder: true
browser.sessionstore.upgradeBackup.latestBuildID: 20170824053622
browser.startup.homepage: about:home
browser.startup.homepage_override.buildID: 20170824053622
browser.startup.homepage_override.mstone: 55.0.3
browser.tabs.insertRelatedAfterCurrent: false
browser.tabs.insertRelatedAfterCurrent.backup: true
browser.tabs.loadFolderAndReplace: false
browser.tabs.onTop: false
browser.tabs.remote.autostart: true
browser.urlbar.maxRichResults: 12
browser.urlbar.searchSuggestionsChoice: true
browser.urlbar.userMadeSearchSuggestionsChoice: true
dom.apps.lastUpdate.buildID: 20161019084923
dom.apps.lastUpdate.mstone: 49.0.2
dom.apps.reset-permissions: true
dom.ipc.processCount: 7
dom.max_chrome_script_run_time: 40
dom.max_script_run_time: 40
dom.mozApps.used: true
dom.push.userAgentID: 1a23077431ba4625848694cac33b9809
dom.w3c_touch_events.expose: false
extensions.checkCompatibility: false
extensions.checkCompatibility.10.0: false
extensions.checkCompatibility.10.0a: false
extensions.checkCompatibility.11.0: false
extensions.checkCompatibility.11.0a: false
extensions.checkCompatibility.12.0: false
extensions.checkCompatibility.12.0a: false
extensions.checkCompatibility.3.6: false
extensions.checkCompatibility.3.6b: false
extensions.checkCompatibility.3.6p: false
extensions.checkCompatibility.3.6pre: false
extensions.checkCompatibility.3.7a: false
extensions.checkCompatibility.3.7a6pre: false
extensions.checkCompatibility.4.0: false
extensions.checkCompatibility.4.0b: false
extensions.checkCompatibility.4.0b2pre: false
extensions.checkCompatibility.4.0p: false
extensions.checkCompatibility.4.0pre: false
extensions.checkCompatibility.4.2: false
extensions.checkCompatibility.4.2a: false
extensions.checkCompatibility.4.2b: false
extensions.checkCompatibility.4.2p: false
extensions.checkCompatibility.4.2pre: false
extensions.checkCompatibility.5.0: false
extensions.checkCompatibility.5.0a: false
extensions.checkCompatibility.5.0b: false
extensions.checkCompatibility.5.0p: false
extensions.checkCompatibility.5.0pre: false
extensions.checkCompatibility.6.0: false
extensions.checkCompatibility.6.0a: false
extensions.checkCompatibility.7.0: false
extensions.checkCompatibility.7.0a: false
extensions.checkCompatibility.8.0: false
extensions.checkCompatibility.8.0a: false
extensions.checkCompatibility.9.0: false
extensions.checkCompatibility.9.0a: false
extensions.checkCompatibility.nightly: false
extensions.lastAppVersion: 55.0.3
font.internaluseonly.changed: false
general.useragent.extra.microsoftdotnet: ( .NET CLR 3.5.30729; .NET4.0C)
gfx.crash-guard.d3d11layers.appVersion: 55.0.2
gfx.crash-guard.d3d11layers.deviceID: 0x13c2
gfx.crash-guard.d3d11layers.driverVersion: 22.21.13.8494
gfx.crash-guard.d3d11layers.feature-d2d: false
gfx.crash-guard.d3d11layers.feature-d3d11: true
gfx.crash-guard.glcontext.gfx.driver-init.direct3d11-angle: true
gfx.crash-guard.glcontext.gfx.driver-init.webgl-angle: true
gfx.crash-guard.glcontext.gfx.driver-init.webgl-angle-force-d3d11: false
gfx.crash-guard.glcontext.gfx.driver-init.webgl-angle-force-warp: false
gfx.crash-guard.glcontext.gfx.driver-init.webgl-angle-try-d3d11: true
gfx.crash-guard.status.: 3
gfx.crash-guard.status.d3d11layers: 2
gfx.crash-guard.status.d3d11video: 2
gfx.crash-guard.status.d3d9video: 2
gfx.crash-guard.status.glcontext: 3
gfx.direct2d.disabled: true
gfx.direct3d.last_used_feature_level_idx: 0
gfx.direct3d.prefer_10_1: true
gfx.driver-init.appVersion: 42.0
gfx.driver-init.deviceID: 0x13c2
gfx.driver-init.driverVersion: 10.18.13.5362
gfx.driver-init.feature-d2d: true
gfx.driver-init.feature-d3d11: true
gfx.driver-init.status: 2
media.benchmark.vp9.fps: 219
media.benchmark.vp9.versioncheck: 2
media.gmp-eme-adobe.abi: x86-msvc-x64
media.gmp-eme-adobe.lastUpdate: 1489710237
media.gmp-eme-adobe.version: 17
media.gmp-gmpopenh264.abi: x86_64-msvc-x64
media.gmp-gmpopenh264.lastUpdate: 1501040816
media.gmp-gmpopenh264.version: 1.6
media.gmp-manager.buildID: 20170824053622
media.gmp-manager.lastCheck: 1505273216
media.gmp-widevinecdm.abi: x86_64-msvc-x64
media.gmp-widevinecdm.lastUpdate: 1501040825
media.gmp-widevinecdm.version: 1.4.8.903
media.gmp.storage.version.observed: 1
media.hardware-video-decoding.failed: false
media.webrtc.debug.aec_log_dir: c:\temp
media.webrtc.debug.log_file: c:\temp\WebRTC.log
network.cookie.prefsMigrated: true
network.dns.disablePrefetch: true
network.http.speculative-parallel-limit: 0
network.predictor.cleaned-up: true
network.predictor.enabled: false
network.prefetch-next: false
places.database.lastMaintenance: 1504962204
places.history.expiration.transient_current_max_pages: 124584
plugin.disable_full_page_plugin_for_types: application/pdf
plugin.importedState: true
plugin.state.npctrl: 2
plugin.state.npystate: 0
plugins.click_to_play: false
plugins.ctprollout.cohort: excluded
plugins.ctprollout.cohortSample: 0.523033
print.print_printer: HP L7590
print.printer_Foxit_Reader_PDF_Printer.print_bgcolor: false
print.printer_Foxit_Reader_PDF_Printer.print_bgimages: false
print.printer_Foxit_Reader_PDF_Printer.print_duplex: -437918235
print.printer_Foxit_Reader_PDF_Printer.print_edge_bottom: 0
print.printer_Foxit_Reader_PDF_Printer.print_edge_left: 0
print.printer_Foxit_Reader_PDF_Printer.print_edge_right: 0
print.printer_Foxit_Reader_PDF_Printer.print_edge_top: 0
print.printer_Foxit_Reader_PDF_Printer.print_evenpages: true
print.printer_Foxit_Reader_PDF_Printer.print_footercenter:
print.printer_Foxit_Reader_PDF_Printer.print_footerleft: &PT
print.printer_Foxit_Reader_PDF_Printer.print_footerright: &D
print.printer_Foxit_Reader_PDF_Printer.print_headercenter:
print.printer_Foxit_Reader_PDF_Printer.print_headerleft: &T
print.printer_Foxit_Reader_PDF_Printer.print_headerright: &U
print.printer_Foxit_Reader_PDF_Printer.print_in_color: true
print.printer_Foxit_Reader_PDF_Printer.print_margin_bottom: 0.5
print.printer_Foxit_Reader_PDF_Printer.print_margin_left: 0.5
print.printer_Foxit_Reader_PDF_Printer.print_margin_right: 0.5
print.printer_Foxit_Reader_PDF_Printer.print_margin_top: 0.5
print.printer_Foxit_Reader_PDF_Printer.print_oddpages: true
print.printer_Foxit_Reader_PDF_Printer.print_orientation: 0
print.printer_Foxit_Reader_PDF_Printer.print_page_delay: 50
print.printer_Foxit_Reader_PDF_Printer.print_paper_data: 9
print.printer_Foxit_Reader_PDF_Printer.print_paper_height: 297.00
print.printer_Foxit_Reader_PDF_Printer.print_paper_name:
print.printer_Foxit_Reader_PDF_Printer.print_paper_size_unit: 1
print.printer_Foxit_Reader_PDF_Printer.print_paper_width: 210.00
print.printer_Foxit_Reader_PDF_Printer.print_resolution: 600
print.printer_Foxit_Reader_PDF_Printer.print_reversed: false
print.printer_Foxit_Reader_PDF_Printer.print_scaling: 1.00
print.printer_Foxit_Reader_PDF_Printer.print_shrink_to_fit: true
print.printer_Foxit_Reader_PDF_Printer.print_to_file: false
print.printer_Foxit_Reader_PDF_Printer.print_unwriteable_margin_bottom: 0
print.printer_Foxit_Reader_PDF_Printer.print_unwriteable_margin_left: 0
print.printer_Foxit_Reader_PDF_Printer.print_unwriteable_margin_right: 0
print.printer_Foxit_Reader_PDF_Printer.print_unwriteable_margin_top: 0
print.printer_HP_L7590.print_bgcolor: false
print.printer_HP_L7590.print_bgimages: false
print.printer_HP_L7590.print_command:
print.printer_HP_L7590.print_downloadfonts: false
print.printer_HP_L7590.print_edge_bottom: 0
print.printer_HP_L7590.print_edge_left: 0
print.printer_HP_L7590.print_edge_right: 0
print.printer_HP_L7590.print_edge_top: 0
print.printer_HP_L7590.print_evenpages: true
print.printer_HP_L7590.print_footercenter:
print.printer_HP_L7590.print_footerleft: &PT
print.printer_HP_L7590.print_footerright: &D
print.printer_HP_L7590.print_headercenter:
print.printer_HP_L7590.print_headerleft: &T
print.printer_HP_L7590.print_headerright: &U
print.printer_HP_L7590.print_in_color: true
print.printer_HP_L7590.print_margin_bottom: 0.5
print.printer_HP_L7590.print_margin_left: 0.5
print.printer_HP_L7590.print_margin_right: 0.5
print.printer_HP_L7590.print_margin_top: 0.5
print.printer_HP_L7590.print_oddpages: true
print.printer_HP_L7590.print_orientation: 0
print.printer_HP_L7590.print_page_delay: 50
print.printer_HP_L7590.print_pagedelay: 500
print.printer_HP_L7590.print_paper_data: 9
print.printer_HP_L7590.print_paper_height: 11.00
print.printer_HP_L7590.print_paper_size_type: 0
print.printer_HP_L7590.print_paper_size_unit: 1
print.printer_HP_L7590.print_paper_width: 8.50
print.printer_HP_L7590.print_reversed: false
print.printer_HP_L7590.print_scaling: 1.00
print.printer_HP_L7590.print_shrink_to_fit: true
print.printer_HP_L7590.print_to_file: false
print.printer_HP_L7590.print_unwriteable_margin_bottom: 0
print.printer_HP_L7590.print_unwriteable_margin_left: 0
print.printer_HP_L7590.print_unwriteable_margin_right: 0
print.printer_HP_L7590.print_unwriteable_margin_top: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_bgcolor: false
print.printer_HP_Officejet_Pro_L7500_Series.print_bgimages: false
print.printer_HP_Officejet_Pro_L7500_Series.print_command:
print.printer_HP_Officejet_Pro_L7500_Series.print_downloadfonts: false
print.printer_HP_Officejet_Pro_L7500_Series.print_edge_bottom: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_edge_left: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_edge_right: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_edge_top: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_evenpages: true
print.printer_HP_Officejet_Pro_L7500_Series.print_footercenter:
print.printer_HP_Officejet_Pro_L7500_Series.print_footerleft: &PT
print.printer_HP_Officejet_Pro_L7500_Series.print_footerright: &D
print.printer_HP_Officejet_Pro_L7500_Series.print_headercenter:
print.printer_HP_Officejet_Pro_L7500_Series.print_headerleft: &T
print.printer_HP_Officejet_Pro_L7500_Series.print_headerright: &U
print.printer_HP_Officejet_Pro_L7500_Series.print_in_color: true
print.printer_HP_Officejet_Pro_L7500_Series.print_margin_bottom: 0.5
print.printer_HP_Officejet_Pro_L7500_Series.print_margin_left: 0.5
print.printer_HP_Officejet_Pro_L7500_Series.print_margin_right: 0.5
print.printer_HP_Officejet_Pro_L7500_Series.print_margin_top: 0.5
print.printer_HP_Officejet_Pro_L7500_Series.print_oddpages: true
print.printer_HP_Officejet_Pro_L7500_Series.print_orientation: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_page_delay: 50
print.printer_HP_Officejet_Pro_L7500_Series.print_pagedelay: 500
print.printer_HP_Officejet_Pro_L7500_Series.print_paper_data: 9
print.printer_HP_Officejet_Pro_L7500_Series.print_paper_height: 11.00
print.printer_HP_Officejet_Pro_L7500_Series.print_paper_size_type: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_paper_size_unit: 1
print.printer_HP_Officejet_Pro_L7500_Series.print_paper_width: 8.50
print.printer_HP_Officejet_Pro_L7500_Series.print_reversed: false
print.printer_HP_Officejet_Pro_L7500_Series.print_scaling: 1.00
print.printer_HP_Officejet_Pro_L7500_Series.print_shrink_to_fit: true
print.printer_HP_Officejet_Pro_L7500_Series.print_to_file: false
print.printer_HP_Officejet_Pro_L7500_Series.print_unwriteable_margin_bottom: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_unwriteable_margin_left: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_unwriteable_margin_right: 0
print.printer_HP_Officejet_Pro_L7500_Series.print_unwriteable_margin_top: 0
print.printer_HP_Officejet_Pro_L7590.print_bgcolor: false
print.printer_HP_Officejet_Pro_L7590.print_bgimages: false
print.printer_HP_Officejet_Pro_L7590.print_colorspace:
print.printer_HP_Officejet_Pro_L7590.print_command:
print.printer_HP_Officejet_Pro_L7590.print_downloadfonts: false
print.printer_HP_Officejet_Pro_L7590.print_duplex: -2123890605
print.printer_HP_Officejet_Pro_L7590.print_edge_bottom: 0
print.printer_HP_Officejet_Pro_L7590.print_edge_left: 0
print.printer_HP_Officejet_Pro_L7590.print_edge_right: 0
print.printer_HP_Officejet_Pro_L7590.print_edge_top: 0
print.printer_HP_Officejet_Pro_L7590.print_evenpages: true
print.printer_HP_Officejet_Pro_L7590.print_footercenter:
print.printer_HP_Officejet_Pro_L7590.print_footerleft: &PT
print.printer_HP_Officejet_Pro_L7590.print_footerright: &D
print.printer_HP_Officejet_Pro_L7590.print_headercenter:
print.printer_HP_Officejet_Pro_L7590.print_headerleft: &T
print.printer_HP_Officejet_Pro_L7590.print_headerright: &U
print.printer_HP_Officejet_Pro_L7590.print_in_color: true
print.printer_HP_Officejet_Pro_L7590.print_margin_bottom: 0.5
print.printer_HP_Officejet_Pro_L7590.print_margin_left: 0.5
print.printer_HP_Officejet_Pro_L7590.print_margin_right: 0.5
print.printer_HP_Officejet_Pro_L7590.print_margin_top: 0.5
print.printer_HP_Officejet_Pro_L7590.print_oddpages: true
print.printer_HP_Officejet_Pro_L7590.print_orientation: 0
print.printer_HP_Officejet_Pro_L7590.print_page_delay: 50
print.printer_HP_Officejet_Pro_L7590.print_paper_data: 9
print.printer_HP_Officejet_Pro_L7590.print_paper_height: 11.00
print.printer_HP_Officejet_Pro_L7590.print_paper_name:
print.printer_HP_Officejet_Pro_L7590.print_paper_size_type: 0
print.printer_HP_Officejet_Pro_L7590.print_paper_size_unit: 1
print.printer_HP_Officejet_Pro_L7590.print_paper_width: 8.50
print.printer_HP_Officejet_Pro_L7590.print_plex_name:
print.printer_HP_Officejet_Pro_L7590.print_resolution: -2123890620
print.printer_HP_Officejet_Pro_L7590.print_resolution_name:
print.printer_HP_Officejet_Pro_L7590.print_reversed: false
print.printer_HP_Officejet_Pro_L7590.print_scaling: 1.00
print.printer_HP_Officejet_Pro_L7590.print_shrink_to_fit: false
print.printer_HP_Officejet_Pro_L7590.print_to_file: false
print.printer_HP_Officejet_Pro_L7590.print_unwriteable_margin_bottom: 0
print.printer_HP_Officejet_Pro_L7590.print_unwriteable_margin_left: 0
print.printer_HP_Officejet_Pro_L7590.print_unwriteable_margin_right: 0
print.printer_HP_Officejet_Pro_L7590.print_unwriteable_margin_top: 0
print.printer_Microsoft_Print_to_PDF.print_bgcolor: false
print.printer_Microsoft_Print_to_PDF.print_bgimages: false
print.printer_Microsoft_Print_to_PDF.print_duplex: -437918235
print.printer_Microsoft_Print_to_PDF.print_edge_bottom: 0
print.printer_Microsoft_Print_to_PDF.print_edge_left: 0
print.printer_Microsoft_Print_to_PDF.print_edge_right: 0
print.printer_Microsoft_Print_to_PDF.print_edge_top: 0
print.printer_Microsoft_Print_to_PDF.print_evenpages: true
print.printer_Microsoft_Print_to_PDF.print_footercenter:
print.printer_Microsoft_Print_to_PDF.print_footerleft: &PT
print.printer_Microsoft_Print_to_PDF.print_footerright: &D
print.printer_Microsoft_Print_to_PDF.print_headercenter:
print.printer_Microsoft_Print_to_PDF.print_headerleft: &T
print.printer_Microsoft_Print_to_PDF.print_headerright: &U
print.printer_Microsoft_Print_to_PDF.print_in_color: true
print.printer_Microsoft_Print_to_PDF.print_margin_bottom: 0.5
print.printer_Microsoft_Print_to_PDF.print_margin_left: 0.5
print.printer_Microsoft_Print_to_PDF.print_margin_right: 0.5
print.printer_Microsoft_Print_to_PDF.print_margin_top: 0.5
print.printer_Microsoft_Print_to_PDF.print_oddpages: true
print.printer_Microsoft_Print_to_PDF.print_orientation: 0
print.printer_Microsoft_Print_to_PDF.print_page_delay: 50
print.printer_Microsoft_Print_to_PDF.print_paper_data: 1
print.printer_Microsoft_Print_to_PDF.print_paper_height: -1.00
print.printer_Microsoft_Print_to_PDF.print_paper_name:
print.printer_Microsoft_Print_to_PDF.print_paper_size_unit: 0
print.printer_Microsoft_Print_to_PDF.print_paper_width: -1.00
print.printer_Microsoft_Print_to_PDF.print_resolution: 600
print.printer_Microsoft_Print_to_PDF.print_reversed: false
print.printer_Microsoft_Print_to_PDF.print_scaling: 1.00
print.printer_Microsoft_Print_to_PDF.print_shrink_to_fit: true
print.printer_Microsoft_Print_to_PDF.print_to_file: false
print.printer_Microsoft_Print_to_PDF.print_unwriteable_margin_bottom: 0
print.printer_Microsoft_Print_to_PDF.print_unwriteable_margin_left: 0
print.printer_Microsoft_Print_to_PDF.print_unwriteable_margin_right: 0
print.printer_Microsoft_Print_to_PDF.print_unwriteable_margin_top: 0
privacy.cpd.downloads: false
privacy.cpd.formdata: false
privacy.cpd.history: false
privacy.cpd.sessions: false
privacy.sanitize.migrateClearSavedPwdsOnExit: true
privacy.sanitize.migrateFx3Prefs: true
privacy.sanitize.timeSpan: 0
security.dialog_enable_delay: 900
security.sandbox.content.tempDirSuffix: {4f629489-adf6-47f3-9bc1-afb21d842651}
security.ssl.errorReporting.automatic: true
security.warn_viewing_mixed.show_once: false
services.sync.declinedEngines: adblockplus
services.sync.engine.greasemonkey: true
services.sync.engine.prefs.modified: false
services.sync.lastPing: 1505293694
services.sync.lastSync: Thu Sep 14 2017 01:09:05 GMT+1000 (AUS Eastern Standard Time)
services.sync.numClients: 2
storage.vacuum.last.index: 1
storage.vacuum.last.places.sqlite: 1503643794
ui.osk.debug.keyboardDisplayReason: IKPOS: Touch screen not found.

user.js Preferences
-------------------

Your profile folder contains a user.js file, which includes preferences that were not created by Firefox.

Important Locked Preferences
----------------------------

Places Database
---------------

JavaScript
----------

Incremental GC: true

Accessibility
-------------

Activated: false
Prevent Accessibility: 0

Library Versions
----------------

NSPR
Expected minimum version: 4.15
Version in use: 4.15

NSS
Expected minimum version: 3.31.1
Version in use: 3.31.1

NSSSMIME
Expected minimum version: 3.31.1
Version in use: 3.31.1

NSSSSL
Expected minimum version: 3.31.1
Version in use: 3.31.1

NSSUTIL
Expected minimum version: 3.31.1
Version in use: 3.31.1

Experimental Features
---------------------

Sandbox
-------

Content Process Sandbox Level: 1
Effective Content Process Sandbox Level: 1
Flags: needinfo?(nich)
Initial response from the nightly, old profile:  no issues, a dozen Buzfeed tabs quickly load and then stop loading, rather than infinite load animation/activity.

Will see how it fares after a day of being beaten with a stick.
Read a few pages on buzzfeed, a youtube video or two, and it's... well, CPU is sitting around 50% again, and memory is showing clear rises and falls.  FF is starting to stutter a little.

I'll try with a fresh profile/safemode.

about:performance is showing everything performing well, threads are using low-ish memory, but the parent thread is the one sitting at 3GB+ and high CPU.
Product: Firefox → Core
Eric - can you have a look at this?
Flags: needinfo?(erahm)
This is pretty crazy:

> 15,317.22 MB (100.0%) -- explicit
> ├──14,958.16 MB (97.66%) ── heap-unclassified

My best guess is an extension behaving badly. nich it sounds like you were going to do this already but a few steps you could take to help us debug this:

1) Try to repro in safe mode, if it's fixed then try disabling add-ons until you find the offending one (if there is one)
2) Test with the default number of content processes (we want to add more eventually, but right now 7 is not a supported configuration in 55)
3) Try a Firefox refresh [1] (if you feel comfortable with that)

If all of that fails it might be helpful to test with 56 (beta) or 57 (nightly). If you go that route please be sure to test with an empty profile (or a copy of your own), I don't want to you to end up with a trashed profile!

[1] https://support.mozilla.org/en-US/kb/refresh-firefox-reset-add-ons-and-settings
Flags: needinfo?(erahm) → needinfo?(nich)
Release (55.x), old/normal profile, safe mode, and using 'recommended performance settings' which I guess is using the default of 1 process (as an aside, I thought it defaulted to 4).  Seems ok after about half an hour.

Safemode, 7 processes, and it's stayed pretty stable over the last hour, tho' CPU usage still seems a bit high (who knows, maybe just ads).  Killed the process with the highest CPU/memory usage, and it's behaving as expected - even after reloading/refreshing all of the tabs that closed, it's sitting at low memory usage and almost no CPU usage.

Back out of safemode but with every extension disabled, so flash works - 7 processes.  Seemed ok for a while, re-enabled all of my usual extensions.  Within about half an hour, CPU usage is sitting ~50% and memory is trending upwards.  It looks like the CPU usage itself may be an issue with ublock Origin and having so many tabs open at once.  Changing FF to use 1 content process instead of 7 seems to make no difference there.

Restarting the browser to see what happens, and within 10 minutes, it's the same old same old.  High CPU usage, memory usage is stable at first, but after not-long, is cycling up over 13gb, and Buzfeed tabs won't stop loading.  Disable Noscript, swap it back down to 1 process, hit restart, and no change to CPU usage but memory looks more stable - Buzzfeed tabs still won't stop loading.

A few more combinations of extensions enabled and disabled, and I can have ublock and noscript running, along with everything else apart from UTM Remover, and it seems relatively stable over the last 15 minutes.


The best I can work out is that the extension, UTM Remover, is what is causing some issues with Buzzfeed tabs continually loading.  As soon as it's disabled, those tabs finish loading and CPU usage falls to where expected.  I'll keep trying to repro over the next day or so, tho', as I think the memory/processor usage issue has been occurring for me longer than I've had that particular extension installed.

Once I can narrow it down to a specific issue, I'll try on beta/nightly, with a new profile.
Flags: needinfo?(nich)
Have not been able to reproduce since disabling that addon.
Also note a.m.o indicates this addon is compatible with 57 when in fact it is not.
Component: Untriaged → Add-ons
Product: Core → Tech Evangelism
Summary: [FF 55.0.3] multi-process enabled, ram/virtual memory runaway → UTM Remover with e10s enabled uses tons of memory
Whiteboard: [MemShrink] → [MemShrink:P3]
Version: 55 Branch → Firefox 55
Sorry it took me so long to get to this. :( Sounds like the culprit (the UTM Remover add-on) has been identified.

(In reply to Eric Rahm [:erahm] (please no mozreview requests) from comment #9)
> Also note a.m.o indicates this addon is compatible with 57 when in fact it
> is not.

Are you sure? I just pulled the add-on source, and it seems like it should be compatible with 57.
Flags: needinfo?(mconley)
(In reply to Mike Conley (:mconley) (:⚙️) - Backlogged on reviews from comment #10)
> Sorry it took me so long to get to this. :( Sounds like the culprit (the UTM
> Remover add-on) has been identified.
> 
> (In reply to Eric Rahm [:erahm] (please no mozreview requests) from comment
> #9)
> > Also note a.m.o indicates this addon is compatible with 57 when in fact it
> > is not.
> 
> Are you sure? I just pulled the add-on source, and it seems like it should
> be compatible with 57.

I tried to install it on Nightly 57 and it failed due to not being compatible.
I can't believe I only just realised this, but in terms of the problem I had above, a relatively obvious explanation may be that the extension had issues with buzzfeed because buzzfeed insists on appending a UTM reference to every single page.  Delete it, hit enter, and it'll put a fresh one up.

I couldn't say what interaction it's having in 57+
(In reply to Eric Rahm [:erahm] (please no mozreview requests) from comment #11)
> 
> I tried to install it on Nightly 57 and it failed due to not being
> compatible.

Ah, yeah - the manifest.json sets the version limit to 56.

At any rate, this is starting to sound like a UTM Remover leak?

Hey TheOne, any possibility we could point the author of UTM Remover (https://addons.mozilla.org/en-US/firefox/addon/utm-remover/) at this bug?
Flags: needinfo?(awagner)
The add-on is fairly simple. All it does is register a listener and then uses it to clean up parameters from requests. Not sure why it's causing the memory problems, but it may be something that needs to be fixed on the WE side. Moving there for investigation.

I'll notify the developer about the max version issue and will also point them here.
Component: Add-ons → WebExtensions: Untriaged
Flags: needinfo?(awagner)
Product: Tech Evangelism → Toolkit
Version: Firefox 55 → 55 Branch
Can you reproduce with only that add-on enabled and all others disabled? Your last memory report has tons of add-ons enabled.
(In reply to nich from comment #12)
> I can't believe I only just realised this, but in terms of the problem I had
> above, a relatively obvious explanation may be that the extension had issues
> with buzzfeed because buzzfeed insists on appending a UTM reference to every
> single page.  Delete it, hit enter, and it'll put a fresh one up.

Indeed. Loading buzfeed with this extension installed seems to cause constant trashing due to the constant redirects: http://bit.ly/2yNW382

I'm not entirely sure how the pages load at all.

I can replicate the heap-unclassified growth, too, but it's a bit odd. Sometimes it goes down after a while. At one point it grew by 200MB after I'd closed all of the Reddit tabs and waited a while.

And we seem to continue consuming CPU time in webRequest code even after the tabs have all been closed.

When I disable the extension, heap-unclassified drops like a stone again, but stays at a few hundred MB.

My guess is that the main problem is the extension triggering infinite redirect loops, and just triggering more and more of them as more pages are loaded. The heap-unclassified usage is probably from all of the HTTP channel objects.


It's unclear to me at this point whether the remaining heap-unclassified after disabling the extension is a leak or not. I'll see if I can get some information out of DMD.
The heap growth is much slower with DMD enabled, but it looks like most of the remaining heap-unclassified allocations after the extension disabled are from the massive array of redirect principals and referrers generated for the channel LoadInfo.

I'm not sure what's keeping those alive after the extension has been disabled and the tabs have been closed.

Anyway, we should probably put a limit on the number of internal redirects we process in a redirect chain the way we do for HTTP redirects. That's probably a necko bug.
Slightly more detail: It turns out that this is actually caused by the extension redirecting URLs like this:

https://www.google-analytics.com/collect?v=1&_v=j63&a=1489674520&t=pageview&_s=1&dl=https%3A%2F%2Fwww.buzzfeed.com%2F%3Futm_term%3D.ivxOZg7jD&dp=%2F&ul=en-us&de=UTF-8&dt=BuzzFeed&sd=24-bit&sr=2560x1440&vp=2546x1315&je=0&_u=SACAAEABM~&jid=&gjid=&cid=1937412809.1506716967&tid=UA-1740781-1&_gid=24724154.1506716970&cd1=feedpager&z=1640575367

to themselves, since it tries to redirect any URL that contains "utm_", and assumes that its mangler will result in a different URL.

*That* needs to be fixed in the extension, and it should probably be blocked until it is. But we should also handle this better on the platform side.
Flags: needinfo?(jorge)
Depends on: 1404524
Status: UNCONFIRMED → NEW
Component: WebExtensions: Untriaged → Add-ons
Ever confirmed: true
Product: Toolkit → Tech Evangelism
Version: 55 Branch → Firefox 55
This listing was disabled and the developer was notified. The low usage doesn't warrant a block, I think, and hopefully the add-on will be updated to address this soon enough. Since the Firefox side of this was moved to a different bug, I'm closing this.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(jorge)
Resolution: --- → FIXED
Component: Add-ons → General
Product: Tech Evangelism → WebExtensions
Version: Firefox 55 → 55 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: