From patchwork Wed Sep 26 07:52:08 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robin Dong X-Patchwork-Id: 1507991 Return-Path: X-Original-To: patchwork-linux-btrfs@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id AC58C3FDAE for ; Wed, 26 Sep 2012 07:52:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753246Ab2IZHwT (ORCPT ); Wed, 26 Sep 2012 03:52:19 -0400 Received: from mail-pb0-f46.google.com ([209.85.160.46]:33951 "EHLO mail-pb0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752809Ab2IZHwS (ORCPT ); Wed, 26 Sep 2012 03:52:18 -0400 Received: by mail-pb0-f46.google.com with SMTP id rr4so1482808pbb.19 for ; Wed, 26 Sep 2012 00:52:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=/LW0CJ5Mk8SCm1Zbjhr7dkuwCYNS1l+668df93Nk0Fo=; b=JticrGrCIon6/KYwBO+km+XPwCS1SH5zRJYS1tos6HtYFt4isI0nyxPEeDJigYlWZR mRGIDSXNrhcn0ou5Oxo5daEy0i2DUJ4xLLfBdZCcROx/2GtmohYk3F3yshDAydJyuJq/ PDyqteuRZ7E88fTqkERn89h+Oge5ofCJsjtvG20lq1kSxJdyLSJ9w4Cc//22sS7j/GGe Z/o1JgeXUSEiiC1kwTBSoPcKGllMIcsrqAcJ8A1ODW9mLIDJ4jCQtHrNeSvGBcHbSLdS Xh6tQd3ddfFuuW2wFhQZxTv4hVx+8IoSXW6kvuV2etI83/m0bwOHc8RogVLVC8tejyG9 84Jg== Received: by 10.68.224.132 with SMTP id rc4mr120038pbc.155.1348645937903; Wed, 26 Sep 2012 00:52:17 -0700 (PDT) Received: from localhost.localdomain ([110.75.120.247]) by mx.google.com with ESMTPS id qd9sm1671222pbb.31.2012.09.26.00.52.16 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 26 Sep 2012 00:52:17 -0700 (PDT) From: Robin Dong To: linux-btrfs@vger.kernel.org Cc: Robin Dong Subject: [PATCH 2/2] btrfs-progs: limit the min value of total_bytes Date: Wed, 26 Sep 2012 15:52:08 +0800 Message-Id: <1348645928-3432-2-git-send-email-robin.k.dong@gmail.com> X-Mailer: git-send-email 1.7.3.2 In-Reply-To: <1348645928-3432-1-git-send-email-robin.k.dong@gmail.com> References: <1348645928-3432-1-git-send-email-robin.k.dong@gmail.com> Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org From: Robin Dong 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 --- 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); }