Closed Bug 1513674 Opened 5 years ago Closed 4 years ago

Twice-reported memory allocations in url-classifier code

Categories

(Toolkit :: Safe Browsing, defect, P2)

65 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: kats, Assigned: dimi)

References

Details

Attachments

(1 file)

+++ This bug was initially created as a clone of Bug #1513672 +++

I ran DMD today on a WR-enabled mac build to chase down bug 1491512 a bit more, and the DMD report told me about some twice-reported blocks. Attached is the full log. There is the entry below in safe browsing code. Full log is attached to bug 1513672.

Twice-reported {
  2 blocks in heap block record 4 of 11
  416 bytes (400 requested / 16 slop)
  Individual block sizes: 208 x 2
  0.00% of the heap (0.00% cumulative)
  5.45% of twice-reported (81.76% cumulative)
  Allocated at {
    #01: (no stack trace recorded due to --stacks=partial)
  }
  Reported at {
    #01: mozilla::dmd::ReportHelper(void const*, bool) (DMD.cpp:425, in libmozglue.dylib)
    #02: nsUrlClassifierPrefixSet::CollectReports(nsIHandleReportCallback*, nsISupports*, bool) (DMD.h:0, in XUL)
    #03: non-virtual thunk to nsUrlClassifierPrefixSet::CollectReports(nsIHandleReportCallback*, nsISupports*, bool) (nsUrlClassifierPrefixSet.cpp:0, in XUL)
    #04: mozilla::detail::RunnableFunction<nsMemoryReporterManager::DispatchReporter(nsIMemoryReporter*, bool, nsIHandleReportCallback*, nsISupports*, bool)::$_0>::Run() (nsMemoryReporterManager.cpp:1850, in XUL)
    #05: nsThread::ProcessNextEvent(bool, bool*) (nsThread.cpp:1144, in XUL)
    #06: NS_ProcessPendingEvents(nsIThread*, unsigned int) (nsThreadUtils.cpp:416, in XUL)
    #07: nsBaseAppShell::NativeEventCallback() (nsBaseAppShell.cpp:88, in XUL)
    #08: nsAppShell::ProcessGeckoEvents(void*) (nsAppShell.mm:465, in XUL)
  }
  Reported again at {
    #01: mozilla::dmd::ReportHelper(void const*, bool) (DMD.cpp:425, in libmozglue.dylib)
    #02: mozilla::safebrowsing::UrlClassifierMallocSizeOf(void const*) (VariableLengthPrefixSet.cpp:424, in XUL)
    #03: mozilla::safebrowsing::VariableLengthPrefixSet::SizeOfIncludingThis(unsigned long (*)(void const*)) const (VariableLengthPrefixSet.cpp:447, in XUL)
    #04: mozilla::safebrowsing::VariableLengthPrefixSet::CollectReports(nsIHandleReportCallback*, nsISupports*, bool) (VariableLengthPrefixSet.cpp:431, in XUL)
    #05: mozilla::detail::RunnableFunction<nsMemoryReporterManager::DispatchReporter(nsIMemoryReporter*, bool, nsIHandleReportCallback*, nsISupports*, bool)::$_0>::Run() (nsMemoryReporterManager.cpp:1850, in XUL)
    #06: nsThread::ProcessNextEvent(bool, bool*) (nsThread.cpp:1144, in XUL)
    #07: NS_ProcessPendingEvents(nsIThread*, unsigned int) (nsThreadUtils.cpp:416, in XUL)
    #08: nsBaseAppShell::NativeEventCallback() (nsBaseAppShell.cpp:88, in XUL)
  }
}
Whoops, cloned into the wrong component...
Component: ImageLib → Safe Browsing
Product: Core → Toolkit
Assignee: nobody → dlee
Status: NEW → ASSIGNED
Priority: -- → P2
Assignee: dlee → nobody
Status: ASSIGNED → NEW
Assignee: nobody → dlee
Status: NEW → ASSIGNED
Attachment #9159439 - Attachment description: Bug 1513674 - Do not collect memory report of fixed-length prefix set in variable-length prefix set → Bug 1513674 - Remove nsIMemoryReporter from fixed-length prefix. r?gcp
Pushed by dlee@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fc28751a49a3
Remove nsIMemoryReporter from fixed-length prefix. r=gcp
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: