overlay2: close read end of pipe on mount exec
Use StdinPipe to ensure pipe is properly closed after startup
Fixes #23686
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
(cherry picked from commit ad4b3e11fe
)
This commit is contained in:
parent
0f1439a065
commit
07bd7b0128
1 changed files with 4 additions and 7 deletions
|
@ -32,12 +32,6 @@ type mountOptions struct {
|
|||
}
|
||||
|
||||
func mountFrom(dir, device, target, mType, label string) error {
|
||||
|
||||
r, w, err := os.Pipe()
|
||||
if err != nil {
|
||||
return fmt.Errorf("mountfrom pipe failure: %v", err)
|
||||
}
|
||||
|
||||
options := &mountOptions{
|
||||
Device: device,
|
||||
Target: target,
|
||||
|
@ -47,7 +41,10 @@ func mountFrom(dir, device, target, mType, label string) error {
|
|||
}
|
||||
|
||||
cmd := reexec.Command("docker-mountfrom", dir)
|
||||
cmd.Stdin = r
|
||||
w, err := cmd.StdinPipe()
|
||||
if err != nil {
|
||||
return fmt.Errorf("mountfrom error on pipe creation: %v", err)
|
||||
}
|
||||
|
||||
output := bytes.NewBuffer(nil)
|
||||
cmd.Stdout = output
|
||||
|
|
Loading…
Reference in a new issue