From ee70937774e45c971496669956f0d0abeb7f3223 Mon Sep 17 00:00:00 2001 From: subhamkrai Date: Tue, 5 Oct 2021 11:08:38 +0530 Subject: [PATCH] core: close stdoutPipe Closing stdoutPipe that could possibly leaks memory due to unclosed resources. Closes: https://github.com/rook/rook/issues/8914 Signed-off-by: subhamkrai --- pkg/daemon/discover/discover.go | 1 + pkg/util/exec/exec.go | 1 + 2 files changed, 2 insertions(+) diff --git a/pkg/daemon/discover/discover.go b/pkg/daemon/discover/discover.go index e735fa82452be..50d590eee5060 100644 --- a/pkg/daemon/discover/discover.go +++ b/pkg/daemon/discover/discover.go @@ -158,6 +158,7 @@ func rawUdevBlockMonitor(c chan string, matches, exclusions []string) { logger.Warningf("Cannot open udevadm stdout: %v", err) return } + defer stdout.Close() err = cmd.Start() if err != nil { diff --git a/pkg/util/exec/exec.go b/pkg/util/exec/exec.go index 67913e1f512ab..950f96ce419be 100644 --- a/pkg/util/exec/exec.go +++ b/pkg/util/exec/exec.go @@ -238,6 +238,7 @@ func startCommand(env []string, command string, arg ...string) (*exec.Cmd, io.Re if err != nil { logger.Warningf("failed to open stdout pipe: %+v", err) } + defer stdout.Close() stderr, err := cmd.StderrPipe() if err != nil { logger.Warningf("failed to open stderr pipe: %+v", err)