[roll] Roll fuchsia Reland "[cpu_profiler] Allow profiling the root job" This relands the --system-wide flag for the cpu profiler. In the logs we saw: ``` 17:21:32.089411 [00055.098853][profiler] ERROR: [src/performance/experimental/profiler/targets.cc(227)] failed to get job: 88854: -25 (ZX_ERR_NOT_FOUND) 17:21:32.089711 [00055.099276][profiler] ERROR: [src/performance/experimental/profiler/targets.cc(233)] failed to make job_target: -25 (ZX_ERR_NOT_FOUND) ... 17:21:34.094972 [00057.103174][profiler] INFO: [sampler.cc(225)] Stopped! Collected 0 samples ``` A change to more robustly configure the job tree is include in If5be0771c4170bb10d582aa732abee7227f88d04, so this patch should now be ready to reland. Besides the above dependency, this patch has no changes from the original reverted patch. Original change's description: > [cpu_profiler] Allow profiling the root job > > Adds a "--system-wide" target to the ffx profiler attach command and > strings it through to the profiler controller. If specified, the > controller will walk the root job tree and attach to every thread it > finds. It's pretty slow to do this right now, so some usability fixes > will follow. > > This also improves the flow where a profiled process exiting mid session > would cause the session to fail to get any samples, as this made > profiling system wide very difficult otherwise. Now, samples will be > returned even if symbols were not available, but they won't get > symbolized. In this case, a warning will be printed to stderr in the ffx > plugin, and the session stats will include the offending pids for non > interactive use cases. > > Finally, this adds support to samples_to_pprof for samples with multiple > lists of module declarations. > > Original-Fixed: 359660675 > Original-Fixed: 362511006 > > Multiply: cpu_profiler.sh > Change-Id: I02380772e1e8894dbf50ef8d9127ea224278bda9 > Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1101200 > Fuchsia-Auto-Submit: Gwen Mittertreiner <gmtr@google.com> > API-Review: Miguel Flores <miguelfrde@google.com> > Reviewed-by: Adam Perry <adamperry@google.com> > Reviewed-by: Mark Seaborn <mseaborn@google.com> > Reviewed-by: Miguel Flores <miguelfrde@google.com> > Commit-Queue: Gwen Mittertreiner <gmtr@google.com> Original-Bug: 359660675 Original-Bug: 362511006 Original-Bug: 371463369 Multiply: cpu_profiler.sh Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1134813 Original-Revision: 715528af2d2c273337c5d1f119ae16851b59de3d GitOrigin-RevId: 234188e4305181b3865af73185190c922949f675 Change-Id: I3b6e188ad80d605e4f3d8d6a69e9626488ae62f9
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.