Attempt to fixed crash on stop mirroring by stopping render thread on a worker thread.

BUG=324454

Review URL: https://codereview.chromium.org/130253002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244876 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 244876
Fixes for extension install verifier histograms

This has a few changes rolled into one:

-Several renames to add the "Extension" prefix, since I discovered another
unrelated histogram with a InstallVerifier* name.

-Merges a few UMA_HISTOGRAM_BOOLEAN's with different names into
 UMA_HISTOGRAM_ENUMERATION's with the same name.

-Adds one extra histogram to measure count of forced disabled extensions

BUG=332952

Review URL: https://codereview.chromium.org/132373002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244877 0039d316-1c4b-4281-b951-d872f2087c98
Separate safe_browsing==2 vs OS==android.

Currently, these are used interchangably, as android is the platform where
there is mobile safe browsing (2). But we'd like to be able to build full
safe browsing on android or mobile safe browsing on linux for testing and
development purposes.

The change to chrome_browser.gypi ensures that download_completion_blocker.cc
is built when full safe browsing is enabled, not when OS==android. This class
is called from code that is conditioned by safe_browsing, not OS, and should
be treated the same.

The change to chrome_browser_ui.gypi ensures that libusb is not built on android
no matter what the setting of safe_browsing.  This hasn't been built on android
in some time, and in fact fails to compile on android due to missing system
header libudev.h. It doesn't appear to be related to safebrowsing in any
manner, and the exclusion should be by platform, not by this feature.

BUG=

Review URL: https://codereview.chromium.org/133683006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244878 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 244878
telemetry: Wait for acknowledgement that tracing has started

Internally Chrome tracing needs to be turned on for each Chrome process
separately, so this is done asynchronously. This patch makes Tracing.start
complete asynchronously after all processes have acknowledged the start of
tracing.

Without this synchronization telemetry may start running a benchmark
before tracing was fully enabled, leading to missed timeline events.

Depends on https://codereview.chromium.org/134253002/.

BUG=307841

Review URL: https://codereview.chromium.org/134263002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244879 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 244879