diff --git a/Disk.cpp b/Disk.cpp
index 04c43cf..51eeba8 100644
--- a/Disk.cpp
+++ b/Disk.cpp
@@ -223,6 +223,8 @@
 }
 
 status_t Disk::readPartitions() {
+    std::lock_guard<std::mutex> lock(mLock);
+
     int8_t maxMinors = getMaxMinors();
     if (maxMinors < 0) {
         return -ENOTSUP;
@@ -311,6 +313,8 @@
 }
 
 status_t Disk::partitionPublic() {
+    std::lock_guard<std::mutex> lock(mLock);
+
     // TODO: improve this code
     destroyAllVolumes();
     mJustPartitioned = true;
@@ -357,6 +361,8 @@
 }
 
 status_t Disk::partitionMixed(int8_t ratio) {
+    std::lock_guard<std::mutex> lock(mLock);
+
     int res;
 
     destroyAllVolumes();
diff --git a/Disk.h b/Disk.h
index a8461fb..5ba6bae 100644
--- a/Disk.h
+++ b/Disk.h
@@ -21,6 +21,7 @@
 
 #include <utils/Errors.h>
 
+#include <mutex>
 #include <vector>
 
 namespace android {
@@ -100,6 +101,8 @@
     int mFlags;
     /* Flag indicating object is created */
     bool mCreated;
+    /* Lock held while partitioning */
+    std::mutex mLock;
     /* Flag that we just partitioned and should format all volumes */
     bool mJustPartitioned;
 
diff --git a/VolumeManager.cpp b/VolumeManager.cpp
index 86e3fd4..dcadd14 100644
--- a/VolumeManager.cpp
+++ b/VolumeManager.cpp
@@ -310,6 +310,7 @@
         break;
     }
     case NetlinkEvent::Action::kChange: {
+        LOG(DEBUG) << "Disk at " << major << ":" << minor << " changed";
         for (auto disk : mDisks) {
             if (disk->getDevice() == device) {
                 disk->readMetadata();
