[PATCH 2/2] btrfs-progs: limit the min value of total_bytes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Robin Dong <sanbai@xxxxxxxxxx>

Using mkfs.btrfs like:
	
	mkfs.btrfs -b 1048576 /dev/sda

will report error:

	mkfs.btrfs: volumes.c:796: btrfs_alloc_chunk: Assertion `!(ret)' failed.
	Aborted

because the length of dev_extent is 4MB.

But if we use mkfs.btrfs with 8MB total bytes, the newly mounted btrfs filesystem
would not contain even one empty file. So 12MB will be good min value for block_count.

Signed-off-by: Robin Dong <sanbai@xxxxxxxxxx>
---
 mkfs.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/mkfs.c b/mkfs.c
index bb01f64..23bde2d 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -1330,7 +1330,11 @@ int main(int ac, char **av)
 				&dev_block_count, &mixed, nodiscard);
 		if (block_count == 0)
 			block_count = dev_block_count;
-		else if (block_count > dev_block_count) {
+		else if (block_count < 3 * BTRFS_MKFS_SYSTEM_GROUP_SIZE) {
+			fprintf(stderr, "Illegal total number of bytes %u\n",
+					block_count);
+			exit(1);
+		} else if (block_count > dev_block_count) {
 			fprintf(stderr, "%s is smaller than requested size\n", file);
 			exit(1);
 		}
-- 
1.7.3.2

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux