FireFox 57 spectacularly explodes with the amount of requested allocated memory

RESOLVED INCOMPLETE

Status

()

defect
RESOLVED INCOMPLETE
2 years ago
3 months ago

People

(Reporter: zxspectrum3579, Unassigned)

Tracking

57 Branch
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [MemShrink])

Attachments

(4 attachments)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
Build ID: 20180103231032

Steps to reproduce:

Regular browser use for a prolonged time. 
I used Send.FireFox.com, what could have triggered this. But I am not sure, this might be unrelated.


Actual results:

One of the FireFox.exe processes has crashed in an apparent Windows OOM error, hence leaving no traces in either sent or unsent crash errors. The browser has continued to operate once click-to-load tabs loaded the necessary pages anew, however, one of the FireFox.exe processes that were not killed has shown that it has 29 GB of allocated memory, even though it actually used only 1.8 GB, as task manager shows. Soon enough FireFox has deteriorated quickly visually and had to be manually closed to be restarted.

Before the restart, I was able to capture memory snapshot as well as short profiler recording for few seconds to see what the browser was doing in the background while on standby. 


Expected results:

Normal continuous operation.
Component: Untriaged → Memory Allocator
Product: Firefox → Core
Windows-generated warning:

Event 2001, Resource-Exhaustion-Detector:

... for firefox.exe (36400) was allocated 29356462080 bytes, for firefox.exe (28196) was allocated 2371203072 bytes and for firefox.exe (17188) was allocated 2200621056 bytes.

________________________________________________________________________________________________________

[XML]
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Microsoft-Windows-Resource-Exhaustion-Detector" Guid="{9988748E-C2E8-4054-85F6-0C3E1CAD2470}" /> 
  <EventID>2004</EventID> 
  <Version>0</Version> 
  <Level>3</Level> 
  <Task>3</Task> 
  <Opcode>33</Opcode> 
  <Keywords>0x8000000020000000</Keywords> 
  <TimeCreated SystemTime="2018-01-18T18:13:01.205817000Z" /> 
  <EventRecordID>10675</EventRecordID> 
  <Correlation ActivityID="{DD80558A-632C-48DD-91A4-CE99267E978A}" /> 
  <Execution ProcessID="57020" ThreadID="389352" /> 
  <Channel>System</Channel> 
  <Computer>User-PC</Computer> 
  <Security UserID="S-1-5-18" /> 
  </System>
- <UserData>
- <MemoryExhaustionInfo xmlns="http://www.microsoft.com/Windows/Resource/Exhaustion/Detector/Events">
- <SystemInfo>
  <SystemCommitLimit>57644974080</SystemCommitLimit> 
  <SystemCommitCharge>57555582976</SystemCommitCharge> 
  <ProcessCommitCharge>45160628224</ProcessCommitCharge> 
  <PagedPoolUsage>982802432</PagedPoolUsage> 
  <PhysicalMemorySize>25709809664</PhysicalMemorySize> 
  <PhysicalMemoryUsage>20373651456</PhysicalMemoryUsage> 
  <NonPagedPoolUsage>2034036736</NonPagedPoolUsage> 
  <Processes>219</Processes> 
  </SystemInfo>
- <PagedPoolInfo>
- <Tag_1>
  <Name>CM31</Name> 
  <PoolUsed>187289600</PoolUsed> 
  </Tag_1>
- <Tag_2>
  <Name>Toke</Name> 
  <PoolUsed>153587008</PoolUsed> 
  </Tag_2>
- <Tag_3>
  <Name>MmSt</Name> 
  <PoolUsed>65101440</PoolUsed> 
  </Tag_3>
  </PagedPoolInfo>
- <NonPagedPoolInfo>
- <Tag_1>
  <Name>Proc</Name> 
  <PoolUsed>220913408</PoolUsed> 
  </Tag_1>
- <Tag_2>
  <Name>AfdB</Name> 
  <PoolUsed>158034208</PoolUsed> 
  </Tag_2>
- <Tag_3>
  <Name>StCx</Name> 
  <PoolUsed>136364832</PoolUsed> 
  </Tag_3>
  </NonPagedPoolInfo>
- <ProcessInfo>
- <Process_1>
  <Name>firefox.exe</Name> 
  <ID>36400</ID> 
  <CreationTime>2018-01-07T18:27:37.542580700Z</CreationTime> 
  <CommitCharge>29356462080</CommitCharge> 
  <HandleCount>3061</HandleCount> 
  <Version>57.0.4.6577</Version> 
  <TypeInfo>201</TypeInfo> 
  </Process_1>
