diff --git a/src/modules/partition/core/DeviceList.cpp b/src/modules/partition/core/DeviceList.cpp
index 3695193b4d4cacb0b2f368ddcc64b542a4298f67..d7e6bab29928a19bc8c60d86eda42761693f9b1a 100644
--- a/src/modules/partition/core/DeviceList.cpp
+++ b/src/modules/partition/core/DeviceList.cpp
@@ -129,12 +129,7 @@ QList< Device* > getDevices( DeviceType which, qint64 minimumSize )
 
     // Remove the device which contains / from the list
     for ( DeviceList::iterator it = devices.begin(); it != devices.end(); )
-        if ( (*it)->type() != Device::Type::Disk_Device )
-        {
-            cDebug() << " .. Removing device that is not a Disk_Device from list " << it;
-            it = erase(devices, it );
-        }
-        else if ( ! ( *it ) ||
+        if ( ! ( *it ) ||
                 ( *it )->deviceNode().startsWith( "/dev/zram" )
         )
         {
diff --git a/src/modules/partition/core/PartitionCoreModule.cpp b/src/modules/partition/core/PartitionCoreModule.cpp
index 178860e2e40d7c8b321365d08183e90f101f60a4..793686b2a8236cfbd84748ca8ad19ffd659e61f4 100644
--- a/src/modules/partition/core/PartitionCoreModule.cpp
+++ b/src/modules/partition/core/PartitionCoreModule.cpp
@@ -164,7 +164,18 @@ PartitionCoreModule::doInit()
     for ( auto deviceInfo : m_deviceInfos )
         deviceInfo->partitionModel->init( deviceInfo->device.data(), m_osproberLines );
 
-    m_bootLoaderModel->init( devices );
+    DeviceList bootLoaderDevices;
+
+    for ( DeviceList::Iterator it = devices.begin(); it != devices.end(); ++it)
+        if ( (*it)->type() != Device::Type::Disk_Device )
+        {
+            cDebug() << "Ignoring device that is not Disk_Device to bootLoaderDevices list.";
+            continue;
+        }
+        else
+            bootLoaderDevices.append(*it);
+
+    m_bootLoaderModel->init( bootLoaderDevices );
 
     //FIXME: this should be removed in favor of
     //       proper KPM support for EFI