[roll] Roll fuchsia [memory][fidl] Add partner_internal-compatible FIDL libraries.

# Background
`ffx profile memory` was communicating with memory_monitor
via `WriteJsonCaptureAndBuckets` and `SignalMemoryPressure`.

As per RFC-0169, these FIDL APIs should be incorporated in the
Partner SDK:
"Stable ffx plugins built in fuchsia.git will use build restrictions
to restrict the set of FIDL definitions they use to those available
in public and partner SDKs."

# CL Objective

The purpose of this CL is to incorporate feedback so that the
aforementioned FIDL API can be promoted to the partner SDK.

# Purpose and design of the existing APIs

## WriteJsonCaptureAndBuckets

The goal of this API is to expose the vmos of the system, to which
processes the vmos belong, and some bucketing information to group
VMOs into convenient groups (e.g. "Graphics", "Networking").

The data is written as JSON via a channel.

The reason JSON+channel is used instead of traditional FIDL is
convenience:
* Historically memory_monitor was already generating the JSON data
  for `fx mem`.
* The 64kb limit for FIDL is painful here: the list of processes may
  be larger than 64kb, and each process may reference more than 64kb
  worth of VMOs. Also both the list of VMOS and bucket definition
  could be larger than 64kb.

Transferring this data with pure FIDL would require non trivial paging.

Also note that the consumer of this FIDL API is `ffx`, which may not
have access to all the features of FIDL (e.g. RFC-0196: FIDL large
messages) due to Overnet.

## SignalMemoryPressure
This API is used to test the watchers of the fuchsia.memorypressure
service.

# CL changes

This CL moves the two methods into two separate FIDL
libraries:
* `WriteJsonCaptureAndBuckets` becomes `CollectJsonStats` and moves to
fuchsia.memory.inspection.Collector
* `SignalMemoryPressure` becomes `Signal` and moves to
fuchsia.memory.debug.MemoryPressure

These two libraries are included in the partner_internal SDK.
This CL also improves the comments, names, and removes unnecessary
FIDL annotations.

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/785859
Original-Revision: a207e0541e615ae65b16bc29e66cde37793c6ffa
GitOrigin-RevId: fb903b341e0e7ab0a7053e6426a5b5606d3afa24
Change-Id: I9a3e9a3507ac72a2774715b9610870888e5f070f
1 file changed
tree: 830c5dca4052a72a2741153223ffe287f42550fd
  1. git-hooks/
  2. infra/
  3. third_party/
  4. cts
  5. firmware
  6. flower
  7. jiri.lock
  8. minimal
  9. prebuilts
  10. README.md
  11. stem
  12. test_durations
  13. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

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 via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.