commit | c09f4ae5ea7387e828af48d556ab1d51d9d1945c | [log] [tgz] |
---|---|---|
author | Yifei Teng <yifeit@fuchsia.infra.roller.google.com> | Thu Jul 07 03:17:47 2022 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Jul 06 20:19:25 2022 -0700 |
tree | aceccf55ba605e5ee4da69c1e480501dd0ef6377 | |
parent | b5e930de3543c81ca998cb1f7cc60a3ca31ff717 [diff] |
[roll] Roll fuchsia [async] Extend error code in async_get_sequence_id When implementing the sequence ID in the driver runtime, we found that there are two kinds of driver dispatchers: synchronized and unsynchronized, and it's unclear what should be the behavior of unsynchronized dispatcher (which schedules tasks in parallel without sequential ordering guarantees), when asked about a sequence ID. If the unsynchronized dispatcher returns UNSUPPORTED, that causes the FIDL runtime to fallback to checking physical threads, since the FIDL runtime needs to work over other dispatchers that don't support sequences. But checking physical threads is not reliable: an unsynchronized dispatcher could happen to place tasks on the same thread. This CL adds an WRONG_TYPE error code to model unsynchronized dispatchers better: when a thread running a task from a unsynchronized dispatcher calls async_get_sequence_id, it will get WRONG_TYPE, meaning the current task is not part of a sequence. Sequence checkers in the FIDL runtime can then reliably turn that into an error message, instead of relying on risky thread ID assertions. Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/695597 Original-Revision: e2225922e1daad27db2be95968c9c1d4c367968c GitOrigin-RevId: 031357bd475533990d65763aa0bc8789ca652cdc Change-Id: I98d44971e44a3d3173e09d45036c2c0ced6c86c3
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 via the IRC channel #fuchsia
on Freenode.
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
.