New issue
Advanced search Search tips

Issue 860349 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Jul 5
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug
Flaky-Test: MaybeSetMetadata/SafeBrowsingServiceMetadataTest.MalwareImg/0



Sign in to add a comment

MaybeSetMetadata/SafeBrowsingServiceMetadataTest.MalwareImg/0 is Flaky

Project Member Reported by Findit, Jul 4

Issue description

Project Member

Comment 2 by bugdroid1@chromium.org, Jul 5

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b916fccec83f726c3cfe28a3040b9caddc3fc9f6

commit b916fccec83f726c3cfe28a3040b9caddc3fc9f6
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Thu Jul 05 05:18:25 2018

Revert "Move Blink Sandbox IPC to Mojo Calls"

This reverts commit b993e42cacf1ed4454b4df62dfacf8eee2bec869.

Reason for revert: MSan bot failure and find-it suggested this might be the culprit. Please see  crbug.com/860349  for detail.

Failing test: MaybeSetMetadata/SafeBrowsingServiceMetadataTest.MalwareImg/0

Original change's description:
> Move Blink Sandbox IPC to Mojo Calls
> 
> Instead of Chromium IPC macro-defined messages or Mojo, Chrome on Linux
> uses hand-pickled IPC messages through a special purpose file descriptor
> to send messages from the renderer to the browser host in order to
> access FontConfig for font matching and font fallback. This system is
> described in docs/linux_sandbox_ipc.md.
> 
> For the "Font Matching by Full Font Name / PS Name" effort, see issue
> 828317, additional out of process font methods are needed. Instead of
> adding them to this legacy hand-written IPC, we modernize the Linux
> Sandbox IPC mechanism and upgrade it to using Mojo interface definitions
> and a service architecture, in which a font service running in an
> unsandboxed utility process answers FontConfig requests from the
> renderer.
> 
> Previous CLs [1], [2] prepared the Font Service to have testing and
> additional font fallback and render-style-for-strike methods. Now we can
> move Blink over to using this Mojo interface and remove the traditional
> sandbox IPC handlers since we do not use the file descriptor based IPC
> anymore for FontConfig acces.
> 
> For more details, please refer to the design doc in issue 839344.
> 
> [1] https://chromium-review.googlesource.com/c/chromium/src/+/1091754
> [2] https://chromium-review.googlesource.com/c/chromium/src/+/1087951
> 
> Bug:  855021 
> Change-Id: I0f30a726621026566f50402afed00c92940b702c
> Reviewed-on: https://chromium-review.googlesource.com/1109964
> Commit-Queue: Dominik Röttsches <drott@chromium.org>
> Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
> Reviewed-by: Michael Giuffrida <michaelpg@chromium.org>
> Reviewed-by: Robert Sesek <rsesek@chromium.org>
> Reviewed-by: Luke Halliwell <halliwell@chromium.org>
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Reviewed-by: Antoine Labour <piman@chromium.org>
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#572540}

TBR=rkc@chromium.org,thestig@chromium.org,michaelpg@chromium.org,eae@chromium.org,skyostil@chromium.org,servolk@chromium.org,slan@chromium.org,drott@chromium.org,halliwell@chromium.org,rsesek@chromium.org,piman@chromium.org

