| commit | ad97c987409c2d74543861fffe5f0a6e9ae37cd5 | [log] [tgz] |
|---|---|---|
| author | Adam Perry <adamperry@fuchsia.infra.roller.google.com> | Thu Dec 04 15:08:27 2025 -0800 |
| committer | Copybara-Service <copybara-worker@google.com> | Thu Dec 04 15:09:52 2025 -0800 |
| tree | 32e595db46b1611e12d69173b9f13d9ef246f4a0 | |
| parent | 6824774fa6a8df66124f4c05ebe392cf6e0dfe98 [diff] |
[roll] Roll fuchsia [hwinfo] std::sync -> fuchsia_sync
The behaviors of fuchsia_sync's locks are very similar to those from
the standard library. std::sync::Mutex is a port of the libsync
mutex that fuchsia_sync::Mutex links against, and fuchsia_sync::RwLock
is very similar to the std::sync::RwLock's futex-based approach. However
there are some important differences:
1. fuchsia_sync supports lock cycle detection which surfaces many
deadlocks. See the documentation[0] for more details.
2. fuchsia_sync doesn't support lock poisoning because most of
Fuchsia's code is compiled with panic=abort.
a. saves memory with smaller types
b. avoids noop error handling syntax and branches
[0]: https://fuchsia.dev/fuchsia-src/development/debugging/lock_cycles
Original-Bug: 465178981
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1440134
Original-Revision: 49f784ed69d88f0dc7f8e05b80e135279047140a
GitOrigin-RevId: e9e9d840a172dce674fdf6ddf909e626500147d5
Change-Id: I105d732e8abe58945365f64d5dec8f986252eeca
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.