RFR: 8287007: [cgroups] Consistently use stringStream throughout parsing code [v2]
Severin Gehwolf
sgehwolf at openjdk.java.net
Tue Jun 7 12:42:26 UTC 2022
> Please review this cleanup change in the cgroup subsystem which used to use hard-coded stack allocated
> buffers for concatenating strings in memory. We can use `stringStream` instead which doesn't have the issue
> of hard-coding maximum lengths (and related checks) and makes the code, thus, easier to read.
>
> While at it, I've written basic `gtests` verifying current behaviour (and the same for the JDK code). From
> a functionality point of view this is a no-op (modulo the one bug in the substring case which seems to be
> there since day one). I'd prefer if we could defer any change in functionality to a separate bug as this is
> meant to only use stringStream throughout the cgroups code.
>
> Testing:
> - [x] Container tests on Linux x86_64 cgroups v1 and cgroups v2
> - [x] Added tests, which I've verified also pass before the stringStream change
>
> Thoughts?
Severin Gehwolf has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:
- Merge branch 'master' into jdk-8287007-string-stream
- Add cgroups v2 java test
- use stringStream in cgroups v2
- Add gtest for cgroups v2 code path
Also fixes the bug when cgroup path is '/'.
- 8287007: [cgroups] Consistently use stringStream throughout parsing code
- 8287007: [cgroups] Consistently use stringStream throughout parsing code
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/8969/files
- new: https://git.openjdk.java.net/jdk/pull/8969/files/a7b156a4..8047fe37
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=8969&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=8969&range=00-01
Stats: 60055 lines in 839 files changed: 34126 ins; 19620 del; 6309 mod
Patch: https://git.openjdk.java.net/jdk/pull/8969.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/8969/head:pull/8969
PR: https://git.openjdk.java.net/jdk/pull/8969
More information about the serviceability-dev
mailing list