CLOUDSTACK-3959: [KVM] agent setup failed when physical interface name is in pXpY format
Add handling. Signed-off-by: Edison Su <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/7774ecfd Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/7774ecfd Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/7774ecfd Branch: refs/heads/master Commit: 7774ecfd5ab3e2ecf1fc75634a959737a302dc79 Parents: 211524f Author: Toshiaki Hatano <[email protected]> Authored: Tue Jul 30 22:03:32 2013 +0000 Committer: Edison Su <[email protected]> Committed: Tue Jul 30 16:17:12 2013 -0700 ---------------------------------------------------------------------- .../hypervisor/kvm/resource/LibvirtComputingResource.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/7774ecfd/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java index bfa0b7e..d91c1c5 100755 --- a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java +++ b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java @@ -1000,7 +1000,7 @@ ServerResource { File f = new File("/sys/devices/virtual/net/" + bridgeName + "/brif"); if (! f.isDirectory()){ - s_logger.debug("failing to get physical interface from bridge" + s_logger.debug("failing to get physical interface from bridge " + bridgeName + ", does " + f.getAbsolutePath() + "exist?"); return ""; @@ -1012,13 +1012,14 @@ ServerResource { String fname = interfaces[i].getName(); s_logger.debug("matchPifFileInDirectory: file name '"+fname+"'"); if (fname.startsWith("eth") || fname.startsWith("bond") - || fname.startsWith("vlan") || fname.startsWith("em")) { + || fname.startsWith("vlan") || fname.startsWith("em") + || fname.matches("^p\\d+p\\d+")) { return fname; } } - s_logger.debug("failing to get physical interface from bridge" - + bridgeName + ", did not find an eth*, bond*, or vlan* in " + s_logger.debug("failing to get physical interface from bridge " + + bridgeName + ", did not find an eth*, bond*, vlan*, em*, or p*p* in " + f.getAbsolutePath()); return ""; }
