| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds tooltips to profile names in both the old and new profile
switcher when they are truncated on OSX.
This lines up with behaviour on Windows.
Also added myself to the AUTHORS file seeing this is my first contribution.
BUG=459572
Review URL: https://codereview.chromium.org/943453003
Cr-Commit-Position: refs/heads/master@{#318769}
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL introduces a new TRACE_EVENT_PHASE for memory dump
and enables the MemoryDumpManager to generate actual trace
events when CreateLocalDumpPoint is invoked.
BUG=458295
Review URL: https://codereview.chromium.org/956413002
Cr-Commit-Position: refs/heads/master@{#318727}
|
|
|
|
|
|
|
|
|
| |
BUG=
TBR=danakj@chromium.org
Review URL: https://codereview.chromium.org/964413002
Cr-Commit-Position: refs/heads/master@{#318710}
|
|
|
|
|
|
|
|
|
|
|
|
| |
remaining instrumentation of non-janky functions.
BUG=418183,462774,462778,462780,462784,462788,462789
TEST=none
TBR=rvargas,jochen,rpaquay,zea
Review URL: https://codereview.chromium.org/970463002
Cr-Commit-Position: refs/heads/master@{#318597}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Application of https://codereview.chromium.org/962003002/.
TBR=keybuk@chromium.org
R=brettw@chromium.org
BUG=456014
Review URL: https://codereview.chromium.org/960413003
Cr-Commit-Position: refs/heads/master@{#318574}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We didn't have any metric for measuring Android UI animation jankiness
before, and recently it came to our attention that animations are very
janky on some low-end devices. It will be useful to know how the
animations are doing on various user devices.
This class can be used to record animation frame times histogram,
for example:
AnimationFrameTimeHistogram histogram =
new AnimationFrameTimeHistogram(HISTOGRAM_NAME);
histogram.startRecording();
// An animation to measure
histogram.endRecording();
or
animator.addListener(AnimationFrameTimeHistogram.getAnimatorRecorder(
HISTOGRAM_NAME);
To my knowledge, the closest thing we have is measuring each task
runtime using TaskStopwatch class, but that doesn't suit for us since
Android animation frame tasks are managed by Android, and even if we
can use, it will require a JNI call for each frame.
BUG=461066
Review URL: https://codereview.chromium.org/949613002
Cr-Commit-Position: refs/heads/master@{#318533}
|
|
|
|
|
|
|
|
|
|
| |
Let TestMockTimeTaskRunner ignore task nestability as opposed to outright disallowing nested tasks. This is in line with the behavior of TestSimpleTaskRunner.
BUG=None
Review URL: https://codereview.chromium.org/954183005
Cr-Commit-Position: refs/heads/master@{#318512}
|
|
|
|
|
|
|
|
|
|
|
|
| |
base::Timer is not thread safe, and therefore any custom task runner it
is configured to use should also belong to the same thread as the timer
itself.
BUG=461626
Review URL: https://codereview.chromium.org/962473007
Cr-Commit-Position: refs/heads/master@{#318485}
|
|
|
|
|
|
|
|
|
|
|
|
| |
This flag cannot be derived from GYP defines. Rather, the configuration of each
specific tester determines whether it should be passed.
BUG=455521
R=jam@chromium.org
Review URL: https://codereview.chromium.org/957383002
Cr-Commit-Position: refs/heads/master@{#318447}
|
|
|
|
|
|
|
|
|
|
| |
Leave some info in the stack so that it gets included in the crash reports.
BUG=418627
Review URL: https://codereview.chromium.org/963443002
Cr-Commit-Position: refs/heads/master@{#318398}
|
|
|
|
|
|
|
|
| |
BUG=461935
Review URL: https://codereview.chromium.org/960613003
Cr-Commit-Position: refs/heads/master@{#318374}
|
|
|
|
|
|
|
|
| |
BUG=460749
Review URL: https://codereview.chromium.org/827833002
Cr-Commit-Position: refs/heads/master@{#318370}
|
|
|
|
|
|
|
|
|
| |
BUG=167707,461816
R=rvargas@chromium.org
Review URL: https://codereview.chromium.org/955273002
Cr-Commit-Position: refs/heads/master@{#318313}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL introduces a workaround to deal with limitations that memory
dumpers face in child processes when sandboxed.
In the long term, this will be solved by doing the proper /proc/PID/*
fd propagation via IPC.
In the meanwhile this CL prevents invoking a dumper over and over
once it fails for the duration of the trace.
BUG=460884,461788
Review URL: https://codereview.chromium.org/954143006
Cr-Commit-Position: refs/heads/master@{#318299}
|
|
|
|
|
|
|
|
|
|
|
|
| |
During shutdown, the SequencedWorkerPool was destroying some tasks without
releasing its global lock. Any task whose destruction implicitly triggered a
lock access would deadlock.
BUG=448910
Review URL: https://codereview.chromium.org/956583004
Cr-Commit-Position: refs/heads/master@{#318283}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When shutting down, TaskGraphRunner will clear out tasks that are ready
to run and wait for running tasks to finish running. Wait is disallowed
in main thread and crashes in single thread impl-side painting.
R=danakj, jam, brettw
BUG=369653
Review URL: https://codereview.chromium.org/946103004
Cr-Commit-Position: refs/heads/master@{#318265}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Function isInitialized, unlike calls ensureinitialized should not block
the thread, but it will if initialization is in progress at this moment.
It is not necessery to synchronize the sInitialized flag in
isInitialized function. It is enough that flag have a primitive type and
has a volatile qualifier.
R=nyquist@chromium.org, rmcilroy@chromium.org
TEST=It is rather hard to test. We've found ~300ms stuck on UI thread,
on calling LibraryLoader.isInitialized from ContentApplication.onCreate
with profiler
Review URL: https://codereview.chromium.org/925513002
Cr-Commit-Position: refs/heads/master@{#318208}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should get most of NaCl and the PPAPI stuff needed
for NaCl building and linking. There is more work to be
done to get some of the test binaries working (and
probably fill out parts of the NaCl SDK) and possibly
some pnacl support work remaining as well.
NaCl is still disabled by default (set enable_nacl=true
to change). Enabling nacl is still mostly untested and
likely doesn't work at all :).
R=ncbray@chromium.org, brettw@chromium.org
BUG=432959
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/877553008
Cr-Commit-Position: refs/heads/master@{#318180}
|
|
|
|
|
|
|
|
|
|
| |
This was added in https://codereview.chromium.org/897683003/
BUG=454870
Review URL: https://codereview.chromium.org/945583008
Cr-Commit-Position: refs/heads/master@{#318112}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Those are now compiled into the executable.
Also remove tools/lsan/ which used to house the suppressions file.
Relanding with .isolate fix.
BUG=302040
TBR=kjellander@chromium.org
Review URL: https://codereview.chromium.org/952103003
Cr-Commit-Position: refs/heads/master@{#318051}
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up to crrev.com/928723004. It introduces
the code which is able to read and parse the /proc/.../smaps
file into an actual TraceValue and the corresponding unittest.
BUG=460884
Review URL: https://codereview.chromium.org/951463002
Cr-Commit-Position: refs/heads/master@{#318023}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two fixes were required to work on win8:
1. To determine if a directory is a reparse point, use GetFileInformation() since using WIN32_FIND_DATA.dwFileAttributes doesn't work on Windows 8. See https://msdn.microsoft.com/en-us/library/windows/desktop/aa363940.aspx
2. Update the PE image tests to use its own binary, change the expectation format, add support for Win 8.1 and re-enable on 64-bit.
BUG=373973,167707
Review URL: https://codereview.chromium.org/946183002
Cr-Commit-Position: refs/heads/master@{#317960}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous CL https://codereview.chromium.org/943933005 didn't work properly
because the dll wasn't in the same directory as the binary, so it was still
loading the system dbghelp.dll. See details in 460506.
Copies dbghelp.dll to the output dir, and has the isolate file point at that.
Re-enable tests that were failing due to dbghelp hanging.
XP test run here: https://chromium-swarm.appspot.com/user/task/25d5bc17b6dddc10
BUG=460506, 461160
Committed: https://crrev.com/09acc50cfadc6aa38db23ddadec134410ec968c0
Cr-Commit-Position: refs/heads/master@{#317868}
Review URL: https://codereview.chromium.org/951083003
Cr-Commit-Position: refs/heads/master@{#317926}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
there (patchset #6 id:100001 of https://codereview.chromium.org/951083003/)
Reason for revert:
some blink waterfall failing for reasons unclear. dependency on base.isolate without depending on base maybe?
Original issue's description:
> xp: copy dbghelp.dll to output dir and have base.isolate use it there
>
> Previous CL https://codereview.chromium.org/943933005 didn't work properly
> because the dll wasn't in the same directory as the binary, so it was still
> loading the system dbghelp.dll. See details in 460506.
>
> Copies dbghelp.dll to the output dir, and has the isolate file point at that.
>
> Re-enable tests that were failing due to dbghelp hanging.
>
> XP test run here: https://chromium-swarm.appspot.com/user/task/25d5bc17b6dddc10
>
> BUG=460506, 461160
>
> Committed: https://crrev.com/09acc50cfadc6aa38db23ddadec134410ec968c0
> Cr-Commit-Position: refs/heads/master@{#317868}
TBR=cpu@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=460506, 461160
Review URL: https://codereview.chromium.org/954003002
Cr-Commit-Position: refs/heads/master@{#317900}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous CL https://codereview.chromium.org/943933005 didn't work properly
because the dll wasn't in the same directory as the binary, so it was still
loading the system dbghelp.dll. See details in 460506.
Copies dbghelp.dll to the output dir, and has the isolate file point at that.
Re-enable tests that were failing due to dbghelp hanging.
XP test run here: https://chromium-swarm.appspot.com/user/task/25d5bc17b6dddc10
BUG=460506, 461160
Review URL: https://codereview.chromium.org/951083003
Cr-Commit-Position: refs/heads/master@{#317868}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL introduces the skeleton (data model and dump provider stub)
for snapshotting memory maps into the traces (via MemoryDumpManager).
In the next CLs, the actual code to retrieve the data for the various
OSs (or at least some of them) will be introduced.
BUG=460884
Review URL: https://codereview.chromium.org/928723004
Cr-Commit-Position: refs/heads/master@{#317821}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make the blank lines and indentation in the JNI generator more
consistent. Rebaseline tests to match new expected whitespace. No
functional change intended.
BUG=442327
Review URL: https://codereview.chromium.org/953443002
Cr-Commit-Position: refs/heads/master@{#317815}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since clang has trouble with aliases for static functions, go back to
using a trivial wrapper function instead of an alias. Since there is
only one caller of the wrapped, static function, and its address is no
longer taken to generate the manual JNI registration table (the
wrapper's address is already being taken instead), there's no actual
benefit to using an alias anyway, since the compiler will simply inline
the static function into the wrapper.
BUG=442327,460857
TBR=cjhopman@chromium.org
Review URL: https://codereview.chromium.org/953523003
Cr-Commit-Position: refs/heads/master@{#317787}
|
|
|
|
|
|
|
|
|
|
| |
R=rmsousa@chromium.org
TBR=beaudoin, binjin, kaliamoorthi, noms, rmsousa
BUG=461160
Review URL: https://codereview.chromium.org/949953004
Cr-Commit-Position: refs/heads/master@{#317732}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, when an ObserverList iterator is rewound or reaches the end
of the list, it will trigger list compacting. However, the majority of
the time, no compacting is required as no elements were removed.
Change the policy to only compact if an element was removed during
list iteration, avoiding unnecessary O(N) list walks.
BUG=440134
Review URL: https://codereview.chromium.org/943303005
Cr-Commit-Position: refs/heads/master@{#317725}
|
|
|
|
|
|
|
|
| |
BUG=417532
Review URL: https://codereview.chromium.org/938453002
Cr-Commit-Position: refs/heads/master@{#317690}
|
|
|
|
|
|
|
|
|
|
|
| |
With new appcontainer token in picture, it fails to create shared memory with empty name like "", it explicity seem to need NULL for anonymous.
BUG=455496
R=cpu
Review URL: https://codereview.chromium.org/950993003
Cr-Commit-Position: refs/heads/master@{#317689}
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/945143002
Cr-Commit-Position: refs/heads/master@{#317653}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the hang that caused the addition of the early out in
stack_trace_win.cc.
Removing that in turn fixes symbolization of stack traces on XP bots.
R=cpu@chromium.org
BUG=460506
Review URL: https://codereview.chromium.org/943933005
Cr-Commit-Position: refs/heads/master@{#317651}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add TRACE_EVENT_FLAG_EXPLICIT_TIMESTAMP which is set when an explicit
timestamp is specified for the trace event. Only re-read clock if the
flag is set.
BUG=457441
Review URL: https://codereview.chromium.org/928563003
Cr-Commit-Position: refs/heads/master@{#317618}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ICU 54.1 upgrade added a call to uloc_getDefault() to
base/test/test_suite.cc, but did not add a libicuuc dependency
to the corresponding gyp/gn targets. This makes it possible to
mix system and bundled ICU headers (and will fail to build if
they differ in version).
BUG=428145
Review URL: https://codereview.chromium.org/943233002
Cr-Commit-Position: refs/heads/master@{#317616}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tested with the following command lines:
$ gn gen out_gn/Debug
$ ninja -C out_gn/Debug device_unittests
$ out_gn/Debug/device_unittests
BUG=None
TEST=see above
R=rockot@chromium.org,jam@chromium.org,thakis@chromium.org,groby@chromium.org
TBR=jam@chromium.org
Review URL: https://codereview.chromium.org/919223002
Cr-Commit-Position: refs/heads/master@{#317554}
|
|
|
|
|
|
|
|
|
|
|
| |
Now supported: 1.02.3.4
Remains unsupported: 01.2.3.4
BUG=460642
Review URL: https://codereview.chromium.org/949573002
Cr-Commit-Position: refs/heads/master@{#317524}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows.
This makes SHMEM implementation of discardable memory preferred
over EMULATED implementation. This effectively makes SHMEM the
implementation used by default on Linux, CrOS and Windows.
SHMEM implementation of discardable memory gives the browser
process control over the total amount of discardable memory used
and allows us to enforce a global limit of 512MB across all
renderers.
BUG=429415,429416
Review URL: https://codereview.chromium.org/793443003
Cr-Commit-Position: refs/heads/master@{#317520}
|
|
|
|
|
|
|
|
|
|
|
| |
Separate it into OnJNIOnLoadRegisterJNI() and OnJNIOnLoadInit(), so they
could be called by embedder when needed.
BUG=447393
Review URL: https://codereview.chromium.org/935413004
Cr-Commit-Position: refs/heads/master@{#317479}
|
|
|
|
|
|
|
|
| |
BUG=428729,444049
Review URL: https://codereview.chromium.org/938883002
Cr-Commit-Position: refs/heads/master@{#317456}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new mode to the JNI generator which emits both native JNI exports
and manual registration code, and use this as the default mode (except
when compiling with clang as a clang bug prevents this from working at
present).
Native JNI exports are stripped from binaries by default to enforce that
the correct manual registration code is called (and to save increasing
the dynamic symbol table size), except for binaries that explicitly opt
in to using native exports (i.e. libwebviewchromium). Native exports are
not compatible with the crazy linker, so cannot be used universally.
The WebView-specific call to InitReplacementClassLoader, required by
native export mode, has been moved to base to make it easy for other
binaries to experiment with that mode.
Manual JNI registration can be disabled with a call to
base::android::DisableManualJniRegistration at the beginning of
JNI_OnLoad and this has been added to WebView. We plan to refactor the
Android library entry points to make it possible to avoid needing this
flag by just not calling JNI registration but the work is still ongoing;
the flag gets us the desired WebView startup time improvement in the
meantime.
BUG=442327
Review URL: https://codereview.chromium.org/920883002
Cr-Commit-Position: refs/heads/master@{#317434}
|
|
|
|
|
|
|
|
|
|
|
| |
Given access patterns that are just wrong, local & session storage can write many gigabytes per day or keep the disk perpetually spun up. To avoid excessive IO, we apply limits to the amount of data being written and the frequency of writes to address both kinds of 'bad' behaviors.
TBR=rvargas
BUG=176727
Review URL: https://codereview.chromium.org/896643002
Cr-Commit-Position: refs/heads/master@{#317424}
|
|
|
|
|
|
|
|
|
|
|
| |
This CL introduces a dump provider which is able to capture
the process Resident Set Size and the corresponding unittest.
BUG=442731,458295
Review URL: https://codereview.chromium.org/934323002
Cr-Commit-Position: refs/heads/master@{#317336}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes the Chromium Android Linker bug which causes a
RuntimeException when LibInfos are unmarshalled from the shared RELRO
Bundle in renderer process. The problem was caused by an ABI mismatch
between ParcelFileDescriptor.writeToParcel() and
Parcel.readFileDescriptor() (b/19451018).
BUG=348621, 382485
Review URL: https://codereview.chromium.org/941913003
Cr-Commit-Position: refs/heads/master@{#317318}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
crrev.com/933613002 introduced a ODR violtaion by adding the
DeleteForTesting method (other definition in trace_event_impl.cc).
This was causing an ASan assertion (see crbug.com/459556) and failures
of base_unittests in debug builds (see crrev.com/933613002 #33).
This CL fixes the DeleteForTesting pattern removing the awkward ODR
violation.
BUG=459556,458295
TBR=nduca@chromium.org
Review URL: https://codereview.chromium.org/942803002
Cr-Commit-Position: refs/heads/master@{#317316}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Factor out the code which generates the native export stub name for a
given native function, previously duplicated in two places, and also use
it in a third place: when generating the table of method registrations.
This will allow the table to be generated even when in native export
mode, as previously the table referred to the default name which is not
defined when using native exports.
BUG=442327
Review URL: https://codereview.chromium.org/938373002
Cr-Commit-Position: refs/heads/master@{#317302}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we've deprecated TSan v1, these aren't used anymore and may potentially hide errors in lock-free synchronization that TSan v2 could detect otherwise.
BUG=349861
TBR=nduca@chromium.org,scottmg@chromium.org
R=danakj@chromium.org,kbr@chromium.org
Review URL: https://codereview.chromium.org/790473002
Cr-Commit-Position: refs/heads/master@{#317297}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was disabled on Windows because:
- http://crrev.com/274071 made it such that it was asynchronous via the renderer (as only
the process itself can set itself in background mode on Windows).
- And then this was removed for Windows as part of issue 381820 as true background mode on
Windows was achieved by having the renderer itself change its process priority (which
doesn't work as the unbackgrounding request can be stuck behind other priority tasks
running in background mode).
Also, the test for this was disabled in between (see issue 394368) -- the asynchronicity
introduced in r274071 probably causing the flakes.
Overall there is no need to have the renderer enter PROCESS_MODE_BACKGROUND_BEGIN itself,
IDLE_PRIORITY_CLASS should be sufficient as its the same as far as CPU priority is
concerned and IO is irrelevant in the renderers.
Thus we can get background mode for hidden renderers without running into issue 381820.
Experiment with IDLE_PRIORITY_CLASS/BELOW_NORMAL_PRIORITY_CLASS vs the status quo.
Watching the relevant perf bots (tab_switching.top_10 -> MPArch.RWH_TabSwitchPaintDuration)
and UMA metrics MPArch.RWH_TabSwitchPaintDuration which shouldn't regress.
And others (e.g., SessionRestore related) which will hopefully improve.
Enable the experiment by default in the absence of Finch to get perf waterfall coverage.
The experiment will be called "BackgroundRendererProcesses" and have 4 groups:
["Disallow", "AllowBelowNormalFromBrowser",
"AllowIdleFromBrowser", "AllowBackgroundModeFromRenderer"]
It will be a per-session (rather than per-profile) experiment, randomly assigning a user
to a group every new Chrome session.
BUG=394368, 458594
Committed: https://crrev.com/aaf738a2cce69ce952386b48e3bc252bd307ef43
Cr-Commit-Position: refs/heads/master@{#317042}
Review URL: https://codereview.chromium.org/926663002
Cr-Commit-Position: refs/heads/master@{#317241}
|
|
|
|
|
|
|
|
|
|
|
| |
Breakpad use GUID+AGE as a unique identifier for a module.
This helps us to get the same identifier given an HMODULE.
BUG=
Review URL: https://codereview.chromium.org/922223004
Cr-Commit-Position: refs/heads/master@{#317226}
|