Bug 1843354 Comment 2 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

For these signatures (with the OOM marker), in the Nightly crash reports the last error value is `ERROR_COMMITMENT_LIMIT`. It is likely that for most of these crashes, the reason we fail to load `dbghelp.dll` is the low memory condition itself (failure to commit additional pages for the DLL). I think that indeed the cleanest solution here would be to make `EnsureSymInitialized()` return `false` instead of crashing, if `dbghelp.dll` fails to load (with `LoadLibrary`). This should result in dispatching the underlying OOM crashes to their proper OOM signatures instead of these ones.

If we additionally want to guarantee the ability to print a stack here, we would have to preload `dbghelp.dll` during initialization (e.g. by calling `EnsureSymInitialized()`), so that we are sure that it is mapped before the low memory condition occurs. But, I don't think we need this guarantee here. We could also restrict the conditions under which `MOZ_DUMP_ASSERTION_STACK` is defined on Windows, but that's probably not needed either if failure to load `dbghelp.dll` is no longer fatal.
For these signatures (with the OOM marker), in the Nightly crash reports the last error value is `ERROR_COMMITMENT_LIMIT`. It is likely that for most of these crashes, the reason we fail to load `dbghelp.dll` is the low memory condition itself (failure to commit additional pages for the DLL). I think that indeed the cleanest solution here would be to make `EnsureSymInitialized()` return `false` instead of crashing, if `dbghelp.dll` fails to load (with `LoadLibrary`). This should result in dispatching the underlying crashes to their proper signatures instead of these ones.

If we additionally want to guarantee the ability to print a stack here, we would have to preload `dbghelp.dll` during initialization (e.g. by calling `EnsureSymInitialized()`), so that we are sure that it is mapped before the low memory condition occurs. But, I don't think we need this guarantee here. We could also restrict the conditions under which `MOZ_DUMP_ASSERTION_STACK` is defined on Windows, but that's probably not needed either if failure to load `dbghelp.dll` is no longer fatal.

Back to Bug 1843354 Comment 2