From 0eb9387480fb1a0a761ebbe58d459e6a6c93dae3 Mon Sep 17 00:00:00 2001 From: Alessandro Boch Date: Thu, 6 Aug 2015 17:04:38 -0700 Subject: [PATCH] Fix in bridge delete endpoint - In DeleteEndpoint(), veth removal is a best effort, as it could have alreayd been removed by sandbox destroy. Therefore if veth is not found, cleanup defer function should not run. Signed-off-by: Alessandro Boch --- drivers/bridge/bridge.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/bridge/bridge.go b/drivers/bridge/bridge.go index 7e9fcfa..a6a88b5 100644 --- a/drivers/bridge/bridge.go +++ b/drivers/bridge/bridge.go @@ -1129,9 +1129,9 @@ func (d *driver) DeleteEndpoint(nid, eid types.UUID) error { } // Try removal of link. Discard error: link pair might have - // already been deleted by sandbox delete. - link, err := netlink.LinkByName(ep.srcName) - if err == nil { + // already been deleted by sandbox delete. Make sure defer + // does not see this error either. + if link, err := netlink.LinkByName(ep.srcName); err == nil { netlink.LinkDel(link) }