- <Process_2>
  <Name>firefox.exe</Name> 
  <ID>28196</ID> 
  <CreationTime>2018-01-07T18:27:44.000151100Z</CreationTime> 
  <CommitCharge>2371203072</CommitCharge> 
  <HandleCount>974</HandleCount> 
  <Version>57.0.4.6577</Version> 
  <TypeInfo>210</TypeInfo> 
  </Process_2>
- <Process_3>
  <Name>firefox.exe</Name> 
  <ID>17188</ID> 
  <CreationTime>2018-01-07T18:27:41.871424100Z</CreationTime> 
  <CommitCharge>2200621056</CommitCharge> 
  <HandleCount>1193</HandleCount> 
  <Version>57.0.4.6577</Version> 
  <TypeInfo>219</TypeInfo> 
  </Process_3>
- <Process_4>
  <Name /> 
  <ID>0</ID> 
  <CreationTime>1601-01-01T00:00:00.000000000Z</CreationTime> 
  <CommitCharge>0</CommitCharge> 
  <HandleCount>0</HandleCount> 
  <Version>0.0.0.0</Version> 
  <TypeInfo>0</TypeInfo> 
  </Process_4>
- <Process_5>
  <Name /> 
  <ID>0</ID> 
  <CreationTime>1601-01-01T00:00:00.000000000Z</CreationTime> 
  <CommitCharge>0</CommitCharge> 
  <HandleCount>0</HandleCount> 
  <Version>0.0.0.0</Version> 
  <TypeInfo>0</TypeInfo> 
  </Process_5>
- <Process_6>
  <Name /> 
  <ID>0</ID> 
  <CreationTime>1601-01-01T00:00:00.000000000Z</CreationTime> 
  <CommitCharge>0</CommitCharge> 
  <HandleCount>0</HandleCount> 
  <Version>0.0.0.0</Version> 
  <TypeInfo>0</TypeInfo> 
  </Process_6>
  </ProcessInfo>
- <ExhaustionEventInfo>
  <Time>2018-01-18T18:12:28.688865700Z</Time> 
  </ExhaustionEventInfo>
  </MemoryExhaustionInfo>
  </UserData>
  </Event>
[/XML]
Windows-generated error:

Event 1000:

Name of the failed process: firefox.exe, version: 57.0.4.6577, timespamp: 0x5a4d7442
Name of the failed module: mozglue.dll, version: 57.0.4.6577, timespamp: 0x5a4d73e5
Code of exception: 0x80000003
Error off-set: 0x00000000000138c1
PID: 0x6e24

[XML]
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Application Error" /> 
  <EventID Qualifiers="0">1000</EventID> 
  <Level>2</Level> 
  <Task>100</Task> 
  <Keywords>0x80000000000000</Keywords> 
  <TimeCreated SystemTime="2018-01-18T19:00:58.038486900Z" /> 
  <EventRecordID>14808</EventRecordID> 
  <Channel>Application</Channel> 
  <Computer>User-PC</Computer> 
  <Security /> 
  </System>
- <EventData>
  <Data>firefox.exe</Data> 
  <Data>57.0.4.6577</Data> 
  <Data>5a4d7442</Data> 
  <Data>mozglue.dll</Data> 
  <Data>57.0.4.6577</Data> 
  <Data>5a4d73e5</Data> 
  <Data>80000003</Data> 
  <Data>00000000000138c1</Data> 
  <Data>6e24</Data> 
  <Data>01d387e5359395e7</Data> 
  <Data>C:\Program Files\Mozilla Firefox\firefox.exe</Data> 
  <Data>C:\Program Files\Mozilla Firefox\mozglue.dll</Data> 
  <Data>4b57f70a-1de9-4b77-bc66-7d89c3da1cc0</Data> 
  <Data /> 
  <Data /> 
  </EventData>
  </Event>
[/XML]

Moving this bug report about memory usage (which is not related to the memory allocator) to Untriaged.

Component: Memory Allocator → Untriaged
Product: Core → Firefox

That's 28GB of private memory coming through our allocator:

28,490.45 MB (100.0%) -- explicit
├──27,513.71 MB (96.57%) ── heap-unclassified

Are you still able to reproduce this?

Flags: needinfo?(zxspectrum3579)
Whiteboard: [MemShrink]

No, this specific phenomenon does not happen any more. I am witnessing a different issue which is about 100%-all-cores-busy CPU load (bug 1553074). So unless someone still has the giant memory use issues, this bug should be probably closed.

Flags: needinfo?(zxspectrum3579)

Okay lets close this for now.

Status: UNCONFIRMED → RESOLVED
Closed: 3 months ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.