460 Calls to nsDll::Load() on windows

VERIFIED INVALID

Status

()

defect
P3
major
VERIFIED INVALID
20 years ago
20 years ago

People

(Reporter: dp, Assigned: dp)

Tracking

Trunk
x86
Windows NT
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [Perf])

Assignee

Description

20 years ago
Rickg is seeing about 4000 dll loads at the windows api level. He will add
quantify logs to help us track this.
Assignee

Updated

20 years ago
Blocks: 7251
Status: NEW → ASSIGNED
Summary: 4000 dll loads to windows → [PERF] 4000 dll loads to windows
Target Milestone: M7

Comment 1

20 years ago
maybe related to this bug....?

I install a daily build to say, d:\sm990609\x86rel\.. and run it a few times.
I then install the next daily build to d:\sm990610\x86rel\....
the first time I start I see a stream of about 400 messages that look like

nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
xpinstall.dll) FAILED with error: error 0
**************************************************
**************************************************
nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
xpinstall.dll) FAILED with error: error 0
**************************************************
**************************************************
nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
xpinstall.dll) FAILED with error: error 0
**************************************************
**************************************************
nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
xpprofile32.dll) FAILED with error: error 0
**************************************************
**************************************************
nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
unicharutil.dll) FAILED with error: error 0
**************************************************
**************************************************
nsComponentManager: Load(d:/builds/seamonkey/ns/dist/win32_o.obj/bin/components/
xpprofile32.dll) FAILED with error: error 0
**************************************************

then apprunner exits without drawing a window...

so we might be passing along registry data in the installer/zip file...
We might also be choking on the accumulation of registry info hanging
around build to build... I think I've also seen these error message paths
show up as paths for my local build installation directories...
Assignee

Updated

20 years ago
Assignee: dp → rickg
Status: ASSIGNED → NEW
Target Milestone: M7 → M8
Assignee

Comment 2

20 years ago
Assigning it to rickg to get a quantify trace proving this.

Updated

20 years ago
Assignee: rickg → dp

Comment 3

20 years ago
DP -- first, let me make it clear that I reported multiple 100's of calls to
DLLLoad, not multiple 1000's. Chris probably made a typo.  Second, I've included
the quantify data I'm seeing below. Note that this is only for viewer, and I
expect apprunner to be somewhat worse. I only mentioned it because it
seemed excessive (in the output window) -- and not that I think it's
taking the bulk of the startup time. Here's the quantify log

Running on viewer here are the report for nsDLL::Load

Function: nsDll::Load
Calls: 420
Function time: 9.19 usec (0.00% of .Root.)
F+D time: 6668490.25 usec (6.98% of .Root.)
Avg F time: 0.03 usec
Min F time: 0.03 usec
Max F time: 0.05 usec
Module: S:\mozilla\dist\WIN32_D.OBJ\bin\XPCOM.DLL
Source file: s:\mozilla\xpcom\components\xcDll.cpp
Measurement: Line
Hidden functions: (None)
Assignee

Updated

20 years ago
Summary: [PERF] 4000 dll loads to windows → [PERF] 460 Calls to nsDll::Load() on windows
Assignee

Updated

20 years ago
Status: NEW → ASSIGNED
Assignee

Comment 4

20 years ago
Thanks rickg.

Updated

20 years ago
Summary: [PERF] 460 Calls to nsDll::Load() on windows → 460 Calls to nsDll::Load() on windows
Whiteboard: [Perf]
chofmann: the situation you describe is covered by bug 8682.
Assignee

Updated

20 years ago
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
Assignee

Comment 6

20 years ago
nsDll::Load() returns immediately if the dll it abstracts is already loaded.

Updated

20 years ago
Status: RESOLVED → VERIFIED

Comment 7

20 years ago
Verified Invalid

Updated

19 years ago
No longer blocks: 7251
You need to log in before you can comment on or make changes to this bug.