| Index: chrome/browser/chrome_gpu_util.cc
|
| diff --git a/chrome/browser/chrome_gpu_util.cc b/chrome/browser/chrome_gpu_util.cc
|
| index b4221eca6e88addc629eef7120cd5ce02686f87c..048ed2d34530391cfc7cb27822e11431ff0f0a48 100644
|
| --- a/chrome/browser/chrome_gpu_util.cc
|
| +++ b/chrome/browser/chrome_gpu_util.cc
|
| @@ -71,6 +71,12 @@ bool ShouldRunCompositingFieldTrial() {
|
| return false;
|
| #endif
|
|
|
| +// Necessary for linux_chromeos build since it defines both OS_LINUX
|
| +// and OS_CHROMEOS .
|
| +#if defined(OS_CHROMEOS)
|
| + return false;
|
| +#endif
|
| +
|
| #if defined(OS_WIN)
|
| // Don't run the trial on Windows XP.
|
| if (base::win::GetVersion() < base::win::VERSION_VISTA)
|
| @@ -106,42 +112,40 @@ void InitializeCompositingFieldTrial() {
|
| }
|
|
|
| const base::FieldTrial::Probability kDivisor = 3;
|
| + // Note: This field trial should be removed once we're comfortable with
|
| + // turning force compositing mode and threaded compositing on all relevant
|
| + // platforms (see crbug.com/149991).
|
| scoped_refptr<base::FieldTrial> trial(
|
| base::FieldTrialList::FactoryGetFieldTrial(
|
| content::kGpuCompositingFieldTrialName, kDivisor,
|
| - "disable", 2012, 12, 31, NULL));
|
| + "disable", 2013, 12, 31, NULL));
|
|
|
| // Produce the same result on every run of this client.
|
| trial->UseOneTimeRandomization();
|
|
|
| + // Note: The static field trial probabilities set here can be overwritten
|
| + // at runtime by Finch. Changing these static values won't have an effect
|
| + // if a Finch study is active.
|
| base::FieldTrial::Probability force_compositing_mode_probability = 0;
|
| base::FieldTrial::Probability threaded_compositing_probability = 0;
|
|
|
| + // Threaded compositing mode isn't feature complete on mac or linux yet:
|
| + // http://crbug.com/133602 for mac
|
| + // http://crbug.com/140866 for linux
|
| +
|
| +#if defined(OS_WIN)
|
| + // threaded-compositing turned on by default on Windows.
|
| + // (Windows XP is excluded explicitly in ShouldRunCompositingFieldTrial)
|
| + threaded_compositing_probability = 3;
|
| +#elif defined(OS_LINUX) || defined(OS_MACOSX)
|
| chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel();
|
| - if (channel == chrome::VersionInfo::CHANNEL_STABLE ||
|
| - channel == chrome::VersionInfo::CHANNEL_BETA) {
|
| - // Stable and Beta channels: Non-threaded force-compositing-mode on by
|
| - // default (mac and windows only).
|
| -#if defined(OS_WIN) || defined(OS_MACOSX)
|
| - force_compositing_mode_probability = 3;
|
| -#endif
|
| - } else if (channel == chrome::VersionInfo::CHANNEL_DEV ||
|
| - channel == chrome::VersionInfo::CHANNEL_CANARY) {
|
| - // Dev and Canary channels: force-compositing-mode and
|
| - // threaded-compositing on with 1/3 probability each.
|
| + if (channel != chrome::VersionInfo::CHANNEL_STABLE &&
|
| + channel != chrome::VersionInfo::CHANNEL_BETA) {
|
| + // On channels < beta, force-compositing-mode on
|
| + // with 33% probability.
|
| force_compositing_mode_probability = 1;
|
| -
|
| -#if defined(OS_MACOSX) || defined(OS_LINUX)
|
| - // Threaded compositing mode isn't feature complete on mac or linux yet:
|
| - // http://crbug.com/133602 for mac
|
| - // http://crbug.com/140866 for linux
|
| - threaded_compositing_probability = 0;
|
| -#else
|
| - if (!CommandLine::ForCurrentProcess()->HasSwitch(
|
| - switches::kDisableThreadedCompositing))
|
| - threaded_compositing_probability = 1;
|
| -#endif
|
| }
|
| +#endif
|
|
|
| int force_compositing_group = trial->AppendGroup(
|
| content::kGpuCompositingFieldTrialForceCompositingEnabledName,
|
|
|