[roll] Roll fuchsia [kernel] Fix zx_info_task_stats_t for restricted aspaces This change fixes a bug in how we compute zx_info_task_stats_t for processes with restricted aspaces. The bug arrose because of an impdenance mismatch between ProcessDispatcher::GetStats and VmAspace::GetMemoryUsage. GetStats reports numbers using process-centric definitions of shared and private while GetMemoryUsage computes values using aspace-centric definitions of shared and private. Prior to this change, ProcessDispatcher::GetStats simply summed results of GetMemoryUsage on its two aspaces. Now, it transforms the aspace-centric numbers into process-centric numbers using the ShareableProcessState's count. See fxbug.dev/123525 and the linked doc for more details. Note, even after this change there is still an accuracy issue with mem_scaled_shared_bytes. While the values will now "sum to 1", process that share aspaces will have a smaller "fractional-responsibility" than processes that do not share aspaces. For example, imagine there is only one page on the system and three processes, P1, P2, and P3. P1 and P2 each have their own restricted aspace as well as normal aspace they share with each other (count is 2). P3 has no restricted aspace and its normal aspace has a count of 1. The page is mapped into P1/P2's normal (shared) aspace and P3's aspace. Ideally, the mem_scaled_shared_bytes for each of these processes should be 1/3 of a page. However, as of this CL, P1 and P2's mem_scaled_shared_bytes will be 1/4 of a page each and p3's will be 1/2 of a page. Add new test case to verify zx_info_task_stats_t for shared processes. Test: fx test fuchsia-pkg://fuchsia.com/process-test Original-Fixed: 123525 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/819103 Original-Revision: 4222783b9390b5e805ffee79549561a37a93d5db GitOrigin-RevId: 31b3bbfc68f7995710c34facafb371beae2618e6 Change-Id: I70d1f33dce80a2d7452a14ba26e5ce1c6dff7f68
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.