Merge pull request #11301 from lifupan/fix_cgroup

runtime-rs: fix the issue of delete cgroup failed
This commit is contained in:
RuoqingHe 2025-05-27 05:05:32 +02:00 committed by GitHub
commit 139dc13bdc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -123,11 +123,11 @@ impl CgroupsResource {
/// delete will move the running processes in the cgroup_manager and
/// overhead_cgroup_manager to the parent and then delete the cgroups.
pub async fn delete(&self) -> Result<()> {
for cg_pid in self.cgroup_manager.tasks() {
// For now, we can't guarantee that the thread in cgroup_manager does still
// exist. Once it exit, we should ignore that error returned by remove_task
for cg_pid in self.cgroup_manager.procs() {
// For now, we can't guarantee that the process in cgroup_manager does still
// exist. Once it exit, we should ignore that error returned by remove_task_by_tgid
// to let it go.
if let Err(error) = self.cgroup_manager.remove_task(cg_pid) {
if let Err(error) = self.cgroup_manager.remove_task_by_tgid(cg_pid) {
match error.source() {
Some(err) => match err.downcast_ref::<io::Error>() {
Some(e) => {