For btrfs, it's possible to have empty leaf, but empty node is not possible.
Add check for empty node for tree blocks. Suggested-by: Josef Bacik <jba...@fb.com> Signed-off-by: Qu Wenruo <quwen...@cn.fujitsu.com> --- disk-io.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/disk-io.c b/disk-io.c index 86abdeb..b4f185f 100644 --- a/disk-io.c +++ b/disk-io.c @@ -67,6 +67,11 @@ static int check_tree_block(struct btrfs_fs_info *fs_info, nodesize)) return BTRFS_BAD_NRITEMS; + /* Only leaf can be empty */ + if (btrfs_header_nritems(buf) == 0 && + btrfs_header_level(buf) != 0) + return BTRFS_BAD_NRITEMS; + fs_devices = fs_info->fs_devices; while (fs_devices) { if (fs_info->ignore_fsid_mismatch || -- 2.8.2 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html