diff --git a/src/api/encryption_remove_post.c b/src/api/encryption_remove_post.c
index e76e357bff5302490fa13f05e660f32dc432930f..452a223aee1e79d826eb76dd41cdd5202ff6df75 100644
--- a/src/api/encryption_remove_post.c
+++ b/src/api/encryption_remove_post.c
@@ -73,22 +73,8 @@ int callback_encryption_remove_post(const struct _u_request * request,
     }
 
     // Determine the filesystem usage of the encrypted data partition.
-    unsigned long size = filesystem_usage(DATA_TMP_MOUNTPOINT);
-    if (size < 0)
-    {
-        // Something went wrong in determining the filesystem usage.
-        printf("determining filesystem usage failed: return code %lu\n", size);
-        return send_simple_response(response, 500, "error",
-           "determining filesystem usage failed");
-    }
-    printf("root device usage: %lu bytes\n", size);
-
-    // Determine the available memory.
-    unsigned long memory = available_memory();
-
-    double projected_usage = (double)size / (double)memory;
-    printf("projected memory usage: %.3f\n", projected_usage);
-    if (projected_usage > MEMORY_USAGE)
+    bool fits = filesystem_fits_in_memory(DATA_TMP_MOUNTPOINT, MEMORY_USAGE);
+    if (! fits)
     {
         // Projected memory usage is really high, so abort.
         return send_simple_response(response, 500, "error",
diff --git a/src/includes/settings.h b/src/includes/settings.h
index 5d29b2bc9d50f3c6a3e51b839ff0852603a7be82..8035b1024dfa8b91d5fb4c76c4f878f682ad9266 100644
--- a/src/includes/settings.h
+++ b/src/includes/settings.h
@@ -1,24 +1,31 @@
+// Web interface settings.
 #define PREFIX "/cryptops/v0"
 #define PORT 8000
 #define BIND_ADDRESS "127.0.0.1"
 
+// Device paths.
 #define ROOT_DEVICE "/dev/xvda"
 #define INFO_PARTITION_DEVICE ROOT_DEVICE "1"
 #define DATA_PARTITION_DEVICE ROOT_DEVICE "2"
 #define MAPPED_DEVICE_NAME "xvda1_crypt"
 #define MAPPED_DEVICE_PATH "/dev/mapper/" MAPPED_DEVICE_NAME
 
+// Filesystem parameters.
 #define FILESYSTEM_TYPE "xfs"
 
+// Mountpoint paths.
+#define INFO_MOUNTPOINT "/conf/persistent"
+
+// Resource usage.
 #define MEMORY_USAGE 0.9
 
+// Temporary mountpoints.
 #define UNENCRYPTED_TMP_MOUNTPOINT "/tmp/mnt-plain"
 #define INFO_TMP_MOUNTPOINT "/tmp/mnt-info"
 #define DATA_TMP_MOUNTPOINT "/tmp/mnt-data"
 #define TMP_LOCATION "/tmp/" MAPPED_DEVICE_NAME
 
-#define INFO_MOUNTPOINT "/conf/persistent"
-
+// Ssh configuration file locations.
 #define AUTHORIZED_KEYS_DIR "/root/.ssh"
 #define AUTHORIZED_KEYS_PATH AUTHORIZED_KEYS_DIR "/authorized_keys"
 #define SSH_HOST_KEY_DIR "/dropbear"