Change-Id: I290a80ed3f36443d91ec7e082d42f01871ffdba9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  855021 ,  860349 
Reviewed-on: https://chromium-review.googlesource.com/1126719
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#572709}
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chrome/app/generated_resources.grd
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chrome/renderer/pepper/pepper_flash_font_file_host.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chrome/renderer/pepper/pepper_flash_font_file_host.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chrome/utility/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chromecast/browser/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chromecast/browser/DEPS
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chromecast/browser/cast_content_browser_client.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/chromecast/browser/cast_content_browser_client.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/components/services/font/public/cpp/font_service_thread.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/DEPS
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/app/content_main_runner_impl.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/BUILD.gn
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/linux_ipc_browsertest.cc
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/renderer_host/font_utils_linux.cc
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/renderer_host/font_utils_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/renderer_host/pepper/pepper_truetype_font_linux.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/sandbox_ipc_linux.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/browser/sandbox_ipc_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/child/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/child/DEPS
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/child/child_process_sandbox_support_impl_linux.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/child/child_process_sandbox_support_impl_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/common/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/common/common_sandbox_support_linux.cc
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/common/font_config_ipc_linux.cc
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/common/font_config_ipc_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/ppapi_plugin/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/ppapi_plugin/ppapi_blink_platform_impl.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/ppapi_plugin/ppapi_blink_platform_impl.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/app/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/app/mojo/content_plugin_manifest.json
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/app/mojo/content_renderer_manifest.json
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/app/mojo/content_utility_manifest.json
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/child/BUILD.gn
[add] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/public/child/child_process_sandbox_support_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/renderer/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/renderer/mus/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/renderer/renderer_blink_platform_impl.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/renderer/renderer_main.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/shell/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/shell/browser/shell_content_browser_client.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/test/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/utility/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/utility/utility_blink_platform_with_sandbox_support_impl.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/utility/utility_blink_platform_with_sandbox_support_impl.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/utility/utility_service_factory.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/content/utility/utility_thread_impl.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/docs/linux_sandbox_ipc.md
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/extensions/shell/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/extensions/shell/browser/DEPS
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/extensions/shell/browser/shell_content_browser_client.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/extensions/shell/browser/shell_content_browser_client.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/headless/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/headless/lib/browser/DEPS
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/headless/lib/browser/headless_content_browser_client.cc
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/services/service_manager/sandbox/linux/sandbox_linux.h
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/third_party/blink/public/BUILD.gn
[modify] https://crrev.com/b916fccec83f726c3cfe28a3040b9caddc3fc9f6/tools/metrics/histograms/enums.xml

Let's check the flakiness dashboard later if it's fixed.
Status: Fixed (was: Available)
Dashboard looks good now. Mark this as fixed.
Cc: drott@chromium.org
There was a (D)CHECK failure:

[1:1:0704/155925.217883:FATAL:font_cache.cc(404)] Check failed: false.
    #0 0x000002a9ab81 in __interceptor_backtrace /b/swarming/w/ir/kitchen-workdir/src/third_party/llvm/compiler-rt/lib/msan/../sanitizer_common/sanitizer_common_interceptors.inc:4024:13
    #1 0x00001357140f in base::debug::StackTrace::StackTrace(unsigned long) ./../../base/debug/stack_trace_posix.cc:808:41
    #2 0x000013291d20 in logging::LogMessage::~LogMessage() ./../../base/logging.cc:592:29
    #3 0x000023002eca in blink::FontCache::CrashWithFontInfo(blink::FontDescription const*) ./../../third_party/blink/renderer/platform/fonts/font_cache.cc:404:3
    #4 0x00002302c7d0 in blink::FontFallbackIterator::Next(WTF::Vector<int, 0ul, WTF::PartitionAllocator> const&) ./../../third_party/blink/renderer/platform/fonts/font_fallback_iterator.cc:121:7
    #5 0x00002302b93e in blink::FontFallbackIterator::Next(WTF::Vector<int, 0ul, WTF::PartitionAllocator> const&) ./../../third_party/blink/renderer/platform/fonts/font_fallback_iterator.cc:139:12
    #6 0x00002307b2e5 in blink::HarfBuzzShaper::ShapeSegment(blink::RangeData*, blink::RunSegmenter::RunSegmenterRange const&, blink::ShapeResult*) const ./../../third_party/blink/renderer/platform/fonts/shaping/harf_buzz_shaper.cc:842:30

On which bot, on Win7 Tests (dbg)(1)? I disabled the test on MSAN, see  issue 860445 . I believe there is a race condition in safe_browsing::ThreatDetails::OnReceivedThreatDOMDetails when run inside that harness. If there are flakes outside of MSAN, I should disable it more broadly. 

This DCHECK looks like issue 561873, which is interesting. 

Sign in to add a comment