Skip to content

Commit bde7066

Browse files
authored
Merge pull request #62 from dmcgowan/fix-hang-on-shutdown
Fix hang on shutdown
2 parents 515d185 + 03e51cb commit bde7066

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

internal/vminit/runc/platform.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -223,8 +223,8 @@ func (p *linuxPlatform) CopyConsole(ctx context.Context, console console.Console
223223
}
224224
if cstdin != nil {
225225
cons = &closingConsole{
226-
Console: epollConsole,
227-
closeStdin: cstdin,
226+
EpollConsole: epollConsole,
227+
closeStdin: cstdin,
228228
}
229229
} else {
230230
cons = epollConsole
@@ -237,7 +237,9 @@ func (p *linuxPlatform) ShutdownConsole(ctx context.Context, cons console.Consol
237237
if p.epoller == nil {
238238
return errors.New("uninitialized epoller")
239239
}
240-
epollConsole, ok := cons.(*console.EpollConsole)
240+
epollConsole, ok := cons.(interface {
241+
Shutdown(close func(int) error) error
242+
})
241243
if !ok {
242244
return fmt.Errorf("expected EpollConsole, got %#v", cons)
243245
}
@@ -249,7 +251,7 @@ func (p *linuxPlatform) Close() error {
249251
}
250252

251253
type closingConsole struct {
252-
console.Console
254+
*console.EpollConsole
253255

254256
closeStdin io.Closer
255257
}

0 commit comments

Comments
 (0)