Closed Bug 1611603 Opened 5 years ago Closed 5 years ago

Cannot run minidump_stackwalk locally on Windows 10

Categories

(Firefox Build System :: Bootstrap Configuration, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1635834

People

(Reporter: emk, Assigned: gbrown)

References

Details

(Whiteboard: dev-prod-2020)

I saw this message when my local build crashed on running mochitest:

MINIDUMP_STACKWALK not set, can't process dump.

But https://hg.mozilla.org/build/tools/file/tip/breakpad/win32 is too old to run on the latest Windows 10:

      1 [main] minidump_stackwalk 11740 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer.  Please report this problem to
the public mailing list cygwin@cygwin.com

Although Cygwin already fixed this bug, the minidump_stackwalk.exe did not work with the latest Cygwin DLLs.

Where can I get the latest minidump_stackwalk binary for Windows?

Yes, that file is definitely outdated.

In continuous integration, many tasks currently download minidump_stackwalk from tooltool. However, that is changing in bug 1525218.

:glandium -- What's the best and/or most convenient way to obtain minidump_stackwalk binaries?

Flags: needinfo?(mh+mozilla)
See Also: → 1525218

I think ./mach bootstrap should setup minidump_stackwalk binary for us.

I found taskcluster/scripts/misc/build-minidump-stackwalk.sh and tried to build, but it also failed :(

 0:05.63 tools/crashreporter/minidump_stackwalk
 0:06.26 e:/m/mozilla-unified/toolkit/crashreporter/google-breakpad/src/common/path_helper.cc(33,10): fatal error: 'libgen.h' file not found
 0:06.26 #include <libgen.h>
 0:06.26          ^~~~~~~~~~
 0:06.27 1 error generated.
 0:06.29 mozmake.EXE[4]: *** [e:/m/mozilla-unified/config/rules.mk;746: path_helper.obj] Error 1
 0:06.29 mozmake.EXE[4]: *** Waiting for unfinished jobs....
 0:06.86 e:/m/mozilla-unified/tools/crashreporter/minidump_stackwalk/http_symbol_supplier.cc(35,10): fatal error: 'sys/time.h' file not found
 0:06.86 #include <sys/time.h>
 0:06.86          ^~~~~~~~~~~~
 0:06.89 1 error generated.
 0:06.91 mozmake.EXE[4]: *** [e:/m/mozilla-unified/config/rules.mk;746: http_symbol_supplier.obj] Error 1
 0:06.91 mozmake.EXE[3]: *** [e:/m/mozilla-unified/config/recurse.mk;74: tools/crashreporter/minidump_stackwalk/target-objects] Error 2
 0:06.91 mozmake.EXE[3]: *** Waiting for unfinished jobs....
 0:08.85     Finished release [optimized] target(s) in 3.27s
 0:08.95 mozmake.EXE[2]: *** [e:/m/mozilla-unified/config/recurse.mk;34: compile] Error 2
 0:08.95 mozmake.EXE[1]: *** [e:/m/mozilla-unified/config/rules.mk;394: default] Error 2
 0:08.95 mozmake.EXE: *** [client.mk;125: build] Error 2
 0:08.97 393 compiler warnings present.

(In reply to Masatoshi Kimura [:emk] from comment #2)

I think ./mach bootstrap should setup minidump_stackwalk binary for us.

That would make sense.

Component: General → Bootstrap Configuration
Flags: needinfo?(mh+mozilla)
Product: Testing → Firefox Build System
Version: Version 3 → unspecified

Then how can I obtain minidump_stackwalk at the moment? Given bug 1525218, there must be toolchain artifacts, but I could not find a way to download them.

$ ./mach artifact toolchain -v --from-build win32-minidump-stackwalk
 0:06.38 Could not find artifacts for a toolchain build named `win32-minidump-stackwalk`. Local commits and other changes in your checkout may cause this error. Try updating to a fresh checkout of mozilla-central to use artifact builds.

Do I have to run ./mach bootstrap to setup Artifact Mode first? But I have to build C++ sources...

Flags: needinfo?(mh+mozilla)

The old method (getting from tooltool) worked.

  1. Create a tooltool manifest:
[
  {
    "size": 1701376,
    "visibility": "public",
    "digest": "2bc729f9cedfba59b5c7a088f00d00fc078af3bd08e88ee41bbb1ea092038466f46589cef036e0d928249f6037fb22828f62e6d82a32d018f66ca92a834393c8",
    "algorithm": "sha512",
    "filename": "win32-minidump_stackwalk.exe"
  }
]
  1. ./mach artifact toolchain -v --tooltool-manifest <tooltool manifest above>
  2. Rename %userprofile%.mozbuild\toolchains\2bc729f9cedfba59b5c7a088f00d00fc078af3bd08e88ee41bbb1ea092038466f46589cef036e0d928249f6037fb22828f62e6d82a32d018f66ca92a834393c8 to win32-minidump_stackwalk.exe.

Leaving ni for the method getting from toolchain artifacts and leaving open for ./mach bootstrap.

"Local commits and other changes in your checkout may cause this error."

If your tree has modifications for any of the files in https://searchfox.org/mozilla-central/source/taskcluster/ci/toolchain/minidump_stackwalk.yml#13-23 , you'll have to revert them before running mach artifact.

Flags: needinfo?(mh+mozilla)

I'm running ./mach artifact toolchain on fresh copy of mozilla-central without any modification.

$ hg up central
8 files updated, 0 files merged, 0 files removed, 0 files unresolved

$ hg diff

$ ./mach artifact toolchain -v --from-build win32-minidump-stackwalk
 0:06.71 Could not find artifacts for a toolchain build named `win32-minidump-stackwalk`. Local commits and other changes in your checkout may cause this error. Try updating to a fresh checkout of mozilla-central to use artifact builds.
Flags: needinfo?(mh+mozilla)

Try hg status --ignored

Flags: needinfo?(mh+mozilla)

Still no luck :(

Depends on: 1635834

Now minidump_stackwalk is installed as part of 'mach bootstrap' -- you should find it in your .mozbuild directory.

'mach artifact toolchain --from-build ...' should also work, if desired.

Assignee: nobody → gbrown
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.