gn /
gn /
c21daab709ecbabb7e91d831cd107fe00f1e231a Revert "android: Don't parse /proc/self/maps to prefetch the library."
This reverts commit ef6f0fb35c08f1fbe5d44a183f470d1bb7a84af7.
Reason for revert: Regressed startup performance.
See https://chromeperf.appspot.com/report?sid=9df0ec76b0fffc74931cc7bdcf44cd4d540f81bb34ccde3571c2211ec8360ee6&start_rev=531281&end_rev=531574
Original change's description:
> android: Don't parse /proc/self/maps to prefetch the library.
>
> This commit changes the behavior of the native library prefetcher to
> rely on sentinel symbols rather than parsing /proc/self/maps.
>
> Behavior changes:
> 1. This will make the code no longer prefetch .data (because we don't
> look for it in the mappings), neither the sections that are part of
> the same mapping as .text (for instance, .rodata when using
> ld.gold). This is intended.
> 2. As a consequence, the UMA metric
> LibraryLoader.PercentageOfResidentCodeBeforePrefetch will move, as
> both sides of the ratio will change, and the population will change
> slightly as well (since code is currently not correctly ordered on
> ARM64 and x86_64)
>
> - Removes the reliance on a somewhat brittle parsing of a file
> - Parsing /proc/self/maps costs ~50ms of CPU on a Nexus 5X (on a little
> core, as this is triggered from an AsyncTask)
> - Allows to only fetch part of the native library (in a forthcoming CL)
>
> Rationale:
> Change-Id: I0bb7b28af3c3bd4af5745e2ebcc1fbf283bcc0c1
> Reviewed-on: https://chromium-review.googlesource.com/874470
> Commit-Queue: Benoit L <lizeb@chromium.org>
> Reviewed-by: Egor Pasko <pasko@chromium.org>
> Reviewed-by: agrieve <agrieve@chromium.org>
> Reviewed-by: Matthew Cary <mattcary@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#531515}
TBR=pasko@chromium.org,agrieve@chromium.org,lizeb@chromium.org,mattcary@chromium.org
Change-Id: I11d7cd7898d5f8d8fbebf391eba5fdaca154c08a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/886321
Reviewed-by: Benoit L <lizeb@chromium.org>
Commit-Queue: Benoit L <lizeb@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#531858}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 733c281814fea37fb2d1e3d98c3597e9a9f7fde3
1 file changed
tree: b0ca2cea2de375efe531bc1396eb439c76c7b5c6
- tools/