diff --git a/lfs.c b/lfs.c index 52ce6142..54554859 100644 --- a/lfs.c +++ b/lfs.c @@ -4575,6 +4575,9 @@ static int lfs_fs_rawstat(lfs_t *lfs, struct lfs_fsinfo *fsinfo) { fsinfo->file_max = lfs->file_max; fsinfo->attr_max = lfs->attr_max; + fsinfo->block_count = lfs->block_count; + fsinfo->block_size = lfs->cfg->block_size; + return 0; } diff --git a/lfs.h b/lfs.h index be5c95cf..c777f301 100644 --- a/lfs.h +++ b/lfs.h @@ -301,6 +301,13 @@ struct lfs_fsinfo { // Upper limit on the size of custom attributes in bytes. lfs_size_t attr_max; + + // Number of blocks in filesystem. + // May differ from cfg->block_count if autodetected from filesystem. + lfs_size_t block_count; + + // Size of block in bytes. + lfs_size_t block_size; }; // Custom attribute structure, used to describe custom attributes