mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-24 22:43:05 +00:00
runtime: Register defer function at early stage
Register defer function at early stage ensure that it can be called if the startSandbox fails. Fixes: #2230 Signed-off-by: bin <bin@hyper.sh>
This commit is contained in:
parent
67dfb0b922
commit
d0bc148fe0
@ -1008,6 +1008,12 @@ func (s *Sandbox) startVM(ctx context.Context) (err error) {
|
||||
s.cw = consoleWatcher
|
||||
}
|
||||
|
||||
defer func() {
|
||||
if err != nil {
|
||||
s.hypervisor.stopSandbox(ctx, false)
|
||||
}
|
||||
}()
|
||||
|
||||
if err := s.network.Run(ctx, s.networkNS.NetNsPath, func() error {
|
||||
if s.factory != nil {
|
||||
vm, err := s.factory.GetVM(ctx, VMConfig{
|
||||
@ -1027,12 +1033,6 @@ func (s *Sandbox) startVM(ctx context.Context) (err error) {
|
||||
return err
|
||||
}
|
||||
|
||||
defer func() {
|
||||
if err != nil {
|
||||
s.hypervisor.stopSandbox(ctx, false)
|
||||
}
|
||||
}()
|
||||
|
||||
// In case of vm factory, network interfaces are hotplugged
|
||||
// after vm is started.
|
||||
if s.factory != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user