commit | accf8e3630237b6da005dd312b2cfcaf58575613 | [log] [tgz] |
---|---|---|
author | David Song <wintermelons@fuchsia.infra.roller.google.com> | Wed Nov 20 21:51:23 2024 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Nov 20 13:53:24 2024 -0800 |
tree | e3d52e24b37af290e700f2e9951eb77f02d64ff7 | |
parent | 8b9febdcb3511eed934c0429b83991d66b14f1a0 [diff] |
[roll] Roll fuchsia [starnix][cgroup] Build more of cgroup hierarchy Created `CgroupRoot` for the root of a cgroup hierarchy, as it has different properties than the rest of the tree. Both `CgroupRoot` and `Cgroup` implements `CgroupOps`. Their main difference is that `Cgroup` owns the `FsNode` of its `CgroupDirectoryHandle`, whereas the `FileSystem` owns the `FsNode` of the `CgroupRoot`. Each `CgroupDirectoryHandle` has a `Weak<dyn CgroupOps>` to get back the associated `Cgroup`, or `CgroupRoot`, which it can use to implement its interface files. `mknod` is no longer used to create the initial `cgroup.procs` file. Instead, `cgroup.procs` and `cgroup.controllers` files are created alongside the directory, and can be seen with `ls` without first being written to. Cgroup filesystems are now Uncached, because cgroup interface files are dynamically generated when the directory is created, and are removed together with the directory. Additionally they do not emit any inotify events on Linux. As such, we should implement the cgroup filesystem as Uncached, and fill in the logic for `create_node_ops` and `lookup`. Original-Bug: 377712920, 375677856, 373897750 Tested: syscalls test Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1146230 Original-Revision: 57a3977adcf018718c25fec2c0e0244fb778a8aa GitOrigin-RevId: f1eb760f3a89c632f462130ad825d80e74628ff4 Change-Id: I96a013eba1f356f13266c49f828ce77167586d22
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
.