mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-13 13:17:43 +03:00
parent
084e7706c2
commit
702cf08fce
@ -4250,6 +4250,12 @@ static int exec_child(
|
||||
}
|
||||
|
||||
r = cg_attach_everywhere(params->cgroup_supported, p, 0, NULL, NULL);
|
||||
if (r == -EUCLEAN) {
|
||||
*exit_status = EXIT_CGROUP;
|
||||
return log_unit_error_errno(unit, r, "Failed to attach process to cgroup %s "
|
||||
"because the cgroup or one of its parents or "
|
||||
"siblings is in the threaded mode: %m", p);
|
||||
}
|
||||
if (r < 0) {
|
||||
*exit_status = EXIT_CGROUP;
|
||||
return log_unit_error_errno(unit, r, "Failed to attach to cgroup %s: %m", p);
|
||||
|
@ -346,6 +346,9 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
|
||||
xsprintf(c, PID_FMT "\n", pid);
|
||||
|
||||
r = write_string_file(fs, c, WRITE_STRING_FILE_DISABLE_BUFFER);
|
||||
if (r == -EOPNOTSUPP && cg_is_threaded(controller, path) > 0)
|
||||
/* When the threaded mode is used, we cannot read/write the file. Let's return recognizable error. */
|
||||
return -EUCLEAN;
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user