diff --git a/src/backend/cpu/platform/HwlocCpuInfo.cpp b/src/backend/cpu/platform/HwlocCpuInfo.cpp
index 48a17f234..98f559890 100644
--- a/src/backend/cpu/platform/HwlocCpuInfo.cpp
+++ b/src/backend/cpu/platform/HwlocCpuInfo.cpp
@@ -33,6 +33,7 @@
 
 
 #include "backend/cpu/platform/HwlocCpuInfo.h"
+#include "base/io/log/Log.h"
 
 
 namespace xmrig {
@@ -201,6 +202,12 @@ xmrig::CpuThreads xmrig::HwlocCpuInfo::threads(const Algorithm &algorithm) const
         processTopLevelCache(cache, algorithm, threads);
     }
 
+    if (threads.empty()) {
+        LOG_WARN("hwloc auto configuration for algorithm \"%s\" failed.", algorithm.shortName());
+
+        return BasicCpuInfo::threads(algorithm);
+    }
+
     return threads;
 }