commit | fb291f35381e66a0cb0b754dbce1115affa1755a | [log] [tgz] |
---|---|---|
author | Adrian Danis <adanis@fuchsia.infra.roller.google.com> | Tue Feb 15 02:36:27 2022 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Feb 14 18:37:25 2022 -0800 |
tree | d92a4c8bd314ba8146801d6b6ad1cfe282e7fbe2 | |
parent | 9f1fc34a43b6bde7e9fad94b9eecad01700b22b7 [diff] |
[roll] Roll fuchsia [kernel][object] Avoid unexpected on_zero_handles This changes zx_object_get_info(ZX_INFO_JOB_PROCESSES) to not report processes that are in the INITIAL state with a handle count of 0. This prevents zx_object_get_child being used on them, which can lead to a premature invocation of on_zero_handles. This is important as processes in the initial state perform actual work in on_zero_handles. In particular there's a race with operations such as zx_process_create where, prior to the user handle being created, the dispatcher is in the job tree and can be found by zx_object_get_child. Until the user handle is created the handle count is zero, and so the handle created by get_child can cause the count to go from 0->1 and then 1->0 on close. Result is the process returned by zx_process_create can be killed, due to on_zero_handles running, before it's even returned to the user. Original-Bug: 76417, 93331 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/643402 Original-Revision: 7347c7bb9af6d3eafee8e82cb79aa5349cda1b13 GitOrigin-RevId: 1eb16779187224ccbd52743eec3f97dd5adcb709 Change-Id: I0357082a173c17ebef201125f5ecc387b11e7aee
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
.