lwext4_server: add journaling to filesystem test suite
authorgkostka <kostka.grzegorz@gmail.com>
Wed, 30 Dec 2015 08:43:27 +0000 (09:43 +0100)
committergkostka <kostka.grzegorz@gmail.com>
Wed, 30 Dec 2015 08:57:20 +0000 (09:57 +0100)
fs_test/lwext4_server.c

index b1e720b6c81e921efff698c3134437d24f45998d..365880151c5c40a95156a5bd47de2e7c37f7a340 100644 (file)
@@ -412,6 +412,17 @@ int _mount(char *p)
        }
 
        rc = ext4_mount(dev_name, mount_point);
+       if (rc != EOK)
+               return rc;
+
+       rc = ext4_recover(mount_point);
+       if (rc != EOK && rc != ENOTSUP)
+               return rc;
+
+       rc = ext4_journal_start(mount_point);
+       if (rc != EOK)
+               return rc;
+
        if (cache_wb)
                ext4_cache_write_back(mount_point, 1);
        return rc;
@@ -420,6 +431,7 @@ int _mount(char *p)
 int _umount(char *p)
 {
        char mount_point[32];
+       int rc;
 
        if (sscanf(p, "%s", mount_point) != 1) {
                printf("Param list error\n");
@@ -429,7 +441,15 @@ int _umount(char *p)
        if (cache_wb)
                ext4_cache_write_back(mount_point, 0);
 
-       return ext4_umount(mount_point);
+       rc = ext4_journal_stop(mount_point);
+       if (rc != EOK)
+               return rc;
+
+       rc = ext4_umount(mount_point);
+       if (rc != EOK)
+               return rc;
+
+       return rc;
 }
 
 int _mount_point_stats(char *p)