diff --git a/neutron/agent/linux/ip_lib.py b/neutron/agent/linux/ip_lib.py index 39a9987..da3a710 100644 --- a/neutron/agent/linux/ip_lib.py +++ b/neutron/agent/linux/ip_lib.py @@ -113,10 +113,11 @@ class IPWrapper(SubProcessBase): log_fail_as_error=self.log_fail_as_error ).split() else: - output = ( - i for i in os.listdir(SYS_NET_PATH) - if os.path.islink(os.path.join(SYS_NET_PATH, i)) - ) + output = utils.execute(['find', SYS_NET_PATH, '-maxdepth', '1', + '-type', 'l', '-printf', '%f '], + run_as_root=self.force_root, + log_fail_as_error=self.log_fail_as_error + ).split() for name in output: if exclude_loopback and name == LOOPBACK_DEVNAME: