Backed out 2 changesets (bug 1818364) for causing browsertime failures in minidump-stackwalk. CLOSED TREE

Backed out changeset 765c496e216c (bug 1818364)
Backed out changeset 71620bc8f387 (bug 1818364)
This commit is contained in:
Sandor Molnar 2023-04-12 04:33:06 +03:00
Родитель b2cbc79dc7
Коммит cbe27cef81
19 изменённых файлов: 50 добавлений и 787 удалений

Просмотреть файл

@ -46,7 +46,6 @@ treeherder:
'Btime-fenix': 'Browsertime performance tests on Fenix'
'Btime-refbrow': 'Browsertime performance tests on the reference browser'
'Btime-Saf': 'Browsertime performance tests on Safari'
'Btime-CaR': 'Browsertime performance tests on Chromium-as-Release'
'Fetch': 'Fetch and store content'
'Fxfn': 'Firefox functional tests'
'Fxfn-nofis': 'Firefox functional tests without fission enabled'

Просмотреть файл

@ -101,10 +101,6 @@ jobs:
custom-v8:
symbol: I(custom-v8)
parent: debian11-base
# Chromium-as-Release
custom-car-linux:
symbol: I(custom-car-linux)
parent: debian11-base
valgrind-build:
symbol: I(vb)
parent: debian11-amd64-build

Просмотреть файл

@ -20,8 +20,6 @@ job-defaults:
- .*shippable.*
safari:
- .*macos.*shippable.*
custom-car:
- linux.*shippable.*
default: []
test-manifest-loader: null # don't load tests in the taskgraph
tier: 3
@ -38,21 +36,6 @@ job-defaults:
- raptor/linux_config.py
extra-options:
- --conditioned-profile=settled
fetches:
toolchain:
by-app:
custom-car:
by-test-platform:
# this satisfied taskgraph for now, but once mac/win is implemented
# then linux will be the default
linux.*:
- linux64-custom-car
- linux64-minidump-stackwalk
- linux64-fix-stacks
default: []
default:
- linux64-minidump-stackwalk
- linux64-fix-stacks
browsertime-tp6:
<<: &tp6-defaults
@ -193,7 +176,7 @@ browsertime-tp6-essential:
- --extra-profiler-run
- --extra-summary-methods=geomean
raptor:
apps: [firefox, chrome, chromium, custom-car]
apps: [firefox, chrome, chromium]
test: tp6
run-visual-metrics: true
subtests:
@ -265,7 +248,7 @@ browsertime-tp6-bytecode:
browsertime-benchmark:
description: Raptor (browsertime) Benchmark tests
raptor:
apps: [firefox, chrome, chromium, safari, custom-car]
apps: [firefox, chrome, chromium, safari]
subtests:
by-app:
firefox:
@ -295,9 +278,6 @@ browsertime-benchmark:
- [sunspider, ss]
- [unity-webgl, ugl]
# - [webaudio, wa] (Bug 1802922)
custom-car:
- [speedometer, sp]
- [speedometer3, sp3]
default:
- ares6
- [assorted-dom, dom]

Просмотреть файл

@ -181,32 +181,6 @@ linux64-custom-v8:
]
toolchain-artifact: public/build/d8.tar.zst
linux64-custom-car:
description: "Custom chromium build"
treeherder:
symbol: TL(custom-car)
worker:
docker-image: {in-tree: custom-car-linux}
max-run-time: 16200
run:
script: build-custom-car-linux.sh
arguments: [
car_linux.tar.zst,
is_debug=false,
v8_symbol_level=0,
target_cpu="x64",
enable_nacl=false,
symbol_level=0,
blink_symbol_level=0,
is_component_build=false,
dcheck_always_on=false,
is_chrome_branded=false,
is_official_build=true,
chrome_pgo_phase=2,
enable_resource_allowlist_generation=false
]
toolchain-artifact: public/build/car_linux.tar.zst
browsertime:
description: "npm install browsertime node_modules"
treeherder:

Просмотреть файл

@ -1,26 +0,0 @@
FROM $DOCKER_IMAGE_PARENT
MAINTAINER kshampur <kshampur@mozilla.com>
VOLUME /builds/worker/checkouts
VOLUME /builds/worker/workspace
VOLUME /builds/worker/tooltool-cache
ENV XZ_OPT=-T0
RUN apt-get update && \
apt-get install \
bzip2 \
curl \
libbz2-dev \
libglib2.0-dev \
libtinfo5 \
pkg-config \
tar \
unzip \
wget \
zip \
lsb-release \
sudo
RUN adduser worker sudo
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

Просмотреть файл

