summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgkostka <kostka.grzegorz@gmail.com>2016-01-16 20:31:10 +0100
committergkostka <kostka.grzegorz@gmail.com>2016-01-16 20:40:44 +0100
commit97a67fc9edb25b48a12ce7306d4defbb2135a8b9 (patch)
tree0ff0e2dbd5da2d375efc848dd3e165482085d428
parentf346efe5f222d05b6b6f2c65af89cddf76e83fcf (diff)
ext4: remove ext4_test_journal function
This function should not be in standard lwext4 API
-rw-r--r--lwext4/ext4.c100
-rw-r--r--lwext4/ext4.h8
2 files changed, 0 insertions, 108 deletions
diff --git a/lwext4/ext4.c b/lwext4/ext4.c
index 9028c3d..d7af585 100644
--- a/lwext4/ext4.c
+++ b/lwext4/ext4.c
@@ -2926,106 +2926,6 @@ void ext4_dir_entry_rewind(ext4_dir *d)
d->next_off = 0;
}
-#if CONFIG_JOURNALING_ENABLE
-int ext4_test_journal(const char *mount_point)
-{
- struct ext4_mountpoint *mp = ext4_get_mount(mount_point);
- if (!mp)
- return ENOENT;
-
- int r = ENOTSUP;
- EXT4_MP_LOCK(mp);
- ext4_block_cache_write_back(mp->fs.bdev, 1);
- if (ext4_sb_feature_com(&mp->fs.sb, EXT4_FCOM_HAS_JOURNAL)) {
- struct jbd_fs *jbd_fs = calloc(1, sizeof(struct jbd_fs));
- struct jbd_journal *journal;
- if (!jbd_fs) {
- r = ENOMEM;
- goto Finish;
- }
- journal = calloc(1, sizeof(struct jbd_journal));
- if (!journal) {
- free(jbd_fs);
- r = ENOMEM;
- goto Finish;
- }
-
- r = jbd_get_fs(&mp->fs, jbd_fs);
- if (r != EOK) {
- free(jbd_fs);
- goto Finish;
- }
- r = jbd_journal_start(jbd_fs, journal);
- if (r != EOK) {
- jbd_put_fs(jbd_fs);
- free(journal);
- free(jbd_fs);
- goto Finish;
- }
-
- int i;
- for (i = 0;i < 50;i++) {
- ext4_fsblk_t rand_block = rand() % 4096;
- if (!rand_block)
- rand_block = 1;
- struct ext4_block block;
- r = ext4_block_get(mp->fs.bdev, &block, rand_block);
- if (r != EOK)
- goto out;
-
- struct jbd_trans *t = jbd_journal_new_trans(journal);
- if (!t) {
- ext4_block_set(mp->fs.bdev, &block);
- r = ENOMEM;
- goto out;
- }
-
- switch (rand() % 2) {
- case 0:
- r = jbd_trans_get_access(journal, t, &block);
- if (r != EOK) {
- jbd_journal_free_trans(journal, t,
- true);
- ext4_block_set(mp->fs.bdev, &block);
- r = ENOMEM;
- goto out;
- }
- r = jbd_trans_set_block_dirty(t, &block);
- if (r != EOK) {
- jbd_journal_free_trans(journal, t,
- true);
- ext4_block_set(mp->fs.bdev, &block);
- r = ENOMEM;
- goto out;
- }
- break;
- case 1:
- r = jbd_trans_try_revoke_block(t, rand_block);
- if (r != EOK) {
- jbd_journal_free_trans(journal, t,
- true);
- ext4_block_set(mp->fs.bdev, &block);
- r = ENOMEM;
- goto out;
- }
- }
- ext4_block_set(mp->fs.bdev, &block);
- jbd_journal_submit_trans(journal, t);
- jbd_journal_commit_one(journal);
- }
-out:
- jbd_journal_stop(journal);
- jbd_put_fs(jbd_fs);
- free(journal);
- free(jbd_fs);
- }
-
-Finish:
- ext4_block_cache_write_back(mp->fs.bdev, 0);
- EXT4_MP_UNLOCK(mp);
- return r;
-}
-#endif
/**
* @}
*/
diff --git a/lwext4/ext4.h b/lwext4/ext4.h
index 4971c92..ed106d7 100644
--- a/lwext4/ext4.h
+++ b/lwext4/ext4.h
@@ -498,14 +498,6 @@ const ext4_direntry *ext4_dir_entry_next(ext4_dir *d);
* @param d directory handle*/
void ext4_dir_entry_rewind(ext4_dir *d);
-/**@brief Test journal functionality
- * @param mount_point mount point, for example
- * - /
- * - /my_partition/
- * - /my_second_partition/
- *
- * @return standard error code */
-int ext4_test_journal(const char *mount_point);
#ifdef __cplusplus
}