[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[PATCH 1/2 rhel6-branch] Install and enable rdma service when using IPoIB network device (#660686)



Related: rhbz#660686
---
 instdata.py   |    3 +++
 network.py    |    8 ++++++++
 yuminstall.py |    2 ++
 3 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/instdata.py b/instdata.py
index c283c26..3ecc913 100644
--- a/instdata.py
+++ b/instdata.py
@@ -182,6 +182,9 @@ class InstallData:
 
         services = list(self.storage.services)
 
+        if self.network.hasActiveIPoIBDevice():
+            services.append("rdma")
+
         if self.anaconda.isKickstart:
             services.extend(self.ksdata.services.enabled)
 
diff --git a/network.py b/network.py
index 98dd4af..293c548 100644
--- a/network.py
+++ b/network.py
@@ -622,6 +622,14 @@ class Network:
                     log.warning("autoconnectFCoEDevices: %s file not found" %
                                 device.path)
 
+    def hasActiveIPoIBDevice(self):
+        active_devs = getActiveNetDevs()
+        for devName, device in self.netdevices.items():
+            if (devName in active_devs and
+                device.get('TYPE') == 'InfiniBand'):
+                return True
+        return False
+
     def write(self):
 
         ifcfglog.debug("Network.write() called")
diff --git a/yuminstall.py b/yuminstall.py
index cae9dbf..099de44 100644
--- a/yuminstall.py
+++ b/yuminstall.py
@@ -1558,6 +1558,8 @@ debuglevel=6
             self.selectBestKernel(anaconda)
             map(self.selectPackage, anaconda.platform.packages)
             self.selectFSPackages(anaconda.id.storage)
+            if anaconda.id.network.hasActiveIPoIBDevice():
+                self.selectPackage("rdma")
             self.selectAnacondaNeeds()
         else:
             self.ayum.update()
-- 
1.7.4


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]