summaryrefslogtreecommitdiff
path: root/src/basic/process-util.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2021-07-29 16:50:44 +0200
committerLennart Poettering <lennart@poettering.net>2021-10-27 17:56:36 +0200
commitab27b2fe56c6c4bd0295b248448adb1c698e9284 (patch)
tree5c0b54639b60672257f01ff56ef9a93d4efc08b6 /src/basic/process-util.c
parent5cfa0798baaf3ba442f8663353e1da2098cc5b87 (diff)
downloadsystemd-ab27b2fe56c6c4bd0295b248448adb1c698e9284.tar.gz
exec-util: use close_all_fds_without_malloc() from freeze()
Diffstat (limited to 'src/basic/process-util.c')
-rw-r--r--src/basic/process-util.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
index 5c56a59aab..06493f7799 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -1620,8 +1620,10 @@ bool invoked_as(char *argv[], const char *token) {
_noreturn_ void freeze(void) {
log_close();
- /* Make sure nobody waits for us on a socket anymore */
- (void) close_all_fds(NULL, 0);
+ /* Make sure nobody waits for us (i.e. on one of our sockets) anymore. Note that we use
+ * close_all_fds_without_malloc() instead of plain close_all_fds() here, since we want this function
+ * to be compatible with being called from signal handlers. */
+ (void) close_all_fds_without_malloc(NULL, 0);
/* Let's not freeze right away, but keep reaping zombies. */
for (;;) {