@ -378,7 +378,7 @@ def setup_browsertime(config, tasks):
# Only add the chromedriver fetches when chrome is running
for platform in cd_fetches:
fs["by-test-platform"][platform].extend(cd_fetches[platform])
if "--app=chromium" in extra_options or "--app=custom-car" in extra_options:
if "--app=chromium" in extra_options:
for platform in chromium_fetches:
fs["by-test-platform"][platform].extend(chromium_fetches[platform])

Просмотреть файл

@ -77,7 +77,6 @@ def split_apps(config, tests):
"fenix": "fenix",
"refbrow": "refbrow",
"safari": "Saf",
"custom-car": "CaR",
}
for test in tests:

Просмотреть файл

@ -1,68 +0,0 @@
#!/bin/bash
set -x -e -v
# This script is for building a custom version of chromium-as-release on Linux
# First argument must be the artifact name
ARTIFACT_NAME=$(basename $TOOLCHAIN_ARTIFACT)
shift
# Use the rest of the arguments as the build config
CONFIG=$(echo $* | tr -d "'")
mkdir custom_car
cd custom_car
CUSTOM_CAR_DIR=$PWD
# Setup depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:$CUSTOM_CAR_DIR/depot_tools
# Get chromium source code and dependencies
mkdir chromium
cd chromium
fetch --no-history --nohooks chromium
# setup the .gclient file to ensure pgo profiles are downloaded
# for some reason we need to set --name flag even though it already exists.
# currently the gclient.py file does NOT recognize --custom-var as it's own argument
gclient config --name src "https://chromium.googlesource.com/chromium/src.git" --custom-var="checkout_pgo_profiles=True" --unmanaged
cd src
# need sudo access to run this and get required dependencies for linux
./build/install-build-deps.sh
# now we can run hooks and fetch PGO + everything else
gclient runhooks
# PGO data should be in src/chrome/build/pgo_profiles/
# with a name like "chrome-{OS}-<some unique identifier>"
export PGO_DATA_DIR="$CUSTOM_CAR_DIR/chromium/src/chrome/build/pgo_profiles"
for entry in "$PGO_DATA_DIR"/*
do
if [ -f "$entry" ];then
export PGO_DATA_PATH="$entry"
fi
done
CONFIG=$(echo $CONFIG pgo_data_path='"'$PGO_DATA_PATH'"')
# set up then build chrome
gn gen out/Default --args="$CONFIG"
autoninja -C out/Default chrome # skips test binaries
# Gather binary and related files into a zip, and upload it
cd ..
mkdir chromium
mv src/out/Default chromium
chmod -R +x chromium
tar caf $ARTIFACT_NAME chromium
mkdir -p $UPLOAD_DIR
mv $ARTIFACT_NAME $UPLOAD_DIR

Просмотреть файл

@ -13,8 +13,7 @@
"geckoview",
"refbrow",
"fenix",
"safari",
"custom-car"
"safari"
],
"maxLength": 10,
"type": "string"

Просмотреть файл

@ -195,7 +195,6 @@ class Raptor(
"refbrow",
"fenix",
"safari",
"custom-car",
],
"dest": "app",
"help": "Name of the application we are testing (default: firefox).",
@ -833,16 +832,15 @@ class Raptor(
def install_chromium_distribution(self):
"""Install Google Chromium distribution in production"""
linux, mac, win = "linux", "mac", "win"
chrome, chromium, chromium_release = "chrome", "chromium", "custom-car"
chrome, chromium = "chrome", "chromium"
available_chromium_dists = [chrome, chromium, chromium_release]
available_chromium_dists = [chrome, chromium]
binary_location = {
chromium: {
linux: ["chrome-linux", "chrome"],
mac: ["chrome-mac", "Chromium.app", "Contents", "MacOS", "Chromium"],
win: ["chrome-win", "Chrome.exe"],
},
chromium_release: {linux: ["chromium", "Default", "chrome"]},
}
if self.app not in available_chromium_dists:

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -135,7 +135,6 @@ class Browsertime(Perftest):
"chrome",
"chrome-m",
"chromium",
"custom-car",
):
if (
not self.config.get("run_local", None)
@ -356,7 +355,7 @@ class Browsertime(Perftest):
browsertime_options.extend(pairing)
priority1_options = self.browsertime_args
if self.config["app"] in ("chrome", "chromium", "chrome-m", "custom-car"):
if self.config["app"] in ("chrome", "chromium", "chrome-m"):
priority1_options.extend(self.setup_chrome_args(test))
if self.debug_mode:
@ -415,7 +414,6 @@ class Browsertime(Perftest):
"chromium",
"chrome-m",
"chrome",
"custom-car",
):
priority1_options.extend(
[

Просмотреть файл

@ -26,7 +26,6 @@ class BrowsertimeDesktop(PerftestDesktop, Browsertime):
if self.config["app"] in (
"chrome",
"chromium",
"custom-car",
):
return args_list + [
"--browser",

Просмотреть файл

@ -8,12 +8,11 @@ import platform
import six
from mozlog.commandline import add_logging_group
(FIREFOX, CHROME, CHROMIUM, SAFARI, CHROMIUM_RELEASE) = DESKTOP_APPS = [
(FIREFOX, CHROME, CHROMIUM, SAFARI) = DESKTOP_APPS = [
"firefox",
"chrome",
"chromium",
"safari",
"custom-car",
]
(GECKOVIEW, REFBROW, FENIX, CHROME_ANDROID) = FIREFOX_ANDROID_APPS = [
"geckoview",
@ -28,7 +27,6 @@ APPS = {
CHROME: {"long_name": "Google Chrome Desktop"},
CHROMIUM: {"long_name": "Google Chromium Desktop"},
SAFARI: {"long_name": "Safari Desktop"},
CHROMIUM_RELEASE: {"long_name": "Custom Chromium-as-Release desktop"},
GECKOVIEW: {
"long_name": "Firefox GeckoView on Android",
"default_activity": "org.mozilla.geckoview_example.GeckoViewActivity",

Просмотреть файл

@ -1832,8 +1832,8 @@ class BrowsertimeOutput(PerftestOutput):
if test.get(alert_option, None) is not None:
suite[schema_name] = int(test[alert_option])
# Setting shouldAlert to False whenever self.app is either chrome, chrome-m, chromium, chromium-as-release
if self.app in ("chrome", "chrome-m", "chromium", "custom-car"):
# Setting shouldAlert to False whenever self.app is either chrome, chrome-m, chromium
if self.app in ("chrome", "chrome-m", "chromium"):
suite["shouldAlert"] = False
# Check if the test has set optional properties
if "alert_change_type" in test and "alertChangeType" not in suite:
@ -1867,7 +1867,7 @@ class BrowsertimeOutput(PerftestOutput):
% measurement_name
)
subtest["shouldAlert"] = True
if self.app in ("chrome", "chrome-m", "chromium", "custom-car"):
if self.app in ("chrome", "chrome-m", "chromium"):
subtest["shouldAlert"] = False
else:
# Explicitly set `shouldAlert` to False so that the measurement

Просмотреть файл

@ -171,7 +171,7 @@ class Perftest(object):
# To differentiate between chrome/firefox failures, we
# set an app variable in the logger which prefixes messages
# with the app name
if self.config["app"] in ("chrome", "chrome-m", "chromium", "custom-car"):
if self.config["app"] in ("chrome", "chrome-m", "chromium"):
LOG.set_app(self.config["app"])
self.browser_name = None
@ -185,9 +185,6 @@ class Perftest(object):
self.device = None
self.runtime_error = None
self.profile_class = profile_class or app
# Use the `chromium` profile class for custom-car
if app in ["custom-car"]:
self.profile_class = "chromium"
self.conditioned_profile_dir = None
self.interrupt_handler = interrupt_handler
self.results_handler = results_handler_class(**self.config)
@ -389,7 +386,7 @@ class Perftest(object):
self.profile = None
return
elif (
self.config["app"] in ["chrome", "chromium", "chrome-m", "custom-car"]
self.config["app"] in ["chrome", "chromium", "chrome-m"]
or self.config.get("conditioned_profile") is None
):
self.profile = create_profile(self.profile_class)

Просмотреть файл

@ -28,7 +28,7 @@ KNOWN_TEST_MODIFIERS = [
"bytecode-cached",
]
NON_FIREFOX_OPTS = ("webrender", "bytecode-cached", "fission")
NON_FIREFOX_BROWSERS = ("chrome", "chromium", "custom-car", "safari")
NON_FIREFOX_BROWSERS = ("chrome", "chromium", "safari")
NON_FIREFOX_BROWSERS_MOBILE = ("chrome-m",)

Просмотреть файл

@ -6,7 +6,7 @@
[DEFAULT]
alert_threshold = 2.0
apps = firefox, chrome, chromium, safari, custom-car
apps = firefox, chrome, chromium, safari
gecko_profile_entries = 14000000
gecko_profile_interval = 1
lower_is_better = false

Просмотреть файл

@ -7,7 +7,7 @@
[DEFAULT]
alert_on = fcp, loadtime, ContentfulSpeedIndex, PerceptualSpeedIndex, SpeedIndex, FirstVisualChange, LastVisualChange
alert_threshold = 2.0
apps = firefox, chrome, chromium, safari, custom-car
apps = firefox, chrome, chromium, safari
browser_cycles = 25
gecko_profile_entries = 14000000
gecko_profile_interval = 1