diff --git a/infiniband.c b/infiniband.c
index 5959b8e80187d15c7efe2425ab4d89e7d0bcef2f..f2321dc064599a601177fa88cbdc0924cd203d2c 100644
--- a/infiniband.c
+++ b/infiniband.c
@@ -33,7 +33,8 @@ char **init_infiniband(char* infi_path) {
     glob_t res;
   
     glob("/sys/class/infiniband/*/ports/*/counters/", 0, NULL, &res);
-
+    if(res.gl_pathc == 0)
+      return NULL;
     infi_path = res.gl_pathv[0];
   }
   
diff --git a/mojitos.c b/mojitos.c
index f642f4d27fd4f8bac191948bf6710592f5711c4c..ffc9869f616063ad653a54bb5fb06606263fbbf8 100644
--- a/mojitos.c
+++ b/mojitos.c
@@ -197,6 +197,8 @@ int main(int argc, char **argv) {
   char ** infiniband_sources = NULL;
   if(infi_path != NULL)
     infiniband_sources = init_infiniband(infi_path);
+  if(infiniband_sources == NULL)
+    infi_path = NULL;
   long long infiniband_values[4]={0,0,0,0};
   long long tmp_infiniband_values[4]={0,0,0,0};
   get_network(infiniband_values, infiniband_sources);