diff --git a/PublicVolume.cpp b/PublicVolume.cpp
index 9d6887d0da75732e6d8c3eeba92c74524f5df497..d17853bcc3a441d655b32d9c2b9bfdd94acbba48 100644
--- a/PublicVolume.cpp
+++ b/PublicVolume.cpp
@@ -94,6 +94,11 @@ status_t PublicVolume::doMount() {
     // TODO: expand to support mounting other filesystems
     readMetadata();
 
+    if (mFsType != "vfat") {
+        LOG(ERROR) << getId() << " unsupported filesystem " << mFsType;
+        return -EIO;
+    }
+
     if (vfat::Check(mDevPath)) {
         LOG(ERROR) << getId() << " failed filesystem check";
         return -EIO;