File tree Expand file tree Collapse file tree 1 file changed +13
-5
lines changed Expand file tree Collapse file tree 1 file changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -631,14 +631,17 @@ func cmdDel(args *skel.CmdArgs) error {
631
631
632
632
isLayer3 := n .IPAM .Type != ""
633
633
634
- if isLayer3 {
635
- if err := ipam .ExecDel (n .IPAM .Type , args .StdinData ); err != nil {
636
- return err
634
+ ipamDel := func () error {
635
+ if isLayer3 {
636
+ if err := ipam .ExecDel (n .IPAM .Type , args .StdinData ); err != nil {
637
+ return err
638
+ }
637
639
}
640
+ return nil
638
641
}
639
642
640
643
if args .Netns == "" {
641
- return nil
644
+ return ipamDel ()
642
645
}
643
646
644
647
// There is a netns so try to clean up. Delete can be called multiple times
@@ -660,11 +663,16 @@ func cmdDel(args *skel.CmdArgs) error {
660
663
// https://github.com/kubernetes/kubernetes/issues/43014#issuecomment-287164444
661
664
_ , ok := err .(ns.NSPathNotExistErr )
662
665
if ok {
663
- return nil
666
+ return ipamDel ()
664
667
}
665
668
return err
666
669
}
667
670
671
+ // call ipam.ExecDel after clean up device in netns
672
+ if err := ipamDel (); err != nil {
673
+ return err
674
+ }
675
+
668
676
if n .MacSpoofChk {
669
677
sc := link .NewSpoofChecker ("" , "" , uniqueID (args .ContainerID , args .IfName ))
670
678
if err := sc .Teardown (); err != nil {
You can’t perform that action at this time.
0 commit comments