Closed Bug 1573274 Opened 7 months ago Closed 7 months ago

Need a non-RAII API for stack walking suppression in mozglue

Categories

(Core :: mozglue, task, P1)

Unspecified
Windows
task

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: aklotz, Assigned: aklotz)

References

Details

Attachments

(1 file)

The launcher process needs to be able to call into mozglue to indicate the beginning and end of a DLL load; we cannot use RAII for this, so I'd like to refactor this code into a non-RAII API, but still have the RAII variant call into it.

I'm guessing your description is just a copy of bug 1573273 (about DLL loads), but you meant to refer to AutoSuppressStackWalking?

To clarify: Would an early-exit from AutoSuppressStackWalking be enough, or do you require two separate functions?

Priority: -- → P2
Version: unspecified → Trunk

I need two separate functions.

Priority: P2 → P1
Summary: Need non-RAII API for stack walking suppression in mozglue → Need a non-RAII API for stack walking suppression in mozglue

While mozglue continues to be the correct location for calling the affected
code in this patch, the calls requiring stackwalk suppression will soon be
originating from firefox.exe via the launcher process.

mozglue will be supplying the luancher process with an interface that consists
of what are effectively "OnBeginDllLoad" and "OnEndDllLoad" callback
notifications; obviously an RAII class is not going to be useful for that case.

We still want to keep the RAII stuff around, however, since we still need it
for cases where we need to fall back to using the legacy DLL blocklist.

Pushed by aklotz@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/aff5ac855591
Add mozglue-only SuppressStackWalking and DesuppressStackWalking functions to StackWalk on Windows; r=glandium
Status: ASSIGNED → RESOLVED
Closed: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.