From c46852a087b92ed31725cdcc569a83c2d0cdd853 Mon Sep 17 00:00:00 2001 From: Guohan Lu Date: Tue, 12 Feb 2019 09:48:05 +0000 Subject: [PATCH] configure lldp when the port exists On some platform, portstate might be unknown as it might not be supported by the driver. Signed-off-by: Guohan Lu --- dockers/docker-lldp-sv2/lldpmgrd | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/dockers/docker-lldp-sv2/lldpmgrd b/dockers/docker-lldp-sv2/lldpmgrd index 769bb3f2956b..7d2528a9d3a6 100755 --- a/dockers/docker-lldp-sv2/lldpmgrd +++ b/dockers/docker-lldp-sv2/lldpmgrd @@ -73,17 +73,12 @@ def signal_handler(sig, frame): # ========================== Helpers ================================== -def is_port_up(port_name): - filename = "/sys/class/net/%s/operstate" % port_name +def is_port_exist(port_name): + filename = "/sys/class/net/%s/ifindex" % port_name if not os.path.exists(filename): return False - with open(filename) as fp: - state = fp.read() - if 'up' in state: - return True - else: - return False + return True # ============================== Classes ============================== @@ -159,8 +154,8 @@ class LldpManager(object): to_delete = [] for (port_name, cmd) in self.pending_cmds.iteritems(): - if not is_port_up(port_name): - # it doesn't make any sense to configure lldpd if the target port is unavailable + if not is_port_exist(port_name): + # it doesn't make any sense to configure lldpd if the target port does not exist # let's postpone the command for the next iteration continue