[roll] Roll fuchsia [zircon][counters] Support Rust clients

This CL creates a Rust version of `//zircon/kernel/lib/counters`. This
crate lets clients define kcounters in Rust. These counters get
aggregated into the special linker section for kcounters, just like the
ones declared in C++.

With this CL, each kcounter must either by accessed by Rust or by C++.
We don't support sharing a single kcounter between the two languages.
However, that would is possible if we want with a future CL.

This CL assumes we will enable LTO for the kernel. With LTO, the FFI
bridge to C++ should get optimized away.

Original-Original-Fixed: b/512838657
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1624256
Original-Original-Revision: a7dde7b5f7bd0d10f4ea347eaa95a24e3b760f4d
GitOrigin-RevId: 7c7e59b9a3804a87995746b22067337a66b0d569
Change-Id: I6b6fee8f96ae3c3cb7c97b175f67045b76dac2c9
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1629438
Cr-Commit-Position: refs/heads/main@{#193619}
1 file changed
tree: 7d88c834c674c205b2596dbf2c83ecbed0f5f276
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
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 in one of the communication channels documented at get involved.

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.