Tim Zhang
4a2042068e
Merge pull request #28 from Tim-Zhang/update-cargo-toml
...
Add field homepage and readme for Cargo.toml
2021-01-25 17:34:43 +08:00
Tim Zhang
9ac2f5d5ab
Add field homepage and readme for Cargo.toml
...
Display readme on the crate's page.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-25 17:32:24 +08:00
Tim Zhang
a58cd1d553
Merge pull request #31 from Tim-Zhang/switch-travis-to-github-action
...
Migrate the CI from travis-ci to Github Actions
2021-01-25 17:30:37 +08:00
Tim Zhang
88a45d4922
Migrate the CI from travis-ci to Github Actions
...
Because travis-ci.org will be shutting down.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-25 17:24:45 +08:00
Tim Zhang
0c58b5dd84
Add Makefile
...
So we can use make to build, check and test
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-25 17:20:56 +08:00
Tim Zhang
8448548cb3
Merge pull request #30 from bergwolf/issue-templates
...
github: add issue templates
2021-01-25 15:33:01 +08:00
Peng Tao
d50245e116
github: add issue templates
...
cgroups-rs should not use the repository default issue templates.
Let's add a private version to override the default ones.
Fixes : #29
Signed-off-by: Peng Tao <bergwolf@hyper.sh >
2021-01-25 15:01:48 +08:00
Tim Zhang
bbdfa88596
Merge pull request #26 from Tim-Zhang/memory-apply-customized-attrs
...
Apply customized attributes in MemController.apply
v0.2.2
2021-01-25 14:37:34 +08:00
Tim Zhang
853ed46993
release: v0.2.2
...
Bump version to 0.2.2
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-25 12:20:30 +08:00
Tim Zhang
15b65c5e5e
Apply customized attributes in MemController.apply
...
Fixes : #25
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-25 12:11:43 +08:00
Tim Zhang
87f8ac7f0d
Merge pull request #23 from Tim-Zhang/add-trait-bound-for-hierarchy
...
Add trait bound for hierarchy
v0.2.1
2021-01-07 16:27:15 +08:00
Tim Zhang
225388ff7c
release: v0.2.1
...
Bump version to 0.2.1
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-06 22:31:04 +08:00
Tim Zhang
f0a695cc00
Add trait bound Sync for Hierarchy
...
So that the struct Cgroup could across await
Signed-off-by: Tim Zhang <tim@hyper.sh >
2021-01-06 22:31:04 +08:00
Tim Zhang
50d3c398a0
Merge pull request #22 from Apokleos/master
...
optimize and refactor: read_to_string and read_i[u]64_from
2021-01-06 22:30:17 +08:00
LiYa'nan
033fa4b857
optimize and refactor: read_to_string and read_i[u]64_from
...
There's so many Duplicated read_string_from method in different
subsystem's implementation, so as read_u64_from/read_i64_from methods.
(1) Move the read_string_from method into `lib.rs`,
called by each subsystem implementation as needed.
(2) Refactor read_u[i]64_from method with the help Rust Generic f
unction `read_from` and wrapped by read_u64_from or read_i64_from.
fix : #20
Signed-off-by: LiYa'nan <oliverliyn@gmail.com >
2020-12-24 09:25:00 +08:00
Peng Tao
ac4e6eda66
Merge pull request #21 from Tim-Zhang/change-name
...
Change package name to cgroups-rs
2020-12-21 16:22:06 +08:00
Tim Zhang
35ecd6fd77
Update readme
...
- Change the travis badge
- Update the description about v2 supporting.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-21 15:51:34 +08:00
Tim Zhang
eb6577e3e0
Change package name to cgroups-rs
...
We need a new package name to create a new crate
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-21 15:46:30 +08:00
Fupan Li
8f6a7e0a31
Merge pull request #19 from Tim-Zhang/0.2.0
...
Ready to release 0.2.0
v0.2.0
2020-12-21 11:21:07 +08:00
Tim Zhang
9baa065226
release: v0.2.0
...
Bump vertion to 0.2.0
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
e160df0751
Make read_i64_from private and merge read_str_from to its caller
...
Also remove duplicated read_i64_from.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
e1e05d3a1c
Make new_with_relative_paths=new and load_with_relative_paths=new in v2
...
Because the relative_paths is only valid for cgroup v1, the v2 use
unified hierarchy.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Qingyuan Hou
a89f4a062e
Support set notify_on_release & release_agent
...
Support set notify_on_release & release_agent
Signed-off-by: Qingyuan Hou <qingyuan.hou@linux.alibaba.com >
2020-12-17 17:56:46 +08:00
Tim Zhang
61a0957a65
Fix set_swappiness in cgroup v2
...
The file should be memory.swap.max in cgroup v2.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
059204589c
Ignore kmem in cgroup v2
...
Because there is no kmem in cgroup v2.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
c254fffbe0
Update readme
...
Update readme
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
438d774866
Fix test
...
Fix test
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
42ee1bafbd
Make Cgroup can be stored in struct
...
- Change type of hier to remove lifetimes
- impl Clone, Default, Debug for Cgroup
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
b6bb5ae947
docs: Hide Re-exports
...
Make `pub use crate::cgroup::Cgroup` display as struct in docs.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
d2882b1d85
Print cause when println!("{}")
...
> Print like following:
unable to write to a control group file caused by: Os { code: 22, kind: InvalidInput, message: "Invalid argument" }) }
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
abcb5ed031
Add more logs for create_dir error in controller.create
...
We need know the path name which failed to create.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
1f188be405
Detect subsystems and get root from /proc/self/mountinfo
...
Delete check_support and stop detecting subsystems by finding in the
root folders because the detecting method is not accurate.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
fbd7164c29
Fix warnings in tests
...
Remove following warnings
- unused import
- unused Result
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
f34225411e
Remove Box wrap of Cgroup.hire
...
It's unnecessary.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
cd998f3f9b
Do not place cgroup under relative path read from cgroup by default
...
Add new_with_corresponding_relative_paths to do the original action.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
1ac76b69ba
Make function find_v1_mount pub
...
The function find_v1_mount is useful for customized impl for Hierarchy.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
121f78d8e8
Expose deletion error
...
So that users can retry or do some aftercare.
Fixes : #18
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
0f76570677
Avoid exception caused by cgroup writeback feature
...
The cgroup writeback feature requires cooperation
between memcgs and blkcgs.
To avoid exceptions, we should add_task for blkcg before
memcg(push BlkIo before Mem).
For more Information:
https://www.alibabacloud.com/help/doc-detail/155509.ht
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
10650e2b16
Update tests to adapt new type of fields in resource
...
The type has been changed to Option type.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:46 +08:00
Tim Zhang
567cdb43b3
Use Option as resource fields, remove the update switch: update_values
...
Use idiomatic Option::None to represent optional fields.
This enables updates where not all fields need to be specified.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 17:56:41 +08:00
Tim Zhang
0c18b0855e
Support customized attributes for CpuController and MemController
...
Customized attributes are useful for customized kernels.
Usage:
let resource = &mut cgroups::Resources::default();
resource.cpu.attrs.insert("cpu.cfs_init_buffer_us", "10".to_string());
// apply here
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 16:45:41 +08:00
Yang, Wei
ca610bb57e
add add_task_by_tgid
...
Add task by writing thread group id to cgroup.procs.
Signed-off-by: Yang, Wei <wei.yang1@linux.alibaba.com >
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-12-17 15:57:22 +08:00
Fupan Li
af6fc63bed
Merge pull request #17 from Tim-Zhang/minor-updates
...
Minor updates
2020-10-30 10:15:05 +08:00
Tim Zhang
6f9e89572e
MemController: add method reset_max_usage
...
We need a method to reset the max memory usage recorded.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-10-29 19:35:39 +08:00
Tim Zhang
42eb32765b
Make methods to_controller and controller_name of Subsystem public
...
We need these functions to detect whether subsystem path exists.
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-10-29 19:32:55 +08:00
Tim Zhang
efb98108fc
Fix warnings
...
Got:
cargo build --target x86_64-unknown-linux-musl
Compiling cgroups v0.1.1-alpha.0 (/home/tim/project/cgroups-rs)
warning: unused import: `nix::sys::statfs`
--> src/hierarchies.rs:220:5
|
220 | use nix::sys::statfs;
| ^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: 1 warning emitted
Signed-off-by: Tim Zhang <tim@hyper.sh >
2020-10-29 19:31:55 +08:00
James O. D. Hunt
c310b30c52
Merge pull request #14 from liubin/enhancement/13-fix-warnings
...
fix build warnings
2020-10-01 17:28:16 +01:00
bin liu
152af17f8f
fix build warnings
...
And in Travis CI, treat warnings as error
to keep from merging codes with warning.
Fixes : #13
Signed-off-by: bin liu <bin@hyper.sh >
2020-09-23 16:19:51 +08:00
Bin Liu
d18b3bac2f
Merge pull request #16 from liubin/enhancement/15-add-workflow-checks
...
add basic GitHub workflow for basic checks
2020-09-23 16:17:33 +08:00
bin liu
414fa281cc
add basic github workflow for basic checks
...
Basic checks includes:
- Must have commit title/body
- Must have DCO(SoC)
- Title/Body line length are limited 75/72
- Add wip/do-not-merge to label PRs that could be merged
Fixes : #15
Signed-off-by: bin liu <bin@hyper.sh >
2020-09-23 16:15:08 +08:00