Deduplicate lfsr_fs_ckmeta/data -> lfsr_fs_ck internally
This just saves a bit of code:
code stack
before: 36424 2664
after: 36356 (-0.2%) 2664 (+0.0%)
This commit is contained in:
@@ -13000,40 +13000,30 @@ int lfsr_fs_mkconsistent(lfs_t *lfs) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// check the filesystem for metadata errors
|
// filesystem check functions
|
||||||
|
static int lfsr_fs_ck(lfs_t *lfs, uint32_t flags) {
|
||||||
|
// we leave this up to lfsr_mtree_traverse
|
||||||
|
lfsr_traversal_t t = LFSR_TRAVERSAL(flags);
|
||||||
|
while (true) {
|
||||||
|
int err = lfsr_mtree_traverse(lfs, &t,
|
||||||
|
NULL, NULL);
|
||||||
|
if (err) {
|
||||||
|
if (err == LFS_ERR_NOENT) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int lfsr_fs_ckmeta(lfs_t *lfs) {
|
int lfsr_fs_ckmeta(lfs_t *lfs) {
|
||||||
// we leave this up to lfsr_mtree_traverse
|
return lfsr_fs_ck(lfs, LFS_T_CKMETA);
|
||||||
lfsr_traversal_t t = LFSR_TRAVERSAL(LFS_T_CKMETA);
|
|
||||||
while (true) {
|
|
||||||
int err = lfsr_mtree_traverse(lfs, &t,
|
|
||||||
NULL, NULL);
|
|
||||||
if (err) {
|
|
||||||
if (err == LFS_ERR_NOENT) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// check the filesystem for metadata + data errors
|
|
||||||
int lfsr_fs_ckdata(lfs_t *lfs) {
|
int lfsr_fs_ckdata(lfs_t *lfs) {
|
||||||
// we leave this up to lfsr_mtree_traverse
|
return lfsr_fs_ck(lfs, LFS_T_CKMETA | LFS_T_CKDATA);
|
||||||
lfsr_traversal_t t = LFSR_TRAVERSAL(LFS_T_CKMETA | LFS_T_CKDATA);
|
|
||||||
while (true) {
|
|
||||||
int err = lfsr_mtree_traverse(lfs, &t,
|
|
||||||
NULL, NULL);
|
|
||||||
if (err) {
|
|
||||||
if (err == LFS_ERR_NOENT) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// perform any pending janitorial work
|
// perform any pending janitorial work
|
||||||
|
|||||||
Reference in New Issue
Block a user