New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 793708 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 644525
Owner: ----
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug

Blocked on:
issue 644525



Sign in to add a comment

Suspicious Windows build bot flake: FAILED: gen/v8/snapshot.cc snapshot_blob.bin

Project Member Reported by hajimehoshi@chromium.org, Dec 11 2017

Issue description

https://ci.chromium.org/buildbot/chromium.chrome/Google%20Chrome%20Win/24724

The error:

[35247/44920] ACTION //v8:run_mksnapshot(//build/toolchain/win:win_clang_x86)
FAILED: gen/v8/snapshot.cc snapshot_blob.bin 
C:/b/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe ../../v8/tools/run.py ./mksnapshot --turbo_instruction_scheduling --startup_src gen/v8/snapshot.cc --random-seed 314159265 --startup_blob snapshot_blob.bin
==== C stack trace ===============================
	v8::base::hash_value [0x0120A010+0] (C:\b\c\b\win_chrome\src\v8\src\base\functional.cc:97)
	v8::internal::ComputeFlagListHash [0x00E71456+374] (C:\b\c\b\win_chrome\src\v8\src\flags.cc:602)
	v8::internal::V8::InitializeOncePerProcessImpl [0x010D91E8+8] (C:\b\c\b\win_chrome\src\v8\src\v8.cc:57)
	v8::base::CallOnceImpl [0x0120F5EE+46] (C:\b\c\b\win_chrome\src\v8\src\base\once.cc:38)
	v8::base::CallOnce [0x010BC5C8+72] (C:\b\c\b\win_chrome\src\v8\src\base\once.h:89)
	v8::internal::V8::Initialize [0x010D91A2+18] (C:\b\c\b\win_chrome\src\v8\src\v8.cc:38)
	v8::V8::Initialize [0x00BEFE78+8] (C:\b\c\b\win_chrome\src\v8\src\api.cc:6400)
	main [0x00BE1270+160] (C:\b\c\b\win_chrome\src\v8\src\snapshot\mksnapshot.cc:165)
	__scrt_common_main_seh [0x012DC4BA+248] (f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)
	BaseThreadInitThunk [0x757F338A+18]
	RtlInitializeExceptionChain [0x76F29A02+99]
	RtlInitializeExceptionChain [0x76F299D5+54]
 

Comment 1 by kbr@chromium.org, Dec 11 2017

Components: Blink>JavaScript Infra>Goma Build
Could this be related to the random crashes of the brotli executable in  Issue 739916 ? Could something have changed in the compiler toolchain to cause (perhaps) uninitialized memory to result in random crashes?

Comment 2 by kbr@chromium.org, Dec 11 2017

Cc: h...@chromium.org thakis@chromium.org
+clang folks; not sure which compiler toolchain is used on this bot

Comment 3 by thakis@chromium.org, Dec 11 2017

it uses clang, but is there any reason to believe this should be due to a compiler bug rather than due to a v8 bug? most failures are due to code bugs.

Comment 4 by h...@chromium.org, Dec 11 2017

The last Clang update was on 21 November, so it seems more likely that it's something in v8 that's changed.
It's possible this is related to  bug 739916  (which is a duplicate of  bug 644525 ) but it's difficult to tell. The error reporting code in mksnapshot doesn't print the error code, and even then we'd really need to see the code bytes to be sure.

The unique signature of  bug 644525  is that we end up with code bytes that contain zero, which then causes a crash. And, relinking with no other changes solves the problem.

Disabling incremental linking for specific binaries may reduce the frequency, but it does not solve it. Linking of mksnapshot.exe is slow enough that we should leave incremental linking enabled.

TL;DR - we need a crash dump along with a copy of the binary that crashed and the PDB.

Components: -Infra>Platform>Buildbot

Comment 7 by falken@chromium.org, Dec 15 2017

Seemed to happen again in:
https://ci.chromium.org/buildbot/chromium/Win%20x64/17310
https://ci.chromium.org/buildbot/chromium.chrome/Google%20Chrome%20Win/24904

Output from Win 64:
FAILED: gen/v8/snapshot.cc snapshot_blob.bin 
C:/b/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe ../../v8/tools/run.py ./mksnapshot --turbo_instruction_scheduling --startup_src gen/v8/snapshot.cc --random-seed 314159265 --startup_blob snapshot_blob.bin
==== C stack trace ===============================
	v8::internal::compiler::MachineOperatorGlobalCache::MachineOperatorGlobalCache [0x000000013FE70003+8387]
	v8::base::CallOnceImpl [0x00000001403F6CA3+51]
	v8::internal::compiler::MachineOperatorBuilder::MachineOperatorBuilder [0x000000013FE6B4F0+112]
	v8::internal::compiler::RawMachineAssembler::RawMachineAssembler [0x000000013FE95453+147]
	v8::internal::compiler::CodeAssemblerState::CodeAssemblerState [0x000000013FD9B3BB+219]
	v8::internal::SetupIsolateDelegate::SetupBuiltinsInternal [0x00000001403B973E+42478]
	v8::internal::SetupIsolateDelegate::SetupBuiltinsInternal [0x00000001403AF203+179]
	v8::internal::Isolate::Init [0x000000014006B075+13557]
	v8::SnapshotCreator::SnapshotCreator [0x000000013FC79DF8+200]
	v8::V8::CreateSnapshotDataBlob [0x000000013FC7A960+80]
	main [0x000000013FC7132A+298]
	__scrt_common_main_seh [0x00000001404DD1C9+285] (f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)
	BaseThreadInitThunk [0x00000000779D59CD+13]
	RtlUserThreadStart [0x0000000077C0B891+33]

Output from Google Chrome Win:
FAILED: gen/v8/snapshot.cc snapshot_blob.bin 
C:/b/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe ../../v8/tools/run.py ./mksnapshot --turbo_instruction_scheduling --startup_src gen/v8/snapshot.cc --random-seed 314159265 --startup_blob snapshot_blob.bin

Comment 8 by falken@chromium.org, Dec 15 2017

Cc: -kbr@chromium.org peria@chromium.org
Tend to agree with c#3... peria@ is there a reason V8 snapshotting can still cause build failures? I feel like I've gotten these in the past and fixed by running `gn clean`.

Comment 9 by falken@chromium.org, Dec 15 2017

Cc: kbr@chromium.org
oops readd kbr

Comment 10 by kbr@chromium.org, Dec 15 2017

Cc: yangguo@chromium.org
CC'ing yangguo@ from V8 team; not sure who on V8 knows the snapshot generator the best.

Building the snapshot is the first time the V8 binary gets executed. So if the build is corrupted, this is often the first place that catches it. For some reason we get a crash. It is very deterministic, so I'm very surprised it would fail.

Is there any source of non-determinism on the windows bot that could cause arbitrary binary to crash? Maybe race conditions with writing compiled binaries out to disk and executing it? I'm just guessing here.

Comment 12 by kbr@chromium.org, Dec 15 2017

Blockedon: 644525
Aha. From the brotli.exe  Issue 739916  it looks like this may be the same linker bug as in  Issue 644525 .

What is the frequency of these crashes?
Status: Available (was: Untriaged)
Mergedinto: 644525
Status: Duplicate (was: Available)
Absent other information I have to assume that this is a duplicate of 644525. I am making progress on that bug although the most likely explanation is an OS bug, which is not exactly encouraging.

Sign in to add a comment