[roll] Roll fuchsia [starnix] Fix lock ordering in controlling terminal disassociation The `disassociate_controlling_terminal` function iterates through thread groups in the foreground process group and acquires their `ThreadGroupMutableState` locks. Previously, it was called while already holding the `ThreadGroupMutableState` lock of the exiting session leader. This caused a lock order violation. To enforce the correct lock order, `disassociate_controlling_terminal` must be called after dropping any `ThreadGroupMutableState` lock. This change introduces a `#[must_use]` `SessionDisassociation` struct returned by `leave_process_group` and `set_process_group`. Callers (like `ThreadGroup::remove`, `setpgid`, and `setsid`) must explicitly call `.disassociate_controlling_terminal()` on the returned value after dropping the `ThreadGroupMutableState` lock, ensuring the fix is safe and cannot be forgotten. Original-Original-Fixed: b/529617819 Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1689035 Original-Original-Revision: d09e36598357f3d802f4254da0137ebe22596415 GitOrigin-RevId: 54fef17c92bcd7cd8577f89dee1e7acab236078a Change-Id: I2b619c949a4d03c4be98a9b9458b56ce84d2a548 Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1692021 Cr-Commit-Position: refs/heads/main@{#196091}
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.